|
|
@ -1,12 +1,18 @@ |
|
|
|
package com.yxt.anrui.fin.biz.kingdee.appaybill; |
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId; |
|
|
|
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl; |
|
|
|
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill; |
|
|
|
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial; |
|
|
|
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService; |
|
|
|
import com.yxt.anrui.portal.api.sysmapping.SysMappingInfoQuery; |
|
|
|
import com.yxt.anrui.portal.api.sysmapping.SysMappingInfoQueryBatch; |
|
|
|
import com.yxt.anrui.portal.api.sysmapping.SysMappingInfoVo; |
|
|
|
import com.yxt.common.core.result.ResultBean; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
@ -25,26 +31,55 @@ public class ApPayBillService extends FinKingDeeService { |
|
|
|
//业务表的主表数据集合
|
|
|
|
Map<String,String> map_fEntityModel_= object2Map(apPayBill);//createMapParams(stringObjectMap);
|
|
|
|
//应付类别
|
|
|
|
String F_PAEZ_AssistantCode = map_fEntityModel_.get("F_PAEZ_AssistantType"); |
|
|
|
String F_PAEZ_AssistantType = map_fEntityModel_.get("F_PAEZ_AssistantType"); |
|
|
|
String F_PAEZ_AssistantKey = map_fEntityModel_.get("F_PAEZ_AssistantKey"); |
|
|
|
String F_PAEZ_Assistant="";//TODO 根据应付类别的code,key查询金蝶系统中的应付类别的编码 映射来源“CWXT”/“财务系统”
|
|
|
|
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); |
|
|
|
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); |
|
|
|
|
|
|
|
//准备 物料列表的数据 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 FPURPOSEIDCode = params.get("FPURPOSEIDType"); |
|
|
|
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); |
|
|
|
if(! sysMappingInfoVoResultBean.getSuccess()){ |
|
|
|
return rb.setMsg(sysMappingInfoVoResultBean.getMsg()); |
|
|
|
} |
|
|
|
String FPURPOSEID=sysMappingInfoVoResultBean.getData().getMap_itemKey();//TODO 根据付款用途的code,key查询金蝶系统中的付款用途的编码 映射来源“CWXT”/“财务系统”
|
|
|
|
params.put("FPURPOSEID",FPURPOSEID); |
|
|
|
//结算方式
|
|
|
|
String FSETTLETYPEIDCode = params.get("FSETTLETYPEIDType"); |
|
|
|
String FSETTLETYPEIDType = params.get("FSETTLETYPEIDType"); |
|
|
|
String FSETTLETYPEIDKey = params.get("FSETTLETYPEIDKey"); |
|
|
|
|
|
|
|
String FPURPOSEID="";//TODO 根据付款用途的code,key查询金蝶系统中的付款用途的编码 映射来源“CWXT”/“财务系统”
|
|
|
|
params.put("FPURPOSEID",FPURPOSEID); |
|
|
|
String FSETTLETYPEID="";//TODO 根据结算方式的code,key查询金蝶系统中的结算方式的编码 映射来源“CWXT”/“财务系统”
|
|
|
|
smiq=new SysMappingInfoQuery(); |
|
|
|
smiq.setMap_sourceKey("CWXT"); |
|
|
|
smiq.setMap_object("付款单"); |
|
|
|
smiq.setMap_item("结算方式"); |
|
|
|
smiq.setDictKey(FSETTLETYPEIDKey); |
|
|
|
smiq.setDictTypeCode(FSETTLETYPEIDType); |
|
|
|
sysMappingInfoVoResultBean = sysMappingFeign.selectMappingInfo(smiq); |
|
|
|
if(!sysMappingInfoVoResultBean.getSuccess()){ |
|
|
|
return rb.setMsg(sysMappingInfoVoResultBean.getMsg()); |
|
|
|
} |
|
|
|
String FSETTLETYPEID=sysMappingInfoVoResultBean.getData().getMap_itemKey();//TODO 根据结算方式的code,key查询金蝶系统中的结算方式的编码 映射来源“CWXT”/“财务系统”
|
|
|
|
params.put("FSETTLETYPEID",FSETTLETYPEID); |
|
|
|
} |
|
|
|
String kingDeeData = ApPayBillCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap); |
|
|
|