From fc0dcb5856522ea7059cb1fa1244024e50ab4dba Mon Sep 17 00:00:00 2001 From: lishiwei <3230787218@qq.com> Date: Wed, 8 Jul 2026 14:21:46 +0800 Subject: [PATCH] =?UTF-8?q?refactor():=20=E4=BC=98=E5=8C=96=E5=AE=89?= =?UTF-8?q?=E5=85=A8=E7=8E=AF=E4=BF=9D=E6=A3=80=E6=9F=A5=E9=9A=90=E6=82=A3?= =?UTF-8?q?=E9=AA=8C=E6=94=B6=E7=9A=84=E6=A3=80=E6=9F=A5=E4=BA=BA=E8=B5=8B?= =?UTF-8?q?=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HiddenRectificationRecordUpdateExe.java | 34 +++++++++++++++---- ...tyEnvironmentalInspectionUserQueryExe.java | 22 ++++++++---- 2 files changed, 42 insertions(+), 14 deletions(-) diff --git a/web-app/src/main/java/com/zcloud/key/project/command/hidden/HiddenRectificationRecordUpdateExe.java b/web-app/src/main/java/com/zcloud/key/project/command/hidden/HiddenRectificationRecordUpdateExe.java index e705144..1b5b0d7 100644 --- a/web-app/src/main/java/com/zcloud/key/project/command/hidden/HiddenRectificationRecordUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/key/project/command/hidden/HiddenRectificationRecordUpdateExe.java @@ -15,7 +15,6 @@ import com.zcloud.key.project.persistence.dataobject.hidden.HiddenFindUserDO; import com.zcloud.key.project.persistence.dataobject.inspection.SafetyEnvironmentalInspectionUserDO; import com.zcloud.key.project.persistence.repository.hidden.HiddenFindUserRepository; import com.zcloud.key.project.persistence.repository.hidden.HiddenRepository; -import com.zcloud.key.project.persistence.repository.inspection.SafetyEnvironmentalInspectionRepository; import com.zcloud.key.project.persistence.repository.inspection.SafetyEnvironmentalInspectionUserRepository; import lombok.AllArgsConstructor; import org.springframework.beans.BeanUtils; @@ -28,7 +27,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; - /** * web-app * @@ -41,12 +39,12 @@ public class HiddenRectificationRecordUpdateExe { private final HiddenRectificationRecordGateway hiddenRectificationRecordGateway; private final HiddenRepository hiddenRepository; private final HiddenFindUserRepository hiddenFindUserRepository; - private final SafetyEnvironmentalInspectionRepository safetyEnvironmentalInspectionRepository; private final SafetyEnvironmentalInspectionUserRepository safetyEnvironmentalInspectionUserRepository; private final SafetyEnvironmentalInspectionUserGateway safetyEnvironmentalInspectionUserGateway; private final MessageNoticeExe messageNoticeExe; private final MessageTemplateConfig messageTemplateConfig; + @Transactional(rollbackFor = Exception.class) public void execute(HiddenRectificationRecordUpdateCmd hiddenRectificationRecordUpdateCmd) { HiddenRectificationRecordE hiddenRectificationRecordE = new HiddenRectificationRecordE(); @@ -56,6 +54,7 @@ public class HiddenRectificationRecordUpdateExe { throw new BizException("修改失败"); } } + @Transactional(rollbackFor = Exception.class) public void rectificationExecute(HiddenRectificationRecordUpdateCmd cmd) { HiddenRectificationRecordE hiddenRectificationRecordE = new HiddenRectificationRecordE(); @@ -66,11 +65,32 @@ public class HiddenRectificationRecordUpdateExe { boolean res = hiddenRectificationRecordGateway.add(hiddenRectificationRecordE); hiddenRepository.updateState(cmd.getHiddenId(), 2); // 增加安全环保检查隐患验收操作记录 - if (hiddenDO != null && (hiddenDO.getSource() == 2 || hiddenDO.getSource() == 3)){ - Long acceptCount = safetyEnvironmentalInspectionUserRepository.countByInspectionId(cmd.getForeignKey(), null, 8); - if (acceptCount == 0){ + if (hiddenDO != null && (hiddenDO.getSource() == 2 || hiddenDO.getSource() == 3)) { + SafetyEnvironmentalInspectionUserDO initiatorUser = null; + List initiatorList = + safetyEnvironmentalInspectionUserRepository.listAllByInspectionId(cmd.getForeignKey(), 1); + if (initiatorList != null && !initiatorList.isEmpty()) { + initiatorUser = initiatorList.get(0); + } + + List currentAcceptUserList = + safetyEnvironmentalInspectionUserRepository.listAllByInspectionId(cmd.getForeignKey(), 8); + boolean needResetAcceptUser = initiatorUser != null && ( + currentAcceptUserList == null + || currentAcceptUserList.size() != 1 + || !initiatorUser.getUserId().equals(currentAcceptUserList.get(0).getUserId()) + ); + if (needResetAcceptUser) { + safetyEnvironmentalInspectionUserRepository.deleteByInspectionId(cmd.getForeignKey(), 8); SafetyEnvironmentalInspectionUserE inspectionUserAcceptE = new SafetyEnvironmentalInspectionUserE(); - inspectionUserAcceptE.init(cmd.getForeignKey(), 0, 8, ssoUser.getTenantId(), ssoUser.getOrgId(), ssoUser.getUserId()); + inspectionUserAcceptE.init( + cmd.getForeignKey(), + 0, + 8, + initiatorUser.getCorpId(), + initiatorUser.getDepartmentId(), + initiatorUser.getUserId() + ); safetyEnvironmentalInspectionUserGateway.add(inspectionUserAcceptE); } // 判断隐患是否全部整改完成, diff --git a/web-app/src/main/java/com/zcloud/key/project/command/query/inspection/SafetyEnvironmentalInspectionUserQueryExe.java b/web-app/src/main/java/com/zcloud/key/project/command/query/inspection/SafetyEnvironmentalInspectionUserQueryExe.java index 40f24f2..f8364fe 100644 --- a/web-app/src/main/java/com/zcloud/key/project/command/query/inspection/SafetyEnvironmentalInspectionUserQueryExe.java +++ b/web-app/src/main/java/com/zcloud/key/project/command/query/inspection/SafetyEnvironmentalInspectionUserQueryExe.java @@ -1,8 +1,6 @@ package com.zcloud.key.project.command.query.inspection; import com.alibaba.cola.dto.PageResponse; -import com.alibaba.excel.annotation.format.DateTimeFormat; -import com.zcloud.gbscommon.utils.DateUtil; import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.key.project.command.convertor.inspection.SafetyEnvironmentalInspectionUserCoConvertor; import com.zcloud.key.project.domain.enums.FlowTypeEnum; @@ -11,7 +9,6 @@ import com.zcloud.key.project.dto.clientobject.inspection.SafetyEnvironmentalIns import com.zcloud.key.project.dto.inspection.SafetyEnvironmentalInspectionUserPageQry; import com.zcloud.key.project.persistence.dataobject.inspection.SafetyEnvironmentalInspectionUserDO; import com.zcloud.key.project.persistence.repository.inspection.SafetyEnvironmentalInspectionUserRepository; -import io.swagger.models.auth.In; import lombok.AllArgsConstructor; import org.springframework.stereotype.Component; import org.springframework.util.ObjectUtils; @@ -64,6 +61,13 @@ public class SafetyEnvironmentalInspectionUserQueryExe { List userDOs = safetyEnvironmentalInspectionUserRepository.listAllByInspectionId(inspectionId); Map> typeGroupMap = userDOs.stream().collect(Collectors.groupingBy(SafetyEnvironmentalInspectionUserDO::getType)); List flowList = new ArrayList<>(); + SafetyEnvironmentalInspectionUserDO initiatorUser; + List initiatorList = typeGroupMap.get(1); + if (initiatorList != null && !initiatorList.isEmpty()) { + initiatorUser = initiatorList.get(0); + } else { + initiatorUser = null; + } // 遍历typeGroupMap for (Integer type : typeGroupMap.keySet()) { @@ -76,7 +80,7 @@ public class SafetyEnvironmentalInspectionUserQueryExe { SafetyEnvironmentalInspectionFlowCO child = new SafetyEnvironmentalInspectionFlowCO(); child.setType(userDO.getType()); child.setStatus(userDO.getStatus()); - List flowStrList = initFlowStrList(userDO.getType(), userDO); + List flowStrList = initFlowStrList(userDO.getType(), userDO, initiatorUser); child.setFlowList(flowStrList); children.add(child); }); @@ -84,7 +88,7 @@ public class SafetyEnvironmentalInspectionUserQueryExe { } else { SafetyEnvironmentalInspectionUserDO userDO = typeGroupMap.get(type).get(0); flowCO.setStatus(userDO.getStatus()); - flowCO.setFlowList(initFlowStrList(userDO.getType(), userDO)); + flowCO.setFlowList(initFlowStrList(userDO.getType(), userDO, initiatorUser)); } } flowList.add(flowCO); @@ -92,13 +96,17 @@ public class SafetyEnvironmentalInspectionUserQueryExe { return flowList; } - private List initFlowStrList(Integer type,SafetyEnvironmentalInspectionUserDO userDO){ + private List initFlowStrList(Integer type, SafetyEnvironmentalInspectionUserDO userDO, SafetyEnvironmentalInspectionUserDO initiatorUser){ List flowStrList = new ArrayList<>(); flowStrList.add(FlowTypeEnum.getNameByType(type)); LocalDateTime tempTime = !ObjectUtils.isEmpty(userDO.getSignatureTime()) ? userDO.getSignatureTime() : userDO.getCreateTime(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String timeStr = tempTime.format(formatter); - flowStrList.add(userDO.getName()+ " " + timeStr); + String displayName = userDO.getName(); + if (Integer.valueOf(8).equals(type) && initiatorUser != null && initiatorUser.getName() != null) { + displayName = initiatorUser.getName(); + } + flowStrList.add(displayName + " " + timeStr); return flowStrList; } }