From 5539835ebf980de196b17e02e9ce15ded07eba9b Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期五, 25 七月 2025 08:13:50 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java | 71 ++++++++++++++++++++++++++++------- 1 files changed, 57 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java index c9e9340..a4205ef 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java @@ -4,10 +4,15 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.common.Cools; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; 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; import com.zy.asrs.task.core.ReturnT; @@ -19,7 +24,9 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.HashMap; +import java.util.List; import java.util.Set; /** @@ -39,6 +46,8 @@ @Autowired private OrderService orderService; @Autowired + private OrderDetlService orderDetlService; + @Autowired private ApiLogService apiLogService; @Autowired private DocTypeService docTypeService; @@ -51,20 +60,41 @@ String[] split = orderNo.split("-"); String orderNoS = split[0]; //鐧诲綍閲戣澏r - log.info("鐧诲綍閲戣澏"); +// log.info("鐧诲綍閲戣澏"); ReturnT<String> start = loginAuthenticationHandler.start(); - log.info("鐧诲綍閲戣澏:start:"+start); +// log.info("鐧诲綍閲戣澏:start:"+start); DocType docType = docTypeService.selectById(order.getDocType()); if (null == docType) { return SUCCESS; } KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName()); +// if (kingDeeUtilType.entryId>1){ +// Order order1 = orderService.selectById(order.getId()); +// order1.setUpdateTime(new Date()); +// orderService.updateById(order1); +// return SUCCESS; +// } //鏉′欢鎷兼帴 - log.info("鏉′欢鎷兼帴"); + String entryIds = null; + if (kingDeeUtilType.entryId==1){ + List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); + for (OrderDetl orderDetl:orderDetls){ + if (Cools.isEmpty(entryIds)){ + entryIds = orderDetl.getBeBatch().toString(); + }else { + entryIds = entryIds+"," +orderDetl.getBeBatch(); + } + } + orderNoS = ""; + } + if (Cools.isEmpty(entryIds)){ + entryIds = ""; + } + JSONObject dataJsonObject = new JSONObject(); dataJsonObject.put("Numbers",orderNoS); - dataJsonObject.put("EntryIds",""); + dataJsonObject.put("EntryIds",entryIds); dataJsonObject.put("RuleId",kingDeeUtilType.ruleId); dataJsonObject.put("TargetFormId",kingDeeUtilType.correspondingFormId); @@ -72,8 +102,6 @@ jsonObject.put("FormId",kingDeeUtilType.formId); jsonObject.put("data", dataJsonObject); String add = jsonObject.toJSONString(); - log.info("鏉′欢鎷兼帴:"+jsonObject); - //涓嬫帹 log.info("涓嬫帹"); String response = ""; @@ -90,15 +118,30 @@ .setHttps(true) .build() .doPost(); - JSONObject data = JSON.parseObject(response); +// JSONObject data = JSON.parseObject(response); log.info("涓嬫帹response:"+response); Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess"); - String bool=IsSuccess.toString(); - //涓嬫帹瀹屾垚鍘熻鍗�4杞�6 6.涓婃姤瀹屾垚 - if(bool.equals("true")){ - success = true; - order.setSettle(6L); - orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); + String bool1=IsSuccess.toString(); + boolean bool = false; + if (bool1.equals("true")){ + ObjectMapper objectMapper = new ObjectMapper(); + JsonNode rootNode = objectMapper.readTree(response); + bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); + + //涓嬫帹瀹屾垚鍘熻鍗�0杞�1 1.涓嬫帹瀹屾垚 + if(bool){ + //鑾峰彇涓嬫帹璁㈠崟鍙� + String number=rootNode.get("Result").get("ResponseStatus").get("SuccessEntitys").get(0).get("Number").asText(); + int id=Integer.valueOf(rootNode.get("Result").get("ResponseStatus").get("SuccessEntitys").get(0).get("Id").asText()); + success = true; +// order.setSettle(6L); + order.setMemo("1"); + order.setShipCode(number);//涓嬫帹璁㈠崟鍙� + order.setPostFeeType(id);//涓嬫帹ID + order.setUpdateTime(new Date()); + + orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); + } } } catch (Exception e) { log.info("涓嬫帹error:"+response); @@ -109,7 +152,7 @@ try { // 淇濆瓨鎺ュ彛鏃ュ織 apiLogService.save( - "涓嬫帹", + "1.涓嬫帹", URL+ pushDowmAudit, null, "127.0.0.1", -- Gitblit v1.9.1