From a53cc42264c34fc93ce87f31eb9a2e613ac47f84 Mon Sep 17 00:00:00 2001 From: buaixuexideshitongxue <2936013465@qq.com> Date: Wed, 31 Dec 2025 11:40:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=89=E8=AE=BF=E6=B6=89=E8=AF=89--=E4=B8=8D?= =?UTF-8?q?=E5=B1=9E=E5=AE=9E=E7=9A=84=E6=83=85=E5=86=B5=E7=9A=84=E8=B4=A3?= =?UTF-8?q?=E4=BB=BB=E4=BA=BA=E6=95=B0=E6=8D=AE=E8=A7=84=E8=8C=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/ComplaintCollectionBlame.java | 30 --------- .../ComplaintCollectionServiceImpl.java | 61 +++++++++++++++++-- .../mapper/ComplaintCollectionBlameMapper.xml | 6 -- 3 files changed, 57 insertions(+), 40 deletions(-) diff --git a/src/main/java/com/biutag/supervision/pojo/entity/ComplaintCollectionBlame.java b/src/main/java/com/biutag/supervision/pojo/entity/ComplaintCollectionBlame.java index b9585f6..ad297c4 100644 --- a/src/main/java/com/biutag/supervision/pojo/entity/ComplaintCollectionBlame.java +++ b/src/main/java/com/biutag/supervision/pojo/entity/ComplaintCollectionBlame.java @@ -177,36 +177,6 @@ public class ComplaintCollectionBlame { private String gwf4; @TableField("gwf5") private String gwf5; - @TableField("gwf6") - private String gwf6; - @TableField("gwf7") - private String gwf7; - @TableField("gwf8") - private String gwf8; - @TableField("gwf9") - private String gwf9; - @TableField("gwf10") - private String gwf10; - @TableField("gwf11") - private String gwf11; - @TableField("gwf12") - private String gwf12; - @TableField("gwf13") - private String gwf13; - @TableField("gwf14") - private String gwf14; - @TableField("gwf15") - private String gwf15; - @TableField("gwf16") - private String gwf16; - @TableField("gwf17") - private String gwf17; - @TableField("gwf18") - private String gwf18; - @TableField("gwf19") - private String gwf19; - @TableField("gwf20") - private String gwf20; @Schema(description = "创建人") @TableField("create_by") diff --git a/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java b/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java index 86097fd..1f07784 100644 --- a/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java +++ b/src/main/java/com/biutag/supervision/service/complaintCollection/ComplaintCollectionServiceImpl.java @@ -3,6 +3,7 @@ package com.biutag.supervision.service.complaintCollection; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Opt; +import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson2.JSON; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -21,6 +22,7 @@ import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollection import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionQueryParam; import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionUpdateParam; import com.biutag.supervision.pojo.param.SupDepartQueryParam; +import com.biutag.supervision.pojo.param.SupPoliceQueryParam; import com.biutag.supervision.pojo.param.complaintCollectionBlame.ComplaintCollectionBlameQueryParam; import com.biutag.supervision.pojo.request.complaintCollection.*; import com.biutag.supervision.pojo.transfer.ComplaintCollectionTransfer; @@ -28,6 +30,7 @@ import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionPag import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionWatchDetailVO; import com.biutag.supervision.repository.complaintCollection.ComplaintCollectionResourceService; import com.biutag.supervision.repository.complaintCollectionBlame.ComplaintCollectionBlameResourceService; +import com.biutag.supervision.repository.supPolice.SupPoliceResourceService; import com.biutag.supervision.repository.supdepart.SupDepartResourceService; import com.biutag.supervision.service.*; import com.biutag.supervision.util.CodeTranslateUtil; @@ -39,6 +42,7 @@ import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -69,6 +73,7 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic private final SupDepartResourceService supDepartResourceService; private final ApplyCompletionAction applyCompletionAction; private final NegativeBlameService negativeBlameService; + private final SupPoliceResourceService supPoliceResourceService; @Override public Result addComplaintCollection(ComplaintCollectionAddRequest request) { @@ -83,7 +88,7 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic } ComplaintCollection complaintCollection = ComplaintCollectionTransfer.INSTANCE.addRequestToEntity(request); // 生成编号 - if (StrUtil.isBlank(complaintCollection.getOriginId())){ + if (StrUtil.isBlank(complaintCollection.getOriginId())) { complaintCollection.setOriginId(SfssUtil.generateIdWithPrefix(request.getSourceTable())); } complaintCollection.setCreateTime(LocalDateTime.now()); @@ -221,13 +226,51 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic blames = request.getBlames().stream().filter(item -> BlameType.department.name().equals(item.getType())).toList(); } if (CollectionUtil.isNotEmpty(blames)) { + // 所有警号 + Set blameEmpSet = blames.stream() + .map(ComplaintCollectionAndBlameAddRequest.Blame::getBlameEmpNo) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); + if (CollectionUtil.isNotEmpty(request.getBlameLeaders())) { + Set leadEmpNos = request.getBlameLeaders().stream() + .map(ComplaintCollectionAndBlameAddRequest.BlameLeader::getLeadEmpNo) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); + blameEmpSet.addAll(leadEmpNos); + } + // 查询警员信息 + SupPoliceQueryParam policeQueryParam = new SupPoliceQueryParam(); + policeQueryParam.setEmpNos(blameEmpSet); + Map policeMap = supPoliceResourceService.query(policeQueryParam); + // orgId 集合 + Set orgIds = policeMap.values().stream() + .map(SupPolice::getOrgId) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); + // 查询单位信息 + SupDepartQueryParam departQueryParam = new SupDepartQueryParam(); + departQueryParam.setIds(orgIds); + List supDepartList = supDepartResourceService.query(departQueryParam); + // 构建 ID -> 单位映射 + Map idToEntityMap = supDepartList.stream() + .filter(Objects::nonNull) + .collect(Collectors.toMap(SupDepart::getId, Function.identity())); for (ComplaintCollectionAndBlameAddRequest.Blame blame : blames) { ComplaintCollectionBlame blameEntity = new ComplaintCollectionBlame(); BeanUtil.copyProperties(blame, blameEntity); blameEntity.setBlameId(UUID.randomUUID().toString()); blameEntity.setComplaintId(request.getComplaintId()); - blameEntity.setBlameDepartId(request.getInvolveDepartId()); - blameEntity.setBlameDepartName(request.getInvolveDepartName()); + if (MapUtil.isNotEmpty(policeMap)) { + SupPolice police = policeMap.get(blame.getBlameEmpNo()); + if (police != null && StrUtil.isNotBlank(police.getOrgId())) { + SupDepart depart = idToEntityMap.get(police.getOrgId()); + blameEntity.setBlameDepartId(police.getOrgId()); + blameEntity.setBlameDepartName(depart != null ? depart.getShortName() : null); + } else { + blameEntity.setBlameDepartId(request.getInvolveDepartId()); + blameEntity.setBlameDepartName(request.getInvolveDepartName()); + } + } // 领导信息 List leadList = request.getBlameLeaders().stream() .filter(leader -> leader.getBlameIdCodes().contains(blame.getBlameIdCode())) @@ -237,6 +280,17 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic blameEntity.setLeadName(blameLeader.getLeadName()); blameEntity.setLeadIdCode(blameLeader.getLeadIdCode()); blameEntity.setLeadEmpNo(blameLeader.getLeadEmpNo()); + if (MapUtil.isNotEmpty(policeMap)) { + SupPolice police = policeMap.get(blameLeader.getLeadEmpNo()); + if (police != null && StrUtil.isNotBlank(police.getOrgId())) { + SupDepart depart = idToEntityMap.get(police.getOrgId()); + blameEntity.setLeadDepartId(police.getOrgId()); + blameEntity.setLeadDepartName(depart != null ? depart.getShortName() : null); + } else { + blameEntity.setLeadDepartId(request.getInvolveDepartId()); + blameEntity.setLeadDepartName(request.getInvolveDepartName()); + } + } } blameEntity.setCreateBy(userName); blameEntity.setCreateTime(LocalDateTime.now()); @@ -387,7 +441,6 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic } - public Negative saveNegative(NegativeDto negativeDto) { Negative negative = new Negative(); BeanUtil.copyProperties(negativeDto, negative); diff --git a/src/main/resources/mapper/ComplaintCollectionBlameMapper.xml b/src/main/resources/mapper/ComplaintCollectionBlameMapper.xml index 8a73aad..358c9bf 100644 --- a/src/main/resources/mapper/ComplaintCollectionBlameMapper.xml +++ b/src/main/resources/mapper/ComplaintCollectionBlameMapper.xml @@ -44,9 +44,6 @@ lead_protect_rights_name, lead_confinement_id, gwf1, gwf2, gwf3, gwf4, gwf5, - gwf6, gwf7, gwf8, gwf9, gwf10, - gwf11, gwf12, gwf13, gwf14, gwf15, - gwf16, gwf17, gwf18, gwf19, gwf20, create_by, create_time, update_by, @@ -92,9 +89,6 @@ #{item.leadProtectRightsName}, #{item.leadConfinementId}, #{item.gwf1}, #{item.gwf2}, #{item.gwf3}, #{item.gwf4}, #{item.gwf5}, - #{item.gwf6}, #{item.gwf7}, #{item.gwf8}, #{item.gwf9}, #{item.gwf10}, - #{item.gwf11}, #{item.gwf12}, #{item.gwf13}, #{item.gwf14}, #{item.gwf15}, - #{item.gwf16}, #{item.gwf17}, #{item.gwf18}, #{item.gwf19}, #{item.gwf20}, #{item.createBy}, #{item.createTime}, #{item.updateBy},