From e21f11c7bb0cf13870159affd2909f61d325c0ad Mon Sep 17 00:00:00 2001 From: LSH Date: 星期六, 21 十月 2023 14:17:44 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/mapper/MatMapper.java | 2 + src/main/resources/mapper/MatMapper.xml | 7 +++ src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java | 40 +++++++++++--------- src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java | 5 ++ src/main/resources/application.yml | 2 src/main/java/com/zy/asrs/service/MatService.java | 2 + src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java | 26 +++++++----- 7 files changed, 54 insertions(+), 30 deletions(-) diff --git a/src/main/java/com/zy/asrs/mapper/MatMapper.java b/src/main/java/com/zy/asrs/mapper/MatMapper.java index a95979a..c8457c2 100644 --- a/src/main/java/com/zy/asrs/mapper/MatMapper.java +++ b/src/main/java/com/zy/asrs/mapper/MatMapper.java @@ -21,6 +21,8 @@ List<Mat> selectByMatnrLink(@Param("matnr")String matnr); + Mat selectNewUpdateTime(); + List<Mat> getMatTurnPage(Map<String, Object> map); Integer getStockOutPageCount(Map<String, Object> map); diff --git a/src/main/java/com/zy/asrs/service/MatService.java b/src/main/java/com/zy/asrs/service/MatService.java index 59c97b2..dd30afd 100644 --- a/src/main/java/com/zy/asrs/service/MatService.java +++ b/src/main/java/com/zy/asrs/service/MatService.java @@ -16,4 +16,6 @@ Page<Mat> getMatTurnPage(Page<Mat> page); + Mat selectNewUpdateTime(); + } diff --git a/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java index f7b239e..8ab8e75 100644 --- a/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java @@ -33,6 +33,11 @@ } @Override + public Mat selectNewUpdateTime() { + return this.baseMapper.selectNewUpdateTime(); + } + + @Override public Page<Mat> getMatTurnPage(Page<Mat> page){ page.setRecords(baseMapper.getMatTurnPage(page.getCondition())); // page.setTotal(baseMapper.getStockOutPageCount(page.getCondition())); 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..6b39a95 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,33 +130,36 @@ 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("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳"); + log.info("鍚屾鏂扮墿鏂欏嚭閿欙紒锛侊紒鍙傛暟锛歔{}]銆乕{}]",mat,jsonArray); } else { log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr()); } + }else { + log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}],鍟嗗搧缂栧彿閲嶅锛侊紒锛�", mat.getMatnr()); } + tag.setUpdateTime(date); } + tagService.updateById(tag); } else { for (int j = 0; j < data.size(); j++) { JSONArray jsonArray = data.getJSONArray(j); diff --git a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java b/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java index 9552056..01c2797 100644 --- a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java +++ b/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java @@ -1,34 +1,38 @@ package com.zy.erp.kingdee.enums; public enum KingDeeUtilType { - BD_MATERIAL(0, "鐗╂枡妗f","BD_MATERIAL",""), - STK_InStock(1, "閲囪喘鍏ュ簱","STK_InStock","FRealQty"), - PUR_MRB(2, "閲囪喘閫�鏂�","PUR_MRB","FRMREALQTY"), - PRD_PickMtrl(3, "鐢熶骇棰嗘枡","PRD_PickMtrl","FActualQty"), - PRD_ReturnMtrl(4, "鐢熶骇閫�鏂�","PRD_ReturnMtrl","FQty"), - PRD_FeedMtrl(5, "鐢熶骇琛ユ枡","PRD_FeedMtrl","FActualQty"), - STK_TransferDirect(6, "鐩存帴璋冩嫧鍗�","STK_TransferDirect","FQty"), - STK_StockCountGain(7, "鐩樼泩鍗�","STK_StockCountGain","FGainQty"), - STK_StockCountLoss(8, "鐩樹簭鍗�","STK_StockCountLoss","FLossQty"), - STK_MisDelivery(9, "鍏朵粬鍑哄簱","STK_MisDelivery","FQty"), - SP_PickMtrl(10, "绠�鍗曠敓浜ч鏂�","SP_PickMtrl","FActualQty"), - SP_ReturnMtrl(11, "绠�鍗曠敓浜ч��鏂�","SP_ReturnMtrl","FQty"), - SAL_OUTSTOCK(12, "閿�鍞嚭搴�","SAL_OUTSTOCK","FRealQty"), - SAL_RETURNSTOCK(13, "閿�鍞��璐�","SAL_RETURNSTOCK","FRealQty"), - SAL_DELIVERYNOTICE(14, "鍙戣揣閫氱煡鍗�","SAL_DELIVERYNOTICE",""), - STK_MISCELLANEOUS(15, "鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS",""), - BD_Supplier(16, "渚涘簲鍟�","BD_Supplier",""), + BD_MATERIAL(0, "鐗╂枡妗f","BD_MATERIAL","","",1), + STK_InStock(1, "閲囪喘鍏ュ簱","STK_InStock","FRealQty","",1), + PUR_MRB(2, "閲囪喘閫�鏂�","PUR_MRB","FRMREALQTY","",1), + PRD_PickMtrl(3, "鐢熶骇棰嗘枡","PRD_PickMtrl","FActualQty","",1), + PRD_ReturnMtrl(4, "鐢熶骇閫�鏂�","PRD_ReturnMtrl","FQty","",1), + PRD_FeedMtrl(5, "鐢熶骇琛ユ枡","PRD_FeedMtrl","FActualQty","",1), + STK_TransferDirect(6, "鐩存帴璋冩嫧鍗�","STK_TransferDirect","FQty","",1), + STK_StockCountGain(7, "鐩樼泩鍗�","STK_StockCountGain","FGainQty","",1), + STK_StockCountLoss(8, "鐩樹簭鍗�","STK_StockCountLoss","FLossQty","",1), + STK_MisDelivery(9, "鍏朵粬鍑哄簱","STK_MisDelivery","FQty","",1), + SP_PickMtrl(10, "绠�鍗曠敓浜ч鏂�","SP_PickMtrl","FActualQty","",1), + 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","","",1), + STK_MISCELLANEOUS(15, "鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS","","",1), + BD_Supplier(16, "渚涘簲鍟�","BD_Supplier","","",1), ; public Integer id; public String desc; public String formId; public String anfme; + public String correspondingFormId; + public Integer pakIn; - KingDeeUtilType(Integer id, String desc,String formId,String anfme){ + KingDeeUtilType(Integer id, String desc,String formId,String anfme,String correspondingFormId,int pakIn){ this.id = id; this.desc = desc; this.formId = formId; this.anfme = anfme; + this.correspondingFormId = correspondingFormId; + this.pakIn = pakIn; //1鍏ュ簱 0鍑哄簱 } public static KingDeeUtilType get(Short id) { diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 37ee5f3..4cdec92 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -66,7 +66,7 @@ erp: # 寮�鍏� switch: - InboundOrderSwitch: false + InboundOrderSwitch: true LoginAuthenticationSwitch: false ReviewOrderSwitch: false # 鍦板潃 diff --git a/src/main/resources/mapper/MatMapper.xml b/src/main/resources/mapper/MatMapper.xml index 09a8d0a..b7157a6 100644 --- a/src/main/resources/mapper/MatMapper.xml +++ b/src/main/resources/mapper/MatMapper.xml @@ -111,6 +111,13 @@ </if> </select> + <select id="selectNewUpdateTime" resultMap="BaseResultMap"> + select top 1 * from man_mat + where 1=1 + ORDER BY create_time ASC +-- ORDER BY update_time DESC + </select> + <select id="getMatTurnPage" resultMap="BaseResultMap"> select * from ( -- Gitblit v1.9.1