diff --git a/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java index fe08986..82b0b5c 100644 --- a/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java +++ b/dk-modules/business/src/main/java/org/dromara/business/service/impl/BusinessAlertServiceImpl.java @@ -16,6 +16,7 @@ import org.dromara.business.domain.bo.BusinessAlertBo; import org.dromara.business.domain.vo.BusinessAlertVo; import org.dromara.business.mapper.BusinessAlertMapper; import org.dromara.business.service.IBusinessAlertService; +import org.dromara.business.utils.BatchProcessorUtil; import org.dromara.business.utils.MinioUntil; import org.dromara.business.utils.constants.MinIOConstants; import org.dromara.common.core.enums.BusinessStatusEnum; @@ -57,7 +58,7 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { private final BusinessAlertMapper baseMapper; - @DubboReference + @DubboReference(timeout = 30000) RemoteWorkflowService remoteWorkflowService; @DubboReference @@ -82,14 +83,23 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { @Override public void addBusinessAlertList(List alertVoList) { if(!alertVoList.isEmpty()) { + List remoteStartProcessList = new ArrayList<>(); for (BusinessAlertVo alertVo : alertVoList) { alertVo.setBusinessType(2); + alertVo.setHandleType(BusinessStatusEnum.WAITING.getStatus()); BusinessAlert alert = addBusinessAlert(alertVo); RemoteStartProcess startProcess = new RemoteStartProcess(); - startProcess.setBusinessId(alert.getAlertId()); + startProcess.setBusinessId(String.valueOf(alert.getId())); startProcess.setFlowCode("alertChz"); - remoteWorkflowService.startWorkFlowBatch(List.of(startProcess)); + remoteStartProcessList.add(startProcess); } + + int startIndex = 0; // 从第 0 条开始 + int batchSize = 5; // 每批处理 5 条 + boolean flag = BatchProcessorUtil.processBatches(remoteStartProcessList, batchSize, startIndex, batch -> { + //批量新增部门区域数据 + remoteWorkflowService.startWorkFlowBatch(batch); + }); } } @@ -197,10 +207,14 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { Page page = this.baseMapper.pageBusinessAlert(pageQuery.build(), wrapper); page.getRecords().forEach(businessAlertVo->{ - businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); - businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); - businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); - businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + if (businessAlertVo.getBusinessType() == 2){ + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_DKCY, businessAlertVo.getImages(), 3600).toString()); + }else { + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); + businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); + businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); + businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + } }); return TableDataInfo.build(page); @@ -226,10 +240,14 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { Page page = this.baseMapper.pageBusinessAlertCancel(pageQuery.build(), wrapper); page.getRecords().forEach(businessAlertVo->{ - businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); - businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); - businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); - businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + if (businessAlertVo.getBusinessType() == 2){ + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_DKCY, businessAlertVo.getImages(), 3600).toString()); + }else { + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); + businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); + businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); + businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + } }); return TableDataInfo.build(page); @@ -257,10 +275,14 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { Page page = this.baseMapper.pageAlertFinish(pageQuery.build(), wrapper); page.getRecords().forEach(businessAlertVo->{ - businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); - businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); - businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); - businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + if (businessAlertVo.getBusinessType() == 2){ + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_DKCY, businessAlertVo.getImages(), 3600).toString()); + }else { + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); + businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); + businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); + businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + } }); return TableDataInfo.build(page); @@ -301,10 +323,14 @@ public class BusinessAlertServiceImpl implements IBusinessAlertService { } page.getRecords().forEach(businessAlertVo->{ - businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); - businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); - businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); - businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + if (businessAlertVo.getBusinessType() == 2){ + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_DKCY, businessAlertVo.getImages(), 3600).toString()); + }else { + businessAlertVo.setImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getImages(), 3600).toString()); + businessAlertVo.setMaxImages(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxImages(), 3600).toString()); + businessAlertVo.setMaxMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMaxMateSourceImgUrl(), 3600).toString()); + businessAlertVo.setMateSourceImgUrl(MinioUntil.getObjectUrlOne(MinIOConstants.BUCKET_ALERT, businessAlertVo.getMateSourceImgUrl(), 3600).toString()); + } }); return TableDataInfo.build(page);