自动化立体仓库 - WMS系统
#
LSH
2023-10-23 e98737d5ac976ae140a31d6ab0d63bfefff4011e
#
2个文件已修改
33 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
@@ -69,7 +69,7 @@
        for(KingDeeUtilType kingDeeUtilType : KingDeeUtilType.values()) {
            InFormIdParam inFormIdParam = new InFormIdParam();
            DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", kingDeeUtilType.desc));
            if (Cools.isEmpty(docType)){
            if (Cools.isEmpty(docType) && !kingDeeUtilType.formId.equals("BD_MATERIAL")){
                docType = docTypeService.selectOrAdd(kingDeeUtilType.desc, kingDeeUtilType.pakIn.equals(1));
            }
            inFormIdParam.setFormId(kingDeeUtilType.formId);
@@ -83,11 +83,11 @@
            jsonObject.put("Limit", inFormIdParam.getLimit());
            jsonObject.put("StartRow", inFormIdParam.getStartRow());
            //物料档案查询
            if(inFormIdParam.getFormId().equals("BD_MATERIAL")){
            if(kingDeeUtilType.formId.equals("BD_MATERIAL")){
                Tag tag = tagService.selectByName("全部", 1);
                //物料状态 FUseOrgId .FNumber
                FDocumentStatus="C";
                jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(tag.getUpdateTime())+"' and FDocumentStatus='"+FDocumentStatus+"' and FUseOrgId .FNumber='100'");
                jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(tag.getUpdateTime())+"' and FDocumentStatus='"+FDocumentStatus+"' and FUseOrgId .FNumber='101'");
                jsonObject.put("FieldKeys", "FName,FNumber,FCreateDate,FSpecification,FDocumentStatus");
                // FName : 物料名称 ;
                // FNumber :物料编号;
@@ -97,8 +97,9 @@
            }else{
                //获取最新时间
                //单据状态
                FDocumentStatus="B";
                jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"' and FStockId.Fname='立库'"+" and FDocumentStatus='"+FDocumentStatus+"'");
                FDocumentStatus="C";
//                jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"'"+" and FStockId.Fname='立库'"+" and FDocumentStatus='"+FDocumentStatus+"'");
                jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"'"+" and FDocumentStatus='"+FDocumentStatus+"'");
                jsonObject.put("FieldKeys", "FBillNo,FCreateDate,FMaterialId.FNumber,FMaterialId.FName,FMaterialId.FSpecification,"+kingDeeUtilType.anfme+",FDocumentStatus");
                // FBillNo :单据编号;
                // FCreateDate :单据创建时间;
@@ -169,7 +170,7 @@
                    for (int j = 0; j < data.size(); j++) {
                        JSONArray jsonArray = data.getJSONArray(j);
                        //最新抓取时间
                        Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(2).toString());
                        Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(1).toString());
                        docType.setCreateTime(jsonDate);
                        Order order = orderService.selectByNo(jsonArray.get(0).toString());
                        if (Cools.isEmpty(order)) {
@@ -213,7 +214,9 @@
                            );
                            if (!orderService.insert(order)) {
                                callApiLogSaveOrder(order,kingDeeUtilType, "生成单据主档失败,请联系管理员"+order, false);
                                if (!jsonDate.equals(docType.getCreateTime())){
                                    callApiLogSaveOrder(order,kingDeeUtilType, "生成单据主档失败,请联系管理员"+order, false);
                                }
                                continue;
//                                throw new CoolException("生成单据主档失败,请联系管理员");
                            }
@@ -221,7 +224,9 @@
                        //物料编码
                        Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
                        if (Cools.isEmpty(mat)) {
                            callApiLogSaveOrder(order,kingDeeUtilType, "编号商品检索失败,请先添加商品"+jsonArray.get(2).toString(), false);
                            if (!jsonDate.equals(docType.getCreateTime())){
                                callApiLogSaveOrder(order,kingDeeUtilType, "编号商品检索失败,请先添加商品"+jsonArray.get(2).toString(), false);
                            }
                            continue;
//                            throw new CoolException(jsonArray.get(2).toString() + "编号商品检索失败,请先添加商品");
                        }
src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
@@ -15,14 +15,14 @@
//    SP_ReturnMtrl(11, "简单生产退料单","SP_ReturnMtrl","FQty","","",1),
//    SAL_OUTSTOCK(12, "销售出库单","SAL_OUTSTOCK","FRealQty","","",1),
//    SAL_RETURNSTOCK(13, "销售退货单","SAL_RETURNSTOCK","FRealQty","","",1),
    SAL_DELIVERYNOTICE(14, "发货通知单","SAL_DELIVERYNOTICE","","销售出库单","SAL_OUTSTOCK",0),
    STK_MISCELLANEOUS(15, "其他入库单","STK_MISCELLANEOUS","","其他入库单","STK_MISCELLANEOUS",1),
    SAL_DELIVERYNOTICE(14, "发货通知单","SAL_DELIVERYNOTICE","FQty","销售出库单","SAL_OUTSTOCK",0),
    STK_MISCELLANEOUS(15, "其他入库单","STK_MISCELLANEOUS","FQty","其他入库单","STK_MISCELLANEOUS",1),
//    BD_Supplier(16, "供应商","BD_Supplier","","","",1),
    PUR_ReceiveBill(17, "收料通知单","PUR_ReceiveBill","","采购入库单","STK_InStock",1),
    PRD_MORPT(18, "生产汇报单","PRD_MORPT","","生产入库单","PRD_INSTOCK",1),
    PUR_ReceiveBill(17, "收料通知单","PUR_ReceiveBill","FPOQTY","采购入库单","STK_InStock",1),
    PRD_MORPT(18, "生产汇报单","PRD_MORPT","FFinishQty","生产入库单","PRD_INSTOCK",1),
//    PRD_INSTOCK(19, "生产入库单","PRD_INSTOCK","","","",1),
    SAL_RETURNNOTICE(20, "退货通知单","SAL_RETURNNOTICE","","销售退货单","SAL_RETURNSTOCK",1),
    STK_OutStockApply(21, "出库申请单","STK_OutStockApply","","其他出库单","STK_MisDelivery",0),
    SAL_RETURNNOTICE(20, "退货通知单","SAL_RETURNNOTICE","FBaseJunkedQty","销售退货单","SAL_RETURNSTOCK",1),
    STK_OutStockApply(21, "出库申请单","STK_OutStockApply","FTotalSecQty","其他出库单","STK_MisDelivery",0),
    ;
    public Integer id;
    public String desc;