From 654d0f6f816af954125ad6661a0b934d56c22083 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期四, 25 九月 2025 13:22:55 +0800 Subject: [PATCH] 一条订单明细完成,上报关闭 --- src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java | 81 ++++++++++++++++++++++++++++++++++++---- 1 files changed, 73 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java index 693b9b9..54dc6bd 100644 --- a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java @@ -19,16 +19,20 @@ import com.zy.asrs.service.OrderService; import com.zy.common.model.DetlDto; import com.zy.common.utils.HttpHandler; +import com.zy.system.entity.User; +import com.zy.system.service.UserService; 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 javax.annotation.Resource; import java.text.Format; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Objects; @Slf4j @Service("orderDetlService") @@ -39,12 +43,23 @@ @Autowired private OrderDetlService orderDetlService; + @Resource + private UserService userService; + @Autowired private ApiLogService apiLogService; @Value("${erp.switch.ReviewOrderSwitch}") private Boolean switchReviewOrderSwitch; @Value("${erp.address.URL}") private String URL; + @Value("${erp.address.sServer}") + private String sServer; + @Value("${erp.address.sAccID}") + private String sAccID; + @Value("${erp.address.sUserID}") + private String sUserID; + @Value("${erp.address.sPassword}") + private String sPassword; @Value("${erp.address.inaddressSave}") private String inaddressSave; @Value("${erp.address.outaddressSave}") @@ -140,10 +155,10 @@ OrderRsult.Login login = new OrderRsult.Login(); OrderRsult.HeadTable headTable = new OrderRsult.HeadTable(); OrderRsult.BodyTable bodyTable = new OrderRsult.BodyTable(); - login.setSAccID("999"); //璐﹀鍙� 鍥哄畾 - login.setSUserID("sys");//U8鐧婚檰璐﹀彿 鍥哄畾 - login.setSPassword("123456");//U8鐧婚檰瀵嗙爜 鍥哄畾 - login.setSServer("10.1.9.20");//U8鏈嶅姟鍣ㄥ湴鍧�銆�鍥哄畾 + login.setSAccID(sAccID); //璐﹀鍙� 鍥哄畾 + login.setSUserID(sUserID);//U8鐧婚檰璐﹀彿 鍥哄畾 + login.setSPassword(sPassword);//U8鐧婚檰瀵嗙爜 鍥哄畾 + login.setSServer(sServer);//U8鏈嶅姟鍣ㄥ湴鍧�銆�鍥哄畾 orderRsult.setLogin(login); orderRsult.setVerifier("sys");//鍗曟嵁绫诲瀷銆� 鍥哄畾 orderRsult.setCommandType(sts.equals(1) ? "鏂板" : "鍏抽棴");//鎿嶄綔绫诲瀷 銆�鍥哄畾 @@ -158,8 +173,8 @@ headTable.setCmaker("sys");//鍒跺崟浜哄悕绉� headTable.setVt_id("89");//妯℃澘鍙� 榛樿 - headTable.setCiwhcode("");//杞叆浠撳簱缂栫爜 - headTable.setCowhcode("");//杞嚭浠撳簱缂栫爜 + headTable.setCiwhcode("1");//杞叆浠撳簱缂栫爜 + headTable.setCowhcode("1");//杞嚭浠撳簱缂栫爜 headTable.setCordcode("");//鍑哄簱绫诲埆缂栫爜 榛樿 headTable.setCirdcode("");//鍏ュ簱绫诲埆缂栫爜 榛樿 headTable.setCodepcode("");//杞嚭閮ㄩ棬缂栫爜 @@ -176,9 +191,18 @@ bodyTable.setCoutposcode("");//鐩爣璐т綅 bodyTable.setItrsid(orderDetl.getMemo());//琛屼富閿� bodyTable.setEditprop(sts.equals(1) ? "A" : "B");//鐘舵�� A 鏂板 + User user = userService.selectById(orderDetl.getUpdateBy()); + headTable.setWms_operator(user == null ? "" : user.getUsername()); // 鎿嶄綔璐﹀彿鍚嶇О + ArrayList<OrderRsult.BodyTable> bodyTables = new ArrayList<>(); + bodyTables.add(bodyTable); + orderRsult.setBodyTable(bodyTables); - if (order.getDocType()>10L) { + ArrayList<OrderRsult.HeadTable> headTables = new ArrayList<>(); + headTables.add(headTable); + orderRsult.setHeadTable(headTables); + + if (order.getDocType() == 34L) { ERPPath=outaddressSave; } ERPName=order.getDocType$(); @@ -196,11 +220,52 @@ System.out.println("response:"+response); JSONObject jsonObject = JSON.parseObject(response); - if (jsonObject.getInteger("code").equals(200)) { + if (jsonObject.getInteger("code").equals(1)) { orderDetl.setUnits(qty+orderDetl.getUnits()); orderDetl.setStatus(sts); orderDetlService.updateById(orderDetl); success = true; + // 涓�鏉¤鍗曟槑缁嗗畬鎴愶紝涓婃姤鍏抽棴 + if (Objects.equals(orderDetl.getAnfme(), orderDetl.getQty())) { + boolean success2 = false; + try { + orderRsult.setCommandType("鍏抽棴"); + response = new HttpHandler.Builder() +// .setHeaders(map) + .setUri(URL) + .setPath(ERPPath) + .setJson(JSON.toJSONString(orderRsult)) + .build() + .doPost(); + System.out.println("response:" + response); + JSONObject jsonObject2 = JSON.parseObject(response); + + if (jsonObject2.getInteger("code").equals(1)) { + success2 = true; + } else { + log.error("鏂板瀹屾垚璋冪敤鍏抽棴璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL + "/" + ERPPath, JSON.toJSONString(orderRsult), response); + } + } catch (Exception e) { + log.error("鏂板瀹屾垚璋冪敤鍏抽棴璇锋眰鎺ュ彛寮傚父锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL + "/" + ERPPath, JSON.toJSONString(orderRsult), response); + e.printStackTrace(); + } finally { + try { + // 淇濆瓨鎺ュ彛鏃ュ織 + ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); + apiLogService.save( + "鍏抽棴涓婃姤" + ERPName, + URL + "/" + ERPPath, + null, + "127.0.0.1", + JSON.toJSONString(orderRsult), + response, + success2 + ); + } catch (Exception e) { + log.error("", e); + } + } + } } else { log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+ERPPath, JSON.toJSONString(orderRsult), response); } -- Gitblit v1.9.1