From 0aea8bd18daaaf91e622fdcfdd81dbb2e1b4860c Mon Sep 17 00:00:00 2001 From: swb <jpy123456> Date: Mon, 21 Oct 2024 09:01:18 +0800 Subject: [PATCH] fix:立行立改责任主体修改提交 --- screen-manage/src/main/java/com/moral/api/service/impl/SysAreaServiceImpl.java | 74 ++++++++++++++++++++++++++++++++++++ 1 files changed, 73 insertions(+), 1 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SysAreaServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SysAreaServiceImpl.java index 9e2c03a..434226e 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/SysAreaServiceImpl.java +++ b/screen-manage/src/main/java/com/moral/api/service/impl/SysAreaServiceImpl.java @@ -2,10 +2,13 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.moral.api.entity.SysArea; import com.moral.api.mapper.SysAreaMapper; import com.moral.api.service.SysAreaService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; @@ -26,6 +29,7 @@ * @since 2021-04-07 */ @Service +@Slf4j public class SysAreaServiceImpl extends ServiceImpl<SysAreaMapper, SysArea> implements SysAreaService { @Autowired @@ -43,6 +47,68 @@ return sysAreas; } + @Override + public SysArea select(Integer code) { + QueryWrapper<SysArea> wrapper = new QueryWrapper<>(); + wrapper.eq("area_code",code); + SysArea sysArea = sysAreaMapper.selectOne(wrapper); + return sysArea; + } + + /** + * ��������������������������������� + * + * @return + */ + @Override + public List<SysArea> queryCity() { + //������������������ + List<SysArea> sysAreas = sysAreaMapper.selectList(null); + //������Map key������������ value��������������� ��������������� + Map<Integer, SysArea> areaMap = new HashMap<>(); + for (SysArea sysArea : sysAreas) { + areaMap.put(sysArea.getAreaCode(), sysArea); + sysArea.setChildren(new ArrayList<>());//���������children������ + } + //������������������������������������������������������������������������������������ + int i=0; + for (SysArea sysArea : sysAreas) { + Integer parentCode = sysArea.getParentCode(); + String s = sysArea.getAreaCode().toString(); + if (!parentCode.equals(0)) { + if (s.length()>7){ + continue; + } + SysArea parentArea = areaMap.get(parentCode); + if (ObjectUtils.isEmpty(parentArea)){ + continue; + } + List<SysArea> children = parentArea.getChildren(); + children.add(sysArea); +// parentArea.getChildren().add(sysArea); + } + } + //��������������������������������� + sysAreas.removeIf(new Predicate<SysArea>() { + @Override + public boolean test(SysArea sysArea) { + if (sysArea.getParentCode().equals(0)) + return false; + return true; + } + }); + return sysAreas; + } + + @Override + public List<SysArea> selectCode(Integer code) { + QueryWrapper<SysArea> wrapper = new QueryWrapper<>(); + wrapper.eq("parent_code",code); + List<SysArea> sysAreas = sysAreaMapper.selectList(wrapper); + return sysAreas; + + } + private List<SysArea> querySysAreaFromDB() { //������������������ @@ -58,7 +124,13 @@ Integer parentCode = sysArea.getParentCode(); if (!parentCode.equals(0)) { SysArea parentArea = areaMap.get(parentCode); - parentArea.getChildren().add(sysArea); + if (ObjectUtils.isEmpty(parentArea)){ + continue; + } + List<SysArea> children = parentArea.getChildren(); + children.add(sysArea); +// parentArea.getChildren().add(sysArea); + } } //��������������������������������� -- Gitblit v1.8.0