From d08acc96d37e12dfe6129b2b7c2c408ec017b681 Mon Sep 17 00:00:00 2001 From: swb <jpy123456> Date: Fri, 06 Sep 2024 11:12:03 +0800 Subject: [PATCH] fix:修改立行立改责任主体 --- screen-manage/src/main/java/com/moral/api/service/impl/ResponsibilityUnitServiceImpl.java | 80 +++++++++++++++++++++++++++++++++++++--- 1 files changed, 74 insertions(+), 6 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ResponsibilityUnitServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ResponsibilityUnitServiceImpl.java index 753a2ce..32b9a1a 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/ResponsibilityUnitServiceImpl.java +++ b/screen-manage/src/main/java/com/moral/api/service/impl/ResponsibilityUnitServiceImpl.java @@ -1,6 +1,7 @@ package com.moral.api.service.impl; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; @@ -8,11 +9,15 @@ import org.springframework.web.context.request.ServletRequestAttributes; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; +import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.function.Predicate; + import javax.servlet.http.HttpServletRequest; import com.alibaba.fastjson.JSONArray; @@ -20,9 +25,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.fasterxml.jackson.datatype.jsr310.ser.YearSerializer; import com.moral.api.entity.ResponsibilityUnit; import com.moral.api.entity.SysArea; import com.moral.api.mapper.ResponsibilityUnitMapper; +import com.moral.api.pojo.dto.responsibilityUnit.ResponsibilityUnitQuery; import com.moral.api.pojo.redisBean.AccountInfoDTO; import com.moral.api.service.ResponsibilityUnitService; import com.moral.api.service.SysAreaService; @@ -82,19 +89,21 @@ // wrapper.eq("is_invalid",0); int page = Integer.parseInt(parameters.get("page").toString()); int size = Integer.parseInt(parameters.get("size").toString()); - Object parentName1 = parameters.get("parentCode"); - Object areaName1 = parameters.get("areaCode"); + Object unitId = parameters.get("unitId"); +// Object parentName1 = parameters.get("parentCode"); +// Object areaName1 = parameters.get("areaCode"); //������������������ if (!ObjectUtils.isEmpty(parameters.get("name"))){ wrapper.like("unit_name",parameters.get("name").toString()); } - //������������������ +/* //������������������ if (!ObjectUtils.isEmpty(parentName1)){ wrapper.eq("parent_code",Integer.parseInt(parentName1.toString())); - } + }*/ //������������������ - if (!ObjectUtils.isEmpty(areaName1)){ - wrapper.eq("parent_code",Integer.parseInt(areaName1.toString())); + if (!ObjectUtils.isEmpty(unitId)){ +// List<String> list = Arrays.asList(unitId.toString().split(",")); + wrapper.eq("unit_id",unitId.toString()); } Page<ResponsibilityUnit> pageList = new Page<>(page, size); Page<ResponsibilityUnit> responsibilityUnitPage = responsibilityUnitMapper.selectPage(pageList, wrapper); @@ -183,6 +192,65 @@ } + @Override + public List<ResponsibilityUnitQuery> unitQuery() { + List<ResponsibilityUnit> responsibilityUnits = responsibilityUnitMapper.selectList(null); + ArrayList<ResponsibilityUnitQuery> sysAreas = new ArrayList<>(); + for (ResponsibilityUnit responsibilityUnit : responsibilityUnits) { + ResponsibilityUnitQuery responsibilityUnitQuery = new ResponsibilityUnitQuery(); + BeanUtils.copyProperties(responsibilityUnit,responsibilityUnitQuery); + sysAreas.add(responsibilityUnitQuery); + } + Map<Integer, Integer> areaMap1 = new HashMap<>(); + Map<Integer, ResponsibilityUnitQuery> areaMap = new HashMap<>(); + for (ResponsibilityUnitQuery responsibilityUnitQuery : sysAreas) { + if (responsibilityUnitQuery.getUnitName().equals("������������")){ + areaMap1.put(responsibilityUnitQuery.getAreaCode(), responsibilityUnitQuery.getUnitId()); + responsibilityUnitQuery.setUnitId(responsibilityUnitQuery.getAreaCode()); + responsibilityUnitQuery.setUnitName("������������������������"); + } + if (responsibilityUnitQuery.getUnitName().equals("������������������")){ + areaMap1.put(responsibilityUnitQuery.getAreaCode(),responsibilityUnitQuery.getUnitId()); + responsibilityUnitQuery.setUnitId(responsibilityUnitQuery.getAreaCode()); + responsibilityUnitQuery.setUnitName("������������������������"); + } + areaMap.put(responsibilityUnitQuery.getAreaCode(), responsibilityUnitQuery); + responsibilityUnitQuery.setChildren(new ArrayList<>());//���������children������ + } + //������������������������������������������������������������������������������������ + for (int i = 0; i < sysAreas.size(); i++) { + ResponsibilityUnitQuery responsibilityUnitQuery = sysAreas.get(i); + Integer parentCode = responsibilityUnitQuery.getParentCode(); + ResponsibilityUnitQuery parentArea = areaMap.get(parentCode); + + if (responsibilityUnitQuery.getAreaCode().equals(210381)|| responsibilityUnitQuery.getAreaCode().equals(320900)){ + Integer integer = areaMap1.get(responsibilityUnitQuery.getAreaCode()); + ResponsibilityUnitQuery rsUnitQuery = new ResponsibilityUnitQuery(); + rsUnitQuery.setUnitId(integer); + rsUnitQuery.setParentCode(responsibilityUnitQuery.getParentCode()); + if (responsibilityUnitQuery.getAreaCode().equals(210381)){ + rsUnitQuery.setUnitName("������������������"); + }else { + rsUnitQuery.setUnitName("������������"); + } + rsUnitQuery.setAreaCode(responsibilityUnitQuery.getAreaCode()); + rsUnitQuery.setChildren(new ArrayList<>()); + List<ResponsibilityUnitQuery> children = responsibilityUnitQuery.getChildren(); + children.add(rsUnitQuery); + responsibilityUnitQuery.setChildren(children); + } + if (ObjectUtils.isEmpty(parentArea)){ + continue; + } + List<ResponsibilityUnitQuery> children = parentArea.getChildren(); + children.add(responsibilityUnitQuery); + sysAreas.remove(responsibilityUnitQuery); + i--; + } + return sysAreas; + + } + /** * ������������������ -- Gitblit v1.8.0