From f9f8f90ac63d6ce3274410d3721b173f40db6e41 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Fri, 25 Aug 2023 14:12:48 +0800 Subject: [PATCH] chore:过滤海城小时数据 --- screen-manage/src/main/java/com/moral/api/service/impl/MenuServiceImpl.java | 123 ++++++++++++++++++++++++++++++++++------- 1 files changed, 102 insertions(+), 21 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/MenuServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/MenuServiceImpl.java index 137a78a..ea017d0 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/MenuServiceImpl.java +++ b/screen-manage/src/main/java/com/moral/api/service/impl/MenuServiceImpl.java @@ -17,8 +17,11 @@ import com.moral.api.service.GroupService; import com.moral.api.service.MenuService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.moral.api.util.CompareFieldUtils; +import com.moral.api.util.LogUtils; import com.moral.constant.Constants; import com.moral.constant.ResponseCodeEnum; +import com.moral.pojo.CompareFieldResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -86,7 +89,7 @@ List<Menu> ownMenus = menuMapper.getMenusByGroupId(group.getId()); /*������������������������������������������������������������ - * ���������������������������������������������������������������������������������������������������������*/ + * ���������������������������������������������������������������������������������������������������������*/ removeMenuWithChildren(ownMenus); //������������������ @@ -121,9 +124,10 @@ dto.setMsg(ResponseCodeEnum.MENU_IS_EXIST.getMsg()); return dto; } - //������������������ menuMapper.insert(menu); + //������������ + insertLog(menu); //������������������ dto.setMenu(menu); dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); @@ -160,10 +164,24 @@ UpdateWrapper deleteGroupMenuWrapper = new UpdateWrapper(); List<Integer> allMenuIds = new ArrayList<>(); allMenuIds.add(id); - allMenuIds.addAll(childrenIds); - deleteGroupMenuWrapper.in("menu_id",allMenuIds); - deleteGroupMenuWrapper.set("is_delete",Constants.DELETE); - groupMenuMapper.update(null,deleteGroupMenuWrapper); + if (!ObjectUtils.isEmpty(childrenIds)) { + allMenuIds.addAll(childrenIds); + } + deleteGroupMenuWrapper.in("menu_id", allMenuIds); + deleteGroupMenuWrapper.set("is_delete", Constants.DELETE); + groupMenuMapper.update(null, deleteGroupMenuWrapper); + //������������ + StringBuilder content = new StringBuilder(); + if (existMenu.getParentId().equals(0)) + content.append("���������������������" + existMenu.getName() + ";"); + else + content.append("���������������������" + existMenu.getName() + ";"); + if (!ObjectUtils.isEmpty(childrenIds)) { + for (Integer childrenId : childrenIds) { + content.append("������������������" + menuMapper.selectById(childrenId).getName() + ";"); + } + } + LogUtils.saveOperationForManage(content.toString(), Constants.DELETE_OPERATE_TYPE); //������������������ dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); @@ -193,6 +211,8 @@ menuMapper.updateById(menu); //������������������������ menu = menuMapper.selectById(menu.getId()); + //������������ + updateLog(oldMenu, menu); //������������������ dto.setMenu(menu); dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); @@ -243,13 +263,13 @@ /** - * @Description: ������������������������������������������������������ - * @Param: [menus] - * @return: java.util.List<com.moral.api.entity.Menu> - * @Author: ��������� - * @Date: 2021/5/13 - */ - public void combinationParentChildrenMenus(List<Menu> menus){ + * @Description: ������������������������������������������������������ + * @Param: [menus] + * @return: java.util.List<com.moral.api.entity.Menu> + * @Author: ��������� + * @Date: 2021/5/13 + */ + private void combinationParentChildrenMenus(List<Menu> menus) { //������menu������������ Map<Integer, Menu> menuMap = new HashMap<>(); for (Menu menu : menus) { @@ -349,13 +369,13 @@ } /** - * @Description: ������������������������������ - * @Param: [menus] - * @return: java.util.List<com.moral.api.entity.Menu> - * @Author: ��������� - * @Date: 2021/5/28 - */ - private void removeMenuWithChildren(List<Menu> menus){ + * @Description: ������������������������������ + * @Param: [menus] + * @return: java.util.List<com.moral.api.entity.Menu> + * @Author: ��������� + * @Date: 2021/5/28 + */ + private void removeMenuWithChildren(List<Menu> menus) { //������������������ QueryWrapper wrapper = new QueryWrapper(); wrapper.eq("is_delete", Constants.NOT_DELETE); @@ -373,11 +393,72 @@ menus.removeIf(new Predicate<Menu>() { @Override public boolean test(Menu menu) { - if(ObjectUtils.isEmpty(menuMap.get(menu.getId()).getChildren())) + if (ObjectUtils.isEmpty(menuMap.get(menu.getId()).getChildren())) return false; return true; } }); } + /** + * @Description: ������������������������ + * @Param: [oldMenu, newMenu] + * @return: void + * @Author: ��������� + * @Date: 2021/8/24 + */ + private void updateLog(Menu oldMenu, Menu newMenu) { + List<CompareFieldResult> compareResult = CompareFieldUtils.compare(Menu.class, oldMenu, newMenu); + for (CompareFieldResult result : compareResult) { + //parentId��������������� + if (result.getFieldName().equals("parentId")) { + //���������id������������������ + String oldData = result.getOldData(); + String newData = result.getNewData(); + + if (!oldData.equals("0")) + oldData = menuMapper.selectById(Integer.parseInt(oldData)).getName(); + else + oldData = "null"; + + if (!newData.equals("0")) + newData = menuMapper.selectById(Integer.parseInt(newData)).getName(); + else + newData = "null"; + + result.setNewData(newData); + result.setOldData(oldData); + result.setFieldAnnoName("���������"); + } + } + String content = CompareFieldUtils.resultsConvertContent(compareResult, "���������������������"); + LogUtils.saveOperationForManage(content, Constants.UPDATE_OPERATE_TYPE); + } + + /** + * @Description: ������������������������ + * @Param: [menu] + * @return: void + * @Author: ��������� + * @Date: 2021/8/24 + */ + private void insertLog(Menu menu) { + StringBuilder content = new StringBuilder(); + //������������������������������������������ + if (menu.getParentId().equals(0)) { + content.append("������������������������;"); + } else { + content.append("������������������������;"); + //���������������id������������������ + Menu parentMenu = menuMapper.selectById(menu.getParentId()); + content.append("������������" + parentMenu.getName() + ";"); + } + content.append("���������" + menu.getName() + ";"); + if (menu.getUrl() != null) + content.append("url���" + menu.getUrl() + ";"); + content.append("���������" + menu.getOrder() + ";"); + LogUtils.saveOperationForManage(content.toString(), Constants.INSERT_OPERATE_TYPE); + } + } + -- Gitblit v1.8.0