src/main/java/com/zy/asrs/task/WcsDispatcher.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/WorkLogScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/WorkMastScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/task/WcsDispatcher.java
@@ -36,9 +36,9 @@ try { Thread.sleep(3000); workMastHandler.start(); workLogHandler.start(); // workMastHandler.start(); // // workLogHandler.start(); } catch (Exception e) { log.error("Exception", e); src/main/java/com/zy/asrs/task/WorkLogScheduler.java
@@ -1,8 +1,10 @@ package com.zy.asrs.task; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.task.handler.WorkLogHandler; import com.zy.system.entity.Config; import com.zy.system.service.ConfigService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -13,16 +15,22 @@ @Component public class WorkLogScheduler { private static final Logger log = LoggerFactory.getLogger(WorkLogScheduler.class); @Autowired private WorkLogHandler workLogHandler; @Autowired private ConfigService configService; private WrkMastService wrkMastService; @Scheduled(cron = "0/3 * * * * ? ") private void execute(){ ReturnT<Config> result = workLogHandler.start(); WrkMast wrkMast = wrkMastService.selectToBeHistoryData(); if (null == wrkMast) { return; } ReturnT<String> result = workLogHandler.start(wrkMast); if (!result.isSuccess()) { configService.insert(result.getContent()); log.error("工作档[workNo={}]历史档处理失败", wrkMast.getWrkNo()); } } src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -3,9 +3,12 @@ import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.task.handler.WorkMastHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import java.util.Date; import java.util.List; /** @@ -13,6 +16,8 @@ */ //@Component public class WorkMastScheduler { private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class); @Autowired private WrkMastService wrkMastService; @@ -26,10 +31,15 @@ return; } for (WrkMast wrkMast : wrkMasts) { ReturnT<String> start = workMastHandler.start(wrkMast); ReturnT<String> returnT = workMastHandler.start(wrkMast); if (!returnT.isSuccess()) { wrkMast.setUpdMk("X"); wrkMast.setErrorMemo(returnT.getMsg()); wrkMast.setErrorTime(new Date()); if (!wrkMastService.updateById(wrkMast)) { log.error("工作档[workNo={}]标记待处理失败", wrkMast.getWrkNo()); } } } } src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -9,7 +9,6 @@ import com.zy.asrs.service.WrkMastService; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.ReturnT; import com.zy.system.entity.Config; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -19,7 +18,7 @@ * Created by vincent on 2020/7/6 */ @Service public class WorkLogHandler extends AbstractHandler<Config> { public class WorkLogHandler extends AbstractHandler<String> { @Autowired private WrkMastService wrkMastService; @@ -30,14 +29,9 @@ @Autowired private WrkDetlLogService wrkDetlLogService; // @Override @Transactional public ReturnT<Config> start() { public ReturnT<String> start(WrkMast wrkMast) { try { WrkMast wrkMast = wrkMastService.selectToBeHistoryData(); if (null == wrkMast) { return SUCCESS; } // 保存工作主档历史档 if (!wrkMastLogService.save(wrkMast.getWrkNo())) { exceptionHandle("保存工作历史档[workNo={0}]失败", wrkMast.getWrkNo()); @@ -57,15 +51,7 @@ } catch (Exception e) { e.printStackTrace(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); // todo Config config = new Config( "name", // 名称[非空] "code", // 编码[非空] "val", // 对应值[非空] (short)1, // 类型[非空] (short)1 // 状态[非空] ); return FAIL.setMsg(e.getMessage()).setContent(config); return FAIL.setMsg(e.getMessage()); } return SUCCESS; } src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -289,23 +289,23 @@ // 根据工作号,查询工作明细档 List<WrkDetl> wrkDetls101 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); if (wrkDetls101.isEmpty()) { exceptionHandle(""); // todo exceptionHandle("全板出库 ===>> 工作明细档为空;[workNo={0}]", wrkMast.getWrkNo()); } for (WrkDetl wrkDetl : wrkDetls101) { // todo:luxiaotao 3)修改出库通知档 status ==> Y } // 删除工作档源库位的库存明细 if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { exceptionHandle(""); // todo exceptionHandle("全板出库 ===>> 删除库存明细失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); } // 修改库位状态 R ===>> O // 修改源库位状态 R ===>> O if (locMast.getLocType().equals("R")) { locMast.setLocType("O"); locMast.setBarcode(""); locMast.setModiTime(now); locMast.setIoTime(now); if (!locMastService.updateById(locMast)) { exceptionHandle(""); // todo exceptionHandle("全板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); } } break; @@ -318,7 +318,7 @@ locMast.setModiTime(now); locMast.setIoTime(now); if (!locMastService.updateById(locMast)) { exceptionHandle(""); // todo exceptionHandle("空板出库 ===>> 修改源库位状态失败;[workNo={0}],[sourceLocNo={1}]", wrkMast.getWrkNo(), wrkMast.getSourceLocNo()); } } break; @@ -329,7 +329,7 @@ wrkMast.setWrkSts(15L); wrkMast.setModiTime(now); if (!wrkMastService.updateById(wrkMast)) { exceptionHandle(""); // todo exceptionHandle("更新出库完成状态失败;[workNo={0}]", wrkMast.getWrkNo()); } } catch (Exception e) { e.printStackTrace();