From 41622b7aa1d948040b0f8ea024aece42d5a518a2 Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Wed, 25 Aug 2021 09:29:05 +0800
Subject: [PATCH] screen-api                 SQL优化 screen-manage                日志模块更新,SQL优化

---
 screen-api/src/main/java/com/moral/api/service/impl/GroupServiceImpl.java |   68 +++++++++++++++++++--------------
 1 files changed, 39 insertions(+), 29 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 f37282e..254c76f 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
@@ -2,6 +2,7 @@
 
 
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
@@ -49,8 +50,14 @@
     @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);
         Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization");
@@ -66,34 +73,39 @@
         }
         group.setOrganizationId(orgId);
         groupMapper.insert(group);
+
         //������
-        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
         String content = "���������������" + group.getGroupName();
-        OperationLogUtils.insertLog(request, content);
+        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 = "���������������" + group.getGroupName();
-        OperationLogUtils.insertLog(request, content);
+        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);
         Map<String, Object> orgInfo = (Map<String, Object>) currentUserInfo.get("organization");
@@ -111,20 +123,23 @@
         group.setOrganizationId(orgId);
         groupMapper.updateById(group);
         //������
-        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
-        String content = "���������������" + group.getGroupName();
-        OperationLogUtils.insertLog(request, content);
+        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());
+        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", orgId)
-                .eq("is_delete", Constants.NOT_DELETE);
+                .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");
@@ -133,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)) {
@@ -159,4 +165,8 @@
         return pageData;
     }
 
+    @Override
+    public Map<String, Object> getGroup(Integer userId) {
+        return groupMapper.selectUserGroup(userId);
+    }
 }

--
Gitblit v1.8.0