From 9fe44ac750508620330200608cd67127b9521aeb Mon Sep 17 00:00:00 2001 From: fangjiakai <450850793@qq.com> Date: Tue, 7 Apr 2026 08:48:21 +0800 Subject: [PATCH] =?UTF-8?q?feat(task):=20=E5=AE=8C=E5=96=84=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A=E7=A5=A8=E6=B5=81=E7=A8=8B=E6=8E=A7=E5=88=B6=E5=92=8C?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=9F=A5=E8=AF=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 实现撤回作业票时保持原票号的逻辑判断 - 添加步骤意见信息的存储和处理功能 - 正式提交时重置作业创建时间为当前时间 - 优化作业创建人查询条件改为关联任务日志表匹配 --- .../com/zcloud/eightwork/command/TaskLogAddExe.java | 12 ++++++------ .../zcloud/eightwork/command/TaskLogUpdateExe.java | 5 +++++ .../persistence/dataobject/EightworkInfoDO.java | 4 ++++ .../main/resources/mapper/EightworkInfoMapper.xml | 9 ++++++--- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogAddExe.java b/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogAddExe.java index 58953ca..51730a6 100644 --- a/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogAddExe.java +++ b/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogAddExe.java @@ -114,14 +114,14 @@ public class TaskLogAddExe { // 5. 判断是否已有票号,没有则生成新票号 String checkNo = existingInfo.getCheckNo(); - if (org.apache.commons.lang.StringUtils.isBlank(checkNo)) { - // 暂存后第一次正式提交,生成新票号 + if (org.apache.commons.lang.StringUtils.isNotBlank(checkNo) && !ObjectUtil.equal(existingInfo.getStatus(),"2")) { + // 不是打回并且作业票不为空, 则为撤回作业票, 不生成新作业票 + log.info("撤回作业票(不生成新票号): workId={}, checkNo={}", existingInfo.getWorkId(), checkNo); + } else { + // 不是撤回作业票 , 生成新作业票 checkNo = generateFormalCheckNo(cmd.getWorkType()); existingInfo.setCheckNo(checkNo); - log.info("暂存转正式(生成新票号): workId={}, checkNo={}", existingInfo.getWorkId(), checkNo); - } else { - // 打回后重新提交,保持原票号 - log.info("暂存转正式(保持原票号): workId={}, checkNo={}", existingInfo.getWorkId(), checkNo); + log.info("(生成新票号): workId={}, checkNo={}", existingInfo.getWorkId(), checkNo); } existingInfo.setStatus(TaskLogStatus.APPROVED.getCode()); // 主表进行中=1 diff --git a/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogUpdateExe.java b/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogUpdateExe.java index 12dfcda..8e714bb 100644 --- a/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/eightwork/command/TaskLogUpdateExe.java @@ -1371,6 +1371,11 @@ public class TaskLogUpdateExe { stepInfo.put("filePath", logDO.getFilePath()); } + // 有填写意见步骤,添加意见 + if (StringUtils.isNotBlank(logDO.getRemarks())) { + stepInfo.put("remarks", logDO.getRemarks()); + } + // 其他自定义步骤,添加 otherParams if (StringUtils.isNotBlank(logDO.getOtherParams())) { try { diff --git a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/EightworkInfoDO.java b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/EightworkInfoDO.java index c069f65..105f80f 100644 --- a/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/EightworkInfoDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/eightwork/persistence/dataobject/EightworkInfoDO.java @@ -9,6 +9,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; +import java.time.LocalDateTime; + /** * web-infrastructure * @@ -87,6 +89,8 @@ public class EightworkInfoDO extends BaseDO { this.info = info.toJSONString(); this.departmentId = departmentId; this.departmentName = departmentName; + // 正式提交重置创建时间 + this.createTime = LocalDateTime.now(); } } diff --git a/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml b/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml index 8e92b82..cd09095 100644 --- a/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/EightworkInfoMapper.xml @@ -23,9 +23,6 @@ and t.department_id = #{params.eqDepartmentId} - - and t.create_id = #{params.eqCreateId} - and t.xgf_flag = #{params.eqXgfFlag} @@ -35,6 +32,12 @@ and t.project_id = #{params.eqProjectId} + + and exists (select 1 + from task_log log + where log.work_id = t.work_id + and log.act_user = #{params.eqCreateId}) + and exists (select 1