diff --git a/src/main/java/com/biutag/supervision/controller/data/ComplaintCollectionController.java b/src/main/java/com/biutag/supervision/controller/data/ComplaintCollectionController.java index 32a330f..aa0cb5f 100644 --- a/src/main/java/com/biutag/supervision/controller/data/ComplaintCollectionController.java +++ b/src/main/java/com/biutag/supervision/controller/data/ComplaintCollectionController.java @@ -3,6 +3,7 @@ package com.biutag.supervision.controller.data; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.biutag.supervision.pojo.Result; import com.biutag.supervision.pojo.dto.complaintCollection.ComplaintCollectionPageDTO; +import com.biutag.supervision.pojo.dto.complaintCollection.SyncExtensionRequestDto; import com.biutag.supervision.pojo.request.complaintCollection.*; import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionDetailVo; import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionMailRepeattVo; @@ -80,7 +81,9 @@ public class ComplaintCollectionController { mailBoxCaptureService.syncBlameAndFiles(start, end); } if ("阶段3".equals(request.getPersonInfo())){ - mailBoxCaptureService.syncExtension(); + SyncExtensionRequestDto syncExtensionRequestDto = new SyncExtensionRequestDto(); + syncExtensionRequestDto.setOriginId(request.getOriginId()); + mailBoxCaptureService.syncExtension(syncExtensionRequestDto); } return Result.success(complaintCollectionService.getComplaintCollectionPageNew(request)); } diff --git a/src/main/java/com/biutag/supervision/job/MailBoxCaptureJob.java b/src/main/java/com/biutag/supervision/job/MailBoxCaptureJob.java index a9127a5..3b47a2b 100644 --- a/src/main/java/com/biutag/supervision/job/MailBoxCaptureJob.java +++ b/src/main/java/com/biutag/supervision/job/MailBoxCaptureJob.java @@ -1,5 +1,6 @@ package com.biutag.supervision.job; +import com.biutag.supervision.pojo.dto.complaintCollection.SyncExtensionRequestDto; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Scheduled; @@ -53,6 +54,7 @@ public class MailBoxCaptureJob { */ @Scheduled(cron = "0 0 3 * * ?") public void syncExtension() { - mailBoxCaptureService.syncExtension(); + SyncExtensionRequestDto syncExtensionRequestDto = new SyncExtensionRequestDto(); + mailBoxCaptureService.syncExtension(syncExtensionRequestDto); } } diff --git a/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/SyncExtensionRequestDto.java b/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/SyncExtensionRequestDto.java new file mode 100644 index 0000000..2221973 --- /dev/null +++ b/src/main/java/com/biutag/supervision/pojo/dto/complaintCollection/SyncExtensionRequestDto.java @@ -0,0 +1,25 @@ +package com.biutag.supervision.pojo.dto.complaintCollection; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; +import lombok.Setter; + +import java.util.List; + +/** + * @ClassName SyncExtensionRequestDto + * @Description 初核信息同步请求DTO + * @Author shihao + * @Date 2026/5/9 + */ +@Getter +@Setter +@Schema(description = "初核信息同步请求DTO") +public class SyncExtensionRequestDto { + + @Schema(description = "信件编号") + private String originId; + + @Schema(description = "信件编号列表") + private List originIds; +} \ No newline at end of file diff --git a/src/main/java/com/biutag/supervision/service/MailBoxCaptureService.java b/src/main/java/com/biutag/supervision/service/MailBoxCaptureService.java index 2e04585..d13917b 100644 --- a/src/main/java/com/biutag/supervision/service/MailBoxCaptureService.java +++ b/src/main/java/com/biutag/supervision/service/MailBoxCaptureService.java @@ -14,6 +14,7 @@ import com.biutag.supervision.mapper.MailBlameMapper; import com.biutag.supervision.mapper.MailExtensionMapper; import com.biutag.supervision.pojo.dto.MailBoxSyncDto; import com.biutag.supervision.pojo.dto.NegativeDataOnlyDto; +import com.biutag.supervision.pojo.dto.complaintCollection.SyncExtensionRequestDto; import com.biutag.supervision.pojo.dto.mail.MailAttachmentDTO; import com.biutag.supervision.pojo.entity.*; import com.biutag.supervision.pojo.entity.mailbox.Mail; @@ -747,13 +748,13 @@ public class MailBoxCaptureService { * - initWorkDes: 初核工作开展情况 <- extensionReason * - initFile: 初核附件 <- initialVerifyAttachments */ - public void syncExtension() { + public void syncExtension(SyncExtensionRequestDto syncExtensionRequestDto) { log.info("【延期同步】开始执行延期信息同步任务"); long startTimeMillis = System.currentTimeMillis(); try { // 1. 查询所有局长信箱来源没有初核的记录 - List mailBoxList = queryAllMailboxRecords(); + List mailBoxList = queryAllMailboxRecords(syncExtensionRequestDto); if (CollectionUtil.isEmpty(mailBoxList)) { log.info("【延期同步】无局长信箱记录"); return; @@ -802,9 +803,11 @@ public class MailBoxCaptureService { /** * 查询所有局长信箱来源并初核情况是空的记录 */ - private List queryAllMailboxRecords() { + private List queryAllMailboxRecords(SyncExtensionRequestDto syncExtensionRequestDto) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.isNotNull(ComplaintCollection::getGwf3); + queryWrapper.eq(StrUtil.isNotBlank(syncExtensionRequestDto.getOriginId()), ComplaintCollection::getOriginId, syncExtensionRequestDto.getOriginId()); + queryWrapper.in(CollectionUtil.isNotEmpty(syncExtensionRequestDto.getOriginIds()), ComplaintCollection::getOriginId, syncExtensionRequestDto.getOriginIds()); + queryWrapper.eq(ComplaintCollection::getGwf3, ComplaintCollectionInitialEnum.UN_UPLOADED.getCode()); queryWrapper.eq(ComplaintCollection::getProblemSourcesCode, ComplaintCollectionSourceTableEnum.MAYOR_MAILBOX.getCode()); return complaintCollectionMapper.selectList(queryWrapper); }