自动化立体仓库 - WMS系统
025f88f0025ce0be4609b763e5cdc9a86be42144..93860dbc9e47ef9886c1347ce0bf14e9f0438b2a
3 天以前 IZCD4L12RTSW0VZ\Administrator
备货派工单优化 库存调整反馈优化
93860d 对比 | 目录
3 天以前 IZCD4L12RTSW0VZ\Administrator
备货单反馈联调
cc9c89 对比 | 目录
6个文件已修改
136 ■■■■ 已修改文件
src/main/java/com/zy/api/entity/OrderItemsParam.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/service/KopenApiService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java 83 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/CheckOrder.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/OrderSyncScheduler.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/api/entity/OrderItemsParam.java
@@ -47,4 +47,7 @@
    @ApiModelProperty("托盘编号")
    private String location_no;
    @ApiModelProperty("台车编码")
    private String truck_no;
}
src/main/java/com/zy/api/service/KopenApiService.java
@@ -93,4 +93,12 @@
     * @return com.zy.api.entity.dto.XSR
     */
    XSR reportCheckOrder(List<StockAdjustParams> adjustParams, CheckOrder order);
    /**
     * 备货单反馈
     * @param orderParams
     * @param order
     * @return
     */
    XSR getOutDetailsResult(List<StockUpOrderParams> orderParams, Order order);
}
src/main/java/com/zy/api/service/impl/KopenApiServiceImpl.java
@@ -589,22 +589,22 @@
            if (Objects.isNull(response) || response.trim().isEmpty()) {
                return XSR.error("外网接口无响应!!");
            }
            JSONObject jsonObject = JSONObject.parseObject(response);
            Integer code = jsonObject.getInteger("code");
            if (!Objects.isNull(code) && code.equals(200)) {
//                if (!Objects.isNull(order)) {
//                    order.setReportOnce(5);
//                    orderService.updateById(order);
//                }
            XSR jsonObject = JSONObject.parseObject(response, XSR.class);
            if (jsonObject.getSuccess()) {
                if (!Objects.isNull(order)) {
                    order.setReportOnce(5);
                    order.setSettle(5L);
                    checkOrderService.updateById(order);
                }
                return XSR.ok("入库单上报完成!!");
            } else {
//                if (!Objects.isNull(order)) {
//                    int reportOnce = order.getReportOnce();
//                    reportOnce ++;
//                    order.setReportOnce(reportOnce);
//                    orderService.updateById(order);
//                }
                String msg = jsonObject.getString("message");
                if (!Objects.isNull(order)) {
                    int reportOnce = order.getReportOnce();
                    reportOnce ++;
                    order.setReportOnce(reportOnce);
                    checkOrderService.updateById(order);
                }
                String msg = jsonObject.getMessage();
                return XSR.error(Objects.isNull(msg) ? "上报失败!!" : msg);
            }
        } catch (Exception e) {
@@ -618,6 +618,59 @@
            return XSR.error(e.getMessage());
        }
//        return null;
    }
    /**
     * 备货单反馈
     * @param params
     * @param order
     * @return
     */
    @Override
    public XSR getOutDetailsResult(List<StockUpOrderParams> params, Order order) {
        if (Objects.isNull(params)) {
            return XSR.error("参数不能为空!!");
        }
        String response = null;
        try {
            response = new HttpHandler.Builder()
                    .setUri(url + ":" + port)
                    .setPath(prefix + "/getOutDetailsResult")
                    .setJson(JSONObject.toJSONString(params))
                    .build()
                    .doPost();
            if (Objects.isNull(response) || response.trim().isEmpty()) {
                return XSR.error("外网接口无响应!!");
            }
            JSONObject jsonObject = JSONObject.parseObject(response);
            Integer code = jsonObject.getInteger("code");
            if (!Objects.isNull(code) && code.equals(200)) {
                if (!Objects.isNull(order)) {
                    order.setReportOnce(5);
                    orderService.updateById(order);
                }
                return XSR.ok("入库单上报完成!!");
            } else {
                if (!Objects.isNull(order)) {
                    int reportOnce = order.getReportOnce();
                    reportOnce ++;
                    order.setReportOnce(reportOnce);
                    orderService.updateById(order);
                }
                String msg = jsonObject.getString("message");
                return XSR.error(Objects.isNull(msg) ? "上报失败!!" : msg);
            }
        } catch (Exception e) {
            if (!Objects.isNull(order)) {
                int reportOnce = order.getReportOnce();
                reportOnce ++;
                order.setReportOnce(reportOnce);
                orderService.updateById(order);
            }
            log.error(e.getMessage(), e);
            return XSR.error(e.getMessage());
        }
    }
    /** 生成新的零件损溢单 
@@ -647,7 +700,7 @@
        order.setSettle(Long.valueOf(CommonEnum.COMMON_ENUM_Y.type + ""));
        order.setStatus(CommonEnum.COMMON_ENUM_Y.type);
        order.setOrderTime(params.getUpdate_time());
        order.setMemo(params.getResason());
        order.setMemo(params.getReason());
        order.setShipName(params.getReason_name());
        order.setCreateTime(new Date());
        order.setUpdateTime(new Date());
src/main/java/com/zy/asrs/entity/CheckOrder.java
@@ -265,6 +265,10 @@
    @TableField("move_status")
    private Integer moveStatus;
    @ApiModelProperty("上报次数")
    @TableField("report_once")
    private Integer reportOnce;
    /**
     * 入出库类型(0:未知,1:入库,2:出库)
     */
src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -128,7 +128,7 @@
    }
    /**损溢单完结上报 */
    @Scheduled(cron = "0/30 * * * * ?")
    @Scheduled(cron = "0/15 * * * * ?")
    @Async("orderThreadPool")
    public void completeCheckOrderReport() {
        if (!ErpReportOld){
src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
@@ -394,6 +394,13 @@
            XSR response = null;
            boolean success = false;
            try {
//                List<ReportOrderParam> orderParams = new ArrayList<>();
//                orderParams.add(orderParam);
//                if (order.getReportOnce() < 4) {
//                    response = kopenApiService.getOutDetailsResult(orderParams, order);
//                } else {
//                    return FAIL;
//                }
                // response = new HttpHandler.Builder()
                // .setUri(MesConstant.URL)
                // .setPath(MesConstant.PAKOUT_URL)
@@ -458,7 +465,8 @@
                itemParam.setPro_komcode(material.getMatnr());
                // 上报时,默认产品id是供应商编码
                itemParam.setPro_id(detl.getSuppCode());
                //todo 台车编码
                itemParam.setTruck_no("TC310080014");
                // 上报时,默认上报时间是更新时间
                itemParam.setPick_qty(detl.getQty().intValue());
                reportOrderParams.add(itemParam);
@@ -469,7 +477,7 @@
            pubOrderParamsList.add(pubOrderParams);
            // 设置派工单明细
            stockUpOrderParams.setDetails(pubOrderParamsList);
            stockUpOrderParams.setUpdate_time(order.getUpdateBy$());
            stockUpOrderParams.setUpdate_time(order.getUpdateTime$());
            XSR response = null;
            boolean success = false;
@@ -482,7 +490,16 @@
                // .doPost();
                // JSONObject jsonObject = JSON.parseObject(response);
                // if (jsonObject.getInteger("code").equals(200)) {
                if (true) {
                List<StockUpOrderParams> orderParams = new ArrayList<>();
                orderParams.add(stockUpOrderParams);
                if (order.getReportOnce() < 4) {
                    response = kopenApiService.getOutDetailsResult(orderParams, order);
                } else {
                    return FAIL;
                }
                if (response.getSuccess()) {
                    success = true;
                    // 修改订单状态 4.完成 ===>> 6.已上报
                    if (!orderService.updateSettle(order.getId(), settle, null)) {
@@ -532,8 +549,8 @@
        adjustParam.setCompany_id(order.getCstmrName())
                .setWms_id(order.getId() + "")
                .setType(0 + "")
                .setUpdate_time(order.getUpdateBy$())
                .setKopen_id(order.getDefNumber());
                .setUpdate_time(order.getUpdateTime$());
//                .setKopen_id(order.getDefNumber());
        adjustParam.setBsby_no(order.getOrderNo())
                .setReason("")
@@ -560,7 +577,14 @@
        adjustParams.add(adjustParam);
        XSR response = kopenApiService.reportCheckOrder(adjustParams, order);
        if (order.getReportOnce() < 3) {
            XSR response = kopenApiService.reportCheckOrder(adjustParams, order);
            if (response.getSuccess()) {
                return SUCCESS;
            } else {
                return  FAIL;
            }
        }
        return SUCCESS;
        // TODO Auto-generated method stub