From ce0c3f5785e79d4765e85ddfd27a305444ef3560 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 21 十月 2023 14:35:51 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 65 +++++++++++++++++++++-----------
1 files changed, 43 insertions(+), 22 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 d3ae5a6..0bc7bd1 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
@@ -69,6 +69,9 @@
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)){
+ docType = docTypeService.selectOrAdd(kingDeeUtilType.desc, kingDeeUtilType.pakIn.equals(1));
+ }
inFormIdParam.setFormId(kingDeeUtilType.formId);
inFormIdParam.setLimit(100);
inFormIdParam.setStartRow("0");
@@ -81,12 +84,10 @@
jsonObject.put("StartRow", inFormIdParam.getStartRow());
//鐗╂枡妗f鏌ヨ
if(inFormIdParam.getFormId().equals("BD_MATERIAL")){
- Tag tag = tagService.selectById(20);
- //鏈�鏂版椂闂�
- Date time=tag.getCreateTime();
+ Tag tag = tagService.selectByName("鍏ㄩ儴", 1);
//鐗╂枡鐘舵�� FUseOrgId .FNumber
FDocumentStatus="C";
- jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(time)+"' and FDocumentStatus='"+FDocumentStatus+"' and FUseOrgId .FNumber='201'");
+ jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(tag.getUpdateTime())+"' and FDocumentStatus='"+FDocumentStatus+"' and FUseOrgId .FNumber='201'");
jsonObject.put("FieldKeys", "FName,FNumber,FCreateDate,FSpecification,FDocumentStatus");
// FName : 鐗╂枡鍚嶇О 锛�
// FNumber 锛氱墿鏂欑紪鍙凤紱
@@ -129,36 +130,45 @@
if(data.size()<=0) continue;
if (data.getJSONArray(0).get(0).toString().length()>=20) continue;
if (kingDeeUtilType.formId.equals("BD_MATERIAL")) {//鐗╂枡妗f
+ Tag tag = tagService.selectByName("鍏ㄩ儴", 1);
for (int j = 0; j < data.size(); j++) {
JSONArray jsonArray = data.getJSONArray(j);
+ //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
+ Date date = KingDeeUtil.KingDeeDate(jsonArray.get(2).toString());
//鐢熸垚鍟嗗搧妗f
//鍟嗗搧缂栧彿
Mat mat = matService.selectByMatnr(jsonArray.get(1).toString());
if (mat == null) {
mat = new Mat();
- Tag tag = new Tag();
mat.setMatnr(jsonArray.get(1).toString());
mat.setMaktx(jsonArray.get(0).toString());
mat.setSpecs(jsonArray.get(3).toString());//瑙勬牸
- mat.setTagId(20L);
- //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
- Date date = KingDeeUtil.KingDeeDate(jsonArray.get(2).toString());
+ mat.setTagId(tag.getId());
mat.setCreateTime(date);//鍟嗗搧鍒涘缓鏃堕棿
mat.setUpdateTime(new Date());
mat.setStatus(1);
//鏈�鏂版姄鍙栧晢鍝佹椂闂�
- tag.setCreateTime(date);
- tagService.update(tag, new EntityWrapper<Tag>().eq("id", 20));
if (!matService.insert(mat)) {
- throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ callApiLogSaveMat(mat,kingDeeUtilType, "鍚屾鏂扮墿鏂欏嚭閿欙紒锛侊紒"+mat, false);
+ log.info("鍚屾鏂扮墿鏂欏嚭閿欙紒锛侊紒鍙傛暟锛歔{}]銆乕{}]",mat,jsonArray);
} else {
- log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
+ callApiLogSaveMat(mat,kingDeeUtilType, "鍚屾鏂扮墿鏂欙紒", true);
+// log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
}
+ }else {
+ callApiLogSaveMat(mat,kingDeeUtilType, "鍟嗗搧缂栧彿閲嶅:"+mat.getMatnr(), false);
+ log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}],鍟嗗搧缂栧彿閲嶅锛侊紒锛�", mat.getMatnr());
}
+ tag.setUpdateTime(date);
}
+ tagService.updateById(tag);
} else {
for (int j = 0; j < data.size(); j++) {
JSONArray jsonArray = data.getJSONArray(j);
+ //鏈�鏂版姄鍙栨椂闂�
+ Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(2).toString());
+ docType.setCreateTime(jsonDate);
Order order = orderService.selectByNo(jsonArray.get(0).toString());
if (Cools.isEmpty(order)) {
Date now = new Date();
@@ -200,18 +210,18 @@
null // 澶囨敞
);
- //鏈�鏂版姄鍙栨椂闂�
- Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(2).toString());
- docType.setCreateTime(jsonDate);
- docTypeService.updateById(docType);
if (!orderService.insert(order)) {
- throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
+ callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"+order, false);
+ continue;
+// throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
}
}
//鐗╂枡缂栫爜
Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
if (Cools.isEmpty(mat)) {
- throw new CoolException(jsonArray.get(2).toString() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
+ 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)) {
@@ -229,13 +239,12 @@
orderDetl.setUpdateTime(new Date());
orderDetl.setStatus(1);
orderDetl.setQty(0.0D);
- Date date = KingDeeUtil.KingDeeDate(jsonArray.get(1).toString());
- //鏈�鏂版姄鍙栨椂闂�
- docType.setCreateTime(date);
if (!orderDetlService.insert(orderDetl)) {
- throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
+ callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�!璁㈠崟鍙凤細"+order.getOrderNo(), false);
+// throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
}
}
+ docTypeService.updateById(docType);
}
} catch (Exception e) {
log.error("fail", e);
@@ -261,4 +270,16 @@
return SUCCESS;
}
+ public void callApiLogSaveMat(Mat mat, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
+ apiLogService.save("鑾峰彇"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
+ "鐗╂枡缂栧彿锛�" + mat.getMatnr() + "銆佺墿鏂欏悕绉帮細" + mat.getName() + "銆佺被鍨嬶細" + mat.getTagId$() + "銆佺姸鎬侊細" + mat.getStatus$(),
+ response, bool);
+ }
+
+ public void callApiLogSaveOrder(Order order, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
+ apiLogService.save("鑾峰彇"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
+ "鍗曟嵁缂栧彿锛�" + order.getId() + "銆佺姸鎬侊細" + order.getStatus$(),
+ response, bool);
+ }
+
}
\ No newline at end of file
--
Gitblit v1.9.1