From f41987779e09b4bf2e10df27ff60f4b28318d630 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期四, 21 八月 2025 17:15:38 +0800 Subject: [PATCH] * --- src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | 77 ++++++++++++++++++++++++++++++++++---- 1 files changed, 68 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java index a94b4bd..cba3103 100644 --- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java @@ -16,6 +16,8 @@ import com.zy.asrs.task.core.ReturnT; import com.zy.common.constant.MesConstant; import com.zy.common.model.MesPakinParam; +import com.zy.common.model.MesPakoutParam; +import com.zy.common.model.YXErpPakinParam; import com.zy.common.utils.HttpHandler; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -23,6 +25,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.List; /** @@ -52,13 +55,15 @@ List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); // 鍏ュ簱瀹屾垚涓婃姤 if (docType.getPakin() == 1) { - MesPakinParam pakinParam = new MesPakinParam(); - pakinParam.setPakinTime(DateUtils.convert(order.getUpdateTime())); - pakinParam.setLgortFrom("5008"); - pakinParam.setLgortTo("5006"); + YXErpPakinParam pakinParam = new YXErpPakinParam(); + String convert = DateUtils.convert(new Date(), DateUtils.yyyyMMdd); + pakinParam.setCTVCode(order.getOrderNo()); + pakinParam.setDTVDate(convert); + pakinParam.setDVerifyDate(convert); + for (OrderDetl orderDetl : orderDetls) { - String serial = Cools.isEmpty(orderDetl.getBatch()) ? "" : orderDetl.getBatch(); - pakinParam.getList().add(new MesPakinParam.Detl(orderDetl.getMatnr() + (Cools.isEmpty(serial) ? "" : "-" + serial), orderDetl.getAnfme())); +// String serial = Cools.isEmpty(orderDetl.getBatch()) ? "" : orderDetl.getBatch(); + pakinParam.getDetail().add(new YXErpPakinParam.Detl(order.getOrderNo(),orderDetl.getMatnr(), orderDetl.getAnfme())); } String response = ""; boolean success = false; @@ -74,21 +79,25 @@ success = true; // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶� if (!orderService.updateSettle(order.getId(), 6L, null)) { - throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + throw new CoolException("涓婃姤瀹屾垚鏇存柊璁㈠崟鐘舵�佸紓甯革紝璇疯仈绯荤鐞嗗憳"); } } else { log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(pakinParam), response); + order.setUpdateTime(new Date()); + orderService.updateById(order); throw new CoolException("涓婃姤mes绯荤粺澶辫触"); } } catch (Exception e) { log.error("fail", e); // TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + order.setUpdateTime(new Date()); + orderService.updateById(order); return FAIL.setMsg(e.getMessage()); } finally { try { // 淇濆瓨鎺ュ彛鏃ュ織 apiLogService.save( - "鎴愬搧搴撳叆搴撲笂鎶�", + "鑳舵枡鍏ュ簱涓婃姤鑷矱RP", MesConstant.URL + MesConstant.PAKIN_URL, null, "127.0.0.1", @@ -101,7 +110,57 @@ } // 鍑哄簱瀹屾垚涓婃姤 if (docType.getPakout() == 1) { - // todo + MesPakoutParam pakoutParam = new MesPakoutParam(); + pakoutParam.setTag(!order.getDocType$().equalsIgnoreCase("鎵嬪姩鍑哄簱鍗�")); + pakoutParam.setPakoutTime(DateUtils.convert(order.getUpdateTime())); + pakoutParam.setLgortFrom("5006"); + pakoutParam.setLgortTo("1111"); + if (!pakoutParam.isTag()) { + pakoutParam.setKunnr("C1000"); + } + pakoutParam.setOrderNo(order.getOrderNo()); + for (OrderDetl orderDetl : orderDetls) { + String serial = Cools.isEmpty(orderDetl.getBatch()) ? "" : orderDetl.getBatch(); + pakoutParam.getList().add(new MesPakoutParam.Detl(orderDetl.getMatnr() + (Cools.isEmpty(serial) ? "" : "-" + serial), orderDetl.getAnfme())); + } + String response = ""; + boolean success = false; + try { + response = new HttpHandler.Builder() + .setUri(MesConstant.URL) + .setPath(MesConstant.PAKOUT_URL) + .setJson(JSON.toJSONString(pakoutParam)) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if (jsonObject.getInteger("code").equals(200)) { + success = true; + // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶� + if (!orderService.updateSettle(order.getId(), 6L, null)) { + throw new CoolException("涓婃姤瀹屾垚鏇存柊璁㈠崟鐘舵�佸紓甯革紝璇疯仈绯荤鐞嗗憳"); + } + } else { + log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PAKOUT_URL, JSON.toJSONString(pakoutParam), response); + throw new CoolException("涓婃姤mes绯荤粺澶辫触"); + } + } catch (Exception e) { + log.error("fail", e); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return FAIL.setMsg(e.getMessage()); + } finally { + try { + // 淇濆瓨鎺ュ彛鏃ュ織 + apiLogService.save( + "鎴愬搧搴撳嚭搴撲笂鎶�", + MesConstant.URL + MesConstant.PAKOUT_URL, + null, + "127.0.0.1", + JSON.toJSONString(pakoutParam), + response, + success + ); + } catch (Exception e) { log.error("", e); } + } } return SUCCESS; } -- Gitblit v1.9.1