From a1baefc4c357760a0faa727e68bc5b5f4feec264 Mon Sep 17 00:00:00 2001
From: 18516761980 <tqsxp@163.com>
Date: 星期五, 07 十月 2022 13:44:59 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | 152 ++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 133 insertions(+), 19 deletions(-)
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..dd40d38 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -1,23 +1,33 @@
package com.zy.asrs.task.handler;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.zy.asrs.entity.WrkDetl;
-import com.zy.asrs.entity.WrkMast;
-import com.zy.asrs.service.WrkDetlLogService;
-import com.zy.asrs.service.WrkDetlService;
-import com.zy.asrs.service.WrkMastLogService;
-import com.zy.asrs.service.WrkMastService;
+import com.core.common.DateUtils;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.param.CombParam;
+import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.MobileServiceImpl;
import com.zy.asrs.task.AbstractHandler;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.common.constant.MesConstant;
+import com.zy.common.utils.HttpHandler;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import java.util.*;
+
/**
* Created by vincent on 2020/7/6
*/
+@Slf4j
@Service
-public class WorkLogHandler extends AbstractHandler {
+public class WorkLogHandler extends AbstractHandler<String> {
@Autowired
private WrkMastService wrkMastService;
@@ -27,37 +37,141 @@
private WrkDetlService wrkDetlService;
@Autowired
private WrkDetlLogService wrkDetlLogService;
+ @Autowired
+ private ApiLogService apiLogService;
+ @Autowired
+ private LocMastService locMastService;
+ @Autowired
+ private WaitPakinService waitPakinService;
+ @Autowired
+ private WaitPakinLogService waitPakinLogService;
- @Override
+ @Value("${mes.url}")
+ private String mesUrl;
+
+ @Value("${mes.inPath}")
+ private String inpath;
+
+ @Value("${mes.outPath}")
+ private String outPath;
+
@Transactional
- public boolean start() {
+ public ReturnT<String> start(WrkMast wrkMast) {
try {
- WrkMast wrkMast = wrkMastService.selectToBeHistoryData();
- if (null == wrkMast) {
- return true;
+ /*...........................璧e窞鏂板..............浠ヤ笅.............璧e窞鏂板...........................*/
+ ReturnT<String> result = null;
+ WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+ if (wrkMast.getWrkSts() == 5 && wrkMast.getIoType() == 1) {
+ if(wrkDetl != null){
+ CombParam combParam = new CombParam();
+ combParam.setPackNo(wrkDetl.getZpallet());
+// combParam.setPackName(wrkDetl.getMatnr());
+ combParam.setLocNo(wrkMast.getLocNo());
+ combParam.setPackSts(1);
+ combParam.setRequestTime(DateUtils.convert(new Date()));
+ result = postMesData(inpath,combParam);
+ // 淇濆瓨鍏ュ簱閫氱煡妗e巻鍙叉。
+ if (!waitPakinLogService.save(wrkMast.getBarcode())) {
+ exceptionHandle("淇濆瓨鍏ュ簱閫氱煡妗e巻鍙叉。[workNo={0}]澶辫触", wrkMast.getWrkNo());
+ }
+ // 鍒犻櫎鍏ュ簱閫氱煡妗�
+ if (!waitPakinService.delete(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode()))) {
+ exceptionHandle("鍒犻櫎鍏ュ簱閫氱煡妗workNo={0}]澶辫触", wrkMast.getWrkNo());
+ }
+ }
+ } else if (wrkMast.getWrkSts() == 15 && wrkMast.getIoType() == 101){
+ if(wrkDetl != null){
+ CombParam combParam = new CombParam();
+ combParam.setPackNo(wrkDetl.getZpallet());
+ combParam.setPackName(wrkDetl.getMatnr());
+ combParam.setLocNo(wrkMast.getLocNo());
+ combParam.setPackSts(0);
+ combParam.setRequestTime(DateUtils.convert(new Date()));
+ result = postMesData(outPath,combParam);
+ }
+ }else if(wrkMast.getWrkSts() == 4 && wrkMast.getIoType() == 11){
+ if(wrkDetl != null){
+ CombParam combParam = new CombParam();
+ combParam.setPackNo(wrkDetl.getZpallet());
+ combParam.setLocNo(wrkMast.getLocNo());
+ combParam.setPackSts(5);
+ combParam.setRequestTime(DateUtils.convert(new Date()));
+ result = postMesData(inpath,combParam);
+ }
}
+ if(null != result && !result.isSuccess()){
+ return result;
+ }
+
+ /*...........................璧e窞鏂板..............浠ヤ笂.............璧e窞鏂板...........................*/
+
+
+
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
- exceptionHandle(""); // todo
+ exceptionHandle("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
}
// 鍒犻櫎宸ヤ綔涓绘。
- if (wrkMastService.deleteById(wrkMast)) {
- exceptionHandle(""); // todo
+ if (!wrkMastService.deleteById(wrkMast)) {
+ exceptionHandle("鍒犻櫎宸ヤ綔涓绘。[workNo={0}]澶辫触", wrkMast.getWrkNo());
}
// 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
- exceptionHandle(""); // todo
+// exceptionHandle("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo());
}
// 鍒犻櫎宸ヤ綔鏄庣粏妗�
if (!wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()))) {
- exceptionHandle(""); // todo
+// exceptionHandle("鍒犻櫎宸ヤ綔鏄庣粏妗workNo={0}]澶辫触", wrkMast.getWrkNo());
}
} catch (Exception e) {
+ log.error("fail", e);
e.printStackTrace();
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return false;
+ return FAIL.setMsg(e.getMessage());
}
- return true;
+ return SUCCESS;
}
+ /*...........................璧e窞鏂板..............浠ヤ笅.............璧e窞鏂板...........................*/
+
+ private ReturnT<String> postMesData(String mesPath,Object combParam){
+ if(combParam != null){
+ String response = "";
+ boolean success = false;
+ try {
+ response = new HttpHandler.Builder()
+ .setUri(mesUrl)
+ .setPath(mesPath)
+ .setJson(JSON.toJSONString(combParam))
+ .build()
+ .doPost();
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (jsonObject.getInteger("code").equals(200)) {
+ success = true;
+ } else {
+ log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", mesUrl+mesPath, JSON.toJSONString(combParam), response);
+ throw new CoolException("涓婃姤mes绯荤粺澶辫触");
+ }
+ } catch (Exception e) {
+ log.error("fail", e);
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return FAIL.setMsg(e.getMessage());
+ } finally {
+ try {
+ // 淇濆瓨鎺ュ彛鏃ュ織
+ apiLogService.save(
+ "鎴愬搧搴撳叆搴撲笂鎶�",
+ mesUrl + mesPath,
+ null,
+ "127.0.0.1",
+ JSON.toJSONString(combParam),
+ response,
+ success
+ );
+ } catch (Exception e) { log.error("", e); }
+ }
+ }
+ return SUCCESS;
+ }
+ /*...........................璧e窞鏂板..............浠ヤ笂.............璧e窞鏂板...........................*/
}
--
Gitblit v1.9.1