From 1169064cb2edcb3506dd2a7e13542a2c6f37b2cb Mon Sep 17 00:00:00 2001 From: yxt_djz <313618925@qq.com> Date: Thu, 28 Jul 2022 10:47:46 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=20=E6=92=A4=E5=9B=9E?= =?UTF-8?q?=E3=80=81=E9=A9=B3=E5=9B=9E=20=E7=BB=88=E6=AD=A2=E7=AD=89?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/kingdee/FinKingDeeFeignService.java | 118 +++--------------- .../biz/kingdee/entrybill/entrybilldata.json | 1 + .../entrybilldata_FEntityDetail.json | 1 + .../entrybill/entrybilldata_FEntityPlan.json | 1 + .../anrui/flowable/biz/flow/FlowableRest.java | 9 ++ 5 files changed, 27 insertions(+), 103 deletions(-) create mode 100644 anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json create mode 100644 anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json create mode 100644 anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityPlan.json diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignService.java index 6249df313a..ce2ba0c42d 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignService.java @@ -7,6 +7,7 @@ import com.yxt.anrui.fin.api.kingdee.appayable.APPayable; import com.yxt.anrui.fin.api.kingdee.kingdeedata.Data; import com.yxt.anrui.fin.biz.kingdee.entrybill.EntryBillCastToKingDeeBillFields; import com.yxt.common.core.result.ResultBean; +import org.apache.commons.io.FileUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; @@ -22,10 +23,12 @@ import java.util.Map; @Service public class FinKingDeeFeignService { private static final Logger log = LoggerFactory.getLogger(FinKingDeeFeignService.class); - public String readJsonFile(String Filename) { //#传文件的路径 + public String readJsonFile(String filename) { //#传文件的路径 String jsonStr = ""; try { - File file = ResourceUtils.getFile("classpath:"+Filename); + File file = new File(filename) ; + String content = FileUtils.readFileToString(file,"UTF-8"); + /* File file = ResourceUtils.getFile("classpath:"+Filename); FileInputStream fis = new FileInputStream(file); InputStreamReader isr = new InputStreamReader(fis); BufferedReader br = new BufferedReader(isr); @@ -33,12 +36,12 @@ public class FinKingDeeFeignService { StringBuffer sb = new StringBuffer(); while((data = br.readLine()) != null) { sb.append((String) data); - } - jsonStr = sb.toString(); + }*/ + /* jsonStr = sb.toString(); br.close(); isr.close(); - fis.close(); - return jsonStr; + fis.close();*/ + return content; } catch (IOException e) { e.printStackTrace(); return null; @@ -51,103 +54,12 @@ public class FinKingDeeFeignService { */ public ResultBean draftEntryBill(APPayable aPPayable) { ResultBean rb=ResultBean.fireFail(); - String readJsonFile = readJsonFile("kingdeetemplete/entrybilldata.json"); - log.info(readJsonFile); - readJsonFile = readJsonFile.replace("@KD_Creator", "zs"); - //单据类型:FBillTypeID (必填项) - readJsonFile = readJsonFile.replace("@KD_FBillTypeID", "YFD01_SYS"); - //业务日期:FDATE (必填项) - readJsonFile = readJsonFile.replace("@KD_FDATE", aPPayable.getApplicationDate()); - //单据状态:FDOCUMENTSTATUS (必填项) - readJsonFile = readJsonFile.replace("@KD_FDOCUMENTSTATUS", "Z"); - //供应商:FSUPPLIERID (必填项) - readJsonFile = readJsonFile.replace("@KD_FSUPPLIERID", "010001"); - //币别:FCURRENCYID (必填项) - readJsonFile = readJsonFile.replace("@KD_FCURRENCYID", "PRE001"); - //付款条件:FPayConditon - readJsonFile = readJsonFile.replace("@KD_FPayConditon", ""); - //业务类型:FBUSINESSTYPE (必填项) - readJsonFile = readJsonFile.replace("@KD_FBUSINESSTYPE", "CG"); - //结算组织:FSETTLEORGID (必填项) - readJsonFile = readJsonFile.replace("@KD_FSETTLEORGID", "101"); - //付款组织:FPAYORGID (必填项) - readJsonFile = readJsonFile.replace("@KD_FPAYORGID", "101"); - //采购部门:FPURCHASEDEPTID (必填项) - readJsonFile = readJsonFile.replace("@KD_FPURCHASEDEPTID", "01"); - //作废状态:FCancelStatus (必填项) - readJsonFile = readJsonFile.replace("@KD_FCancelStatus", "A"); - log.info(readJsonFile); - String fEntityDetail_ = readJsonFile("kingdeetemplete/entrybilldata_FEntityDetail.json"); - StringBuilder sb=new StringBuilder(); - for(int i=0;i<1;i++){ - String fEntityDetail=fEntityDetail_.toString(); - log.info(fEntityDetail); - //物料编码:FMATERIALID - fEntityDetail = fEntityDetail.replace("@KD_FMATERIALID", " JX091054"); - //物料说明:FMaterialDesc - fEntityDetail = fEntityDetail.replace("@KD_FMaterialDesc", "X牵引6*4-550超"); - //计价单位:FPRICEUNITID - fEntityDetail = fEntityDetail.replace("@KD_FPRICEUNITID", " liang"); - //单价:FPrice - fEntityDetail = fEntityDetail.replace("@KD_FPrice", "312500.0"); - //计价数量:FPriceQty - fEntityDetail = fEntityDetail.replace("@KD_FPriceQty", "2.0"); - //含税单价:FTaxPrice - fEntityDetail = fEntityDetail.replace("@KD_FMATERIALID", "350000.0"); - //含税净价:FPriceWithTax - fEntityDetail = fEntityDetail.replace("@KD_FMATERIALID", "346500.0"); - //税率(%):FEntryTaxRate - fEntityDetail = fEntityDetail.replace("@KD_FMATERIALID", "12.0"); - //运输编号:F_PMZC_Assistant - fEntityDetail = fEntityDetail.replace("@KD_F_PMZC_Assistant", "1904110789"); - //物流车辆:F_PMZC_Base - fEntityDetail = fEntityDetail.replace("@KD_F_PMZC_Base", "0001F"); - //物流项目:F_PMZC_Base1 - fEntityDetail = fEntityDetail.replace("@KD_F_PMZC_Base1", "01.001"); - //折扣率(%):FEntryDiscountRate - fEntityDetail = fEntityDetail.replace("@KD_FEntryDiscountRate", "1.0"); - //折扣额:FDISCOUNTAMOUNTFOR - fEntityDetail = fEntityDetail.replace("@KD_FDISCOUNTAMOUNTFOR", "7000.0"); - //不含税金额:FNoTaxAmountFor_D - fEntityDetail = fEntityDetail.replace("@KD_FNoTaxAmountFor_D", "618750.0"); - //税额:FTAXAMOUNTFOR_D - fEntityDetail = fEntityDetail.replace("@KD_FTAXAMOUNTFOR_D", "74250.0"); - //价税合计:FALLAMOUNTFOR_D - fEntityDetail = fEntityDetail.replace("@KD_F_PMZC_Base1", "693000.0"); - //库存单位:FStockUnitId - fEntityDetail = fEntityDetail.replace("@KD_FStockUnitId", "liang"); - //库存数量:FStockQty - fEntityDetail = fEntityDetail.replace("@KD_FStockQty", "2.0"); - //库存基本数量:FStockBaseQty - fEntityDetail = fEntityDetail.replace("@KD_F_PMZC_Base1", "2.0"); - //计价基本分母:FPriceBaseDen - fEntityDetail = fEntityDetail.replace("@KD_FPriceBaseDen", "1.0"); - //库存基本分子:FStockBaseNum - fEntityDetail = fEntityDetail.replace("@KD_FStockBaseNum", "1.0"); - - log.info(fEntityDetail); - sb.append(fEntityDetail).append(","); - } - String sbs=sb.substring(0,sb.length()-1); - readJsonFile.replace("@KD_FEntityDetail",sbs); - - String fEntityPlan_ = readJsonFile("kingdeetemplete/entrybilldata_FEntityPlan.json"); - StringBuilder sb_fEntityPlan=new StringBuilder(); - for(int i=0;i<1;i++){ - String fEntityPlan=fEntityPlan_.toString(); - log.info(fEntityPlan); - //应付金额:FPAYAMOUNTFOR - fEntityPlan = fEntityPlan.replace("@KD_FPAYAMOUNTFOR", "693000.00"); - //应付比例(%):FPAYRATE - fEntityPlan = fEntityPlan.replace("@KD_FPAYRATE", "100.00000"); - //表头计划 - 到期日:FENDDATE - fEntityPlan = fEntityPlan.replace("@KD_FENDDATE", "2022-07-22 00:00:00"); - log.info(fEntityPlan); - sb_fEntityPlan.append(fEntityPlan).append(","); - } - String sb_fEntityPlans=sb_fEntityPlan.substring(0,sb_fEntityPlan.length()-1); - readJsonFile.replace("@KD_FEntityPlan",sb_fEntityPlans); - + String readJsonFile = readJsonFile("./src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json"); + String fEntityDetail_ = readJsonFile("./src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json"); + String fEntityPlan_ = readJsonFile("./src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityPlan.json"); + Map map=new HashMap<>(); + map.put("@KD_FDATE",aPPayable.getApplicationDate()); + APPayable.cloneKingDeeParams(map,readJsonFile,fEntityDetail_,fEntityPlan_); try { return saveBill(KingDeeBillId.AP_PAYABLE.getID(),readJsonFile); } catch (Exception e) { diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json new file mode 100644 index 0000000000..b506b0a6d1 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json @@ -0,0 +1 @@ +{"Creator":"","NeedUpDateFields":[],"NeedReturnFields":[],"IsDeleteEntry":"True","SubSystemId":"","IsVerifyBaseDataField":"false","IsEntryBatchFill":"True","ValidateFlag":"True","NumberSearch":"True","InterationFlags":"","Model":{"FID":0,"FBillTypeID":{"FNUMBER":"@KD_FBillTypeID"},"FISINIT":false,"FDATE":"@KD_FDATE","FENDDATE_H":"","FDOCUMENTSTATUS":"@KD_FDOCUMENTSTATUS","FSUPPLIERID":{"FNumber":"@KD_FSUPPLIERID"},"FCURRENCYID":{"FNumber":"@KD_FCURRENCYID"},"FPayConditon":{"FNumber":"@KD_FPayConditon"},"FISPRICEEXCLUDETAX":true,"FBUSINESSTYPE":"@KD_FBUSINESSTYPE","FISTAX":true,"FSETTLEORGID":{"FNumber":"@KD_FSETTLEORGID"},"FPAYORGID":{"FNumber":"@KD_FPAYORGID"},"FSetAccountType":"","FISTAXINCOST":false,"FAP_Remark":"","FISHookMatch":false,"FPURCHASEDEPTID":{"FNumber":"@KD_FPURCHASEDEPTID"},"FCancelStatus":"@KD_FCancelStatus","FISBYIV":false,"FISGENHSADJ":false,"FISINVOICEARLIER":false,"F_PAEZ_Text":"","F_PMZC_Assistant1":{"FNumber":""},"FsubHeadSuppiler":{"FORDERID":{"FNumber":""},"FTRANSFERID":{"FNumber":""},"FChargeId":{"FNumber":""}},"FsubHeadFinc":{"FACCNTTIMEJUDGETIME":"","FMAINBOOKSTDCURRID":{"FNumber":""},"FEXCHANGETYPE":{"FNumber":""},"FExchangeRate":1.0,"FTaxAmountFor":0,"FNoTaxAmountFor":0},"FEntityDetail":[@KD_FEntityDetail],"FEntityPlan": [@KD_FEntityPlan]}} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json new file mode 100644 index 0000000000..eee83e0b7f --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json @@ -0,0 +1 @@ +{"FMATERIALID":{"FNumber":"@KD_FMATERIALID"},"FMaterialDesc":"@KD_FMaterialDesc","FPRICEUNITID":{"FNumber":"@KD_FPRICEUNITID"},"FPrice":@KD_FPrice@,"FPriceQty":@KD_FPriceQty,"FTaxPrice":@KD_FTaxPrice@,"FPriceWithTax":@KD_FPriceWithTax,"FEntryTaxRate":@KD_FEntryTaxRate,"F_PMZC_Assistant":{"FNumber":"@KD_F_PMZC_Assistant"},"F_PMZC_Base":{"FNUMBER":"@KD_F_PMZC_Base"},"F_PMZC_Base1":{"FNUMBER":"@KD_F_PMZC_Base1"},"FEntryDiscountRate":@KD_FEntryDiscountRate,"FDISCOUNTAMOUNTFOR":@KD_FDISCOUNTAMOUNTFOR,"FNoTaxAmountFor_D":@KD_FNoTaxAmountFor_D,"FTAXAMOUNTFOR_D":@KD_FTAXAMOUNTFOR_D,"FALLAMOUNTFOR_D":@KD_FALLAMOUNTFOR_D,"FINCLUDECOST":false,"FISOUTSTOCK":false,"FIsFree":false,"FStockUnitId":{"FNumber":"@KD_FStockUnitId"},"FStockQty":@KD_FStockQty,"FStockBaseQty":@KD_FStockBaseQty,"FPriceBaseDen":@KD_FPriceBaseDen,"FStockBaseNum":@KD_FStockBaseNum} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityPlan.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityPlan.json new file mode 100644 index 0000000000..9845c16174 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityPlan.json @@ -0,0 +1 @@ +{"FENDDATE":"@KD_FENDDATE","FPAYAMOUNTFOR":@KD_FPAYAMOUNTFOR,"FPAYRATE":@KD_FPAYRATE} \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java index b4f2ad02d8..fc0032a53f 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java @@ -312,6 +312,9 @@ public class FlowableRest implements FlowableFeign { if (StringUtils.isBlank(fl.getBusinessSid())) { return rb.setMsg("businessSid 不能为空!"); } + if( fl.getValues()==null){ + fl.setValues(new HashMap()); + } fl.getValues().put("businessSid",fl.getBusinessSid()); UpdateFlowFieldVo vo = new UpdateFlowFieldVo(); ResultBean flowProcinstById = flowableService.getFlowProcinstById(fl.getInstanceId()); @@ -345,6 +348,9 @@ public class FlowableRest implements FlowableFeign { if (StringUtils.isBlank(fl.getBusinessSid())) { return rb.setMsg("businessSid 不能为空!"); } + if( fl.getValues()==null){ + fl.setValues(new HashMap()); + } fl.getValues().put("businessSid",fl.getBusinessSid()); ResultBean> resultBean = flowtaskService.taskReject(fl); @@ -372,6 +378,9 @@ public class FlowableRest implements FlowableFeign { if (StringUtils.isBlank(fl.getBusinessSid())) { return rb.setMsg("businessSid 不能为空!"); } + if( fl.getValues()==null){ + fl.setValues(new HashMap()); + } fl.getValues().put("businessSid",fl.getBusinessSid()); UpdateFlowFieldVo vo = new UpdateFlowFieldVo(); ResultBean resultBean = flowableService.breakProcess(fl);