自动化立体仓库 - WMS系统
zwl
23 小时以前 d4c3ebd99e8619c3fc230bb50828e9e762f8dd7a
src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -32,6 +32,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@Slf4j
@Service("orderDetlService")
@@ -172,8 +173,8 @@
        headTable.setCmaker("sys");//制单人名称
        headTable.setVt_id("89");//模板号      默认
        headTable.setCiwhcode("1");//转入仓库编码
        headTable.setCowhcode("1");//转出仓库编码
        headTable.setCiwhcode(order.getShipName());//转入仓库编码
        headTable.setCowhcode(order.getShipCode());//转出仓库编码
        headTable.setCordcode("");//出库类别编码      默认
        headTable.setCirdcode("");//入库类别编码      默认
        headTable.setCodepcode("");//转出部门编码
@@ -186,10 +187,12 @@
        bodyTable.setCtvbatch(Cools.isEmpty(orderDetl.getBatch()) ? "" : orderDetl.getBatch());//批号(特殊说明)
        Double qty = orderDetl.getQty()-(Cools.isEmpty(orderDetl.getUnits())?0:orderDetl.getUnits());
        bodyTable.setItvquantity(String.valueOf(qty));//完成件数
        bodyTable.setCinposcode("1-1");//立库源货位
//        bodyTable.setCinposcode("1-1");//立库源货位
        bodyTable.setCoutposcode("");//目标货位
        bodyTable.setItrsid(orderDetl.getMemo());//行主键
        bodyTable.setEditprop(sts.equals(1) ? "A" : "B");//状态 A 新增
        bodyTable.setCFree1("无");
//        bodyTable.setEditprop(sts.equals(1) ? "A" : "B");//状态 A 新增
        User user = userService.selectById(orderDetl.getUpdateBy());
        headTable.setWms_operator(user == null ? "" : user.getUsername()); // 操作账号名称
@@ -221,9 +224,50 @@
            if (jsonObject.getInteger("code").equals(1)) {
                orderDetl.setUnits(qty+orderDetl.getUnits());
                orderDetl.setStatus(sts);
                orderDetl.setStatus(0);
                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("新增完成调用关闭请求接口失败!!!url:{};request:{};response:{}", URL + "/" + ERPPath, JSON.toJSONString(orderRsult), response);
                        }
                    } catch (Exception e) {
                        log.error("新增完成调用关闭请求接口异常!!!url:{};request:{};response:{}", 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("请求接口失败!!!url:{};request:{};response:{}", URL+"/"+ERPPath, JSON.toJSONString(orderRsult), response);
            }