|  | @@ -5,10 +5,17 @@ import cn.newfeifan.mall.framework.tenant.core.job.TenantJob;
 | 
	
		
			
				|  |  |  import cn.newfeifan.mall.module.distri.mq.message.order.CalcMessage;
 | 
	
		
			
				|  |  |  import cn.newfeifan.mall.module.distri.mq.message.order.DistriOrderMessage;
 | 
	
		
			
				|  |  |  import cn.newfeifan.mall.module.distri.mq.message.order.OrderCalcMessage;
 | 
	
		
			
				|  |  | +import cn.newfeifan.mall.module.infra.dal.dataobject.job.JobDO;
 | 
	
		
			
				|  |  | +import cn.newfeifan.mall.module.infra.dal.mysql.job.JobMapper;
 | 
	
		
			
				|  |  |  import cn.newfeifan.mall.module.trade.mq.producer.order.DistriOrderProducer;
 | 
	
		
			
				|  |  |  import cn.newfeifan.mall.module.trade.service.order.TradeOrderQueryService;
 | 
	
		
			
				|  |  | +import lombok.extern.slf4j.Slf4j;
 | 
	
		
			
				|  |  |  import org.quartz.DisallowConcurrentExecution;
 | 
	
		
			
				|  |  |  import org.springframework.context.annotation.Lazy;
 | 
	
		
			
				|  |  | +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;
 | 
	
	
		
			
				|  | @@ -22,7 +29,9 @@ import java.util.List;
 | 
	
		
			
				|  |  |  @Component
 | 
	
		
			
				|  |  |  @DisallowConcurrentExecution
 | 
	
		
			
				|  |  |  @Lazy(false)
 | 
	
		
			
				|  |  | -public class TradeOrderAutoCalcJob implements JobHandler {
 | 
	
		
			
				|  |  | +@EnableScheduling
 | 
	
		
			
				|  |  | +@Slf4j
 | 
	
		
			
				|  |  | +public class TradeOrderAutoCalcJob implements SchedulingConfigurer {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Resource
 | 
	
		
			
				|  |  |      private DistriOrderProducer distriOrderProducer;
 | 
	
	
		
			
				|  | @@ -30,9 +39,12 @@ public class TradeOrderAutoCalcJob implements JobHandler {
 | 
	
		
			
				|  |  |      @Resource
 | 
	
		
			
				|  |  |      private TradeOrderQueryService tradeOrderQueryService;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    @Override
 | 
	
		
			
				|  |  | -    @TenantJob
 | 
	
		
			
				|  |  | -    public String execute(String param) {
 | 
	
		
			
				|  |  | +    @Resource
 | 
	
		
			
				|  |  | +    private JobMapper jobMapper;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //    @Override
 | 
	
		
			
				|  |  | +//    @TenantJob
 | 
	
		
			
				|  |  | +    public void execute() {
 | 
	
		
			
				|  |  |          //发货七天前订单
 | 
	
		
			
				|  |  |          List<DistriOrderMessage> appTradeOrderDetailRespVos = tradeOrderQueryService.queryAllOrder();
 | 
	
		
			
				|  |  |          List<OrderCalcMessage> orderCalcMessages = tradeOrderQueryService.getOrderCalcMessage(appTradeOrderDetailRespVos);
 | 
	
	
		
			
				|  | @@ -43,9 +55,21 @@ public class TradeOrderAutoCalcJob implements JobHandler {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          CalcMessage calcMessage = CalcMessage.builder().orderCalcMessages(orderCalcMessages).bonusQuotaOrderDO(orderCalcMessages2).distriOrderMessages(appTradeOrderDetailRespVos).build();
 | 
	
		
			
				|  |  |          distriOrderProducer.sendDistriOrderMessage(calcMessage);
 | 
	
		
			
				|  |  | -        return "计算订单信息结束";
 | 
	
		
			
				|  |  | +//        return "计算订单信息结束";
 | 
	
		
			
				|  |  | +        log.info("==========计算订单信息结束==========");
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  | +    public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
 | 
	
		
			
				|  |  | +        scheduledTaskRegistrar.addTriggerTask(this::execute,
 | 
	
		
			
				|  |  | +                triggerContext -> {
 | 
	
		
			
				|  |  | +                    String cron = jobMapper.selectOne(JobDO::getHandlerName,"tradeOrderAutoCalcJob").getCronExpression();
 | 
	
		
			
				|  |  | +                    if (cron.isEmpty()) {
 | 
	
		
			
				|  |  | +                        log.error("==========没有找到启动  [tradeOrderAutoCalcJob] 任务的 定时任务 ==========");
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                    return new CronTrigger(cron).nextExecutionTime(triggerContext);
 | 
	
		
			
				|  |  | +                });
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  }
 |