From ab2b8ef5df5edf24cf158dbcfc1a43b0629d644e Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 07 七月 2020 13:02:14 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/ReturnT.java | 65 ++++++++++++++++ /dev/null | 35 -------- src/main/java/com/zy/asrs/task/AbstractHandler.java | 14 +-- src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 9 +- src/main/java/com/zy/asrs/task/WorkMastScheduler.java | 21 +++++ src/main/java/com/zy/asrs/task/AsrsException.java | 16 ++++ src/main/java/com/zy/asrs/task/WorkLogScheduler.java | 29 +++++++ src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | 23 ++++- src/main/java/com/zy/asrs/task/WcsDispatcher.java | 20 +--- 9 files changed, 162 insertions(+), 70 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/AbstractHandler.java b/src/main/java/com/zy/asrs/task/AbstractHandler.java index 7dd306c..2e8383a 100644 --- a/src/main/java/com/zy/asrs/task/AbstractHandler.java +++ b/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); } } diff --git a/src/main/java/com/zy/asrs/task/AsrsException.java b/src/main/java/com/zy/asrs/task/AsrsException.java new file mode 100644 index 0000000..d90d95a --- /dev/null +++ b/src/main/java/com/zy/asrs/task/AsrsException.java @@ -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); + } + +} diff --git a/src/main/java/com/zy/asrs/task/ReturnT.java b/src/main/java/com/zy/asrs/task/ReturnT.java new file mode 100644 index 0000000..18e5ff9 --- /dev/null +++ b/src/main/java/com/zy/asrs/task/ReturnT.java @@ -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 + "]"; + } + +} diff --git a/src/main/java/com/zy/asrs/task/TestScheduler.java b/src/main/java/com/zy/asrs/task/TestScheduler.java deleted file mode 100644 index 3b0147a..0000000 --- a/src/main/java/com/zy/asrs/task/TestScheduler.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.zy.asrs.task; - -import com.core.common.DateUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.scheduling.annotation.Async; -import org.springframework.scheduling.annotation.Scheduled; - -import java.util.Date; - -/** - * Created by vincent on 2020/6/30 - */ -//@Component -public class TestScheduler { - - private static final Logger logger = LoggerFactory.getLogger(TestScheduler.class); - - @Scheduled(cron = "0/3 * * * * ? ") - @Async - public void test() throws InterruptedException { - while (true) { - //妯℃嫙鑰楁椂浠诲姟锛岄樆濉�10s - Thread.sleep(10000); - break; - } - } - - @Scheduled(cron = "0/3 * * * * ? ") - @Async - public void test1() throws InterruptedException { - System.out.println(DateUtils.convert(new Date())); - } - -} diff --git a/src/main/java/com/zy/asrs/task/WcsDispatcher.java b/src/main/java/com/zy/asrs/task/WcsDispatcher.java index 60cf51c..ba9504f 100644 --- a/src/main/java/com/zy/asrs/task/WcsDispatcher.java +++ b/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); diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java new file mode 100644 index 0000000..ac0033c --- /dev/null +++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java @@ -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()); + } + } + +} diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java new file mode 100644 index 0000000..67a2abb --- /dev/null +++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java @@ -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(); + } + +} diff --git a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java index d0093a6..a411865 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java +++ b/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 } // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。 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; } } diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java index ef6cf41..b13b748 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/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){ -- Gitblit v1.9.1