From dbaee59a4cc2b5498af17eda8bb14eb0020e4063 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 23 五月 2025 22:41:02 +0800 Subject: [PATCH] Merge remote-tracking branch '喜望/dev-2.0.1' into dev-2.0.1 --- springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java | 64 ++++++++++++++++++++++++++++++- 1 files changed, 61 insertions(+), 3 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java index 60a458d..5668ce1 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ComplaintRejectController.java @@ -2,10 +2,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage; +import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo; +import com.panzhihua.sangeshenbian.model.entity.SystemUserLevel; import com.panzhihua.sangeshenbian.model.query.ComplaintRejectQuery; import com.panzhihua.sangeshenbian.model.vo.ComplaintRejectVo; import com.panzhihua.sangeshenbian.service.IComplaintRejectService; +import com.panzhihua.sangeshenbian.service.ISystemUserLevelService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; @@ -13,6 +17,9 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -25,17 +32,68 @@ @RestController @RequestMapping("/complaint-reject") @Api -public class ComplaintRejectController { +public class ComplaintRejectController extends BaseController { @Resource private IComplaintRejectService complaintRejectService; + @Resource + private ISystemUserLevelService systemUserLevelService; @GetMapping("/list") @ApiOperation(value = "获取问题驳回统计列表", tags = {"三个身边后台-问题驳回统计"}) public R<IPage<ComplaintRejectVo>> list(ComplaintRejectQuery query){ + SystemUserVo loginUserInfoSanGeShenBian = getLoginUserInfoSanGeShenBian(); + Integer id = loginUserInfoSanGeShenBian.getId(); + List<SystemUserLevel> listBySystemUsers = systemUserLevelService.getListBySystemUserId(id); + SystemUserLevel systemUserLevel = listBySystemUsers.stream().filter(e -> e.getLevel() == 1).findFirst().orElse(null); + List<String> districtsCodes=new ArrayList<>(); + List<String> streetIds=new ArrayList<>(); + List<Long> communityIds=new ArrayList<>(); + // 看是否直接是市级账号 + if(systemUserLevel==null){ + // 不是市级 查看是否是区县账号 + List<SystemUserLevel> systemUserLevels2 = listBySystemUsers.stream().filter(e -> e.getLevel() == 2).collect(Collectors.toList()); + if(!systemUserLevels2.isEmpty()){ + // 区县账号 找出code + districtsCodes = systemUserLevels2.stream().map(SystemUserLevel::getDistrictsCode).collect(Collectors.toList()); + }else { + districtsCodes.add("-1"); + } - IPage<ComplaintRejectVo> list = complaintRejectService.getComplaintRejectList(query); - return R.ok(list); + List<SystemUserLevel> systemUserLevels3 = listBySystemUsers.stream().filter(e -> e.getLevel() == 3).collect(Collectors.toList()); + if(!systemUserLevels3.isEmpty()){ + // 街道账号 找出id 且不在上面的区县下的街道 + List<String> finalDistrictsCodes1 = districtsCodes; + streetIds = systemUserLevels3.stream().filter(e -> !finalDistrictsCodes1.contains(e.getDistrictsCode())).map(SystemUserLevel::getStreetId).collect(Collectors.toList()); + if(streetIds.isEmpty()){ + streetIds.add("-1"); + } + }else { + streetIds.add("-1"); + } + + List<SystemUserLevel> systemUserLevels4 = listBySystemUsers.stream().filter(e -> e.getLevel() == 4).collect(Collectors.toList()); + if(!systemUserLevels4.isEmpty()){ + // community账号 找出id 且不在上面的街道下的社区 + List<String> finalStreetIds1 = streetIds; + List<String> finalDistrictsCodes2 = districtsCodes; + communityIds = systemUserLevels4.stream().filter(e -> !finalStreetIds1.contains(e.getStreetId()) && !finalDistrictsCodes2.contains(e.getDistrictsCode())).map(SystemUserLevel::getCommunityId).collect(Collectors.toList()); + }else { + communityIds.add(-1L); + } + List<String> finalDistrictsCodes = districtsCodes; + List<String> finalStreetIds = streetIds; + List<Long> finalCommunityIds = communityIds; + IPage<ComplaintRejectVo> list = complaintRejectService.getComplaintRejectListOther(query,finalDistrictsCodes,finalStreetIds,finalCommunityIds); + return R.ok(list); + }else { + IPage<ComplaintRejectVo> list = complaintRejectService.getComplaintRejectList(query); + return R.ok(list); + } + + + + } -- Gitblit v1.7.1