From 381d0465a589a1862e9d79394619ae4bcc04350b Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Wed, 07 Apr 2021 08:39:51 +0800
Subject: [PATCH] 角色功能修改

---
 screen-manage/src/main/resources/application-dev.yml                              |    3 +
 screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java |    1 
 screen-manage/src/main/java/com/moral/api/service/ManageRoleService.java          |    2 
 screen-manage/src/main/java/com/moral/api/controller/ManageRoleController.java    |   72 ++++++++++++++++++++----------------
 screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleServiceImpl.java |   36 ++++++++++++++---
 5 files changed, 73 insertions(+), 41 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/controller/ManageRoleController.java b/screen-manage/src/main/java/com/moral/api/controller/ManageRoleController.java
index b902599..c7b3c65 100644
--- a/screen-manage/src/main/java/com/moral/api/controller/ManageRoleController.java
+++ b/screen-manage/src/main/java/com/moral/api/controller/ManageRoleController.java
@@ -14,13 +14,11 @@
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
@@ -46,45 +44,53 @@
     @RequestMapping(value = "getAllManageRole", method = RequestMethod.GET)
     public ResultMessage getAllManageRole(HttpServletRequest request) {
         Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
-        List<ManageRole> re = manageRoleService.getAllWithPagingQuery(parameters);
+        Map<String,Object> re = manageRoleService.getAllWithPagingQuery(parameters);
         return ResultMessage.ok(re);
     }
 
     @ApiOperation(value = "������������", notes = "������������")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "name", value = "������", required = true, paramType = "query", dataType = "String"),
-            @ApiImplicitParam(name = "desc", value = "������", required = true, paramType = "query", dataType = "String")
+            @ApiImplicitParam(name = "desc", value = "������", required = true, paramType = "query", dataType = "String"),
+            @ApiImplicitParam(name = "menuIds", value = "������������", required = true, paramType = "query", dataType = "String")
     })
     @RequestMapping(value = "insertOneManageRole", method = RequestMethod.POST)
-    public ResultMessage insertOneManageRole(HttpServletRequest request) {
-        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
-        ManageRole manageRole = JSON.parseObject(JSON.toJSONString(parameters), ManageRole.class);
+    @ResponseBody
+    public ResultMessage insertOneManageRole(@RequestBody Map<String, Object> parameters) {
         List list = new ArrayList();
-        list.add(1);
-        list.add(2);
-        list.add(3);
-        list.add(4);
+        if (parameters.get("menuIds") != null){
+            String menuIdsStr = parameters.get("menuIds").toString();
+            menuIdsStr = menuIdsStr.replace(" ","");
+            if (menuIdsStr.length() > 2){
+                menuIdsStr = menuIdsStr.substring(1,menuIdsStr.length()-1);
+                String[] menuIdsArray = menuIdsStr.split(",");
+                list = Arrays.asList(menuIdsArray);
+            }
+            parameters.remove("menuIds");
+        }
+        ManageRole manageRole = JSON.parseObject(JSON.toJSONString(parameters), ManageRole.class);
         Map<String,Object> resultMap = manageRoleService.insertOne(manageRole,list);
         String msg = resultMap.get("msg").toString();
-        boolean flag = Boolean.parseBoolean(resultMap.get("flag").toString());
-        if (flag){
+        int code = Integer.parseInt(resultMap.get("code").toString());
+        if (code == 0){
             return ResultMessage.ok(msg);
         }
         return ResultMessage.fail(msg);
+        //return null;
     }
 
     @ApiOperation(value = "������������", notes = "������������")
     @ApiImplicitParams({
+            @ApiImplicitParam(name = "id", value = "������", required = true, paramType = "query", dataType = "int"),
             @ApiImplicitParam(name = "name", value = "������", required = true, paramType = "query", dataType = "String"),
             @ApiImplicitParam(name = "desc", value = "������", required = true, paramType = "query", dataType = "String")
     })
     @RequestMapping(value = "updateManageRole", method = RequestMethod.POST)
-    public ResultMessage updateManageRole(HttpServletRequest request) {
-        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
+    public ResultMessage updateManageRole(@RequestBody Map<String, Object> parameters) {
         Map<String,Object> resultMap = manageRoleService.updateManageRole(parameters);
         String msg = resultMap.get("msg").toString();
-        boolean flag = Boolean.parseBoolean(resultMap.get("flag").toString());
-        if (flag){
+        int code = Integer.parseInt(resultMap.get("code").toString());
+        if (code == 0){
             return ResultMessage.ok(msg);
         }
         return ResultMessage.fail(msg);
@@ -95,12 +101,11 @@
             @ApiImplicitParam(name = "id", value = "������", required = true, paramType = "query", dataType = "int")
     })
     @RequestMapping(value = "deleteManageRole", method = RequestMethod.POST)
-    public ResultMessage deleteManageRole(HttpServletRequest request) {
-        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
+    public ResultMessage deleteManageRole(@RequestBody Map<String, Object> parameters) {
         Map<String,Object> resultMap = manageRoleService.deleteManageRole(parameters);
         String msg = resultMap.get("msg").toString();
-        boolean flag = Boolean.parseBoolean(resultMap.get("flag").toString());
-        if (flag){
+        int code = Integer.parseInt(resultMap.get("code").toString());
+        if (code == 0){
             return ResultMessage.ok(msg);
         }
         return ResultMessage.fail(msg);
@@ -124,16 +129,19 @@
             @ApiImplicitParam(name = "id", value = "������", required = true, paramType = "query", dataType = "int")
     })
     @RequestMapping(value = "updateRoleMenu", method = RequestMethod.POST)
-    public ResultMessage updateRoleMenu(HttpServletRequest request) {
-        Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
-        int id = Integer.parseInt(parameters.get("id").toString());
+    public ResultMessage updateRoleMenu(@RequestBody Map<String, Object> parameters) {
         List list = new ArrayList();
-        //list.add(1);
-        //list.add(2);
-        list.add(3);
-        list.add(4);
-        list.add(5);
-        list.add(6);
+        if (parameters.get("menuIds") != null){
+            String menuIdsStr = parameters.get("menuIds").toString();
+            menuIdsStr = menuIdsStr.replace(" ","");
+            if (menuIdsStr.length() > 2){
+                menuIdsStr = menuIdsStr.substring(1,menuIdsStr.length()-1);
+                String[] menuIdsArray = menuIdsStr.split(",");
+                list = Arrays.asList(menuIdsArray);
+            }
+            parameters.remove("menuIds");
+        }
+        int id = Integer.parseInt(parameters.get("id").toString());
         Map<String,Object> re = manageRoleMenuService.updateRoleMenu(list,id);
         return ResultMessage.ok(re);
     }
diff --git a/screen-manage/src/main/java/com/moral/api/service/ManageRoleService.java b/screen-manage/src/main/java/com/moral/api/service/ManageRoleService.java
index 8b237d7..f3d6066 100644
--- a/screen-manage/src/main/java/com/moral/api/service/ManageRoleService.java
+++ b/screen-manage/src/main/java/com/moral/api/service/ManageRoleService.java
@@ -19,7 +19,7 @@
 public interface ManageRoleService extends IService<ManageRole> {
 
     @Transactional
-    List<ManageRole> getAllWithPagingQuery(Map map);
+    Map<String,Object> getAllWithPagingQuery(Map map);
 
     @Transactional
     Map<String,Object> insertOne(ManageRole manageRole,List list);
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java
index aff0a72..30cc241 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java
@@ -107,7 +107,6 @@
         limitMap.put("start",(Integer.parseInt(map.get("current").toString())-1)*Integer.parseInt(map.get("size").toString()));
         limitMap.put("number",Integer.parseInt(map.get("size").toString()));
         List<ManageMenu> manageMenus = manageMenuMapper.getDataWithPage(limitMap);
-        System.out.println(manageMenus);
         return manageMenus;
     }
 
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleServiceImpl.java
index 81aef52..a262230 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleServiceImpl.java
@@ -1,5 +1,6 @@
 package com.moral.api.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.moral.api.entity.ManageAccountRole;
 import com.moral.api.entity.ManageMenu;
@@ -18,10 +19,8 @@
 import org.springframework.util.StringUtils;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 /**
  * <p>
@@ -54,13 +53,36 @@
 
     @Override
     @Transactional
-    public List<ManageRole> getAllWithPagingQuery(Map map) {
-        com.baomidou.mybatisplus.extension.plugins.pagination.Page<ManageRole> page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(Integer.parseInt(map.get("current").toString()), Integer.parseInt(map.get("size").toString()));
+    public Map<String,Object> getAllWithPagingQuery(Map map) {
+        Map<String,Object> resultMap = new HashMap<>();
+        int current = Integer.parseInt(map.get("current").toString());
+        int size = Integer.parseInt(map.get("size").toString());
+        com.baomidou.mybatisplus.extension.plugins.pagination.Page<ManageRole> page = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(current, size);
         QueryWrapper<ManageRole> wrapper = new QueryWrapper();
         wrapper.eq("is_delete",0);
+        wrapper.orderByDesc("create_time");
         com.baomidou.mybatisplus.extension.plugins.pagination.Page resultpage = manageRoleMapper.selectPage(page,wrapper);
         List<ManageRole> manageRoles = resultpage.getRecords();
-        return manageRoles;
+        SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        List<Map<String,Object>> manageRolesList = new ArrayList<>();
+        for (ManageRole manageRole:manageRoles) {
+            Map manageRoleMap = JSON.parseObject(JSON.toJSONString(manageRole),Map.class);
+            String createTime = SDF.format(manageRole.getCreateTime());
+            String updateTime = SDF.format(manageRole.getUpdateTime());
+            manageRoleMap.put("createTime",createTime);
+            manageRoleMap.put("updateTime",updateTime);
+            manageRolesList.add(manageRoleMap);
+        }
+        resultMap.put("manageRoles",manageRolesList);
+        int totalNumber = manageRoleMapper.selectCount(wrapper);
+        resultMap.put("totalNumber",totalNumber);
+        resultMap.put("current",current);
+        int totalPageNumber = totalNumber/size;
+        if(totalNumber%size != 0){
+            totalPageNumber += 1;
+        }
+        resultMap.put("totalPageNumber",totalPageNumber);
+        return resultMap;
     }
 
     @Override
diff --git a/screen-manage/src/main/resources/application-dev.yml b/screen-manage/src/main/resources/application-dev.yml
index 092bb7a..ba63a0c 100644
--- a/screen-manage/src/main/resources/application-dev.yml
+++ b/screen-manage/src/main/resources/application-dev.yml
@@ -133,7 +133,10 @@
 
       - /role/getAllManageRole
       - /role/getManageRoleByNameFuzzy
+      - /role/insertOneManageRole
+      - /role/updateManageRole
       - /role/updateRoleMenu
+      - /role/deleteManageRole
       - /menu/getAllManageMenu
       - /menu/getManageMenuByNameFuzzy
 AES:

--
Gitblit v1.8.0