From 1ce14188009c6a85787650eca493d154ab169810 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期六, 04 七月 2020 17:03:37 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/AbstractHandler.java | 14 +++++++
src/main/java/com/zy/asrs/entity/LocDetl.java | 4 +
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 117 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java
index 852c4d8..8be72f5 100644
--- a/src/main/java/com/zy/asrs/entity/LocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -131,7 +131,9 @@
public LocDetl() {}
- public LocDetl(String lgnum,Integer tbnum,Integer tbpos,String zmatid,String maktx,String werks,Double anfme,String altme,String zpallet,String bname,String memo,Long modiUser,Date modiTime,Long appeUser,Date appeTime) {
+ public LocDetl(String locNo, String matnr, String lgnum,Integer tbnum,Integer tbpos,String zmatid,String maktx,String werks,Double anfme,String altme,String zpallet,String bname,String memo,Long modiUser,Date modiTime,Long appeUser,Date appeTime) {
+ this.locNo = locNo;
+ this.matnr = matnr;
this.lgnum = lgnum;
this.tbnum = tbnum;
this.tbpos = tbpos;
diff --git a/src/main/java/com/zy/asrs/task/AbstractHandler.java b/src/main/java/com/zy/asrs/task/AbstractHandler.java
new file mode 100644
index 0000000..5fd205a
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/AbstractHandler.java
@@ -0,0 +1,14 @@
+package com.zy.asrs.task;
+
+import com.core.exception.CoolException;
+
+/**
+ * Created by vincent on 2020/7/4
+ */
+public abstract class AbstractHandler {
+
+ protected void exceptionHandle(String errorMsg){
+ throw new CoolException("231");
+ }
+
+}
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 2878e93..2d0591b 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -1,11 +1,20 @@
package com.zy.asrs.task.handler;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.LocDetlService;
+import com.zy.asrs.service.LocMastService;
+import com.zy.asrs.service.WrkDetlService;
import com.zy.asrs.service.WrkMastService;
+import com.zy.asrs.task.AbstractHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.util.Date;
import java.util.List;
/**
@@ -13,10 +22,16 @@
*/
@Service
@Transactional
-public class WorkMastHandler {
+public class WorkMastHandler extends AbstractHandler {
@Autowired
private WrkMastService wrkMastService;
+ @Autowired
+ private WrkDetlService wrkDetlService;
+ @Autowired
+ private LocMastService locMastService;
+ @Autowired
+ private LocDetlService locDetlService;
public void start() {
List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData();
@@ -35,10 +50,71 @@
}
private void doIn(WrkMast wrkMast){
+ Date now = new Date();
switch (wrkMast.getIoType()) {
+ // 绌烘澘鍏ュ簱
case 10:
+ // 淇敼搴撲綅鐘舵��=D
+ LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ if (null != locMast && (locMast.getLocType().equals("S") || locMast.getLocType().equals("Q"))) {
+ locMast.setLocType("D");
+ locMast.setIoTime(now);
+ locMast.setModiTime(now);
+ if (!locMastService.updateById(locMast)) {
+ exceptionHandle(""); // todo
+ }
+ }
break;
case 1:
+
+ List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()));
+ if (!locDetls.isEmpty()) {
+ locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()));
+ }
+
+ List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+ if (wrkDetls.isEmpty()) {
+ exceptionHandle(""); // todo
+ }
+
+ for (WrkDetl wrkDetl : wrkDetls) {
+
+ LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getLocNo()).eq("matnr", wrkDetl.getMatnr()));
+ if (null != locDetl) {
+ locDetl.setAnfme(wrkDetl.getAnfme());
+ locDetl.setModiTime(now);
+ if (!locDetlService.updateById(locDetl)) {
+ exceptionHandle(""); // todo
+ }
+ } else {
+ locDetl = new LocDetl(
+ wrkMast.getLocNo(), // 搴撲綅鍙�
+ wrkDetl.getMatnr(), // 鐗╂枡鍙�
+ null, // 浠撳簱鍙�
+ null, // 杞偍璇锋眰缂栧彿
+ null, // 琛岄」鐩�
+ null, // 鐗╂枡鏍囩ID
+ null, // 鐗╂枡鎻忚堪
+ null, // 宸ュ巶
+ null, // 鏁伴噺
+ null, // 鍗曚綅
+ null, // 鎵樼洏鏉$爜
+ null, // 鐢ㄦ埛ID
+ null, // 澶囨敞
+ null, // 淇敼浜哄憳
+ null, // 淇敼鏃堕棿
+ null, // 鍒涘缓鑰�
+ null // 娣诲姞鏃堕棿
+ );
+ // todo
+
+ }
+
+
+ }
+
+
+
break;
case 53:
break;
@@ -57,4 +133,27 @@
}
+
+
+
+ public static void main(String[] args) {
+ for (int i = 0;i<10;i++) {
+
+ try {
+
+ System.out.println("====" + i);
+ if (i == 5){
+ throw new Exception("dsa");
+ }
+ System.out.println("----" + i);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+
+
+ }
+ }
+
}
--
Gitblit v1.9.1