Browse Source

完善金蝶银行、银行账户接口

master
yxt_djz 3 years ago
parent
commit
cbb03a7489
  1. 8
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java
  2. 9
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java
  3. 10
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java
  4. 12
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java
  5. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java
  6. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/appaybill/ApPayBill.java
  7. 29
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bank/BDBank.java
  8. 33
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/cnbankcnt/CNBankacnt.java
  9. 4
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stkinstock/StkInStock.java
  10. 29
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  11. 50
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/ApPayBillService.java
  12. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/data_FPAYBILLENTRY.json
  13. 44
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/BDBankCastToKingDeeBillFields.java
  14. 72
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/BDBankService.java
  15. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/data.json
  16. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/data_data.json
  17. 11
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/data_model.json
  18. 59
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/remarks.txt
  19. 1
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/webapi测试的数据.txt
  20. BIN
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/银行的参数必填备注.xlsx
  21. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java
  22. 44
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/CNBankcntCastToKingDeeBillFields.java
  23. 81
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/CNBankcntService.java
  24. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data.json
  25. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data_data.json
  26. 20
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data_model.json
  27. 75
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/remarks.txt
  28. 1
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/webapi测试的数据.txt
  29. BIN
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/银行的参数必填备注.xlsx
  30. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java
  31. 80
      anrui-timertask/src/main/java/com/yxt/anrui/timertask/feign/entity/BdMaterial.java

8
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java

@ -458,6 +458,10 @@ public class BaseAccadjApplyService extends MybatisBaseService<BaseAccadjApplyMa
* 车辆类型
*/
sf.setCllx("03");
/**
* 车辆类型
*/
sf.setCllxType("03");
/**
* // 批号:FLot
*/
@ -474,6 +478,10 @@ public class BaseAccadjApplyService extends MybatisBaseService<BaseAccadjApplyMa
* 物料分组
*/
sf.setWlfz("01");
/**
* 物料分组
*/
sf.setWlfzType("01");
fInStockEntry.add(sf);
}
stkInStock.setFInStockEntry(fInStockEntry);

9
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java

@ -267,7 +267,10 @@ public class BaseVehicleRest implements BaseVehicleFeign {
* 车辆类型
*/
sf.setCllx("03");//TODO 需要根据车辆对应的车型 分析出车辆类型 推送到车辆台账中 规则:1.车辆类型—>优先考虑LNG的类型,然后再是牵引、载货等。
/**
* 车辆类型
*/
sf.setCllxType("03");
/**
* // 批号:FLot
*/
@ -284,6 +287,10 @@ public class BaseVehicleRest implements BaseVehicleFeign {
* 物料分组
*/
sf.setWlfz("01");
/**
* 物料分组
*/
sf.setWlfzType("01");
fInStockEntry.add(sf);
}
stkInStock.setFInStockEntry(fInStockEntry);

10
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java

@ -3,10 +3,12 @@ package com.yxt.anrui.fin.api.kingdee;
import com.yxt.anrui.fin.api.kingdee.appayable.APPayable;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.api.kingdee.arreceivable.ARReceivable;
import com.yxt.anrui.fin.api.kingdee.bank.BDBank;
import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdstock.BDStock;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.push.STKInStockPushPurmrb;
@ -105,4 +107,12 @@ public interface FinKingDeeFeign {
@PostMapping("/drafBDStock")
@ResponseBody
public ResultBean<String> drafBDtStock(@RequestBody @Valid BDStock bDtStock) throws Exception;
@ApiOperation("暂存银行的接口")
@PostMapping("/drafBDBank")
@ResponseBody
public ResultBean<String> drafBDBank(@RequestBody @Valid BDBank bdBank) ;
@ApiOperation("暂存银行账号的接口")
@PostMapping("/drafCNBankacnt")
@ResponseBody
public ResultBean<String> drafCNBankacnt(@RequestBody @Valid CNBankacnt cnBankacnt);
}

12
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java

@ -3,10 +3,12 @@ package com.yxt.anrui.fin.api.kingdee;
import com.yxt.anrui.fin.api.kingdee.appayable.APPayable;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.api.kingdee.arreceivable.ARReceivable;
import com.yxt.anrui.fin.api.kingdee.bank.BDBank;
import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdstock.BDStock;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.push.STKInStockPushPurmrb;
@ -98,5 +100,15 @@ implements FinKingDeeFeign{
return null;
}
@Override
public ResultBean<String> drafBDBank(BDBank bdBank) {
return null;
}
@Override
public ResultBean<String> drafCNBankacnt(CNBankacnt cnBankacnt) {
return null;
}
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java

@ -13,6 +13,8 @@ public enum KingDeeBillId {
BD_CUSTOMER("BD_Customer","客户"),
BD_SUPPLIER("BD_Supplier","供应商"),
BD_MATERIAL("BD_MATERIAL","物料"),
BD_BANK("BD_BANK","银行"),
CN_BANKACNT("CN_BANKACNT","银行账号"),
BD_STOCK("BD_STOCK","仓库");
private String ID;
private String NAME;

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/appaybill/ApPayBill.java

@ -42,7 +42,7 @@ public class ApPayBill {
/**
* //应付类别:F_PAEZ_AssistantKey (必填项) 默认:005 定金
*/
@JsonProperty("F_PAEZ_Assistant")
@JsonProperty("F_PAEZ_AssistantKey")
@NotBlank
public String F_PAEZ_AssistantKey;
/**
@ -73,7 +73,6 @@ public class ApPayBill {
//付款组织:FPAYORGID (必填项)
/* public String FPAYORGID ;*/
@JsonProperty("FPAYBILLENTRY")
@NotBlank
public List<FPAYBILLENTRY> FPAYBILLENTRY=new ArrayList<>();
@Data
public static class FPAYBILLENTRY{

29
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bank/BDBank.java

@ -0,0 +1,29 @@
package com.yxt.anrui.fin.api.kingdee.bank;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 银行
*/
@Data
public class BDBank {
/* 创建组织:FCreateOrgId (必填项)*/
@NotBlank
@JsonProperty("FCreateOrgId")
public String FCreateOrgId;
/*名称:FName (必填项)*/
@NotBlank
@JsonProperty("FName")
public String FName;
/* 使用组织:FUseOrgId (必填项)*/
@NotBlank
@JsonProperty("FUseOrgId")
public String FUseOrgId;
/* :FNumber (必填项)*/
@NotBlank
@JsonProperty("FNumber")
public String FNumber;
}

33
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/cnbankcnt/CNBankacnt.java

@ -0,0 +1,33 @@
package com.yxt.anrui.fin.api.kingdee.cnbankcnt;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 银行账号
*/
@Data
public class CNBankacnt {
/*银行账号:FNumber (必填项)*/
@NotBlank
@JsonProperty("FNumber")
public String FNumber;
/*开户银行:FBANKID (必填项)*/
@NotBlank
@JsonProperty("FBANKID")
public String FBANKID;
/*账户名称:FName (必填项)*/
@NotBlank
@JsonProperty("FName")
public String FName;
/*使用组织:FUseOrgId (必填项)*/
@NotBlank
@JsonProperty("FUseOrgId")
public String FUseOrgId;
/*创建组织:FCreateOrgId (必填项)*/
@NotBlank
@JsonProperty("FCreateOrgId")
public String FCreateOrgId;
}

4
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stkinstock/StkInStock.java

@ -85,11 +85,15 @@ public class StkInStock {
*/
@NotBlank
public String wlfz;
@NotBlank
public String wlfzType;
/**
* 车辆类型
*/
@NotBlank
public String cllx;
@NotBlank
public String cllxType;
/**
* // 单价:FPrice
*/@JsonProperty("FPrice")

29
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -4,10 +4,12 @@ import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.appayable.APPayable;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.api.kingdee.arreceivable.ARReceivable;
import com.yxt.anrui.fin.api.kingdee.bank.BDBank;
import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdstock.BDStock;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.push.STKInStockPushPurmrb;
@ -16,10 +18,12 @@ import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock;
import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect;
import com.yxt.anrui.fin.biz.kingdee.appaybill.ApPayBillService;
import com.yxt.anrui.fin.biz.kingdee.appayable.APPayableService;
import com.yxt.anrui.fin.biz.kingdee.bank.BDBankService;
import com.yxt.anrui.fin.biz.kingdee.bdcustomer.BdCustomerService;
import com.yxt.anrui.fin.biz.kingdee.bdmaterial.BdMaterialService;
import com.yxt.anrui.fin.biz.kingdee.bdstock.BDStockService;
import com.yxt.anrui.fin.biz.kingdee.bdsupplier.BdSupplierService;
import com.yxt.anrui.fin.biz.kingdee.cnbankcnt.CNBankcntService;
import com.yxt.anrui.fin.biz.kingdee.orgorganizations.OrgOrganizationsService;
import com.yxt.anrui.fin.biz.kingdee.purmrb.PurMrbService;
import com.yxt.anrui.fin.biz.kingdee.push.PushService;
@ -106,6 +110,16 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
*/
@Autowired
private PushService pushService;
/**
* 银行
*/
@Autowired
private BDBankService bdBankService;
/**
* 银行
*/
@Autowired
private CNBankcntService cnBankcntService;
@ApiOperation("入账暂存应付单的接口")
@PostMapping("/draftEntryBill")
@ResponseBody
@ -223,5 +237,20 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
public ResultBean<String> drafBDtStock(@RequestBody @Valid BDStock bDtStock) throws Exception {
return bDStockService.draftBDStock(bDtStock);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
@ApiOperation("暂存银行的接口")
@PostMapping("/drafBDBank")
@ResponseBody
@Override
public ResultBean<String> drafBDBank(BDBank bdBank) {
return bdBankService.draftBDBank(bdBank);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
@ApiOperation("暂存银行账号的接口")
@PostMapping("/drafCNBankacnt")
@ResponseBody
@Override
public ResultBean<String> drafCNBankacnt(CNBankacnt cNBankacnt) {
return cnBankcntService.draftCNBankcnt(cNBankacnt);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
}

50
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/ApPayBillService.java

@ -31,56 +31,29 @@ public class ApPayBillService extends FinKingDeeService {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(apPayBill);//createMapParams(stringObjectMap);
//应付类别
String F_PAEZ_AssistantType = map_fEntityModel_.get("F_PAEZ_AssistantType");
String F_PAEZ_AssistantKey = map_fEntityModel_.get("F_PAEZ_AssistantKey");
SysMappingInfoQuery smiq=new SysMappingInfoQuery();
smiq.setMap_sourceKey("CWXT");
smiq.setMap_object("付款单");
smiq.setMap_item("应付类别");
smiq.setDictKey(F_PAEZ_AssistantKey);
smiq.setDictTypeCode(F_PAEZ_AssistantType);
ResultBean<SysMappingInfoVo> sysMappingInfoVoResultBean = sysMappingFeign.selectMappingInfo(smiq);
ResultBean<SysMappingInfoVo> sysMappingInfoVoResultBean = getSysMappingInfoVoResultBean( "应付类别",map_fEntityModel_.get("F_PAEZ_AssistantKey"), map_fEntityModel_.get("F_PAEZ_AssistantType"));
boolean success = sysMappingInfoVoResultBean.getSuccess();
if(!success){
return rb.setMsg(sysMappingInfoVoResultBean.getMsg());
}
String F_PAEZ_Assistant=sysMappingInfoVoResultBean.getData().getMap_itemKey();//TODO 根据应付类别的code,key查询金蝶系统中的应付类别的编码 映射来源“CWXT”/“财务系统”
map_fEntityModel_.put("F_PAEZ_Assistant",F_PAEZ_Assistant);
map_fEntityModel_.put("F_PAEZ_Assistant","001");//sysMappingInfoVoResultBean.getData().getMap_itemKey());
//准备 物料列表的数据 ForEntryBill
List<ApPayBill.FPAYBILLENTRY> fpaybillentrYs = apPayBill.getFPAYBILLENTRY();
List<Map<String, String>> vehicleListMap = createVehicleLists(fpaybillentrYs);
for(int i=0;i<vehicleListMap.size();i++){
Map<String,String> params=vehicleListMap.get(i);
//付款用途
String FPURPOSEIDType = params.get("FPURPOSEIDType");
String FPURPOSEIDKey = params.get("FPURPOSEIDKey");
smiq=new SysMappingInfoQuery();
smiq.setMap_sourceKey("CWXT");
smiq.setMap_object("付款单");
smiq.setMap_item("付款用途");
smiq.setDictKey(FPURPOSEIDKey);
smiq.setDictTypeCode(FPURPOSEIDType);
sysMappingInfoVoResultBean = sysMappingFeign.selectMappingInfo(smiq);
sysMappingInfoVoResultBean = getSysMappingInfoVoResultBean( "付款用途", params.get("FPURPOSEIDKey"), params.get("FPURPOSEIDType"));
if(! sysMappingInfoVoResultBean.getSuccess()){
return rb.setMsg(sysMappingInfoVoResultBean.getMsg());
}
String FPURPOSEID=sysMappingInfoVoResultBean.getData().getMap_itemKey();//TODO 根据付款用途的code,key查询金蝶系统中的付款用途的编码 映射来源“CWXT”/“财务系统”
params.put("FPURPOSEID",FPURPOSEID);
params.put("FPURPOSEID","SFKYT08_SYS");//sysMappingInfoVoResultBean.getData().getMap_itemKey());
//结算方式
String FSETTLETYPEIDType = params.get("FSETTLETYPEIDType");
String FSETTLETYPEIDKey = params.get("FSETTLETYPEIDKey");
smiq=new SysMappingInfoQuery();
smiq.setMap_sourceKey("CWXT");
smiq.setMap_object("付款单");
smiq.setMap_item("结算方式");
smiq.setDictKey(FSETTLETYPEIDKey);
smiq.setDictTypeCode(FSETTLETYPEIDType);
sysMappingInfoVoResultBean = sysMappingFeign.selectMappingInfo(smiq);
sysMappingInfoVoResultBean = getSysMappingInfoVoResultBean( "结算方式", params.get("FSETTLETYPEIDKey"), params.get("FSETTLETYPEIDType"));
if(!sysMappingInfoVoResultBean.getSuccess()){
return rb.setMsg(sysMappingInfoVoResultBean.getMsg());
}
String FSETTLETYPEID=sysMappingInfoVoResultBean.getData().getMap_itemKey();//TODO 根据结算方式的code,key查询金蝶系统中的结算方式的编码 映射来源“CWXT”/“财务系统”
params.put("FSETTLETYPEID",FSETTLETYPEID);
params.put("FSETTLETYPEID","02");//sysMappingInfoVoResultBean.getData().getMap_itemKey());
}
String kingDeeData = ApPayBillCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
return accessKingDeeInterface(KingDeeBillId.AP_PAYBILL.getID(),kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
@ -89,4 +62,15 @@ public class ApPayBillService extends FinKingDeeService {
}
return rb;
}
private ResultBean<SysMappingInfoVo> getSysMappingInfoVoResultBean( String Map_item, String FPURPOSEIDKey,
String FPURPOSEIDType) {
SysMappingInfoQuery smiq =new SysMappingInfoQuery();
smiq.setMap_sourceKey("CWXT");
smiq.setMap_object("付款单");
smiq.setMap_item(Map_item);
smiq.setDictKey(FPURPOSEIDKey);
smiq.setDictTypeCode(FPURPOSEIDType);
return sysMappingFeign.selectMappingInfo(smiq);
}
}

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/data_FPAYBILLENTRY.json

@ -6,10 +6,10 @@
"FNumber": "@KD_FPURPOSEID"
},
"FPAYTOTALAMOUNTFOR": @KD_FPAYTOTALAMOUNTFOR,
"FPAYAMOUNTFOR_E": @KD_FPAYAMOUNTFOR_E,
"FSETTLEPAYAMOUNTFOR": @KD_FSETTLEPAYAMOUNTFOR,
"FREALPAYAMOUNTFOR_D": @KD_FREALPAYAMOUNTFOR_D,
"FPAYAMOUNT_E": @KD_FPAYAMOUNT_E,
"FPAYAMOUNTFOR_E": @KD_FPAYTOTALAMOUNTFOR,
"FSETTLEPAYAMOUNTFOR": @KD_FPAYTOTALAMOUNTFOR,
"FREALPAYAMOUNTFOR_D": @KD_FPAYTOTALAMOUNTFOR,
"FPAYAMOUNT_E": @KD_FPAYTOTALAMOUNTFOR,
"FACCOUNTID": {"FNumber":"@KD_FACCOUNTID"},
"FPOSTDATE": "@KD_FPOSTDATE",
"FRuZhangType": "1",

44
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/BDBankCastToKingDeeBillFields.java

@ -0,0 +1,44 @@
package com.yxt.anrui.fin.biz.kingdee.bank;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
/**
* 封装转换的类
*/
public class BDBankCastToKingDeeBillFields {
private static Logger log=LoggerFactory.getLogger(BDBankCastToKingDeeBillFields.class);
/**
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @return
*/
public static String getKingDeeData(Map<String,String> map_fEntityModel_ ){
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bank/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bank/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bank/data_model.json");
log.info("readJsonFile:{}",readJsonFile);
log.info("fEntityData_:{}",fEntityData_);
log.info("fEntityModel_:{}",fEntityModel_);
//模板字符创转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);
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
}

72
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/BDBankService.java

@ -0,0 +1,72 @@
package com.yxt.anrui.fin.biz.kingdee.bank;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bank.BDBank;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class BDBankService extends FinKingDeeService {
/**
* 保存银行信息 list
* @param bDBanks
* @return
*/
public ResultBean<List<KingDeeResult>> draftBDBankList(List<BDBank> bDBanks) {
List<KingDeeResult> list=new ArrayList<>();
ResultBean rb=ResultBean.fireFail();
for(BDBank b:bDBanks) {
ResultBean<List<KingDeeResult>> resultBean = draftBDBank(b);
if (resultBean.getSuccess()) {
list.add(resultBean.getData().get(0));
}
}
return rb.success().setData(list);
}
/**
* 保存银行信息
* @param bDBank
* @return
*/
public ResultBean draftBDBank(BDBank bDBank) {
//bdCustomer=BdCustomer.createBdCustomer();
ResultBean rb=ResultBean.fireFail();
try {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(bDBank);
//准备 物料列表的数据 ForEntryBill
String kingDeeData = BDBankCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<String> resultBean = accessKingDeeInterface(
KingDeeBillId.BD_BANK.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
String submitKD = getSubmitKD(resultBean.getData(),KingDeeBillId.BD_BANK.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_BANK.getID(), submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("银行提交失败!");
return rb.setMsg("银行提交失败!");
}
log.info("银行提交成功!");
String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.BD_BANK.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.BD_BANK.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("银行审核失败!");
return rb.setMsg("银行审核失败!");
}
log.info("银行审核成功!");
return resultBean;
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/data.json

@ -0,0 +1,4 @@
{
"formId": "BD_BANK",
"data": "@KD_data"
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/data_data.json

@ -0,0 +1,13 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {}
}

11
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/data_model.json

@ -0,0 +1,11 @@
{
"FBANKID": 0,
"FName": "@KD_FName",
"FNumber": "@KD_FNumber",
"FCreateOrgId": {
"FNumber": "@KD_FCreateOrgId"
},
"FUseOrgId": {
"FNumber": "@KD_FUseOrgId"
}
}

59
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/remarks.txt

@ -0,0 +1,59 @@
一、请求参数说明:
1.formid:业务对象表单Id,字符串类型(必录)
2.data:Json格式数据(详情参考Json格式数据)(必录)
2.1.Creator:创建者内码(非必录)
2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key)
2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key)
2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录)
2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
2.11.Model:表单数据包,Json类型(必录)
二、Json格式数据:
{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FBANKID\":\"0\",\"FNumber\":\"\",\"FName\":\"\",\"FACNTBRANCHNUMBER\":\"\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FACNTAREACODE\":\"\",\"FACNTAREANAME\":\"\",\"FADDRESS\":\"\",\"FDescription\":\"\"}}
三、返回参数:
{\"Result\":{\"ResponseStatus\":{\"ErrorCode\":\"\",\"IsSuccess\":\"false\",\"Errors\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}],\"SuccessEntitys\":[{\"Id\":\"\",\"Number\":\"\",\"DIndex\":0}],\"SuccessMessages\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}]},\"Id\":\"\",\"NeedReturnData\":[{}]}}
四、代码示例:
// 使用webapi引用组件Kingdee.BOS.WebApi.Client.dll
K3CloudApiClient client = new K3CloudApiClient("http://121.36.43.55/k3cloud/");
var ret = client.ValidateLogin("61dce6601125a0","Administrator","888888",2052);
var result = JObject.Parse(ret)["LoginResultType"].Value<int>();
// 登陆成功
if (result == 1)
{
client.Draft("BD_BANK","{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FBANKID\":\"0\",\"FNumber\":\"\",\"FName\":\"\",\"FACNTBRANCHNUMBER\":\"\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FACNTAREACODE\":\"\",\"FACNTAREANAME\":\"\",\"FADDRESS\":\"\",\"FDescription\":\"\"}}");
}
五、字段说明:
审核人:FAuditorID
系统预设:FIsSysPreset
银行地址:FADDRESS
禁用人:FForbidderID
禁用日期:FForbidDate
审核日期:FAuditDate
银行:FBankType
联行号:FACNTBRANCHNUMBER
地区名:FACNTAREANAME
地区码:FACNTAREACODE
省:FProvince
城市:FCity
地区:FDistrict
编码:FNumber
描述:FDescription
创建组织:FCreateOrgId (必填项)
数据状态:FDocumentStatus
禁用状态:FForbidStatus
名称:FName (必填项)
使用组织:FUseOrgId (必填项)
修改日期:FModifyDate
生效日期:FStartDate
失效日期:FEndDate
创建人:FCreatorId
修改人:FModifierId
创建日期:FCreateDate

1
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/webapi测试的数据.txt

@ -0,0 +1 @@
{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FBANKID\":0,\"FName\":\"mcmcmcmcm\",\"FCreateOrgId\":{\"FNumber\":\"101\"},\"FUseOrgId\":{\"FNumber\":\"101\"}}}

BIN
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bank/银行的参数必填备注.xlsx

Binary file not shown.

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java

@ -69,11 +69,11 @@ public class BdMaterialService extends FinKingDeeService {
private List<KeyItem> getKeyItems() {
List<KeyItem> params=new ArrayList<>();
params.add(new KeyItem("FCategoryID","存货类别") );
/* params.add(new KeyItem("FMaterialGroup","物料分组") );
params.add(new KeyItem("FMaterialGroup","物料分组") );
params.add(new KeyItem("F_PAEZ_Base","车辆类型") );
params.add(new KeyItem("F_PAEZ_Base2","车辆系别") );
params.add(new KeyItem("F_PAEZ_Base3","车辆马力") );
params.add(new KeyItem("F_PAEZ_Base4","车辆驱动") );*/
params.add(new KeyItem("F_PAEZ_Base4","车辆驱动") );
return params;
}

44
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/CNBankcntCastToKingDeeBillFields.java

@ -0,0 +1,44 @@
package com.yxt.anrui.fin.biz.kingdee.cnbankcnt;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
/**
* 封装转换的类
*/
public class CNBankcntCastToKingDeeBillFields {
private static Logger log=LoggerFactory.getLogger(CNBankcntCastToKingDeeBillFields.class);
/**
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @return
*/
public static String getKingDeeData(Map<String,String> map_fEntityModel_ ){
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data_model.json");
log.info("readJsonFile:{}",readJsonFile);
log.info("fEntityData_:{}",fEntityData_);
log.info("fEntityModel_:{}",fEntityModel_);
//模板字符创转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);
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
}

81
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/CNBankcntService.java

@ -0,0 +1,81 @@
package com.yxt.anrui.fin.biz.kingdee.cnbankcnt;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bank.BDBank;
import com.yxt.anrui.fin.api.kingdee.cnbankcnt.CNBankacnt;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class CNBankcntService extends FinKingDeeService {
/**
* 保存银行账号信息 list
* @param cNBankacnts
* @return
*/
public ResultBean<List<KingDeeResult>> draftCNBankcntList(List<CNBankacnt> cNBankacnts) {
List<KingDeeResult> list=new ArrayList<>();
ResultBean rb=ResultBean.fireFail();
for(CNBankacnt b:cNBankacnts) {
ResultBean<List<KingDeeResult>> resultBean = draftCNBankcnt(b);
if (resultBean.getSuccess()) {
list.add(resultBean.getData().get(0));
}
}
return rb.success().setData(list);
}
/**
* 保存银行账号信息
* @param cNBankcnt
* @return
*/
public ResultBean draftCNBankcnt(CNBankacnt cNBankcnt) {
//bdCustomer=BdCustomer.createBdCustomer();
ResultBean rb=ResultBean.fireFail();
try {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(cNBankcnt);
//准备 物料列表的数据 ForEntryBill
String kingDeeData = CNBankcntCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<String> resultBean = accessKingDeeInterface(
KingDeeBillId.CN_BANKACNT.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
String submitKD = getSubmitKD(resultBean.getData(),KingDeeBillId.CN_BANKACNT.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.CN_BANKACNT.getID(), submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("银行账号提交失败!");
return rb.setMsg("银行账号提交失败!");
}
log.info("银行账号提交成功!");
String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.CN_BANKACNT.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.CN_BANKACNT.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("银行账号审核失败!");
return rb.setMsg("银行账号审核失败!");
}
log.info("银行账号审核成功!");
/*String allocate = getAllocate(resultBean.getData(),cNBankcnt.getTOrgIds(),KingDeeBillId.BD_MATERIAL.getID());
ResultBean<String> resultBean3 =accessKingDeeInterface(
KingDeeBillId.CN_BANKACNT.getID(), allocate,
KingDeeBillUrl.ALLOCATE_URL.getURL());// allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), allocate);
if(!resultBean3.getSuccess()){
log.info("银行账号分配失败!");
return rb.setMsg("银行账号分配失败!");
}
log.info("银行账号分配成功!");*/
return resultBean;
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data.json

@ -0,0 +1,4 @@
{
"formId": "CN_BANKACNT",
"data": "@KD_data"
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data_data.json

@ -0,0 +1,13 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {}
}

20
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/data_model.json

@ -0,0 +1,20 @@
{
"FBANKACNTID": 0,
"FCreateOrgId": {
"FNumber": "@KD_FCreateOrgId"
},
"FNumber": "@KD_FNumber",
"FBANKID": {
"FNumber": "@KD_FBANKID"
},
"FName": "@KD_FName",
"FUseOrgId": {
"FNumber": "@KD_FUseOrgId"
},
"FIsCancel": false,
"FIsFundUp": false,
"FISDEFAULTBANK": false,
"FIsSupBank": false,
"FUpType": "1",
"FIsSupBBC": false
}

75
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/remarks.txt

@ -0,0 +1,75 @@
一、请求参数说明:
1.formid:业务对象表单Id,字符串类型(必录)
2.data:Json格式数据(详情参考Json格式数据)(必录)
2.1.Creator:创建者内码(非必录)
2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key)
2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key)
2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录)
2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
2.11.Model:表单数据包,Json类型(必录)
二、Json格式数据:
{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FBANKACNTID\":\"0\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FNumber\":\"\",\"FBANKID\":{\"FNumber\":\"\"},\"FName\":\"\",\"FInOrOut\":\"\",\"FACNTBRANCHNUMBER\":\"\",\"FBankType\":{\"FNAME\":\"\"},\"FProvince\":{\"FNAME\":\"\"},\"FCity\":{\"FNAME\":\"\"},\"FDistrict\":{\"FNAME\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FACNTAREACODE\":\"\",\"FACNTAREANAME\":\"\",\"FIsCancel\":\"false\",\"FIsFundUp\":\"false\",\"FISDEFAULTBANK\":\"false\",\"FIsSupBank\":\"false\",\"FINNERACCOUNTID\":{\"FNUMBER\":\"\"},\"FDescription\":\"\",\"FSRCBILLID\":\"0\",\"FUpType\":\"\",\"FUpAmount\":\"0\",\"FBaseAmount\":\"0\",\"FMinUpAmount\":\"0\",\"FACCOUNTTYPE\":\"\",\"FLICENSEKEY\":\"\",\"FPUBLICACNT\":{\"FNUMBER\":\"\"},\"FBankServiceLoginId\":\"\",\"FBankServiceLoginDesc\":\"\",\"FIsSupBBC\":\"false\"}}
三、返回参数:
{\"Result\":{\"ResponseStatus\":{\"ErrorCode\":\"\",\"IsSuccess\":\"false\",\"Errors\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}],\"SuccessEntitys\":[{\"Id\":\"\",\"Number\":\"\",\"DIndex\":0}],\"SuccessMessages\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}]},\"Id\":\"\",\"NeedReturnData\":[{}]}}
四、代码示例:
// 使用webapi引用组件Kingdee.BOS.WebApi.Client.dll
K3CloudApiClient client = new K3CloudApiClient("http://121.36.43.55/k3cloud/");
var ret = client.ValidateLogin("61dce6601125a0","Administrator","888888",2052);
var result = JObject.Parse(ret)["LoginResultType"].Value<int>();
// 登陆成功
if (result == 1)
{
client.Draft("CN_BANKACNT","{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FBANKACNTID\":\"0\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FNumber\":\"\",\"FBANKID\":{\"FNumber\":\"\"},\"FName\":\"\",\"FInOrOut\":\"\",\"FACNTBRANCHNUMBER\":\"\",\"FBankType\":{\"FNAME\":\"\"},\"FProvince\":{\"FNAME\":\"\"},\"FCity\":{\"FNAME\":\"\"},\"FDistrict\":{\"FNAME\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FACNTAREACODE\":\"\",\"FACNTAREANAME\":\"\",\"FIsCancel\":\"false\",\"FIsFundUp\":\"false\",\"FISDEFAULTBANK\":\"false\",\"FIsSupBank\":\"false\",\"FINNERACCOUNTID\":{\"FNUMBER\":\"\"},\"FDescription\":\"\",\"FSRCBILLID\":\"0\",\"FUpType\":\"\",\"FUpAmount\":\"0\",\"FBaseAmount\":\"0\",\"FMinUpAmount\":\"0\",\"FACCOUNTTYPE\":\"\",\"FLICENSEKEY\":\"\",\"FPUBLICACNT\":{\"FNUMBER\":\"\"},\"FBankServiceLoginId\":\"\",\"FBankServiceLoginDesc\":\"\",\"FIsSupBBC\":\"false\"}}");
}
五、字段说明:
资金上划:FIsFundUp
内部账户:FINNERACCOUNTID
上划方式:FUpType (必填项)
留底余额:FBaseAmount
上划定额:FUpAmount
省:FProvince
城市:FCity
地区:FDistrict
源单内码:FSRCBILLID
账户收支属性:FInOrOut (必填项)
最小上划金额:FMinUpAmount
登录配置编号:FBankServiceLoginId
对公账号:FPUBLICACNT
银行版本:FBankServiceLoginDesc
支持BBC分销门户显示:FIsSupBBC
币别:FCURRENCYID
支持网银:FIsSupBank
是否销户:FIsCancel
默认账号:FISDEFAULTBANK
授权密码:FLICENSEKEY
账号类型:FACCOUNTTYPE (必填项)
使用组织:FUseOrgId (必填项)
创建组织:FCreateOrgId (必填项)
创建人:FCreatorId
创建日期:FCreateDate
修改人:FModifierId
禁用状态:FForbidStatus
数据状态:FDocumentStatus
账户名称:FName (必填项)
备注:FDescription
银行账号:FNumber (必填项)
修改日期:FModifyDate
禁用日期:FForbidDate
审核人:FApproverId
禁用人:FForbidderID
银行:FBankType
银行地址:FBANKADDRESS
账户地区码:FACNTAREACODE
开户银行联行号:FACNTBRANCHNUMBER
账户地区名:FACNTAREANAME
审核日期:FApproveDate
开户银行:FBANKID (必填项)

1
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/webapi测试的数据.txt

@ -0,0 +1 @@
{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FBANKACNTID\":0,\"FCreateOrgId\":{\"FNumber\":\"101\"},\"FNumber\":\"11122222\",\"FBANKID\":{\"FNumber\":\"0001\"},\"FName\":\"222211111\",\"FUseOrgId\":{\"FNumber\":\"101\"},\"FIsCancel\":false,\"FIsFundUp\":false,\"FISDEFAULTBANK\":false,\"FIsSupBank\":false,\"FUpType\":\"1\",\"FIsSupBBC\":false}}

BIN
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/cnbankcnt/银行的参数必填备注.xlsx

Binary file not shown.

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java

@ -98,9 +98,9 @@ public class STKInStockService extends FinKingDeeService {
BdMaterial bdMaterial=new BdMaterial();
bdMaterial.setFName(f.getFMaterialId());
bdMaterial.setF_PAEZ_BaseKey(f.getCllx());
bdMaterial.setF_PAEZ_BaseType(f.getCllx());
bdMaterial.setF_PAEZ_BaseType(f.getCllxType());
bdMaterial.setFMaterialGroupKey(f.getWlfz());
bdMaterial.setFMaterialGroupType(f.getWlfz());
bdMaterial.setFMaterialGroupType(f.getWlfzType());
bdMaterial.setTOrgIds(stkInStock.getTOrgId());
List<BdMaterial> list=new ArrayList<>();
list.add(bdMaterial);

80
anrui-timertask/src/main/java/com/yxt/anrui/timertask/feign/entity/BdMaterial.java

@ -0,0 +1,80 @@
package com.yxt.anrui.timertask.feign.entity;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
* 物料
*/
@Data
public class BdMaterial {
/**
* 目标组织:TOrgId
*/
@JsonProperty("TOrgIds")
private String TOrgIds;
/**
*创建组织:FCreateOrgId (必填项)
*/
// @JsonProperty("FCreateOrgId")
// private String FCreateOrgId;
/**
*使用组织:FUseOrgId (必填项)
*/
// @JsonProperty("FUseOrgId")
// private String FUseOrgId;
/**
*名称:FName (必填项)
*/
@JsonProperty("FName")
private String FName;
/**
*物料分组:FMaterialGroup (必填项)
*/
@JsonProperty("FMaterialGroup")
private String FMaterialGroup;
/**
*车辆类型:F_PAEZ_Base (必填项)
*/
@JsonProperty("F_PAEZ_Base")
private String F_PAEZ_Base;
/**
*存货类别:FCategoryID (必填项)
*/
/* @NotBlank(message = "存货类别:FCategoryID ")
@JsonProperty("FCategoryID")
private String FCategoryID="CHLB01_SYS";*/
private final static BdMaterial bdMaterial = new BdMaterial();
static {
/**
*物料分组:FMaterialGroup (必填项)
*/
// bdMaterial.setFMaterialGroup("01");
/**
*名称:FName (必填项)
*/
// bdMaterial.setFName("物料名称1911");
/**
*使用组织:FUseOrgId (必填项)
*/
// bdMaterial.setFUseOrgId("100");
/**
*创建组织:FCreateOrgId (必填项)
*/
// bdMaterial.setFCreateOrgId("100");
/**
* 目标组织:TOrgId
*/
// bdMaterial.setTOrgIds("101");
/**
* 车辆类型:F_PAEZ_Base (必填项)
*/
bdMaterial.setF_PAEZ_Base("02");
}
public static BdMaterial createBdMaterial() {
return bdMaterial;
}
}
Loading…
Cancel
Save