From 33310bf12086bbb44719a60389ddd810ed51b8d8 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期五, 07 二月 2025 09:02:23 +0800
Subject: [PATCH] logo体积太大,更新为小体积logo
---
src/main/java/com/zy/asrs/task/handler/OrderSendHandler.java | 136 ++++++++++++++++++++++++++++-----------------
1 files changed, 85 insertions(+), 51 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSendHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSendHandler.java
index 3c86c42..d6a5165 100644
--- a/src/main/java/com/zy/asrs/task/handler/OrderSendHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/OrderSendHandler.java
@@ -2,87 +2,121 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.zy.asrs.entity.DocType;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.entity.param.OpenOrderPakoutParam;
+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;
-import com.zy.asrs.task.ErpAccessTokenScheduler;
+import com.zy.asrs.utils.Utils;
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 java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
@Slf4j
@Service
@Transactional
public class OrderSendHandler extends AbstractHandler<String> {
- private static final String erpIp = "10.100.221.19:81";
- private static final String inPath = "/ierp/kapi/app/im/PurinbillApiPlugin";
- private static final String outPath = "/ierp/kapi/app/im/SaloutbillApiPlugin";
+ @Value("${u8.url}")
+ private String url;
-
+ @Value("${u8.path}")
+ private String orderReportPath;
@Autowired
private OrderService orderService;
@Autowired
private DocTypeService docTypeService;
+ @Autowired
+ private ApiLogService apiLogService;
+ @Autowired
+ private OrderDetlService orderDetlService;
public void start(Order order) {
- String accessToken = ErpAccessTokenScheduler.accessToken;
- if (accessToken.equals("")) {
- return;
+
+ List<OpenOrderPakoutParam> paramList = new ArrayList<>();
+ OpenOrderPakoutParam param = new OpenOrderPakoutParam();
+// paramList.add(param);
+
+ List<OrderDetl> orderDetlList = orderDetlService.selectByOrderId(order.getId());
+
+ param.setcCode(order.getOrderNo());
+ param.setcMaker(order.getOperMemb());
+ param.setcCusName(order.getCstmrName());
+ param.setcAccount(order.getNumber());
+ param.setcMemo(order.getMemo());
+ param.setType(Cools.isEmpty(order.getDocType$()) ? "" : order.getDocType$());
+ param.setdDate(Utils.getDateStr(new Date()));
+ param.setAllocation(order.getItemName());
+
+
+ List<OpenOrderPakoutParam.Body> bodyList = new ArrayList<>();
+ param.setaDDBody(bodyList);
+
+ for (OrderDetl orderDetl : orderDetlList) {
+ OpenOrderPakoutParam.Body body = new OpenOrderPakoutParam.Body();
+ body.setiQuantity(orderDetl.getQty());
+ body.setcInvCode(orderDetl.getMatnr());
+ body.setCbMemo(orderDetl.getMemo());
+ bodyList.add(body);
}
- HashMap<String, Object> header = new HashMap<>();
- header.put("accessToken",accessToken);
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("orderNo",order.getOrderNo());
- HttpHandler.Builder prepBuilder = new HttpHandler.Builder()
- .setUri(erpIp)
- .setHeaders(header)
- .setJson(jsonObject.toJSONString());
- JSONObject respJson;
+ doHttpRequest(param, "涓婃姤ERP鍑哄簱鍗曟嵁", url, orderReportPath, null, "127.0.0.1");
+
+ orderService.updateSettle(order.getId(), 6L, 0L);
- //鍏ュ簱鍗曟嵁
- if (docTypeService.selectOne(new EntityWrapper<DocType>()
- .eq("doc_id",order.getDocType())).getPakin() == 1) {
- try {
- respJson = JSON.parseObject(
- prepBuilder.setPath(inPath)
- .build()
- .doPost());
- } catch (IOException e) {
- throw new RuntimeException(e);
+ }
+
+ private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip) {
+ String response = "";
+ boolean success = false;
+ log.info(JSONObject.toJSONString(requestParam));
+ try {
+ response = new HttpHandler.Builder()
+ .setUri(url)
+ .setPath(path)
+ .setJson(JSONObject.toJSONString(requestParam))
+ .build()
+ .doPost();
+ log.info("涓婃姤ERP鍑哄簱鍗曟嵁璇锋眰杩斿洖鎶ユ枃锛歿}", response);
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (Cools.isEmpty(jsonObject.get("ErrorCode"))) {
+ throw new CoolException(jsonObject.get("ErrorMsg").toString());
}
- }else {
- //鍑哄簱鍗曟嵁
- try {
- respJson = JSON.parseObject(
- prepBuilder.setPath(outPath)
- .build()
- .doPost());
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
- if ((boolean)respJson.get("success")) {
- orderService.updateSettle(order.getId(),6L,1L);
- log.info("鍗曟嵁:" + order.getOrderNo() + "鍥炰紶鎴愬姛锛屽凡鏇存柊鍗曟嵁鐘舵��");
- }else {
- order.setItemId(order.getItemId() + 1);
- orderService.updateById(order);
- log.info("鍗曟嵁:"+ order.getOrderNo()+" 鍥炰紶澶辫触锛岃繖鏄" + order.getItemId() + "娆″洖浼�");
- log.info(respJson.toJSONString());
+ int code = Integer.parseInt(jsonObject.get("ErrorCode").toString());
+ if (code == 0) {
+ throw new CoolException(jsonObject.get("ErrorMsg").toString());
+ }
+ success = true;
+ return code;
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ throw new CoolException("璋冪敤鎺ュ彛鍝嶅簲閿欒");
+ } finally {
+ apiLogService.save(
+ namespace,
+ url + path,
+ appkey,
+ ip,
+ JSON.toJSONString(JSONObject.toJSONString(requestParam)),
+ response,
+ success
+ );
}
+
}
}
--
Gitblit v1.9.1