From d8c9b9afb41c368a08d7e05d0f624c98bf72042a Mon Sep 17 00:00:00 2001 From: lty <876263681@qq.com> Date: 星期五, 06 六月 2025 11:18:56 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/WorkLogScheduler.java | 61 +++++++++++++++++++++++++----- 1 files changed, 51 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java index fa2274c..bd1e371 100644 --- a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java +++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java @@ -1,37 +1,78 @@ package com.zy.asrs.task; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.exception.CoolException; +import com.zy.asrs.entity.Order; +import com.zy.asrs.entity.OrderDetl; +import com.zy.asrs.entity.WrkDetl; import com.zy.asrs.entity.WrkMast; +import com.zy.asrs.mapper.OrderDetlMapper; +import com.zy.asrs.service.OrderService; +import com.zy.asrs.service.WrkDetlService; import com.zy.asrs.service.WrkMastService; +import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.WorkLogHandler; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import java.util.List; + /** * Created by vincent on 2020/7/7 */ +@Slf4j @Component public class WorkLogScheduler { - - private static final Logger log = LoggerFactory.getLogger(WorkLogScheduler.class); @Autowired private WorkLogHandler workLogHandler; @Autowired private WrkMastService wrkMastService; + @Autowired + private OrderService orderService; + @Autowired + private WrkDetlService wrkDetlService; + @Autowired + private OrderDetlMapper orderDetlMapper; @Scheduled(cron = "0/3 * * * * ? ") - private void execute(){ - WrkMast wrkMast = wrkMastService.selectToBeHistoryData(); - if (null == wrkMast) { + private void execute() { + List<WrkMast> wrkMasts = wrkMastService.selectToBeHistoryData(); + if (wrkMasts.isEmpty()) { return; } - ReturnT<String> result = workLogHandler.start(wrkMast); - if (!result.isSuccess()) { - log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo()); + for (WrkMast wrkMast : wrkMasts) { + ReturnT<String> result = workLogHandler.start(wrkMast); + if (!result.isSuccess()) { + log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo()); + } } } + + @Scheduled(cron = "0/3 * * * * ? ") + private void execute2() { + List<Order> orders = orderService.selectWork(); + for (Order order : orders) { + List<WrkDetl> wrkDetls = wrkDetlService.selectByOrderNo(order.getOrderNo()); + if (wrkDetls != null) { + return; + } + List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId())); + boolean complete = true; + for (OrderDetl orderDetl : orderDetls) { + if (orderDetl.getAnfme() > orderDetl.getQty()) { + complete = false; + break; + } + } + if (complete) { + if (!orderService.updateSettle(order.getId(), 4L, null)) { + throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�"); + } + } + } + } } -- Gitblit v1.9.1