From c1eee79b96d70a3e93d84f88865dcd0bb30f0ab3 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期日, 24 四月 2022 23:33:00 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | 82 ++++++++++++++++++++++++++++------------ 1 files changed, 57 insertions(+), 25 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 8dd523a..a94b4bd 100644 --- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java @@ -2,10 +2,14 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.core.common.Cools; import com.core.common.DateUtils; import com.core.exception.CoolException; +import com.zy.asrs.entity.DocType; import com.zy.asrs.entity.Order; import com.zy.asrs.entity.OrderDetl; +import com.zy.asrs.service.ApiLogService; +import com.zy.asrs.service.DocTypeService; import com.zy.asrs.service.OrderDetlService; import com.zy.asrs.service.OrderService; import com.zy.asrs.task.AbstractHandler; @@ -18,7 +22,6 @@ import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.util.List; @@ -35,41 +38,70 @@ private OrderService orderService; @Autowired private OrderDetlService orderDetlService; + @Autowired + private ApiLogService apiLogService; + @Autowired + private DocTypeService docTypeService; @Transactional public ReturnT<String> start(Order order) { - List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); - - MesPakinParam pakinParam = new MesPakinParam(); - pakinParam.setPakinTime(DateUtils.convert(order.getUpdateTime())); - pakinParam.setLgortFrom("5008"); - pakinParam.setLgortTo("5006"); - for (OrderDetl orderDetl : orderDetls) { - pakinParam.getList().add(new MesPakinParam.Detl(orderDetl.getMatnr(), orderDetl.getAnfme())); + DocType docType = docTypeService.selectById(order.getDocType()); + if (null == docType) { + return SUCCESS; } - - try { - String response = new HttpHandler.Builder() + 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"); + 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 response = ""; + boolean success = false; + try { + response = new HttpHandler.Builder() .setUri(MesConstant.URL) .setPath(MesConstant.PAKIN_URL) .setJson(JSON.toJSONString(pakinParam)) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getInteger("code").equals(200)) { - // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶� - if (!orderService.updateSettle(order.getId(), 6L, null)) { - throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + 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.PAKIN_URL, JSON.toJSONString(pakinParam), response); + throw new CoolException("涓婃姤mes绯荤粺澶辫触"); } - } else { - log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(pakinParam), 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.PAKIN_URL, + null, + "127.0.0.1", + JSON.toJSONString(pakinParam), + response, + success + ); + } catch (Exception e) { log.error("", e); } } - } catch (Exception e) { - log.error("fail", e); - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return FAIL.setMsg(e.getMessage()); + } + // 鍑哄簱瀹屾垚涓婃姤 + if (docType.getPakout() == 1) { + // todo } return SUCCESS; } -- Gitblit v1.9.1