Merge remote-tracking branch 'origin/dev_fifo_z' into dev_fifo_z

dev_unify
yewj 7 months ago
commit 0069d2dcd9

@ -0,0 +1,90 @@
package com.glxp.api.task;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.glxp.api.dao.basic.SysWorkplaceDocumentDao;
import com.glxp.api.dao.schedule.ScheduledDao;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderOrigin;
import com.glxp.api.entity.collect.IoCollectSet;
import com.glxp.api.entity.system.ScheduledEntity;
import com.glxp.api.req.basic.WorkBindBusTypeRequest;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.req.system.ScheduledRequest;
import com.glxp.api.res.basic.SysWorkplaceDocumentResponse;
import com.glxp.api.service.basic.SysWorkplaceBusService;
import com.glxp.api.service.basic.SysWorkplaceDocumentService;
import com.glxp.api.service.collect.IoCollectOrderOriginService;
import com.glxp.api.service.collect.IoCollectOrderService;
import com.glxp.api.service.collect.IoCollectOriginService;
import com.glxp.api.service.collect.IoCollectSetService;
import com.glxp.api.util.MsDateUtil;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.SchedulingConfigurer;
import org.springframework.scheduling.config.ScheduledTaskRegistrar;
import org.springframework.scheduling.support.CronTrigger;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Slf4j
@Component
@EnableScheduling
public class AsyncIoCollectOrderReprocessTask implements SchedulingConfigurer {
final Logger logger = LoggerFactory.getLogger(AsyncIoCollectOrderReprocessTask.class);
@Resource
private ScheduledDao scheduledDao;
@Resource
IoCollectOrderOriginService iollectOrderOriginService;
@Resource
IoCollectOriginService collectOriginService;
@Override
public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
scheduledTaskRegistrar.addTriggerTask(() -> process(),
triggerContext -> {
ScheduledRequest scheduledRequest = new ScheduledRequest();
scheduledRequest.setCronName("ioCollectOrderReprocessTask");
ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest);
String cron = scheduledEntity != null ? scheduledEntity.getCron() : "0 */10 * * * ?";
if (cron.isEmpty()) {
logger.error("cron is null");
}
return new CronTrigger(cron).nextExecutionTime(triggerContext);
});
}
private void process() {
ThreadUtil.execAsync(() -> {
//获取异常单据
List<IoCollectOrderOrigin> list = iollectOrderOriginService.list(new LambdaQueryWrapper<IoCollectOrderOrigin>().eq(IoCollectOrderOrigin::getTagStatus, 4));
if (CollUtil.isNotEmpty(list)){
for (int i = 0; i < list.size(); i++) {
IoCollectOrderOrigin ioCollectOrderOrigin = list.get(i);
try {
CollectOrderRequest collectOrderRequest = new CollectOrderRequest();
collectOrderRequest.setBillNo(ioCollectOrderOrigin.getBillNo());
collectOrderRequest.setTagStatus(ioCollectOrderOrigin.getTagStatus());
collectOrderRequest.setBusType(ioCollectOrderOrigin.getBusType());
//获取当前时间
collectOriginService.errorHandle(collectOrderRequest);
}catch (Exception e){
logger.error(e.getMessage());
}
}
}
});
}
}

@ -4857,3 +4857,9 @@ VALUES (158, 'ioCollectOrderFinishTask', '0 */30 * * * ?', NULL, '自动完成
CALL Pro_Temp_ColumnWork('sys_workplace', 'autoCollect',
' tinyint NULL DEFAULT NULL COMMENT ''是否自动采集 0:否 1:是''',
1);
INSERT ignore INTO `sys_scheduled` (`id`, `cronName`, `cron`, `customerId`, `remark`)
VALUES (160, 'ioCollectOrderReprocessTask', '0 */30 * * * ?', NULL, '自动重载异常第三方处方单');

Loading…
Cancel
Save