From ed4cb573a3a7648f169445b648cb5450605f8d2a Mon Sep 17 00:00:00 2001 From: 18516761980 <tqsxp@163.com> Date: 星期三, 12 十月 2022 16:00:24 +0800 Subject: [PATCH] #lsh --- src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java | 133 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 127 insertions(+), 6 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 b78196a..be19e16 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java @@ -1,22 +1,31 @@ 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<String> { @@ -28,10 +37,79 @@ private WrkDetlService wrkDetlService; @Autowired private WrkDetlLogService wrkDetlLogService; + @Autowired + private ApiLogService apiLogService; + @Autowired + private LocMastService locMastService; + @Autowired + private WaitPakinService waitPakinService; + @Autowired + private WaitPakinLogService waitPakinLogService; + + @Value("${mes.url}") + private String mesUrl; + + @Value("${mes.inPath}") + private String inpath; + + @Value("${mes.outPath}") + private String outPath; @Transactional public ReturnT<String> start(WrkMast wrkMast) { try { + /*...........................璧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巻鍙叉。 + WaitPakin pakin = waitPakinService.selectOne(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode())); + if (pakin!=null){ + 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.getSourceLocNo()); +// 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("淇濆瓨宸ヤ綔鍘嗗彶妗workNo={0}]澶辫触", wrkMast.getWrkNo()); @@ -49,6 +127,7 @@ // exceptionHandle("鍒犻櫎宸ヤ綔鏄庣粏妗workNo={0}]澶辫触", wrkMast.getWrkNo()); } } catch (Exception e) { + log.error("fail", e); e.printStackTrace(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return FAIL.setMsg(e.getMessage()); @@ -56,4 +135,46 @@ 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( + "涓婃姤mes绯荤粺", + 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