GroupServiceImpl.java 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package com.huimv.admin.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import com.huimv.admin.common.utils.Result;
  6. import com.huimv.admin.common.utils.ResultCode;
  7. import com.huimv.admin.entity.AccountGroup;
  8. import com.huimv.admin.entity.Group;
  9. import com.huimv.admin.entity.GroupMenu;
  10. import com.huimv.admin.mapper.AccountGroupMapper;
  11. import com.huimv.admin.mapper.GroupMapper;
  12. import com.huimv.admin.mapper.GroupMenuMapper;
  13. import com.huimv.admin.service.IGroupService;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Service;
  16. import org.springframework.transaction.annotation.Transactional;
  17. import org.springframework.web.bind.annotation.RequestBody;
  18. import java.util.List;
  19. import java.util.Map;
  20. import java.util.stream.Collectors;
  21. /**
  22. * <p>
  23. * 服务实现类
  24. * </p>
  25. *
  26. * @author astupidcoder
  27. * @since 2021-09-09
  28. */
  29. @Service
  30. public class GroupServiceImpl extends ServiceImpl<GroupMapper, Group> implements IGroupService {
  31. @Autowired
  32. private GroupMapper groupMapper;
  33. @Autowired
  34. private GroupMenuMapper groupMenuMapper;
  35. @Autowired
  36. private AccountGroupMapper accountGroupMapper;
  37. @Override
  38. public Result updateGroup(@RequestBody Group group) {
  39. try {
  40. groupMapper.updateById(group);
  41. return new Result(10000,"修改成功",true);
  42. }catch (Exception e){
  43. return new Result(10001,"修改失败",false);
  44. }
  45. }
  46. @Override
  47. @Transactional
  48. public Result removeGroup(Integer groupId) {
  49. try {
  50. Group group = this.groupMapper.selectById(groupId);
  51. if (group == null) {
  52. return new Result(10002,"请选择数据",false);
  53. }
  54. // 删除权限组
  55. this.groupMapper.deleteById(groupId);
  56. // 删除权限组关联菜单
  57. QueryWrapper<GroupMenu> groupMenuQueryWrapper = new QueryWrapper<>();
  58. groupMenuQueryWrapper.eq("group_id",groupId);
  59. groupMenuMapper.delete(groupMenuQueryWrapper);
  60. return new Result(10000,"删除成功",true);
  61. }catch (Exception e){
  62. return new Result(10001,"删除失败",false);
  63. }
  64. }
  65. @Override
  66. public Result listGroup(Map map, List<Integer> allChildId) {
  67. Integer pageNum = (Integer)map.get("pageNum");
  68. Integer pageSize = (Integer)map.get("pageSize");
  69. Page<Group> page = this.page(new Page<>(pageNum, pageSize), new QueryWrapper<Group>().in("account_id", allChildId).orderByDesc("id"));
  70. return new Result(ResultCode.SUCCESS,page);
  71. }
  72. @Override
  73. public Result addGroup(Group group, Integer userId) {
  74. try {
  75. group.setAccountId(userId);
  76. groupMapper.insert(group);
  77. return new Result(10000,"添加成功",true);
  78. }catch (Exception e){
  79. return new Result(10001,"添加失败",false);
  80. }
  81. }
  82. @Override
  83. public Result getGroupByUserId(Integer userId) {
  84. List<AccountGroup> accountId = accountGroupMapper.selectList(new QueryWrapper<AccountGroup>().eq("account_id", userId));
  85. List<Integer> collect = accountId.stream().map(AccountGroup::getGroupId).collect(Collectors.toList());
  86. return new Result(ResultCode.SUCCESS,collect);
  87. }
  88. }