From 230615d093a235e2e481355edb47f37e380b3069 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期六, 07 六月 2025 08:09:04 +0800 Subject: [PATCH] #app --- src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 56 ++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 38 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java index a548629..6443a4b 100644 --- a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java +++ b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java @@ -12,6 +12,7 @@ import com.zy.asrs.service.*; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.core.ReturnT; +import com.zy.asrs.utils.OrderInAndOutUtil; import com.zy.erp.kingdee.entity.param.InFormIdParam; import com.zy.erp.kingdee.enums.KingDeeUtilType; import com.zy.common.utils.HttpHandler; @@ -25,6 +26,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; +import java.util.List; @Service @Slf4j @@ -69,7 +71,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,7 +85,7 @@ jsonObject.put("Limit", inFormIdParam.getLimit()); jsonObject.put("StartRow", inFormIdParam.getStartRow()); //鐗╂枡妗f鏌ヨ - if(inFormIdParam.getFormId().equals("BD_MATERIAL")){ + if(kingDeeUtilType.formId.equals("BD_MATERIAL")){ Tag tag = tagService.selectByName("鍏ㄩ儴", 1); //鐗╂枡鐘舵�� FUseOrgId .FNumber FDocumentStatus="C"; @@ -98,7 +100,7 @@ //鑾峰彇鏈�鏂版椂闂� //鍗曟嵁鐘舵�� FDocumentStatus="B"; - jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"' and FStockId.Fname='绔嬪簱'"+" and FDocumentStatus='"+FDocumentStatus+"'"); + jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"'"+" and FStockId.Fname='绔嬪簱'"+" and FDocumentStatus='"+FDocumentStatus+"'"); jsonObject.put("FieldKeys", "FBillNo,FCreateDate,FMaterialId.FNumber,FMaterialId.FName,FMaterialId.FSpecification,"+kingDeeUtilType.anfme+",FDocumentStatus"); // FBillNo :鍗曟嵁缂栧彿锛� // FCreateDate 锛氬崟鎹垱寤烘椂闂达紱 @@ -169,9 +171,10 @@ 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()); + Order order = OrderInAndOutUtil.selectByNo(kingDeeUtilType.pakIn == 1, jsonArray.get(0).toString()); +// Order order = orderService.selectByNo(jsonArray.get(0).toString()); if (Cools.isEmpty(order)) { Date now = new Date(); // 鍗曟嵁涓绘。 @@ -211,22 +214,38 @@ now, // 淇敼鏃堕棿 null // 澶囨敞 ); + OrderInAndOutUtil.insertOrder(kingDeeUtilType.pakIn == 1, order); - if (!orderService.insert(order)) { - callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"+order, false); - continue; -// throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"); - } +// if (!orderService.insert(order)) { +// if (!jsonDate.equals(docType.getCreateTime())){ +// callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"+order, false); +// } +// continue; +//// throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"); +// } } //鐗╂枡缂栫爜 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() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); } - OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString())); - if (!Cools.isEmpty(orderDetl1)) { +// OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString())); +// if (!Cools.isEmpty(orderDetl1)) { +// continue; +// } + Order order1 = OrderInAndOutUtil.selectByNo(kingDeeUtilType.pakIn == 1, jsonArray.get(0).toString()); + List<OrderDetl> orderDetls = OrderInAndOutUtil.selectByOrderId(kingDeeUtilType.pakIn == 1, order1.getId()); + boolean sign = false; + for (OrderDetl orderDetl : orderDetls){ + if (orderDetl.getMatnr().equals( jsonArray.get(2).toString())){ + sign = true; + break; + } + } + if (sign){ continue; } OrderDetl orderDetl = new OrderDetl(); @@ -241,10 +260,11 @@ orderDetl.setUpdateTime(new Date()); orderDetl.setStatus(1); orderDetl.setQty(0.0D); - if (!orderDetlService.insert(orderDetl)) { - callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�!璁㈠崟鍙凤細"+order.getOrderNo(), false); -// throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); - } +// if (!orderDetlService.insert(orderDetl)) { +// callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�!璁㈠崟鍙凤細"+order.getOrderNo(), false); +//// throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); +// } + OrderInAndOutUtil.insertOrderDetl(kingDeeUtilType.pakIn == 1,order,orderDetl); } docTypeService.updateById(docType); } -- Gitblit v1.9.1