From 11d10fc9ca90ec29159738c1eac5e2d9203d8bb6 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Wed, 28 Jul 2021 09:14:12 +0800
Subject: [PATCH] screen-api                 kafka消费者组id从配置文件获取 screen-manage                 除admin角色外无法查看admin角色

---
 screen-api/src/main/java/com/moral/api/service/impl/GroupServiceImpl.java |   88 ++++++++++++++++++++++++++++++--------------
 1 files changed, 60 insertions(+), 28 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/service/impl/GroupServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/GroupServiceImpl.java
index 49a9833..166a709 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/GroupServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/GroupServiceImpl.java
@@ -4,6 +4,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -16,6 +17,7 @@
 import com.moral.api.mapper.UserGroupMapper;
 import com.moral.api.service.GroupService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.api.utils.OperationLogUtils;
 import com.moral.constant.Constants;
 import com.moral.constant.ResponseCodeEnum;
 import com.moral.util.ConvertUtils;
@@ -23,6 +25,10 @@
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
 
 /**
  * <p>
@@ -44,11 +50,18 @@
     @Autowired
     private UserGroupMapper userGroupMapper;
 
+    @Autowired
+    private OperationLogUtils operationLogUtils;
+
     @Override
-    public Map<String, Object> addGroup(Group group, String token) {
+    public Map<String, Object> addGroup(Group group) {
+        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
+        String token = request.getHeader("token");
+
         Map<String, Object> result = new HashMap<>();
         Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token);
-        Integer orgId = (int) currentUserInfo.get("organizationId");
+        Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization");
+        Integer orgId = (Integer) orgInfo.get("id");
         QueryWrapper<Group> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("group_name", group.getGroupName())
                 .eq("organization_id", orgId)
@@ -60,51 +73,73 @@
         }
         group.setOrganizationId(orgId);
         groupMapper.insert(group);
+
+        //������
+        String content = "���������������" + group.getGroupName();
+        operationLogUtils.insertLog(request, content, Constants.INSERT_OPERATE_TYPE);
         return result;
     }
 
     @Override
-    public void deleteGroup(Group group) {
+    public void deleteGroup(Integer id) {
         //������������group
-        group.setIsDelete(Constants.DELETE);
-        groupMapper.updateById(group);
-        //������������group_menu
+        UpdateWrapper<Group> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.eq("id", id).set("is_delete", Constants.DELETE);
+        groupMapper.update(null, updateWrapper);
+        //������group_menu
         UpdateWrapper<GroupMenu> deleteGroupWrapper = new UpdateWrapper<>();
-        deleteGroupWrapper.set("is_delete", Constants.DELETE).eq("group_id", group.getId());
-        groupMenuMapper.update(null, deleteGroupWrapper);
-        //������������user_group
+        deleteGroupWrapper.eq("group_id", id);
+        groupMenuMapper.delete(deleteGroupWrapper);
+        //������user_group
         UpdateWrapper<UserGroup> deleteUserGroupWrapper = new UpdateWrapper<>();
-        deleteUserGroupWrapper.set("is_delete", Constants.DELETE).eq("group_id", group.getId());
-        userGroupMapper.update(null, deleteUserGroupWrapper);
+        deleteUserGroupWrapper.eq("group_id", id);
+        userGroupMapper.delete(deleteUserGroupWrapper);
+        //������
+        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
+        String content = "���������������" + groupMapper.selectById(id).getGroupName();
+        operationLogUtils.insertLog(request, content, Constants.DELETE_OPERATE_TYPE);
     }
 
     @Override
-    public Map<String, Object> updateGroup(Group group, String token) {
+    public Map<String, Object> updateGroup(Group group) {
+        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
+        String token = request.getHeader("token");
+
+        String before = groupMapper.selectById(group.getId()).getGroupName();
         Map<String, Object> result = new HashMap<>();
         Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token);
-        Object organizationId = currentUserInfo.get("organizationId");
+        Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization");
+        Integer orgId = (Integer) orgInfo.get("id");
         QueryWrapper<Group> queryWrapper = new QueryWrapper<>();
         queryWrapper.ne("id", group.getId())
                 .eq("group_name", group.getGroupName())
                 .eq("is_delete", Constants.NOT_DELETE)
-                .eq("organization_id", organizationId);
+                .eq("organization_id", orgId);
         if (groupMapper.selectOne(queryWrapper) != null) {
             result.put("code", ResponseCodeEnum.GROUP_EXIST.getCode());
             result.put("msg", ResponseCodeEnum.GROUP_EXIST.getMsg());
             return result;
         }
-        group.setOrganizationId((int) organizationId);
+        group.setOrganizationId(orgId);
         groupMapper.updateById(group);
+        //������
+        String content = "���������������" + before + "=>" + group.getGroupName();
+        operationLogUtils.insertLog(request, content, Constants.UPDATE_OPERATE_TYPE);
         return result;
     }
 
     @Override
     public Page<Group> selectGroups(Map<String, Object> parameters) {
-        Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(parameters.get("token").toString());
-        Object organizationId = currentUserInfo.get("organizationId");
+        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
+        String token = request.getHeader("token");
+
+        Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token);
+        Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization");
+        Integer orgId = (Integer) orgInfo.get("id");
         QueryWrapper<Group> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("organization_id", organizationId)
-                .eq("is_delete", Constants.NOT_DELETE);
+        queryWrapper.eq("organization_id", orgId)
+                .eq("is_delete", Constants.NOT_DELETE)
+                .ne("group_name", "admin");
         Object order = parameters.get("order");
         Object orderType = parameters.get("orderType");
         Object groupName = parameters.get("groupName");
@@ -113,18 +148,9 @@
             queryWrapper.like("group_name", groupName);
         }
 
-        //������������
-        if (!parameters.containsKey("page")) {
-            parameters.put("page", 0);
-        }
-        if (!parameters.containsKey("size")) {
-            parameters.put("size", 10);
-        }
-
         int page = Integer.parseInt(parameters.get("page").toString());
         int size = Integer.parseInt(parameters.get("size").toString());
         Page<Group> pageData = new Page<>(page, size);
-        //������������,������id������
         //������������,������create_time������
         if (order != null && orderType != null) {
             if (Constants.ORDER_ASC.equals(orderType)) {
@@ -139,4 +165,10 @@
         return pageData;
     }
 
+    @Override
+    public List<Map<String, Object>> getGroupIds(Integer userId) {
+        Map<String, Object> params = new HashMap<>();
+        params.put("userId", userId);
+        return groupMapper.selectUserGroup(params);
+    }
 }

--
Gitblit v1.8.0