src/main/java/com/zy/asrs/task/AbstractHandler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/AsrsException.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/ReturnT.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/TestScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
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/AbstractHandler.java
@@ -1,21 +1,17 @@ package com.zy.asrs.task; import com.core.exception.CoolException; /** * Created by vincent on 2020/7/4 */ public abstract class AbstractHandler { public abstract class AbstractHandler<T> { public void run(){ boolean start = start(); System.out.println(start); } public final ReturnT<T> SUCCESS = new ReturnT<>(200, null); public final ReturnT<T> FAIL = new ReturnT<>(500, null); protected abstract boolean start(); protected abstract ReturnT<T> start(); protected void exceptionHandle(String errorMsg){ throw new CoolException("231"); throw new AsrsException(errorMsg); } } src/main/java/com/zy/asrs/task/AsrsException.java
New file @@ -0,0 +1,16 @@ package com.zy.asrs.task; /** * Created by vincent on 2020/7/7 */ public class AsrsException extends RuntimeException { public AsrsException(Throwable e) { super(e); } public AsrsException(String message) { super(message); } } src/main/java/com/zy/asrs/task/ReturnT.java
New file @@ -0,0 +1,65 @@ package com.zy.asrs.task; import java.io.Serializable; /** * Created by vincent on 2020/7/7 */ public class ReturnT<T> implements Serializable { public static final long serialVersionUID = 42L; public static final int SUCCESS_CODE = 200; public static final int FAIL_CODE = 500; private int code; private String msg; private T content; public ReturnT() { } public ReturnT(int code, String msg) { this.code = code; this.msg = msg; } public ReturnT(T content) { this.code = 200; this.content = content; } public boolean isSuccess(){ return this.code == 200; } public int getCode() { return this.code; } public ReturnT<T> setCode(int code) { this.code = code; return this; } public String getMsg() { return this.msg; } public ReturnT<T> setMsg(String msg) { this.msg = msg; return this; } public T getContent() { return this.content; } public ReturnT<T> setContent(T content) { this.content = content; return this; } public String toString() { return "ReturnT [code=" + this.code + ", msg=" + this.msg + ", content=" + this.content + "]"; } } src/main/java/com/zy/asrs/task/TestScheduler.java
File was deleted src/main/java/com/zy/asrs/task/WcsDispatcher.java
@@ -2,21 +2,21 @@ import com.zy.asrs.task.handler.WorkLogHandler; import com.zy.asrs.task.handler.WorkMastHandler; 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.stereotype.Component; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; /** * 单线程模式 ( 已弃用 ) * 任务中心调度器 * Created by vincent on 2020/7/4 */ @Component //@Component @Deprecated public class WcsDispatcher { private static final Logger log = LoggerFactory.getLogger(WcsDispatcher.class); @@ -36,19 +36,9 @@ try { Thread.sleep(3000); // workMastHandler.start(); workMastHandler.start(); if(!workLogHandler.start()) { Config config = new Config( "name", // 名称[非空] "code", // 编码[非空] "val", // 对应值[非空] (short)1, // 类型[非空] (short)1 // 状态[非空] ); boolean insert = configService.insert(config); System.out.println(insert); } workLogHandler.start(); } catch (Exception e) { log.error("Exception", e); src/main/java/com/zy/asrs/task/WorkLogScheduler.java
New file @@ -0,0 +1,29 @@ package com.zy.asrs.task; import com.zy.asrs.task.handler.WorkLogHandler; import com.zy.system.entity.Config; import com.zy.system.service.ConfigService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; /** * Created by vincent on 2020/7/7 */ @Component public class WorkLogScheduler { @Autowired private WorkLogHandler workLogHandler; @Autowired private ConfigService configService; @Scheduled(cron = "0/3 * * * * ? ") private void execute(){ ReturnT<Config> result = workLogHandler.start(); if (!result.isSuccess()) { configService.insert(result.getContent()); } } } src/main/java/com/zy/asrs/task/WorkMastScheduler.java
New file @@ -0,0 +1,21 @@ package com.zy.asrs.task; import com.zy.asrs.task.handler.WorkMastHandler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; /** * Created by vincent on 2020/7/7 */ //@Component public class WorkMastScheduler { @Autowired private WorkMastHandler workMastHandler; @Scheduled(cron = "0/3 * * * * ? ") private void execute(){ workMastHandler.start(); } } src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -8,6 +8,8 @@ import com.zy.asrs.service.WrkMastLogService; 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; @@ -17,7 +19,7 @@ * Created by vincent on 2020/7/6 */ @Service public class WorkLogHandler extends AbstractHandler { public class WorkLogHandler extends AbstractHandler<Config> { @Autowired private WrkMastService wrkMastService; @@ -30,19 +32,19 @@ @Override @Transactional public boolean start() { public ReturnT<Config> start() { try { WrkMast wrkMast = wrkMastService.selectToBeHistoryData(); if (null == wrkMast) { return true; return SUCCESS; } // 保存工作主档历史档 if (!wrkMastLogService.save(wrkMast.getWrkNo())) { exceptionHandle(""); // todo } // 删除工作主档 if (wrkMastService.deleteById(wrkMast)) { exceptionHandle(""); // todo if (!wrkMastService.deleteById(wrkMast)) { exceptionHandle("1111"); // todo } // 保存工作明细档历史档 if (!wrkDetlLogService.save(wrkMast.getWrkNo())) { @@ -55,9 +57,16 @@ } catch (Exception e) { e.printStackTrace(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return false; Config config = new Config( "name", // 名称[非空] "code", // 编码[非空] "val", // 对应值[非空] (short)1, // 类型[非空] (short)1 // 状态[非空] ); return FAIL.setMsg(e.getMessage()).setContent(config); } return true; return SUCCESS; } } src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -4,6 +4,7 @@ import com.zy.asrs.entity.*; import com.zy.asrs.service.*; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.ReturnT; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -16,7 +17,7 @@ */ @Service @Transactional public class WorkMastHandler extends AbstractHandler { public class WorkMastHandler extends AbstractHandler<String> { @Autowired private WrkMastService wrkMastService; @@ -29,10 +30,10 @@ @Autowired private WaitPakinService waitPakinService; public boolean start() { public ReturnT<String> start() { List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData(); if (wrkMasts.isEmpty()) { return true; return SUCCESS; } for (WrkMast wrkMast : wrkMasts) { // 4.入库完成 @@ -43,7 +44,7 @@ doOut(wrkMast); } } return true; return SUCCESS; } private void doIn(WrkMast wrkMast){