自动化立体仓库 - WMS系统
#
LSH
2023-12-27 e714ec99291df9629c19c597e3fa65b71cf2560e
#
6个文件已修改
132 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/kingdee/ReviewOrderSyncScheduler.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/SubmitOrderSyncScheduler.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/ReviewOrderSyncScheduler.java
@@ -11,6 +11,7 @@
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
/**
@@ -28,7 +29,7 @@
    @Value("${erp.switch.ReviewOrderSwitch}")
    private boolean ReviewOrderSwitch;
    @Scheduled(cron = "0/3 * * * * ? ")
//    @Scheduled(cron = "0/3 * * * * ? ")
    @Async("orderThreadPool")
    public void completeAndReport(){
        if(!ReviewOrderSwitch){
@@ -36,9 +37,15 @@
        }
        List<Order> orders = orderService.selectComplete();
        for (Order order : orders) {
            ReturnT<String> result = reviewOrderSyncHandler.start(order);
            if (!result.isSuccess()) {
                log.error("单据[orderNo={}]向erp审核失败", order.getOrderNo());
            try{
                ReturnT<String> result = reviewOrderSyncHandler.start(order);
                if (!result.isSuccess()) {
                    log.error("单据[orderNo={}]向erp审核失败", order.getOrderNo());
                }
            }catch (Exception e){
                Order order1 = orderService.selectById(order.getId());
                order1.setUpdateTime(new Date());
                orderService.updateById(order1);
            }
        }
    }
src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java
@@ -3,11 +3,12 @@
import com.zy.asrs.entity.Order;
import com.zy.asrs.service.OrderService;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.kingdee.handler.SubmitOrderSyncHandler;
import com.zy.asrs.task.kingdee.handler.SaveOrderSyncHandler;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.List;
@@ -18,25 +19,24 @@
@Slf4j
@Component
public class SaveOrderSyncScheduler {
    @Autowired
    private SubmitOrderSyncHandler submitOrderSyncHandler;
    private SaveOrderSyncHandler saveOrderSyncHandler;
    @Autowired
    private OrderService orderService;
    @Value("${erp.switch.ReviewOrderSwitch}")
    private boolean ReviewOrderSwitch;
    @Value("${erp.switch.SaveOrderSwitch}")
    private boolean SaveOrderSwitch;
//    @Scheduled(cron = "0/3 * * * * ? ")
    @Async("orderThreadPool")
    public void completeAndReport(){
        if (1==1) return;
        if(!ReviewOrderSwitch){
        if(!SaveOrderSwitch){
            return;
        }
        List<Order> orders = orderService.selectComplete();
        for (Order order : orders) {
            ReturnT<String> result = submitOrderSyncHandler.start(order);
            ReturnT<String> result = saveOrderSyncHandler.start(order);
            if (!result.isSuccess()) {
                log.error("单据[orderNo={}]提交至erp失败", order.getOrderNo());
            }
src/main/java/com/zy/asrs/task/kingdee/SubmitOrderSyncScheduler.java
@@ -3,7 +3,8 @@
import com.zy.asrs.entity.Order;
import com.zy.asrs.service.OrderService;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.kingdee.handler.SaveOrderSyncHandler;
import com.zy.asrs.task.kingdee.handler.SubmitOrderSyncHandler;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -11,6 +12,7 @@
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
/**
@@ -21,24 +23,30 @@
public class SubmitOrderSyncScheduler {
    @Autowired
    private SaveOrderSyncHandler saveOrderSyncHandler;
    private SubmitOrderSyncHandler submitOrderSyncHandler;
    @Autowired
    private OrderService orderService;
    @Value("${erp.switch.ReviewOrderSwitch}")
    private boolean ReviewOrderSwitch;
    @Value("${erp.switch.SubmitOrderSwitch}")
    private boolean SubmitOrderSwitch;
//    @Scheduled(cron = "0/3 * * * * ? ")
    @Scheduled(cron = "0/3 * * * * ? ")
    @Async("orderThreadPool")
    public void completeAndReport(){
        if(!ReviewOrderSwitch){
        if(!SubmitOrderSwitch){
            return;
        }
        List<Order> orders = orderService.selectComplete();
        for (Order order : orders) {
            ReturnT<String> result = saveOrderSyncHandler.start(order);
            if (!result.isSuccess()) {
                log.error("单据[orderNo={}]保存至erp失败", order.getOrderNo());
            try{
                ReturnT<String> result = submitOrderSyncHandler.start(order);
                if (!result.isSuccess()) {
                    log.error("单据[orderNo={}]保存至erp失败", order.getOrderNo());
                }
            }catch (Exception e){
                Order order1 = orderService.selectById(order.getId());
                order1.setUpdateTime(new Date());
                orderService.updateById(order1);
            }
        }
    }
src/main/java/com/zy/asrs/task/kingdee/handler/PushDowmOrderSyncHandler.java
@@ -69,6 +69,9 @@
        }
        KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName());
        if (kingDeeUtilType.entryId>1){
            return SUCCESS;
        }
        //条件拼接
        log.info("条件拼接");
        String entryIds = null;
@@ -117,19 +120,21 @@
                    .doPost();
//            JSONObject data = JSON.parseObject(response);
            log.info("下推response:"+response);
//            Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
//            String bool=IsSuccess.toString();
            ObjectMapper objectMapper =  new ObjectMapper();
            JsonNode rootNode = objectMapper.readTree(response);
            boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean();
            log.info("下推bool:"+bool);
            Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
            String bool1=IsSuccess.toString();
            if (bool1.equals("true")){
                ObjectMapper objectMapper =  new ObjectMapper();
                JsonNode rootNode = objectMapper.readTree(response);
                boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean();
                log.info("下推bool:"+bool);
            //下推完成原订单4转6  6.上报完成
            if(bool){
                success = true;
                order.setSettle(6L);
                order.setUpdateTime(new Date());
                orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
                //下推完成原订单4转6  6.上报完成
                if(bool){
                    success = true;
                    order.setSettle(6L);
                    order.setUpdateTime(new Date());
                    orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
                }
            }
        } catch (Exception e) {
            log.info("下推error:"+response);
src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
@@ -4,6 +4,8 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
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.service.ApiLogService;
@@ -19,6 +21,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.HashMap;
import java.util.Set;
@@ -79,12 +82,20 @@
                    .doPost();
            JSONObject data = JSON.parseObject(response);
            Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
            String bool=IsSuccess.toString();
            String bool1=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()));
            if(bool1.equals("true")){
                ObjectMapper objectMapper =  new ObjectMapper();
                JsonNode rootNode = objectMapper.readTree(response);
                boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean();
                log.info("审核bool:"+bool);
                //审核完成原订单4转6  6.上报完成
                if(bool){
                    success = true;
                    order.setSettle(6L);
                    order.setUpdateTime(new Date());
                    orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
                }
            }
        } catch (Exception e) {
            log.error("fail", e);
src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java
@@ -4,6 +4,8 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
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.service.ApiLogService;
@@ -19,6 +21,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.HashMap;
import java.util.Set;
@@ -54,7 +57,9 @@
            return SUCCESS;
        }
        KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName());
        if (kingDeeUtilType.entryId!=2){
            return SUCCESS;
        }
        //条件拼接
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("Numbers",order.getOrderNo());
@@ -76,14 +81,22 @@
                    .setJson(add)
                    .build()
                    .doPost();
            JSONObject data = JSON.parseObject(response);
//            JSONObject data = JSON.parseObject(response);
            Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
            String bool=IsSuccess.toString();
            String bool1=IsSuccess.toString();
            //提交完成原订单8转6
            if(bool.equals("true")){
                success = true;
                order.setSettle(6L);
                orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
            if(bool1.equals("true")){
                ObjectMapper objectMapper =  new ObjectMapper();
                JsonNode rootNode = objectMapper.readTree(response);
                boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean();
                log.info("审核bool:"+bool);
                //提交完成原订单4转6  6.上报完成
                if(bool){
                    success = true;
                    order.setSettle(6L);
                    order.setUpdateTime(new Date());
                    orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
                }
            }
        } catch (Exception e) {
            log.error("fail", e);