fix:修复自动完成tagStatus为1的单据
							parent
							
								
									b07cf1a073
								
							
						
					
					
						commit
						647d2c553a
					
				@ -0,0 +1,84 @@
 | 
				
			|||||||
 | 
					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.auth.AuthAdmin;
 | 
				
			||||||
 | 
					import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
 | 
				
			||||||
 | 
					import com.glxp.api.entity.collect.IoCollectOrder;
 | 
				
			||||||
 | 
					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.SysWorkplaceDocumentService;
 | 
				
			||||||
 | 
					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.IntUtil;
 | 
				
			||||||
 | 
					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 AsyncIoCollectOrderFinishTask implements SchedulingConfigurer {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    final Logger logger = LoggerFactory.getLogger(AsyncIoCollectOrderFinishTask.class);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Resource
 | 
				
			||||||
 | 
					    private ScheduledDao scheduledDao;
 | 
				
			||||||
 | 
					    @Resource
 | 
				
			||||||
 | 
					    SysWorkplaceDocumentService sysWorkplaceDocumentService;
 | 
				
			||||||
 | 
					    @Resource
 | 
				
			||||||
 | 
					    IoCollectOrderService collectOrderService;
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
 | 
				
			||||||
 | 
					        scheduledTaskRegistrar.addTriggerTask(() -> process(),
 | 
				
			||||||
 | 
					                triggerContext -> {
 | 
				
			||||||
 | 
					                    ScheduledRequest scheduledRequest = new ScheduledRequest();
 | 
				
			||||||
 | 
					                    scheduledRequest.setCronName("ioCollectOrderFinishTask");
 | 
				
			||||||
 | 
					                    ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest);
 | 
				
			||||||
 | 
					                    String cron = scheduledEntity != null ? scheduledEntity.getCron() : "0 */30 * * * ?";
 | 
				
			||||||
 | 
					                    if (cron.isEmpty()) {
 | 
				
			||||||
 | 
					                        logger.error("cron is null");
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                    return new CronTrigger(cron).nextExecutionTime(triggerContext);
 | 
				
			||||||
 | 
					                });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private void process() {
 | 
				
			||||||
 | 
					        List<IoCollectOrder> list = collectOrderService.list(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getTagStatus, 1));
 | 
				
			||||||
 | 
					        if (CollUtil.isNotEmpty(list)) {
 | 
				
			||||||
 | 
					            for (IoCollectOrder collectOrder : list) {
 | 
				
			||||||
 | 
					                SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByBusType(collectOrder.getBusType());
 | 
				
			||||||
 | 
					                if (IntUtil.value(sysWorkplaceDocumentEntity.getAutoTag()) == 1 && IntUtil.value(collectOrder.getTagStatus()) == 1) {
 | 
				
			||||||
 | 
					                    if ( sysWorkplaceDocumentEntity.getAutoHandle()){
 | 
				
			||||||
 | 
					                        //单据是否自动完成 是 调用 完成
 | 
				
			||||||
 | 
					                        AuthAdmin authAdmin = new AuthAdmin();
 | 
				
			||||||
 | 
					                        authAdmin.setId(1l);
 | 
				
			||||||
 | 
					                        CollectOrderRequest collectOrderRequest = new CollectOrderRequest();
 | 
				
			||||||
 | 
					                        collectOrderRequest.setUpdateUser(1l);
 | 
				
			||||||
 | 
					                        collectOrderService.finishOrder(collectOrderRequest, authAdmin);
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
					Loading…
					
					
				
		Reference in New Issue