src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/ReportDataScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/common/config/ThreadPoolConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -1324,6 +1324,10 @@ wrkMast.setAppeTime(now); wrkMast.setModiUser(userId); wrkMast.setModiTime(now); if (!Cools.isEmpty(locNo) && Cools.isEmpty(pltType)) { AgvLocMast agvLocMast = agvLocMastService.selectById(locNo); pltType = agvLocMast.getPltType(); } wrkMast.setPltType(pltType); wrkMast.setLogErrMemo("createWaitPainWrkMastStart"); src/main/java/com/zy/asrs/task/ReportDataScheduler.java
@@ -15,6 +15,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -58,6 +59,7 @@ @Scheduled(fixedDelay = 5000) @Async("reportThreadPool") public void execute() { log.info("定时任务开始执行"); if (!flag) { src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -336,15 +336,22 @@ // } // agvWrkMastService.updateById(agvWrkMast); // } Integer pltType = agvWrkMast.getPltType(); if (Cools.isEmpty(pltType) && !Cools.isEmpty(agvWrkMast.getLocNo())) { AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo()); if (agvLocMast != null) { pltType = agvLocMast.getPltType(); } } if (!isJSON(orderNo)) { //检查订单是否已完成 orderService.checkComplete(orderNo, agvWrkMast.getPltType()); orderService.checkComplete(orderNo, pltType); } else { List<Map> maps = JSONArray.parseArray(orderNo, Map.class); Integer finalPltType = pltType; maps.forEach(map -> { String o = map.get("orderNo").toString(); orderService.checkComplete(o, agvWrkMast.getPltType()); orderService.checkComplete(o, finalPltType); }); } src/main/java/com/zy/asrs/task/handler/AutoReplenishmentHandler.java
@@ -29,6 +29,9 @@ private LocDetlService locDetlService; @Autowired private LocMastService locMastService; @Autowired private AgvLocMastService agvLocMastService; @Autowired private CommonService commonService; @Autowired @@ -274,7 +277,14 @@ wrkMast.setAppeTime(now); //wrkMast.setModiUser(userId); wrkMast.setModiTime(now); Integer pltType = null; if (!Cools.isEmpty(locNo) && Cools.isEmpty(pltType)) { AgvLocMast agvLocMast = agvLocMastService.selectById(locNo); if (agvLocMast != null) { pltType = agvLocMast.getPltType(); } } wrkMast.setPltType(pltType); //补货标识 wrkMast.setMk("Y"); if (!wrkMastService.insert(wrkMast)) { src/main/java/com/zy/common/config/ThreadPoolConfig.java
@@ -14,20 +14,20 @@ @EnableAsync public class ThreadPoolConfig { @Bean(name = "orderThreadPool") @Bean(name = "reportThreadPool") public ThreadPoolTaskExecutor orderThreadPool() { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); int core = Runtime.getRuntime().availableProcessors(); core = 2; core = 1; //设置核心线程数 executor.setCorePoolSize(core); //设置最大线程数 executor.setMaxPoolSize(core * 10 + core); executor.setMaxPoolSize(1); //除核心线程外的线程存活时间 executor.setKeepAliveSeconds(3); //缓冲队列 executor.setQueueCapacity(core); executor.setThreadNamePrefix("order-task-"); executor.setThreadNamePrefix("report-task-"); //设置拒绝策略 executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); return executor;