package com.template.controller; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.template.annotation.DESRespondSecret; import com.template.annotation.PassToken; import com.template.api.SmartAuthorGroupControllerAPI; import com.template.common.utils.AesUtils; import com.template.common.utils.TimeExchange2; import com.template.common.utils.TreeRecordsUtil; import com.template.common.utils.UUIDUtil; import com.template.model.pojo.*; import com.template.model.result.CommonResult; import com.template.model.weixin.AuthorAndGroup; import com.template.model.weixin.AuthorAndGroup2; import com.template.model.weixin.AuthorListGroup; import com.template.model.weixin.userAuthor; import com.template.services.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RestController; import java.text.ParseException; import java.util.*; import java.util.stream.Collectors; /** *

* 前端控制器 *

* * @author ceshi * @since 2023-12-04 */ @RestController //返回参数加密注解 @DESRespondSecret public class SmartAuthorGroupController implements SmartAuthorGroupControllerAPI { @Autowired private SmartAuthorGroupService smartAuthorGroupService; @Autowired public SmartAuthorityService smartAuthorityService; @Autowired public SmartUserService smartUserService; @Autowired public SmartDepartmentService smartDepartmentService; @Autowired public SmartMenuService smartMenuService; /** * 新增权限组 * * @param * @param * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult insertSmartAuthorGroup(JSONObject jsonObject, Integer samePower) throws ParseException { if (samePower == null) { return CommonResult.fail("samePower不能为空"); } // 所有管理员权限一样 if (samePower == 1) { AuthorAndGroup authorAndGroup = JSONObject.parseObject(jsonObject.toString(), AuthorAndGroup.class); SmartAuthorGroup sa = authorAndGroup.getSmartAuthorGroup(); sa.setId((int) UUIDUtil.generateID()); String[] userId = sa.getUserId().split(","); // 相关判断 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("deleted", "0"); queryWrapper.eq("parent_id", sa.getParentId()); queryWrapper.eq("name", sa.getName()); List querySmartGroup = smartAuthorGroupService.getAuthorGroupByKey(queryWrapper); if (querySmartGroup.size() > 0) { return CommonResult.fail("该管理员已存在,请勿重复添加"); } QueryWrapper queryWrapper2 = new QueryWrapper<>(); List typeList = Arrays.asList(userId); queryWrapper2.in("user_id", typeList); queryWrapper2.eq("deleted", "0"); List querySmart = smartAuthorityService.getAuthorByKey(queryWrapper2); if (querySmart.size() > 0) { return CommonResult.fail("该用户已分配其他权限组"); } Set set = new HashSet<>(typeList); if (typeList.size() != set.size()) { return CommonResult.fail("请勿选择重复用户"); } for (int i = 0; i < userId.length; i++) { SmartAuthority smartAuthority = new SmartAuthority(); smartAuthority.setUserId(Integer.parseInt(userId[i])); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(authorAndGroup.getDepartment_view()); smartAuthority.setDepartmentManage(authorAndGroup.getDepartment_manage()); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(0); smartAuthorityService.insertSmartAuthority(smartAuthority); } sa.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); sa.setCreateUser("admin"); sa.setUpdateUser("admin"); sa.setDeleted(0); int result = smartAuthorGroupService.insertSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("添加成功") : CommonResult.fail("添加失败"); } // 每个管理员权限不一样 if (samePower == 2) { AuthorAndGroup2 authorAndGroup2 = JSONObject.parseObject(jsonObject.toString(), AuthorAndGroup2.class); SmartAuthorGroup sa = authorAndGroup2.getSmartAuthorGroup(); sa.setId((int) UUIDUtil.generateID()); List userAuthors = authorAndGroup2.getUserAuthors(); // 相关查询 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("deleted", 0); queryWrapper.eq("parent_id", sa.getParentId()); queryWrapper.eq("name", sa.getName()); List querySmartGroup = smartAuthorGroupService.getAuthorGroupByKey(queryWrapper); if (querySmartGroup.size() > 0) { return CommonResult.fail("该管理员已存在,请勿重复添加"); } List uid = userAuthors.stream().map(userAuthor::getUserId).collect(Collectors.toList()); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.in("user_id", uid); queryWrapper2.eq("deleted", 0); List querySmart = smartAuthorityService.getAuthorByKey(queryWrapper2); if (querySmart.size() > 0) { return CommonResult.fail("该用户已分配其他权限组"); } Set set = new HashSet<>(uid); if (uid.size() != set.size()) { return CommonResult.fail("请勿选择重复用户"); } for (int i = 0; i < userAuthors.size(); i++) { SmartAuthority smartAuthority = new SmartAuthority(); smartAuthority.setUserId(userAuthors.get(i).getUserId()); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(userAuthors.get(i).getDepartment_view()); smartAuthority.setDepartmentManage(userAuthors.get(i).getDepartment_manage()); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(0); smartAuthorityService.insertSmartAuthority(smartAuthority); } sa.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); sa.setCreateUser("admin"); sa.setUpdateUser("admin"); sa.setDeleted(0); int result = smartAuthorGroupService.insertSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("添加成功") : CommonResult.fail("添加失败"); } return CommonResult.errorMsg("参数格式错误"); } /** * 更新权限组 * * @param * @param * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult updateSmartAuthorGroup(JSONObject jsonObject, Integer samePower) throws ParseException { if (samePower == null) { return CommonResult.errorMsg("samePower不能为空"); } // 所有管理员权限一样 if (samePower == 1) { AuthorAndGroup authorAndGroup = JSONObject.parseObject(jsonObject.toString(), AuthorAndGroup.class); SmartAuthorGroup sa = authorAndGroup.getSmartAuthorGroup(); String[] userId = sa.getUserId().split(","); // 相关判断 QueryWrapper queryWrapperA = new QueryWrapper<>(); queryWrapperA.eq("deleted", 0); queryWrapperA.eq("id", sa.getId()); List querySmartGroupA = smartAuthorGroupService.getAuthorGroupByKey(queryWrapperA); if (querySmartGroupA.size() <= 0) { return CommonResult.fail("该条信息已删除"); } QueryWrapper queryWrapperB = new QueryWrapper<>(); queryWrapperB.eq("deleted", 0); queryWrapperB.eq("id", sa.getParentId()); List querySmartGroupB = smartAuthorGroupService.getAuthorGroupByKey(queryWrapperB); if (querySmartGroupB.size() <= 0 && sa.getParentId() != 0) { return CommonResult.fail("父ID不存在"); } QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("deleted", 0); queryWrapper.eq("parent_id", sa.getParentId()); queryWrapper.eq("name", sa.getName()); queryWrapper.ne("id", sa.getId()); List querySmartGroup = smartAuthorGroupService.getAuthorGroupByKey(queryWrapper); if (querySmartGroup.size() > 0) { return CommonResult.fail("该管理员已存在,请勿重复修改"); } QueryWrapper queryWrapper2 = new QueryWrapper<>(); List typeList = Arrays.asList(userId); queryWrapper2.in("user_id", typeList); queryWrapper2.eq("deleted", 0); queryWrapper2.ne("group_id", sa.getId()); List querySmart = smartAuthorityService.getAuthorByKey(queryWrapper2); if (querySmart.size() > 0) { return CommonResult.fail("该用户已分配其他权限组"); } Set set = new HashSet<>(typeList); if (typeList.size() != set.size()) { return CommonResult.fail("请勿选择重复用户"); } String[] old_userId = querySmartGroupA.get(0).getUserId().split(","); for (int i = 0; i < old_userId.length; i++) { if (!typeList.contains(old_userId[i])) { QueryWrapper queryWrapperC = new QueryWrapper<>(); queryWrapperC.eq("deleted", 0); queryWrapperC.eq("user_id", Integer.parseInt(old_userId[i])); List smartAuthorityC = smartAuthorityService.getAuthorByKey(queryWrapperC); if (smartAuthorityC.size() > 0) { SmartAuthority smartAuthority = smartAuthorityC.get(0); smartAuthority.setDeleted(1); logger.info(")))" + smartAuthority.getId()); smartAuthorityService.updateSmartAuthority(smartAuthority); } } } for (int i = 0; i < userId.length; i++) { QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("deleted", 0); queryWrapper3.eq("user_id", Integer.parseInt(userId[i])); List smartAuthoritys = smartAuthorityService.getAuthorByKey(queryWrapper3); if (smartAuthoritys.size() > 0) { SmartAuthority smartAuthority = smartAuthoritys.get(0); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(authorAndGroup.getDepartment_view()); smartAuthority.setDepartmentManage(authorAndGroup.getDepartment_manage()); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(0); smartAuthorityService.updateSmartAuthority(smartAuthority); } else { SmartAuthority smartAuthority = new SmartAuthority(); smartAuthority.setUserId(Integer.parseInt(userId[i])); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(authorAndGroup.getDepartment_view()); smartAuthority.setDepartmentManage(authorAndGroup.getDepartment_manage()); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(0); smartAuthorityService.insertSmartAuthority(smartAuthority); } } int result = smartAuthorGroupService.updateSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("修改成功") : CommonResult.fail("修改失败"); } // 每个管理员权限不一样 if (samePower == 2) { AuthorAndGroup2 authorAndGroup2 = JSONObject.parseObject(jsonObject.toString(), AuthorAndGroup2.class); SmartAuthorGroup sa = authorAndGroup2.getSmartAuthorGroup(); List userAuthors = authorAndGroup2.getUserAuthors(); // 相关查询 QueryWrapper queryWrapperA = new QueryWrapper<>(); queryWrapperA.eq("deleted", 0); queryWrapperA.eq("id", sa.getId()); List querySmartGroupA = smartAuthorGroupService.getAuthorGroupByKey(queryWrapperA); if (querySmartGroupA.size() <= 0) { return CommonResult.fail("该条信息已删除"); } QueryWrapper queryWrapperB = new QueryWrapper<>(); queryWrapperB.eq("deleted", 0); queryWrapperB.eq("id", sa.getParentId()); List querySmartGroupB = smartAuthorGroupService.getAuthorGroupByKey(queryWrapperB); if (querySmartGroupB.size() <= 0 && sa.getParentId() != 0) { return CommonResult.fail("父ID不存在"); } QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("deleted", 0); queryWrapper.eq("parent_id", sa.getParentId()); queryWrapper.eq("name", sa.getName()); queryWrapper.ne("id", sa.getId()); List querySmartGroup = smartAuthorGroupService.getAuthorGroupByKey(queryWrapper); if (querySmartGroup.size() > 0) { return CommonResult.fail("该管理员已存在,请勿重复添加"); } List uid = userAuthors.stream().map(userAuthor::getUserId).collect(Collectors.toList()); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.in("user_id", uid); queryWrapper2.eq("deleted", 0); queryWrapper2.ne("group_id", sa.getId()); List querySmart = smartAuthorityService.getAuthorByKey(queryWrapper2); if (querySmart.size() > 0) { return CommonResult.fail("该用户已分配其他权限组"); } Set set = new HashSet<>(uid); if (uid.size() != set.size()) { return CommonResult.fail("请勿选择重复用户"); } String[] old_userId = querySmartGroupA.get(0).getUserId().split(","); for (int i = 0; i < old_userId.length; i++) { if (!uid.contains(Integer.parseInt(old_userId[i]))) { QueryWrapper queryWrapperC = new QueryWrapper<>(); queryWrapperC.eq("deleted", 0); queryWrapperC.eq("user_id", Integer.parseInt(old_userId[i])); List smartAuthorityC = smartAuthorityService.getAuthorByKey(queryWrapperC); if (smartAuthorityC.size() > 0) { SmartAuthority smartAuthority = smartAuthorityC.get(0); smartAuthority.setDeleted(1); smartAuthorityService.updateSmartAuthority(smartAuthority); } } } String userid = ""; for (int i = 0; i < userAuthors.size(); i++) { if (i == userAuthors.size() - 1) { userid += userAuthors.get(i).getUserId(); } else { userid += userAuthors.get(i).getUserId() + ","; } QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("deleted", 0); queryWrapper3.eq("user_id", userAuthors.get(i).getUserId()); List smartAuthoritys = smartAuthorityService.getAuthorByKey(queryWrapper3); if (smartAuthoritys.size() > 0) { SmartAuthority smartAuthority = smartAuthoritys.get(0); smartAuthority.setUserId(userAuthors.get(i).getUserId()); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(userAuthors.get(i).getDepartment_view()); smartAuthority.setDepartmentManage(userAuthors.get(i).getDepartment_manage()); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(userAuthors.get(i).getDeleted()); smartAuthorityService.updateSmartAuthority(smartAuthority); } else { SmartAuthority smartAuthority = new SmartAuthority(); smartAuthority.setUserId(userAuthors.get(i).getUserId()); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(userAuthors.get(i).getDepartment_view()); smartAuthority.setDepartmentManage(userAuthors.get(i).getDepartment_manage()); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(0); smartAuthorityService.insertSmartAuthority(smartAuthority); } } sa.setUserId(userid); int result = smartAuthorGroupService.updateSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("修改成功") : CommonResult.fail("修改失败"); } return CommonResult.errorMsg("参数格式错误"); } /** * 新增权限组 * * @param * @param * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult addSmartAuthorGroup(JSONObject jsonObject) throws ParseException { AuthorAndGroup authorAndGroup = JSONObject.parseObject(jsonObject.toString(), AuthorAndGroup.class); SmartAuthorGroup sa = authorAndGroup.getSmartAuthorGroup(); sa.setId((int) UUIDUtil.generateID()); // 相关判断 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("deleted", "0"); queryWrapper.eq("parent_id", sa.getParentId()); queryWrapper.eq("name", sa.getName()); List querySmartGroup = smartAuthorGroupService.getAuthorGroupByKey(queryWrapper); if (querySmartGroup.size() > 0) { return CommonResult.fail("该管理员已存在,请勿重复添加"); } sa.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); sa.setCreateUser("admin"); sa.setUpdateUser("admin"); sa.setDeleted(0); int result = smartAuthorGroupService.insertSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("添加成功") : CommonResult.fail("添加失败"); } /** * 删除权限组 * * @param * @param * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult delSmartAuthorGroup(Integer id) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("parent_id", id); queryWrapper1.eq("deleted",0); List list1 = smartAuthorGroupService.getAuthorGroupByKey(queryWrapper1); SmartAuthorGroup rns = new SmartAuthorGroup(); rns.setId(id); rns.setDeleted(1); int result = smartAuthorGroupService.updateSmartAuthorGroup(rns); SmartAuthority smartAuthority = new SmartAuthority(); smartAuthority.setDeleted(1); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("group_id", id); boolean m = smartAuthorityService.update(smartAuthority,queryWrapper2); SmartAuthorGroup rns2 = new SmartAuthorGroup(); rns2.setDeleted(1); QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("parent_id", id); boolean result2 = smartAuthorGroupService.update(rns2, queryWrapper3); SmartAuthority smartAuthority2 = new SmartAuthority(); smartAuthority2.setDeleted(1); QueryWrapper queryWrapper4 = new QueryWrapper<>(); List gid = list1.stream().map(SmartAuthorGroup::getId).collect(Collectors.toList()); queryWrapper4.in("group_id", gid); queryWrapper4.eq("deleted",0); boolean m2 = smartAuthorityService.update(smartAuthority2,queryWrapper4); return result > 0 && result2 && m && m2 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败"); } /** * 操作管理员 * * @param * @param * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult operateSmartAuthorGroupUser(Integer id, String userId) throws ParseException { if (id==null){ return CommonResult.fail("id不能为空"); } if (userId==null){ userId=""; } SmartAuthorGroup sa = smartAuthorGroupService.getSmartById(id); if (sa==null){ return CommonResult.fail("当前权限组不存在"); } if (sa.getUserId()==null){ sa.setUserId(""); } String[] oldUserId = sa.getUserId().split(","); String[] newUserId = userId.split(","); List userList = Arrays.asList(newUserId); Set set = new HashSet<>(userList); if (userList.size() != set.size()) { return CommonResult.fail("请勿选择重复用户"); } QueryWrapper queryWrapperA = new QueryWrapper<>(); List typeList = Arrays.asList(newUserId); queryWrapperA.in("user_id", typeList); queryWrapperA.eq("deleted", 0); queryWrapperA.ne("group_id", sa.getId()); List querySmart = smartAuthorityService.getAuthorByKey(queryWrapperA); if (querySmart.size() > 0) { return CommonResult.fail("该用户已分配其他权限组"); } QueryWrapper queryWrapperB = new QueryWrapper<>(); List users = Arrays.asList(newUserId); queryWrapperB.in("id", users); queryWrapperB.eq("deleted", 0); List ulist = smartUserService.list(queryWrapperB); if (!userId.equals("") && (ulist.isEmpty() || ulist.size()!=newUserId.length)){ return CommonResult.fail("有用户已删除"); } for (int i = 0; i < oldUserId.length; i++) { if (!oldUserId[i].equals("") && !userList.contains(oldUserId[i])) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("deleted", 0); queryWrapper1.eq("user_id", Integer.parseInt(oldUserId[i])); List smartAuthority1 = smartAuthorityService.getAuthorByKey(queryWrapper1); if (smartAuthority1.size() > 0) { SmartAuthority smartAuthority = smartAuthority1.get(0); smartAuthority.setDeleted(1); smartAuthorityService.updateSmartAuthority(smartAuthority); } } } for (int i = 0; i < newUserId.length; i++) { if (!newUserId[i].equals("")){ QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("deleted", 0); queryWrapper2.eq("user_id", Integer.parseInt(newUserId[i])); List smartAuthoritys = smartAuthorityService.getAuthorByKey(queryWrapper2); if (smartAuthoritys.size() <= 0) { SmartAuthority smartAuthority = new SmartAuthority(); smartAuthority.setUserId(Integer.parseInt(newUserId[i])); smartAuthority.setGroupId(sa.getId()); smartAuthority.setDepartmentView(""); smartAuthority.setDepartmentManage(""); smartAuthority.setCreateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setUpdateTime(TimeExchange2.StringToDate(TimeExchange2.getTime(), "yyyy-MM-dd HH:mm:ss")); smartAuthority.setCreateUser("admin"); smartAuthority.setUpdateUser("admin"); smartAuthority.setDeleted(0); smartAuthorityService.insertSmartAuthority(smartAuthority); } } } sa.setUserId(userId); int result = smartAuthorGroupService.updateSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("修改成功") : CommonResult.fail("修改失败"); } /** * 操作菜单权限 * * @param * @param * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult operateSmartAuthorGroupApply(Integer id, String applyId) { if (id==null){ return CommonResult.fail("id不能为空"); } if (applyId==null){ applyId=""; } SmartAuthorGroup sa = smartAuthorGroupService.getSmartById(id); if (sa==null){ return CommonResult.fail("当前权限组不存在"); } sa.setApplyId(applyId); int result = smartAuthorGroupService.updateSmartAuthorGroup(sa); return result > 0 ? CommonResult.ok("修改成功") : CommonResult.fail("修改失败"); } @PassToken @Override @DESRespondSecret(validated = false) public CommonResult getSmartAuthorGroupManager(String groupId) { List list = smartAuthorGroupService.getSmartAuthorGroupManager(groupId); return CommonResult.ok(list); } @PassToken @Override public CommonResult operateSmartAuthorDepartment(JSONObject jsonObject) { Integer id = jsonObject.getInteger("id"); String departmentView = jsonObject.getString("departmentView"); String departmentManage = jsonObject.getString("departmentManage"); if (id==null){ return CommonResult.fail("请传入ID"); } SmartAuthority smartAuthority = smartAuthorityService.getSmartById(id); if (departmentView!=null ){ smartAuthority.setDepartmentView(departmentView); } if (departmentManage!=null){ smartAuthority.setDepartmentManage(departmentManage); } smartAuthorityService.updateSmartAuthority(smartAuthority); return CommonResult.ok("修改成功"); } @PassToken @Override @DESRespondSecret(validated = false) public CommonResult getSmartAuthorGroupMenu(Integer id) { SmartAuthorGroup smartAuthorGroup = smartAuthorGroupService.getSmartById(id); if (smartAuthorGroup==null || smartAuthorGroup.getDeleted()==1){ return CommonResult.fail("当前权限组已删除"); } String[] applyIds = smartAuthorGroup.getApplyId().split(","); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("deleted", 0); List applyId_ = Arrays.asList(applyIds); queryWrapper2.in("id", applyId_); List list2 = smartMenuService.list(queryWrapper2); return CommonResult.ok(list2); } @PassToken @Override public CommonResult updateSmartAuthorGroupName(JSONObject jsonObject) { Integer id = jsonObject.getInteger("id"); String name = jsonObject.getString("name"); if (id==null || name==null){ return CommonResult.fail("请传入参数"); } SmartAuthorGroup smartAuthorGroup = smartAuthorGroupService.getSmartById(id); if (smartAuthorGroup==null || smartAuthorGroup.getDeleted()==1){ return CommonResult.fail("该权限组已删除"); } smartAuthorGroup.setName(name); smartAuthorGroupService.updateSmartAuthorGroup(smartAuthorGroup); return CommonResult.ok("修改成功"); } @PassToken @Override @DESRespondSecret(validated = false) public CommonResult queryUserAuthor(String userId,String userhead) { if (userId==null || userId.equals("")){ userId = AesUtils.decrypt(userhead); } String[] userids = userId.split(","); QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("deleted", 0); queryWrapper1.in("user_id", Arrays.asList(userids)); List userAuthor = smartAuthorityService.getAuthorByKey(queryWrapper1); if (userAuthor.size() <= 0) { return CommonResult.ok(new ArrayList<>()); } List allList = new ArrayList<>(); for (int i = 0; i < userAuthor.size(); i++) { SmartAuthority smartAuthority = userAuthor.get(i); JSONObject jsonObject = new JSONObject(); jsonObject.put("userId", smartAuthority.getUserId()); Integer groupId = smartAuthority.getGroupId(); SmartAuthorGroup smartAuthorGroup = smartAuthorGroupService.getSmartById(groupId); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("deleted", 0); List viewDepart = Arrays.asList(smartAuthority.getDepartmentView().split(",")); queryWrapper2.in("id", viewDepart); List list1 = smartDepartmentService.list(queryWrapper2); QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("deleted", 0); List manageDepart = Arrays.asList(smartAuthority.getDepartmentManage().split(",")); queryWrapper3.in("id", manageDepart); List list2 = smartDepartmentService.list(queryWrapper3); jsonObject.put("departmentViewAuthor", list1); jsonObject.put("departmentManageAuthor", list2); if (smartAuthorGroup != null && smartAuthorGroup.getDeleted() == 0) { QueryWrapper queryWrapper4 = new QueryWrapper<>(); queryWrapper4.eq("deleted", 0); List menuList = Arrays.asList(smartAuthorGroup.getApplyId().split(",")); queryWrapper4.in("id", menuList); List list3 = smartMenuService.list(queryWrapper4); jsonObject.put("treAuthor", list3); } else { jsonObject.put("treAuthor", new ArrayList<>()); } allList.add(jsonObject); } return CommonResult.ok(allList); } /** * 查看权限列表 * * @return */ @Override @PassToken @DESRespondSecret(validated = true) public CommonResult querySmartAuthorGroup(Integer authorGroupId) { List smartAuthorGroups = smartAuthorGroupService.getAuthorGroupList(); List authorListGroupList = null; if (smartAuthorGroups.size() > 0) { authorListGroupList = smartAuthorGroupService.queryCommentTreeRecords(authorGroupId, smartAuthorGroups); } return CommonResult.ok(authorListGroupList); } @Override @DESRespondSecret(validated = true) public CommonResult deleteSmartAuthorGroupById(int id) { SmartAuthorGroup data = smartAuthorGroupService.getSmartById(id); if (data == null) { return CommonResult.fail("当前数据不存在,删除失败!"); } int result = smartAuthorGroupService.deleteSmartAuthorGroupById(id); return result > 0 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败"); } }