Browse Source

完善金蝶应付单的接口对接

master
yxt_djz 3 years ago
parent
commit
1363316e08
  1. 100
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignService.java
  2. 31
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeUtils.java
  3. 368
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/EntryBillCastToKingDeeBillFields.java
  4. 15
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/testParams.txt

100
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignService.java

@ -1,6 +1,5 @@
package com.yxt.anrui.fin.biz.kingdee;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@ -10,12 +9,11 @@ import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
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.base.utils.StringUtils;
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;
import org.springframework.util.ResourceUtils;
import java.io.*;
import java.util.ArrayList;
@ -29,37 +27,6 @@ import java.util.Map;
@Service
public class FinKingDeeFeignService {
private static final Logger log = LoggerFactory.getLogger(FinKingDeeFeignService.class);
public String readJsonFile(String filename) { //#传文件的路径
String jsonStr = "";
try {
BufferedReader br=FileUtil.getUtf8Reader(filename);
StringBuffer sb = new StringBuffer();
String data = null;
while((data = br.readLine()) != null) {
sb.append((String) data);
}
log.info(sb.toString());
/*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);
String data = null;
StringBuffer sb = new StringBuffer();
while((data = br.readLine()) != null) {
sb.append((String) data);
}*/
/* jsonStr = sb.toString();
br.close();
isr.close();
fis.close();*/
return sb.toString();
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
/**
* 保存入账申请接口生成的应付单的数据推送到金蝶的平台中
* @param aPPayable
@ -67,55 +34,43 @@ public class FinKingDeeFeignService {
*/
public ResultBean draftEntryBill(APPayable aPPayable) {
ResultBean rb=ResultBean.fireFail();
String readJsonFile = readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json");
String fEntityData_ = readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_data.json");
String fEntityModel_ = readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_model.json");
String fEntityDetail_ = readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json");
JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField);
JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField);
//业务表的主表数据集合
Map<String,String> map_fEntityModel_=new HashMap<>();
//单据编号
map_fEntityModel_.put("FBillNo",aPPayable.getApplicationCode()==null?"011166771222":aPPayable.getApplicationCode());
//物料的数组集合
List<Map<String,String>> vehicleListMap=new ArrayList<>();
if(aPPayable.getApplicationDate()==null){
return rb.setMsg("业务日期 不能为空");
}
//业务日期
map_fEntityModel_.put("FDATE","2022-07-30 00:00:00");//aPPayable.getApplicationDate()==null?"2022-07-30 00:00:00":aPPayable.getApplicationDate());
map_fEntityModel_.put("FDATE",aPPayable.getApplicationDate());
//供应商:FSUPPLIERID (必填项)
if(aPPayable.getApplicationDate()==null){
return rb.setMsg("供应商 不能为空");
}
map_fEntityModel_.put("FSUPPLIERID","010001");
fEntityModel_=replaceTemplateParams(fEntityModel_, map_fEntityModel_);
JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField);
List<APPayable.ScmApplyInboundVehicleDto> vehicleList = aPPayable.getVehicleList()==null?new ArrayList<>():aPPayable.getVehicleList();
List<JSONObject> list_fEntityDetail_=new ArrayList<>();
APPayable.ScmApplyInboundVehicleDto scmApplyInboundVehicleDto = new APPayable.ScmApplyInboundVehicleDto();
vehicleList.add(scmApplyInboundVehicleDto);
List<APPayable.ScmApplyInboundVehicleDto> vehicleList = aPPayable.getVehicleList()==null?new ArrayList<>(): aPPayable.getVehicleList();
for(int i=0;i<vehicleList.size();i++){
Map<String,String> map_fEntityDetail_=new HashMap<>();
//物料编码:FMATERIALID
map_fEntityDetail_.put("FMATERIALID",aPPayable.getApplicationCode()==null?"&12":aPPayable.getApplicationCode());
//物料说明:FMaterialDesc
map_fEntityDetail_.put("FMaterialDesc",aPPayable.getApplicationCode()==null?"内六角 ":aPPayable.getApplicationCode());
//计价数量:FPriceQty
// map_fEntityDetail_.put("FPriceQty","1");
fEntityDetail_=replaceTemplateParams(fEntityDetail_, map_fEntityDetail_);
list_fEntityDetail_.add(JSONObject.parseObject(fEntityDetail_,Feature.OrderedField));
APPayable.ScmApplyInboundVehicleDto f=vehicleList.get(i);
Map<String,String> m=new HashMap<>();
if(StringUtils.isBlank(f.getVinNo())){
return rb.setMsg("物料编码 不能为空");
}
if(StringUtils.isBlank(f.getRemarks())){
return rb.setMsg("物料名称 不能为空");
}
m.put("FMATERIALID",f.getVinNo());
m.put("FMaterialDesc",f.getRemarks());
vehicleListMap.add(m);
}
jsonFEntityModel_.put("FEntityDetail",JSONArray.parseArray(JSON.toJSONString(list_fEntityDetail_)));
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
String j= jsonObj.toString();
String kingDeeData = EntryBillCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
try {
return saveBill(KingDeeBillId.AP_PAYABLE.getID(),j);
return saveBill(KingDeeBillId.AP_PAYABLE.getID(),kingDeeData);
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
private String replaceTemplateParams(String template, Map<String, String> params) {
for (Map.Entry<String, String> entry : params.entrySet()) {
template = template.replace("@KD_"+entry.getKey(),entry.getValue());
}
return template;
}
/**
* 生成的应付单的数据推送到金蝶的平台中
* @param APPayable
@ -124,14 +79,13 @@ public class FinKingDeeFeignService {
public ResultBean draftReceivableBill(APPayable APPayable) {
ResultBean rb=ResultBean.fireFail();
Data data=new Data();
EntryBillCastToKingDeeBillFields.cast(APPayable,data);
// EntryBillCastToKingDeeBillFields.cast(APPayable,data);
try {
return null;//saveBill(KingDeeBillId.AR_RECEIVABLE.getID(),"data");
} catch (Exception e) {
e.printStackTrace();
}
return rb;
//{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FID\":0,\"FBillTypeID\":{\"FNUMBER\":\"YSD01_SYS\"},\"FBillNo\":\"12312312312\",\"FDATE\":\"2022-07-19 00:00:00\",\"FISINIT\":false,\"FENDDATE_H\":\"2022-07-19 00:00:00\",\"FCUSTOMERID\":{\"FNumber\":\"001123\"},\"FCURRENCYID\":{\"FNumber\":\"PRE001\"},\"FPayConditon\":{\"FNumber\":\"SKTJ01_SYS\"},\"FISPRICEEXCLUDETAX\":true,\"FSETTLEORGID\":{\"FNumber\":\"101\"},\"FPAYORGID\":{\"FNumber\":\"101\"},\"FSALEORGID\":{\"FNumber\":\"101\"},\"FISTAX\":true,\"FSALEDEPTID\":{\"FNumber\":\"01\"},\"FCancelStatus\":\"A\",\"FBUSINESSTYPE\":\"BZ\",\"FAR_Remark\":\"123\",\"FSetAccountType\":\"1\",\"FISHookMatch\":false,\"FISINVOICEARLIER\":false,\"F_PAEZ_Assistant1\":{\"FNumber\":\"00\"},\"F_PAEZ_Base\":{\"FNUMBER\":\"001123\"},\"F_PMZC_Assistant2\":{\"FNumber\":\"01\"},\"FsubHeadSuppiler\":{\"FORDERID\":{\"FNumber\":\"001123\"},\"FTRANSFERID\":{\"FNumber\":\"001123\"},\"FChargeId\":{\"FNumber\":\"001123\"}},\"FsubHeadFinc\":{\"FACCNTTIMEJUDGETIME\":\"2022-07-19 00:00:00\",\"FMAINBOOKSTDCURRID\":{\"FNumber\":\"PRE001\"},\"FEXCHANGETYPE\":{\"FNumber\":\"HLTX01_SYS\"},\"FExchangeRate\":1.0,\"FTaxAmountFor\":152.91,\"FNoTaxAmountFor\":15291.09},\"FEntityDetail\":[{\"FMATERIALID\":{\"FNumber\":\" JX091054\"},\"FMaterialDesc\":\"X牵引6*4-550超\",\"FPRICEUNITID\":{\"FNumber\":\"liang\"},\"FPriceQty\":120.0,\"FTaxPrice\":130.0,\"FPrice\":128.71,\"FEntryTaxRate\":1.0,\"FEntryDiscountRate\":1.0,\"FNoTaxAmountFor_D\":15291.09,\"FDISCOUNTAMOUNTFOR\":156.00,\"F_PMZC_Assistant\":{\"FNumber\":\"1905140703\"},\"F_PMZC_Assistant1\":{\"FNumber\":\"18815672616\"},\"F_PMZC_Base\":{\"FNUMBER\":\"003ZU\"},\"FTAXAMOUNTFOR_D\":152.91,\"FALLAMOUNTFOR_D\":15444.00,\"FDeliveryControl\":false,\"F_PAEZ_Decimal\":12.0,\"FStockUnitId\":{\"FNumber\":\"liang\"},\"FStockQty\":120.0,\"FIsFree\":false,\"FStockBaseQty\":120.0,\"FSalUnitId\":{\"FNumber\":\"liang\"},\"FSalQty\":120.0,\"FSalBaseQty\":120.0,\"FPriceBaseDen\":1.0,\"FSalBaseNum\":1.0,\"FStockBaseNum\":1.0,\"FBUYIVINIQTY\":1.0,\"FIVINIALLAMOUNTFOR\":1.0,\"F_PAEZ_Decimal1\":1.0,\"F_PAEZ_Decimal2\":1.0,\"F_PAEZ_Decimal3\":1.0}],\"FEntityPlan\":[{\"FENDDATE\":\"2022-07-19 00:00:00\",\"FPAYRATE\":100.00000,\"FPAYAMOUNTFOR\":15444.00}]}}
}
/**
* 调用金蝶的接口

31
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeUtils.java

@ -0,0 +1,31 @@
package com.yxt.anrui.fin.biz.kingdee;
import cn.hutool.core.io.FileUtil;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Map;
public class KingDeeUtils {
public static String readJsonFile(String filename) { //#传文件的路径
String jsonStr = "";
try {
BufferedReader br= FileUtil.getUtf8Reader(filename);
StringBuffer sb = new StringBuffer();
String data = null;
while((data = br.readLine()) != null) {
sb.append((String) data);
}
return sb.toString();
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
public static String replaceTemplateParams(String template, Map<String, String> params) {
for (Map.Entry<String, String> entry : params.entrySet()) {
template = template.replace("@KD_"+entry.getKey(),entry.getValue());
}
return template;
}
}

368
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/EntryBillCastToKingDeeBillFields.java

@ -1,246 +1,170 @@
package com.yxt.anrui.fin.biz.kingdee.entrybill;
import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.api.kingdee.kingdeedata.*;
import com.yxt.anrui.fin.api.kingdee.appayable.APPayable;
import com.yxt.anrui.fin.api.kingdee.appayable.kingdeedata.*;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 封装转换的类
*/
public class EntryBillCastToKingDeeBillFields {
/**
* 入账的数据对象转换成金蝶数据对象
* @param source
* @param target
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @param vehicleList
* @return
*/
public static void cast(APPayable source, Data target) {
target.setCreator(source.getUserSid());
public static String getKingDeeData(Map<String,String> map_fEntityModel_,List<Map<String,String>> vehicleList){
/**
* InterationFlags交互标志集合字符串类型分号分隔格式"flag1;flag2;..."非必录例如允许负库存标识STK_InvCheckResult
* 取模板
*/
target.setInterationflags(" ");
/**
* IsDeleteEntry是否删除已存在的分录布尔类型默认true非必录
*/
target.setIsdeleteentry("True ");
/**
* IsEntryBatchFill是否批量填充分录默认true非必录
*/
target.setIsentrybatchfill("True ");
/**
* IsVerifyBaseDataField是否验证所有的基础资料有效性布尔类默认false非必录
*/
target.setIsverifybasedatafield("false ");
/**
* 构造model
*/
createModel(source,target);
/**
* 需返回结果的字段集合数组类型格式[key,entitykey.key,...]非必录返回单据体字段格式entitykey.key
*/
List<String> needreturnfields =new ArrayList<>();
target.setNeedreturnfields(needreturnfields);
/**
* NeedUpDateFields需要更新的字段数组类型格式[key1,key2,...]非必录更新单据体字段得加上单据体key
*/
List<String> needupdatefields=new ArrayList<>();
target.setNeedupdatefields(needupdatefields);
/**
* 是否用编码搜索基础资料布尔类型默认true非必录
*/
target.setNumbersearch("True ");
/**
* SubSystemId表单所在的子系统内码字符串类型非必录
*/
target.setSubsystemid(" ");
/**
* ValidateFlag是否验证标志布尔类型默认true非必录
*/
target.setValidateflag("True ");
}
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_model.json");
String fEntityDetail_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/entrybill/entrybilldata_FEntityDetail.json");
/**
* 创建 Model
* @param target
*/
private static void createModel(APPayable source, Data target) {
/**
* Model表单数据包Json类型必录
*/
Model model=new Model();
model.setFid(0);
/**
* 单据类型:FBillTypeID (必填项)
*/
Fbilltypeid fbilltypeid=new Fbilltypeid();
fbilltypeid.setFnumber("YFD01_SYS ");
model.setFbilltypeid(fbilltypeid);
/**
*
*/
model.setFbillno(source.getApplicationCode());
/**
* 是否期初单据:FISINIT
*/
model.setFisinit(false);
/**
* 业务日期:FDATE (必填项)
*/
model.setFdate("2022-07-16 00:00:00 ");
/**
* 到期日:FENDDATE_H
*/
model.setFenddateH("2022-07-16 00:00:00 ");
/**
* 单据状态:FDOCUMENTSTATUS (必填项)
*/
model.setFdocumentstatus("Z ");
/**
* 供应商:FSUPPLIERID (必填项)
*/
Fsupplierid fsupplierid=new Fsupplierid();
fsupplierid.setFnumber("010001 ");
model.setFsupplierid(fsupplierid);
/**
* 币别:FCURRENCYID (必填项)
*/
Fcurrencyid fcurrencyid=new Fcurrencyid();
fcurrencyid.setFnumber( "PRE001 ");
model.setFcurrencyid( fcurrencyid);
/**
* 付款条件:FPayConditon
*/
Fpayconditon fpayconditon=new Fpayconditon();
fpayconditon.setFnumber("FKTJ01_SYS ");
model.setFpayconditon(fpayconditon) ;
/**
* 价外税:FISPRICEEXCLUDETAX
*/
model.setFispriceexcludetax(true);
/**
* 业务类型:FBUSINESSTYPE (必填项)
*/
model.setFbusinesstype("CG ") ;
/**
* 按含税单价录入:FISTAX
*/
model.setFistax(true);
/**
* 表头基本 -未付款核销金额作废:FNOTWRITTENOFFAMOUNTFOR
* 结算组织:FSETTLEORGID (必填项)
*/
Fsettleorgid fsettleorgid=new Fsettleorgid();
fsettleorgid.setFnumber("101 ");
model.setFsettleorgid(fsettleorgid);
/**
* 付款组织:FPAYORGID (必填项)
*/
Fpayorgid fpayorgid=new Fpayorgid();
fpayorgid.setFnumber("101 ");
model.setFpayorgid(fpayorgid);
/**
* 立账类型:FSetAccountType
*/
model.setFsetaccounttype("2 ") ;
/**
* 税额计入成本:FISTAXINCOST
*/
model.setFistaxincost(false) ;
/**
* 备注:FAP_Remark
*/
model.setFapRemark("122112 ");
/**
* 参与暂估应付核销:FISHookMatch
*/
model.setFishookmatch(false);
/**
* 采购部门:FPURCHASEDEPTID (必填项)
*/
Fpurchasedeptid fpurchasedeptid=new Fpurchasedeptid();
fpurchasedeptid.setFnumber("02 ");
model.setFpurchasedeptid(fpurchasedeptid);
/**
* 作废状态:FCancelStatus (必填项)
*/
model.setFcancelstatus("A ") ;
/**
*是发票审核自动生成:FISBYIV
*/
model.setFisbyiv(false);
/**
* 是否需要成本调整:FISGENHSADJ
*/
model.setFisgenhsadj(false) ;
/**
* 先到票后入库:FISINVOICEARLIER
*/
model.setFisinvoicearlier(false);
/**
* 发票号码:F_PAEZ_Text
*/
model.setFPaezText("1221121212 ") ;
/**
* 项目类别:F_PMZC_Assistant1
*/
FPmzcAssistant1 fPmzcAssistant1=new FPmzcAssistant1 ();
fPmzcAssistant1.setFnumber("00 ");
model.setFPmzcAssistant1( fPmzcAssistant1);
/**
*
*/
Fsubheadsuppiler fsubheadsuppiler=new Fsubheadsuppiler ();
Forderid forderid=new Forderid();
forderid.setFnumber("010001 ");
fsubheadsuppiler.setForderid( forderid);
Ftransferid ftransferid=new Ftransferid();
ftransferid.setFnumber("010001 ");
fsubheadsuppiler.setFtransferid( ftransferid);
Fchargeid fchargeid=new Fchargeid();
fchargeid.setFnumber("010001 ");
fsubheadsuppiler.setFchargeid( fchargeid);
model.setFsubheadsuppiler(fsubheadsuppiler) ;
//模板字符创转json
JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField);
JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField);
fEntityModel_ =KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_);
JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField);
Fsubheadfinc fsubheadfinc=new Fsubheadfinc();
List<JSONObject> list_fEntityDetail_=new ArrayList<>();
fsubheadfinc.setFaccnttimejudgetime("2022-07-16 00:00:00 ") ;
//对模板字段赋值 根据传递进来的map数据的集合进行赋值
for(int i=0;i<vehicleList.size();i++){
Map<String,String> params=vehicleList.get(i);
Map<String,String> map_fEntityDetail_=new HashMap<>();
for (Map.Entry<String, String> entry : params.entrySet()) {
map_fEntityDetail_.put(entry.getKey(),entry.getValue());
}
fEntityDetail_ =KingDeeUtils.replaceTemplateParams(fEntityDetail_, map_fEntityDetail_);
list_fEntityDetail_.add(JSONObject.parseObject(fEntityDetail_,Feature.OrderedField));
}
/**
* 本位币:FMAINBOOKSTDCURRID
*/
Fmainbookstdcurrid fmainbookstdcurrid=new Fmainbookstdcurrid();
fmainbookstdcurrid.setFnumber("PRE001 ");
fsubheadfinc.setFmainbookstdcurrid(fmainbookstdcurrid);
/**
* 汇率类型:FEXCHANGETYPE
*/
Fexchangetype fexchangetype=new Fexchangetype();
fexchangetype.setFnumber("HLTX01_SYS ");
fsubheadfinc.setFexchangetype(fexchangetype);
/**
* 汇率:FExchangeRate
*/
fsubheadfinc.setFexchangerate(1) ;
/**
* 税额:FTaxAmountFor
*/
fsubheadfinc.setFtaxamountfor(1.0) ;
/**
* 不含税金额:FNoTaxAmountFor
*/
fsubheadfinc.setFnotaxamountfor( 1.98) ;
model.setFsubheadfinc(fsubheadfinc);
List<Fentitydetail> fentitydetail=new ArrayList<>();
model.setFentitydetail(fentitydetail);
List<Fentityplan> fentityplan=new ArrayList<>();
model.setFentityplan(fentityplan);
/**
* Model表单数据包Json类型必录
*/
target.setModel(model);
jsonFEntityModel_.put("FEntityDetail", JSONArray.parseArray(JSON.toJSONString(list_fEntityDetail_)));
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
/**
* 业务实体类按照模板进行装换
* @param params
* @param readJsonFile
* @param fEntityDetail_
* @param fEntityPlan_
* @return
*/
/* public static String cloneKingDeeParams(Map<String,Object> params, String readJsonFile, String fEntityDetail_, String fEntityPlan_){
readJsonFile = readJsonFile.replace("@KD_Creator", "zs");
//单据类型:FBillTypeID (必填项)
readJsonFile = readJsonFile.replace("@KD_FBillTypeID", "YFD01_SYS");
//业务日期:FDATE (必填项)
readJsonFile = readJsonFile.replace("@KD_FDATE", "2022-07-26");
//单据状态: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");
StringBuilder sb=new StringBuilder();
for(int i=0;i<1;i++){
String fEntityDetail=fEntityDetail_.toString();
//物料编码: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_FTaxPrice@", "350000.0");
//含税净价:FPriceWithTax
fEntityDetail = fEntityDetail.replace("@KD_FPriceWithTax", "346500.0");
//税率(%):FEntryTaxRate
fEntityDetail = fEntityDetail.replace("@KD_FEntryTaxRate", "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");
//含税单价:FTaxPrice
fEntityDetail = fEntityDetail.replace("@KD_FTaxPrice@", "350000.0");
//税率(%):FEntryTaxRate
fEntityDetail = fEntityDetail.replace("@KD_FEntryTaxRate", "12.0");
//价税合计:FALLAMOUNTFOR_D
fEntityDetail = fEntityDetail.replace("@KD_FALLAMOUNTFOR_D", "693000.0");
//库存基本数量:FStockBaseQty
fEntityDetail = fEntityDetail.replace("@KD_FStockBaseQty", "2.0");
sb.append(fEntityDetail).append(",");
}
String sbs=sb.substring(0,sb.length()-1);
readJsonFile=readJsonFile.replace("@KD_FEntityDetail",sbs);
StringBuilder sb_fEntityPlan=new StringBuilder();
for(int i=0;i<1;i++){
String fEntityPlan=fEntityPlan_.toString();
//应付金额: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");
sb_fEntityPlan.append(fEntityPlan).append(",");
}
String sb_fEntityPlans=sb_fEntityPlan.substring(0,sb_fEntityPlan.length()-1);
readJsonFile=readJsonFile.replace("@KD_FEntityPlan",sb_fEntityPlans);
return readJsonFile;
}*/
}

15
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/entrybill/testParams.txt

@ -0,0 +1,15 @@
{
"sid": "63",
"userSid": "73",
"applicationDate": "2022-08-01 06:22:08",
"applicationCode": "1659335563",
"vehicleList": [
{
"sid": "25",
"applySid": "11",
"modelSid": " JX091054",
"vinNo": " JX091054",
"remarks": "X牵引6*4-550超"
}
]
}
Loading…
Cancel
Save