Commit 5d5d729c by 王昆

gsb

parent 4e8ca5d1
...@@ -20,10 +20,20 @@ class OrgDao extends Dao { ...@@ -20,10 +20,20 @@ class OrgDao extends Dao {
return await this.customQuery(sql.join(" "), params); return await this.customQuery(sql.join(" "), params);
} }
async all() { async all(saas_id, attrs) {
return this.customQuery("SELECT * FROM uc_org WHERE deleted_at IS NULL"); attrs = attrs || "*";
var sql = [];
sql.push("SELECT");
sql.push(attrs);
sql.push("FROM uc_org");
sql.push("WHERE deleted_at IS NULL");
var params = {};
if(saas_id) {
sql.push("AND saas_id = :saas_id");
params.saas_id = saas_id;
}
return this.customQuery(sql.join(" "), params);
} }
} }
module.exports = OrgDao; module.exports = OrgDao;
\ No newline at end of file
...@@ -72,7 +72,7 @@ class AuthService extends ServiceBase { ...@@ -72,7 +72,7 @@ class AuthService extends ServiceBase {
} }
async tree(params) { async tree(params) {
var all = await this.dao.all(params.saas_id, "id, pid, menuType, name, icon, path"); var all = await this.dao.all(params.saas_id, "id, orgname, path, pid");
var pmap = {}; var pmap = {};
for (var item of all) { for (var item of all) {
......
...@@ -55,7 +55,7 @@ class OrgService extends ServiceBase { ...@@ -55,7 +55,7 @@ class OrgService extends ServiceBase {
/** /**
* 根据ID查询该组织机构下的所有用户 * 根据ID查询该组织机构下的所有用户
*/ */
async apiFindUserByOrgId(params){ async apiFindUserByOrgId(params) {
try { try {
return this.findUserByOrgId(params.id); return this.findUserByOrgId(params.id);
} catch (error) { } catch (error) {
...@@ -67,11 +67,11 @@ class OrgService extends ServiceBase { ...@@ -67,11 +67,11 @@ class OrgService extends ServiceBase {
* 根据ID查明细 * 根据ID查明细
* @param {*} params * @param {*} params
*/ */
async apiQueryById(params){ async apiQueryById(params) {
try { try {
return await this.queryById(params) return await this.queryById(params)
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
...@@ -79,11 +79,11 @@ class OrgService extends ServiceBase { ...@@ -79,11 +79,11 @@ class OrgService extends ServiceBase {
* 根据Ip查明细 * 根据Ip查明细
* @param {*} params * @param {*} params
*/ */
async apiByPid(params){ async apiByPid(params) {
try { try {
return await this.byPid(params) return await this.byPid(params)
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
...@@ -91,11 +91,11 @@ class OrgService extends ServiceBase { ...@@ -91,11 +91,11 @@ class OrgService extends ServiceBase {
* 根据ID查明细 * 根据ID查明细
* @param {*} params * @param {*} params
*/ */
async apiTree(params){ async apiTree(params) {
try { try {
return await this.tree(params) return await this.tree(params)
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
...@@ -111,14 +111,24 @@ class OrgService extends ServiceBase { ...@@ -111,14 +111,24 @@ class OrgService extends ServiceBase {
var pid = Number(params.pid || 0); var pid = Number(params.pid || 0);
params.orgname = this.trim(params.orgname); params.orgname = this.trim(params.orgname);
params.saas_id = Number(params.saas_id || 0); params.saas_id = Number(params.saas_id || 0);
if(!params.saas_id){return system.getResult(-1,`saas_id不存在`)}
if(!params.orgname){return system.getResult(-1,`参数错误 组织名称不能为空`)} if (!params.saas_id) {
let _orgByName = await this.findOne({orgname:params.orgname, saas_id: params.saas_id}); return system.getResult(-1, `saas_id不存在`)
if(_orgByName){ }
return system.getResult(-1,`参数错误 组织名称已经存在`);
if (!params.orgname) {
return system.getResult(-1, `参数错误 组织名称不能为空`)
}
let _orgByName = await this.findOne({
orgname: params.orgname,
saas_id: params.saas_id
});
if (_orgByName) {
return system.getResult(-1, `参数错误 组织名称已经存在`);
} }
let path = ""; let path = "";
if(pid === 0){ if (pid === 0) {
// 验证是否存在其他权限 // 验证是否存在其他权限
var exist = await this.findCount({ var exist = await this.findCount({
where: { where: {
...@@ -130,18 +140,20 @@ class OrgService extends ServiceBase { ...@@ -130,18 +140,20 @@ class OrgService extends ServiceBase {
} }
path = `/${params.orgname}`; path = `/${params.orgname}`;
}else{ } else {
let _org = await this.findOne({id:pid}); let _org = await this.findOne({
if(!_org){ id: pid
return system.getResult(-1,`参数错误 父节点不存在`); });
if (!_org) {
return system.getResult(-1, `参数错误 父节点不存在`);
} }
path =`${_org.path}/${params.orgname}`; path = `${_org.path}/${params.orgname}`;
} }
params.path=path; params.path = path;
let res = await this.dao.create(params); let res = await this.dao.create(params);
return system.getResult(res); return system.getResult(res);
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
...@@ -179,20 +191,20 @@ class OrgService extends ServiceBase { ...@@ -179,20 +191,20 @@ class OrgService extends ServiceBase {
} }
//检查组织机构下是否有用户 //检查组织机构下是否有用户
let _usersRes = await this.findUserByOrgId(params.id); let _usersRes = await this.findUserByOrgId(params.id);
if(_usersRes.status===-1){ if (_usersRes.status === -1) {
return _usersRes; return _usersRes;
} }
if(_usersRes.data.length!=0){ if (_usersRes.data.length != 0) {
return system.getResult(-1,`该组织机构不能删除`); return system.getResult(-1, `该组织机构不能删除`);
} }
//检查父节点 下是否有子节点 //检查父节点 下是否有子节点
let _orgChildren = await this.dao.model.findAll({ let _orgChildren = await this.dao.model.findAll({
where:{ where: {
pid:this.trim(params.id) pid: this.trim(params.id)
} }
}); });
if(_orgChildren.length!=0){ if (_orgChildren.length != 0) {
return system.getResult(-1,`该组织机构不能删除`); return system.getResult(-1, `该组织机构不能删除`);
} }
//删除 //删除
let res = await _org.destroy(); let res = await _org.destroy();
...@@ -233,50 +245,52 @@ class OrgService extends ServiceBase { ...@@ -233,50 +245,52 @@ class OrgService extends ServiceBase {
} }
} }
async queryById(params){ async queryById(params) {
if(!params.id){ if (!params.id) {
return system.getResult(-1, `参数错误 ID不能为空`); return system.getResult(-1, `参数错误 ID不能为空`);
} }
try { try {
let _org = await this.findOne({id:this.trim(params.id)}); let _org = await this.findOne({
id: this.trim(params.id)
});
return system.getResult(_org); return system.getResult(_org);
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
/** /**
* 根据ID查询该组织机构下的所有用户 * 根据ID查询该组织机构下的所有用户
*/ */
async findUserByOrgId(id){ async findUserByOrgId(id) {
if(!Number(id)){ if (!Number(id)) {
return system.getResult(-1,`参数错误 组织机构不能为空`); return system.getResult(-1, `参数错误 组织机构不能为空`);
} }
try { try {
let res = await this.dao.findUserByOrgId(id); let res = await this.dao.findUserByOrgId(id);
return system.getResult(res); return system.getResult(res);
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
async byPid(obj) { async byPid(obj) {
try { try {
var list = await this.dao.findAll({ var list = await this.dao.findAll({
pid: obj.pid || 0, pid: obj.pid || 0,
}); });
return system.getResult(list); return system.getResult(list);
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
/** /**
* 结构树 * 结构树
*/ */
async tree() { async tree(params) {
try { try {
var all = await this.dao.all(); var all = await this.dao.all(params.saas_id);
var pmap = {}; var pmap = {};
for (var item of all) { for (var item of all) {
var list = pmap[item.pid]; var list = pmap[item.pid];
...@@ -286,14 +300,14 @@ class OrgService extends ServiceBase { ...@@ -286,14 +300,14 @@ class OrgService extends ServiceBase {
list.push(item); list.push(item);
pmap[item.pid] = list; pmap[item.pid] = list;
} }
for(var item of all) { for (var item of all) {
item.childs = pmap[item.id] || []; item.childs = pmap[item.id] || [];
} }
return system.getResult(pmap[0]); return system.getResult(pmap[0]);
} catch (error) { } catch (error) {
return system.getResult(-1,`系统错误 错误信息 ${error}`); return system.getResult(-1, `系统错误 错误信息 ${error}`);
} }
} }
} }
module.exports = OrgService; module.exports = OrgService;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment