From 199971c2c2f20e22fdfb088b11caeaee1e523c2f Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Tue, 13 Apr 2021 14:26:11 +0800 Subject: [PATCH] 添加角色新增日志 --- screen-manage/src/main/java/com/moral/api/service/ManageMenuService.java | 2 screen-manage/src/main/java/com/moral/api/controller/ManageMenuController.java | 11 +++ screen-manage/src/main/resources/application-dev.yml | 8 -- screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java | 27 +++++++++ screen-manage/src/main/java/com/moral/api/controller/ManageRoleController.java | 11 ++- screen-manage/src/main/java/com/moral/api/mapper/ManageMenuMapper.java | 2 screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleServiceImpl.java | 57 +++++++++++++------ screen-manage/src/main/resources/mapper/ManageMenuMapper.xml | 11 +++ 8 files changed, 102 insertions(+), 27 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/controller/ManageMenuController.java b/screen-manage/src/main/java/com/moral/api/controller/ManageMenuController.java index c9d1342..e5e7990 100644 --- a/screen-manage/src/main/java/com/moral/api/controller/ManageMenuController.java +++ b/screen-manage/src/main/java/com/moral/api/controller/ManageMenuController.java @@ -137,4 +137,15 @@ List<ManageMenu> re = manageMenuService.getManageMenuByNameFuzzy(parameters); return ResultMessage.ok(re); } + + @ApiOperation(value = "������roleId������������", notes = "������roleId������������") + @ApiImplicitParams({ + @ApiImplicitParam(name = "roleId", value = "������id", required = true, paramType = "query", dataType = "int") + }) + @RequestMapping(value = "getManageMenuByRoleId", method = RequestMethod.GET) + public ResultMessage getManageMenuByRoleId(HttpServletRequest request) { + Map<String, Object> parameters = getParametersStartingWith(request, null); + List<ManageMenu> result = manageMenuService.getManageMenuByRoleId(Integer.parseInt(parameters.get("roleId").toString())); + return ResultMessage.ok(result); + } } 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 0fb5f4a..e56cf48 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 @@ -1,12 +1,13 @@ package com.moral.api.controller; import com.alibaba.fastjson.JSON; -import com.moral.api.entity.ManageMenu; import com.moral.api.entity.ManageRole; -import com.moral.api.service.ManageMenuService; +import com.moral.api.pojo.dto.login.AccountInfoDTO; import com.moral.api.service.ManageRoleMenuService; import com.moral.api.service.ManageRoleService; +import com.moral.constant.ResponseCodeEnum; import com.moral.constant.ResultMessage; +import com.moral.util.TokenUtils; import com.moral.util.WebUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -14,6 +15,7 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -36,6 +38,9 @@ @Autowired private ManageRoleMenuService manageRoleMenuService; + @Autowired + private RedisTemplate redisTemplate; + @ApiOperation(value = "������������������", notes = "������������������") @ApiImplicitParams({ @ApiImplicitParam(name = "current", value = "������", required = true, paramType = "query", dataType = "int"), @@ -56,7 +61,7 @@ }) @RequestMapping(value = "insertOneManageRole", method = RequestMethod.POST) @ResponseBody - public ResultMessage insertOneManageRole(@RequestBody Map<String, Object> parameters) { + public ResultMessage insertOneManageRole(@RequestBody Map<String, Object> parameters,HttpServletRequest request) { List list = new ArrayList(); if (parameters.get("menuIds") != null){ String menuIdsStr = parameters.get("menuIds").toString(); diff --git a/screen-manage/src/main/java/com/moral/api/mapper/ManageMenuMapper.java b/screen-manage/src/main/java/com/moral/api/mapper/ManageMenuMapper.java index 93155b2..ebacfb4 100644 --- a/screen-manage/src/main/java/com/moral/api/mapper/ManageMenuMapper.java +++ b/screen-manage/src/main/java/com/moral/api/mapper/ManageMenuMapper.java @@ -34,4 +34,6 @@ List<ManageMenu> getManageRoleByNameFuzzy(Map map); + List<ManageMenu> getManageMenuByRoleId(int roleId); + } diff --git a/screen-manage/src/main/java/com/moral/api/service/ManageMenuService.java b/screen-manage/src/main/java/com/moral/api/service/ManageMenuService.java index 3915f76..f696784 100644 --- a/screen-manage/src/main/java/com/moral/api/service/ManageMenuService.java +++ b/screen-manage/src/main/java/com/moral/api/service/ManageMenuService.java @@ -32,6 +32,8 @@ List<ManageMenu> getAllMenus(); + List<ManageMenu> getManageMenuByRoleId(int roleId); + List<ManageMenu> getManageMenuByNameFuzzy(Map map); List<ManageMenu> getParentChildrenMenusByRoles(List<ManageRole> roles); 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 35b3607..3b0d4bf 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 @@ -141,6 +141,33 @@ } @Override + public List<ManageMenu> getManageMenuByRoleId(int roleId) { + List<ManageMenu> manageMenus = manageMenuMapper.getManageMenuByRoleId(roleId); + System.out.println(manageMenus); + if(ObjectUtils.isEmpty(manageMenus)) + return null; + Map<Integer, ManageMenu> menusMap = new HashMap<>(); + for (ManageMenu menu : manageMenus) { + menu.setChildren(new ArrayList<>());//��������� + menusMap.put(menu.getId(), menu); + } + for (ManageMenu menu : manageMenus) { + combinationParentChildrenMenus(menusMap, menu); + } + + //������������������������������������parentId������0������������������������ + manageMenus.removeIf(new Predicate<ManageMenu>() { + @Override + public boolean test(ManageMenu manageMenu) { + if(manageMenu.getParentId().equals(0)) + return false; + return true; + } + }); + return manageMenus; + } + + @Override public List<ManageMenu> getManageMenuByNameFuzzy(Map map) { Map limitMap = new HashMap(); limitMap.put("name", map.get("name")); 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 b0bf07e..2509d63 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 @@ -2,13 +2,18 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.moral.api.entity.ManageAccount; import com.moral.api.entity.ManageAccountRole; +import com.moral.api.entity.ManageLog; import com.moral.api.entity.ManageRole; import com.moral.api.mapper.ManageAccountRoleMapper; +import com.moral.api.mapper.ManageLogMapper; import com.moral.api.mapper.ManageRoleMapper; import com.moral.api.mapper.ManageRoleMenuMapper; +import com.moral.api.pojo.dto.login.AccountInfoDTO; import com.moral.api.service.ManageRoleService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.moral.api.util.LogUtils; import com.moral.constant.Constants; import com.moral.constant.ResponseCodeEnum; import org.springframework.beans.factory.annotation.Autowired; @@ -16,8 +21,11 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.StringUtils; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import java.text.SimpleDateFormat; import java.util.*; @@ -49,6 +57,9 @@ @Autowired(required = false) private ManageAccountRoleMapper manageAccountRoleMapper; + + @Autowired + LogUtils logUtils; @Override public Map<String,Object> getAllWithPagingQuery(Map map) { @@ -86,7 +97,7 @@ @Override @Transactional - public Map<String,Object> insertOne(ManageRole manageRole,List list) { + public Map<String,Object> insertOne(ManageRole manageRole, List list) { Map<String,Object> resultMap = new HashMap<>(); if (manageRole.getName()==null){ resultMap.put("code",ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode()); @@ -96,24 +107,28 @@ if (manageRoleMapper.getManageRoleByName(manageRole.getName()) != null){ resultMap.put("code",ResponseCodeEnum.ROLE_IS_EXPIRE.getCode()); resultMap.put("msg",ResponseCodeEnum.ROLE_IS_EXPIRE.getMsg()); - }else { - manageRoleMapper.insertOne(manageRole); - resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode()); - resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg()); + return resultMap; } - Integer code = Integer.parseInt(resultMap.get("code").toString()); - if (code.equals(ResponseCodeEnum.SUCCESS.getCode())){ - ManageRole manageRoleIns = manageRoleMapper.getManageRoleByName(manageRole.getName()); - int role_id = manageRoleIns.getId(); - List insertList = new ArrayList(); - for (Object temp: list) { - Map<String,Integer> insertMap = new HashMap<>(); - insertMap.put("role_id",role_id); - insertMap.put("menu_id",Integer.parseInt(temp.toString())); - insertList.add(insertMap); - } + manageRoleMapper.insertOne(manageRole); + ManageRole manageRoleIns = manageRoleMapper.getManageRoleByName(manageRole.getName()); + int role_id = manageRoleIns.getId(); + List insertList = new ArrayList(); + for (Object temp: list) { + Map<String,Integer> insertMap = new HashMap<>(); + insertMap.put("role_id",role_id); + insertMap.put("menu_id",Integer.parseInt(temp.toString())); + insertList.add(insertMap); + } + //��������������������������������������������� + if (insertList.size()>0){ manageRoleMenuMapper.insertBatch(insertList); } + //������������������ + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String content = "������������:"+manageRole.getName()+";"; + logUtils.saveOperationForManage(request,content,"1"); + resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode()); + resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg()); return resultMap; } @@ -188,12 +203,18 @@ Map deleteMap = new HashMap(); deleteMap.put("id",Integer.parseInt(map.get("id").toString())); deleteMap.put("is_delete",1); - manageRoleMapper.updateManageRoleById(deleteMap); + //manageRoleMapper.updateManageRoleById(deleteMap); ManageAccountRole manageAccountRole = new ManageAccountRole(); manageAccountRole.setIsDelete("1"); QueryWrapper<ManageAccountRole> wrapper = new QueryWrapper(); wrapper.eq("role_id",Integer.parseInt(map.get("id").toString())); - manageAccountRoleMapper.update(manageAccountRole,wrapper); + //manageAccountRoleMapper.update(manageAccountRole,wrapper); + //������������������ + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + ManageRole manageRole1 = manageRoleMapper.selectById(Integer.parseInt(map.get("id").toString())); + System.out.println(manageRole1); + String content = "������������:"+manageRole.getName()+";"; + //logUtils.saveOperationForManage(request,content,"1"); resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode()); resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg()); } diff --git a/screen-manage/src/main/resources/application-dev.yml b/screen-manage/src/main/resources/application-dev.yml index 2c657e4..8bb2db8 100644 --- a/screen-manage/src/main/resources/application-dev.yml +++ b/screen-manage/src/main/resources/application-dev.yml @@ -122,14 +122,10 @@ - /verificationCode/** - /system/** - - /role/getAllManageRole - - /role/getManageRoleByNameFuzzy - - /role/insertOneManageRole - - /role/updateManageRole - - /role/updateRoleMenu - - /role/deleteManageRole + - /role/** - /menu/getAllManageMenu - /menu/getManageMenuByNameFuzzy + - /menu/getManageMenuByRoleId - /api/** AES: KEY: diff --git a/screen-manage/src/main/resources/mapper/ManageMenuMapper.xml b/screen-manage/src/main/resources/mapper/ManageMenuMapper.xml index 1ba6ee4..41a065c 100644 --- a/screen-manage/src/main/resources/mapper/ManageMenuMapper.xml +++ b/screen-manage/src/main/resources/mapper/ManageMenuMapper.xml @@ -142,4 +142,15 @@ limit #{start},#{number} </select> + <select id="getManageMenuByRoleId" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List"></include> + FROM manage_menu mm + JOIN manage_role_menu mrm + ON mm.id = mrm.menu_id AND mrm.is_delete = 0 + JOIN manage_role mr + ON mr.id = mrm.role_id and mr.id = #{roleId} + WHERE mm.is_delete = 0 + </select> + </mapper> \ No newline at end of file -- Gitblit v1.8.0