明树Git Lab

Commit cbcfda95 authored by zfp1's avatar zfp1

update

parent bacfce52
Pipeline #103971 passed with stage
in 3 seconds
......@@ -30,8 +30,8 @@ async function updateDepart(req, res, next) {
if (!body.id) {
return res.sendError(errorMessage.resourceNotFound)
}
if(body.parentId) {
let parendNode = await DB.Depart.findOne({ where: { id: body.parentId }, raw: true, attributes: ['parentIds'] });
if (body.parentId) {
let parendNode = await DB.Depart.findOne({ where: { id: body.parentId }, raw: true, attributes: ['parentIds'] });
if (!parendNode) {
return res.sendError(errorMessage.resourceNotFound);
}
......@@ -98,7 +98,7 @@ async function deleteDepart(req, res, next) {
}
let parStr = curNode.parentIds ? `${curNode.parentIds},${curNode.id}` : curNode.id; //拼接父字符串查找所有的子
const ret = await DB.Depart.update(
{ del: 1 },
{ del: 1 },
{
where: {
[Op.or]: [
......@@ -125,6 +125,43 @@ async function getDepart(req, res, next) {
}
}
async function getDepartUsers(req, res, next) {
try {
let page = req.body.page || 1;
let limit = req.body.pageSize || 10;
let offset = (page - 1) * limit;
if (!req.body.departId) {
return res.sendError(errorMessage.resourceNotFound);
}
const ret = await DB.User.findAndCountAll({
where: { del: 0 },
limit,
offset,
include: [
{
model: DB.Role,
as: 'roles',
through: { attributes: [] },
}, {
model: DB.Depart,
as: 'departs',
through: { attributes: [] },
}, {
model: DB.Position,
as: 'positions',
through: { attributes: [] },
}
]
});
return res.sendData(ret);
} catch (error) {
next(error);
}
}
module.exports = {
......@@ -134,4 +171,5 @@ module.exports = {
listDepart,
treeDepart,
getDepart,
getDepartUsers,
}
\ No newline at end of file
......@@ -4,7 +4,13 @@ const userModule = require('../module/userModule');
async function createRole(req, res, next) {
try {
const body = req.body;
const ret = await DB.Role.create(body);
let ret = await DB.Role.create(body);
ret = ret.toJSON();
if(body.menus) { //如果这里前端给的是树形结构 需要把它拆成平行,//TODO:
body.menus = utils.disTree(body.menus);
await userModule.setRoleMenu(ret.id, body.menus, []);
delete body.menus;
}
return res.sendData(ret);
} catch (error) {
next(error);
......@@ -24,7 +30,7 @@ async function updateRole(req, res, next) {
{
model: DB.Menu,
as: 'menus',
where: {del: 0},
// where: {del: 0},
attributes: ["id"],
through: { attributes: [] },
}
......@@ -33,9 +39,9 @@ async function updateRole(req, res, next) {
if(!(role && role.id)) {
return res.sendError(errorMessage.resourceNotFound);
}
if(body.menus) { //如果这里前端给的是树形结构 需要把它拆成平行,//TODO:
// body.menus = utils.disTree(body.menus);
await userModule.setRoleMenu(role.id, body.menus, role.menus);
if(body.menus) {
body.menus = utils.disTree(body.menus);
await userModule.setRoleMenu(role.id, body.menus, role.menus || []);
delete body.menus;
}
// sequelize 只有update 写时需要注意条件 不能为空
......@@ -86,8 +92,8 @@ async function getRole(req, res, next) {
if (!req.body.id) {
return res.sendError(errorMessage.resourceNotFound);
}
const ret = await DB.Role.findOne({
where: { id: req.body.id }, raw: true ,
let ret = await DB.Role.findOne({
where: { id: req.body.id },
include: [
{
model: DB.Menu,
......@@ -98,6 +104,7 @@ async function getRole(req, res, next) {
}
]
});
ret = ret.toJSON();
if(ret && ret.menus && ret.menus.length) {
ret.menus = utils.buildTree(ret.menus);
}
......
......@@ -54,6 +54,7 @@ router.post('/depart/deleteDepart', departController.deleteDepart);
router.post('/depart/listDepart', departController.listDepart);
router.post('/depart/treeDepart', departController.treeDepart);
router.post('/depart/getDepart', departController.getDepart);
router.post('/depart/getDepartUsers', departController.getDepartUsers);
/**
* 职位
......
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