合同提交erp功能编写

This commit is contained in:
guojunyun
2025-10-14 09:37:28 +08:00
parent 8b584ab1af
commit f1b90a51ac
4 changed files with 215 additions and 50 deletions

View File

@@ -27,6 +27,7 @@ import com.zt.plat.module.contractorder.enums.ProcessConstants;
import com.zt.plat.module.contractorder.enums.TableFieldConstants; import com.zt.plat.module.contractorder.enums.TableFieldConstants;
import com.zt.plat.module.contractorder.enums.contract.DictEnum; import com.zt.plat.module.contractorder.enums.contract.DictEnum;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractPageReqVO; import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractPageReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractSaveReqVO;
import com.zt.plat.module.erp.dal.dataobject.erp.ErpContractDO; import com.zt.plat.module.erp.dal.dataobject.erp.ErpContractDO;
import com.zt.plat.module.erp.service.erp.ErpCompanyService; import com.zt.plat.module.erp.service.erp.ErpCompanyService;
import com.zt.plat.module.erp.service.erp.ErpContractService; import com.zt.plat.module.erp.service.erp.ErpContractService;
@@ -838,9 +839,9 @@ public class ContractServiceImpl implements ContractService {
if (contractMainDO != null) { if (contractMainDO != null) {
// 生成ERP合同映射表 // 生成ERP合同映射表
ErpContractDO erpContractDO = new ErpContractDO(); ErpContractSaveReqVO erpContractVO = new ErpContractSaveReqVO();
// 合同主信息表主键:BSE_CTRT_MAIN // 合同主信息表主键:BSE_CTRT_MAIN
erpContractDO.setContractMainId(id); erpContractVO.setContractMainId(id);
// 操作标识:OPTN_ID // 操作标识:OPTN_ID
// 1、先调用009ERP接口查询合同信息 // 1、先调用009ERP接口查询合同信息
ErpContractPageReqVO pageReqVO = new ErpContractPageReqVO(); ErpContractPageReqVO pageReqVO = new ErpContractPageReqVO();
@@ -863,111 +864,126 @@ public class ContractServiceImpl implements ContractService {
PageResult<ErpContractDO> erpContractPage = erpContractService.getErpContractPage(pageReqVO); PageResult<ErpContractDO> erpContractPage = erpContractService.getErpContractPage(pageReqVO);
if (erpContractPage.getTotal() > 0) { if (erpContractPage.getTotal() > 0) {
// 2、如果009接口返回值中“合同编号”字段存在值并且与传入的相同则OPTN_ID值为“1” // 2、如果009接口返回值中“合同编号”字段存在值并且与传入的相同则OPTN_ID值为“1”
erpContractDO.setOperationId("1"); erpContractVO.setOperationId("1");
} else { } else {
// 3、如果009接口返回值中“合同编号”字段不存在值根据合同主键查询映射表中是否存在没有删除的数据如果有值为“1”如果没有值为“0” // 3、如果009接口返回值中“合同编号”字段不存在值根据合同主键查询映射表中是否存在没有删除的数据如果有值为“1”如果没有值为“0”
/*ErpContractDO erpContract = erpContractService.getErpContractByMainId(id); ErpContractDO erpContract = erpContractService.getErpContractByMainId(id);
if (erpContract != null) { if (erpContract != null) {
erpContractDO.setOperationId("1"); erpContractVO.setOperationId("1");
} else { } else {
erpContractDO.setOperationId("0"); erpContractVO.setOperationId("0");
}*/ }
} }
// erpContractDO.setOperationId();
// 合同编号:CTRT_PPR_NUM // 合同编号:CTRT_PPR_NUM
erpContractDO.setContractPaperNumber(contractMainDO.getContractPaperNumber()); erpContractVO.setContractPaperNumber(contractMainDO.getContractPaperNumber());
// 合同名称:CTRT_NAME // 合同名称:CTRT_NAME
erpContractDO.setContractName(contractMainDO.getContractName()); erpContractVO.setContractName(contractMainDO.getContractName());
// 合同类型编号:CTRT_TP_NUM // 合同类型编号:CTRT_TP_NUM
erpContractDO.setContractTypeNumber(contractMainDO.getConstructionTypeNumber()); erpContractVO.setContractTypeNumber(contractMainDO.getConstructionTypeNumber());
// 合同类型名称:CTRT_TP_NAME // 合同类型名称:CTRT_TP_NAME
erpContractDO.setContractTypeName(contractMainDO.getConstructionTypeName()); erpContractVO.setContractTypeName(contractMainDO.getConstructionTypeName());
// 合同类别:CTRT_CTGR // 合同类别:CTRT_CTGR
erpContractDO.setContractCategory(contractMainDO.getCategory()); erpContractVO.setContractCategory(contractMainDO.getCategory());
// 是否虚拟合同:IS_VRTL_CTRT // 是否虚拟合同:IS_VRTL_CTRT
erpContractDO.setIsVirtualContract(contractMainDO.getContractVirtual()); erpContractVO.setIsVirtualContract(contractMainDO.getContractVirtual());
// 客商编号:SPLR_NUM 根据合同主表的收支方向判断如果为“支出”值为“ERP乙方公司编码”反之为“ERP甲方公司编码” // 客商编号:SPLR_NUM 根据合同主表的收支方向判断如果为“支出”值为“ERP乙方公司编码”反之为“ERP甲方公司编码”
// 客商名称:SPLR_NAME 根据合同主表的收支方向判断如果为“支出”值为“ERP乙方公司名称”反之为“ERP甲方公司名称” // 客商名称:SPLR_NAME 根据合同主表的收支方向判断如果为“支出”值为“ERP乙方公司名称”反之为“ERP甲方公司名称”
if (DictEnum.ERP_RCV_DLVY_EXPENSES.getCode().equals(contractMainDO.getDirection())) { if (DictEnum.ERP_RCV_DLVY_EXPENSES.getCode().equals(contractMainDO.getDirection())) {
erpContractDO.setSupplierNumber(contractMainDO.getSalesCompanyNumber()); erpContractVO.setSupplierNumber(contractMainDO.getSalesCompanyNumber());
erpContractDO.setSupplierName(contractMainDO.getSalesCompanyName()); erpContractVO.setSupplierName(contractMainDO.getSalesCompanyName());
} else if (DictEnum.ERP_RCV_DLVY_INCOME.getCode().equals(contractMainDO.getDirection())) { } else if (DictEnum.ERP_RCV_DLVY_INCOME.getCode().equals(contractMainDO.getDirection())) {
erpContractDO.setSupplierNumber(contractMainDO.getPurchaseCompanyNumber()); erpContractVO.setSupplierNumber(contractMainDO.getPurchaseCompanyNumber());
erpContractDO.setSupplierName(contractMainDO.getPurchaseCompanyName()); erpContractVO.setSupplierName(contractMainDO.getPurchaseCompanyName());
} }
// 代理方:AGT // 代理方:AGT
erpContractDO.setAgent(contractMainDO.getAgent()); erpContractVO.setAgent(contractMainDO.getAgent());
// 合同实施主体编号:CTRT_IMPL_NUM 根据合同主表的收支方向判断如果为“支出”值为“ERP甲方公司编码”反之为“ERP乙方公司编码” // 合同实施主体编号:CTRT_IMPL_NUM 根据合同主表的收支方向判断如果为“支出”值为“ERP甲方公司编码”反之为“ERP乙方公司编码”
// 合同签订主体编号:CTRT_SGN_NUM 根据合同主表的收支方向判断如果为“支出”值为“ERP甲方公司名称”反之为“ERP乙方公司名称” // 合同签订主体编号:CTRT_SGN_NUM 根据合同主表的收支方向判断如果为“支出”值为“ERP甲方公司名称”反之为“ERP乙方公司名称”
if (DictEnum.ERP_RCV_DLVY_EXPENSES.getCode().equals(contractMainDO.getDirection())) { if (DictEnum.ERP_RCV_DLVY_EXPENSES.getCode().equals(contractMainDO.getDirection())) {
erpContractDO.setContractImplementNumber(contractMainDO.getPurchaseCompanyNumber()); erpContractVO.setContractImplementNumber(contractMainDO.getPurchaseCompanyNumber());
erpContractDO.setContractSignNumber(contractMainDO.getPurchaseCompanyName()); erpContractVO.setContractSignNumber(contractMainDO.getPurchaseCompanyName());
} else if (DictEnum.ERP_RCV_DLVY_INCOME.getCode().equals(contractMainDO.getDirection())) { } else if (DictEnum.ERP_RCV_DLVY_INCOME.getCode().equals(contractMainDO.getDirection())) {
erpContractDO.setContractImplementNumber(contractMainDO.getSalesCompanyNumber()); erpContractVO.setContractImplementNumber(contractMainDO.getSalesCompanyNumber());
erpContractDO.setContractSignNumber(contractMainDO.getSalesCompanyName()); erpContractVO.setContractSignNumber(contractMainDO.getSalesCompanyName());
} }
// 合同签订日期:SGN_DT // 合同签订日期:SGN_DT
if (contractMainDO.getSignDate() != null) { if (contractMainDO.getSignDate() != null) {
erpContractDO.setSignDate(contractMainDO.getSignDate().toLocalDate()); erpContractVO.setSignDate(contractMainDO.getSignDate().toLocalDate());
} }
// 合同起始日期:STRT_DT // 合同起始日期:STRT_DT
if (contractMainDO.getStartDate() != null) { if (contractMainDO.getStartDate() != null) {
erpContractDO.setStartDate(contractMainDO.getStartDate().toLocalDate()); erpContractVO.setStartDate(contractMainDO.getStartDate().toLocalDate());
} }
// 合同终止日期:STOP_DT // 合同终止日期:STOP_DT
if (contractMainDO.getEndDate() != null) { if (contractMainDO.getEndDate() != null) {
erpContractDO.setStopDate(contractMainDO.getEndDate().toLocalDate()); erpContractVO.setStopDate(contractMainDO.getEndDate().toLocalDate());
} }
// 币种编号:CUR // 币种编号:CUR
erpContractDO.setCurrency(contractMainDO.getCurrency()); erpContractVO.setCurrency(contractMainDO.getCurrency());
// 合同总金额(原币-含税):SRC_AMT // 合同总金额(原币-含税):SRC_AMT
erpContractDO.setSourceAmount(contractMainDO.getCooAmount()); erpContractVO.setSourceAmount(contractMainDO.getCooAmount());
// 合同总金额(本位币-含税):BSC_AMT // 合同总金额(本位币-含税):BSC_AMT
erpContractDO.setBasicAmount(contractMainDO.getBasicAmount()); erpContractVO.setBasicAmount(contractMainDO.getBasicAmount());
// 变更后合同总金额(原币-含税):CHG_SRC_AMT // 变更后合同总金额(原币-含税):CHG_SRC_AMT
erpContractDO.setChangeSourceAmount(contractMainDO.getChangeCooAmount()); erpContractVO.setChangeSourceAmount(contractMainDO.getChangeCooAmount());
// 变更后合同总金额(本位币-含税):CHG_BSC_AMT // 变更后合同总金额(本位币-含税):CHG_BSC_AMT
erpContractDO.setChangeBasicAmount(contractMainDO.getChangeBasicAmount()); erpContractVO.setChangeBasicAmount(contractMainDO.getChangeBasicAmount());
// 合同状态编号:STS_NUM 参照060接口 // 合同状态编号:STS_NUM 参照060接口
erpContractDO.setStatusNumber(DictEnum.SUBMIT_ERP_CTRT_STS_EF.getCode()); erpContractVO.setStatusNumber(DictEnum.SUBMIT_ERP_CTRT_STS_EF.getCode());
// 合同状态名称:STS_NAME 参照060接口 // 合同状态名称:STS_NAME 参照060接口
erpContractDO.setStatusName(DictEnum.SUBMIT_ERP_CTRT_STS_EF.getLabel()); erpContractVO.setStatusName(DictEnum.SUBMIT_ERP_CTRT_STS_EF.getLabel());
// 是否有预付款:IS_PPYM // 是否有预付款:IS_PPYM
erpContractDO.setIsPrepayment(contractMainDO.getHasPrepayment()); erpContractVO.setIsPrepayment(contractMainDO.getHasPrepayment());
// 预付款比例:PPYM_RTIO // 预付款比例:PPYM_RTIO
erpContractDO.setPrepaymentRatio(contractMainDO.getPrepaymentRatio()); erpContractVO.setPrepaymentRatio(contractMainDO.getPrepaymentRatio());
// 预付款金额:PPYM_AMT // 预付款金额:PPYM_AMT
erpContractDO.setPrepaymentAmount(contractMainDO.getPrepaymentAmount()); erpContractVO.setPrepaymentAmount(contractMainDO.getPrepaymentAmount());
// 履约保证金-变更前(原币):SRC_BFR_BND // 履约保证金-变更前(原币):SRC_BFR_BND
erpContractDO.setSourceBeforeBond(contractMainDO.getChangeCooAmountDeposit()); erpContractVO.setSourceBeforeBond(contractMainDO.getChangeCooAmountDeposit());
// 履约保证金-变更前(本位币):BSC_BFR_BND // 履约保证金-变更前(本位币):BSC_BFR_BND
erpContractDO.setBasicBeforeBond(contractMainDO.getChangeBasicAmountDeposit()); erpContractVO.setBasicBeforeBond(contractMainDO.getChangeBasicAmountDeposit());
// 履约保证金-变更后(原币):SRC_AFT_BND // 履约保证金-变更后(原币):SRC_AFT_BND
erpContractDO.setSourceAfterBond(contractMainDO.getChangeCooAmountDeposit()); erpContractVO.setSourceAfterBond(contractMainDO.getChangeCooAmountDeposit());
// 履约保证金-变更后(本位币):BSC_AFT_BND // 履约保证金-变更后(本位币):BSC_AFT_BND
erpContractDO.setBasicAfterBond(contractMainDO.getChangeBasicAmountDeposit()); erpContractVO.setBasicAfterBond(contractMainDO.getChangeBasicAmountDeposit());
// 是否含质保金:IS_QUA_AMT // 是否含质保金:IS_QUA_AMT
erpContractDO.setIsQualityassuranceAmount(contractMainDO.getHasQualityAmount()); erpContractVO.setIsQualityassuranceAmount(contractMainDO.getHasQualityAmount());
// 质保金比例:QUA_RTIO // 质保金比例:QUA_RTIO
erpContractDO.setQualityassuranceRatio(contractMainDO.getQualityRatio()); erpContractVO.setQualityassuranceRatio(contractMainDO.getQualityRatio());
// 质保金金额:QUA_AMT // 质保金金额:QUA_AMT
erpContractDO.setQualityassuranceAmount(contractMainDO.getQualityAmount()); erpContractVO.setQualityassuranceAmount(contractMainDO.getQualityAmount());
// 是否内部企业:IS_INTL // 是否内部企业:IS_INTL
erpContractDO.setIsInternal(contractMainDO.getIsInternal()); erpContractVO.setIsInternal(contractMainDO.getIsInternal());
// 收支性质:NTR // 收支性质:NTR
erpContractDO.setNature(contractMainDO.getDirection()); erpContractVO.setNature(contractMainDO.getDirection());
// 备注信息:RMK // 备注信息:RMK
erpContractDO.setRemark(contractMainDO.getRemark()); erpContractVO.setRemark(contractMainDO.getRemark());
// 是否框架合同:IS_FMWK // 是否框架合同:IS_FMWK
erpContractDO.setIsFramework(contractMainDO.getIsFramework()); erpContractVO.setIsFramework(contractMainDO.getIsFramework());
// 境内/境外:IS_DOM // 境内/境外:IS_DOM
erpContractDO.setIsDomestic(contractMainDO.getIsDomestic()); erpContractVO.setIsDomestic(contractMainDO.getIsDomestic());
// 达到收款条件金额:PYEE_CND_AMT // 达到收款条件金额:PYEE_CND_AMT
erpContractDO.setPayeeConditionAmount(contractMainDO.getPayeeConditionAmount()); erpContractVO.setPayeeConditionAmount(contractMainDO.getPayeeConditionAmount());
// 建筑服务发生地:ARCH_SVC_PLCE // 建筑服务发生地:ARCH_SVC_PLCE
erpContractDO.setArchitectureServicePlace(contractMainDO.getArchitectureServicePlace()); erpContractVO.setArchitectureServicePlace(contractMainDO.getArchitectureServicePlace());
// 公司编号
erpContractVO.setCompanyId(contractMainDO.getCompanyId());
// 公司名称
erpContractVO.setCompanyName(contractMainDO.getCompanyName());
// 部门编号
erpContractVO.setDeptId(contractMainDO.getDeptId());
// 部门名称
erpContractVO.setDeptName(contractMainDO.getDeptName());
// 岗位编号
erpContractVO.setPostId(contractMainDO.getPostId());
// 创建者
erpContractVO.setCreatorName(contractMainDO.getCreatorName());
// 更新者
erpContractVO.setUpdaterName(contractMainDO.getUpdaterName());
// 调用ERP模块 // 调用ERP模块
erpContractService.submitErp(erpContractVO);
} }
}); });
} }

View File

@@ -199,4 +199,24 @@ public class ErpContractSaveReqVO {
@Schema(description = "达到收款条件金额;销售合同且类型为SAP02COSR必填") @Schema(description = "达到收款条件金额;销售合同且类型为SAP02COSR必填")
private BigDecimal payeeConditionAmount; private BigDecimal payeeConditionAmount;
@Schema(description = "公司编号")
private Long companyId;
@Schema(description = "公司名称")
private String companyName;
@Schema(description = "部门编号")
private Long deptId;
@Schema(description = "部门名称")
private String deptName;
@Schema(description = "岗位编号")
private Long postId;
@Schema(description = "创建者")
private String creatorName;
@Schema(description = "更新者")
private String updaterName;
} }

View File

@@ -70,4 +70,12 @@ public interface ErpContractService {
PageResult<ErpContractDO> getErpContractPage(ErpContractPageReqVO pageReqVO); PageResult<ErpContractDO> getErpContractPage(ErpContractPageReqVO pageReqVO);
void callErpRfcInterface(); void callErpRfcInterface();
/**
* 合同提交ERP
*
* @param erpContractVO ERP合同映射数据
* @return ERP合同映射
*/
String submitErp(ErpContractSaveReqVO erpContractVO);
} }

View File

@@ -6,6 +6,9 @@ import com.alibaba.fastjson.JSONObject;
import com.xxl.job.core.handler.annotation.XxlJob; import com.xxl.job.core.handler.annotation.XxlJob;
import com.zt.plat.framework.common.pojo.PageResult; import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.util.object.BeanUtils; import com.zt.plat.framework.common.util.object.BeanUtils;
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
import com.zt.plat.module.erp.api.ErpExternalApi;
import com.zt.plat.module.erp.api.dto.ErpSubmitReqDTO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractPageReqVO; import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractPageReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractRespVO; import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractRespVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractSaveReqVO; import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractSaveReqVO;
@@ -46,6 +49,9 @@ public class ErpContractServiceImpl implements ErpContractService {
@Resource @Resource
private ErpConfig erpConfig; private ErpConfig erpConfig;
@Resource
public ErpExternalApi erpExternalApi;
@Override @Override
public ErpContractRespVO createErpContract(ErpContractSaveReqVO createReqVO) { public ErpContractRespVO createErpContract(ErpContractSaveReqVO createReqVO) {
// 插入 // 插入
@@ -226,6 +232,121 @@ public class ErpContractServiceImpl implements ErpContractService {
} }
} }
@Override
public String submitErp(ErpContractSaveReqVO erpContractVO) {
// 转换为DO
ErpContractDO erpContract = BeanUtils.toBean(erpContractVO, ErpContractDO.class);
// 根据合同主信息ID查询合同映射
ErpContractDO erpContractDO = getErpContractByMainId(erpContract.getContractMainId());
if (erpContractDO == null) {
// 不存在映射表则新增
erpContractMapper.insert(erpContract);
} else {
// 存在映射表则更新
erpContract.setId(erpContractDO.getId());
erpContractMapper.updateById(erpContract);
}
// 构建ERP接口的参数
ErpSubmitReqDTO erpSubmitReqDTO = new ErpSubmitReqDTO();
erpSubmitReqDTO.setFuncnr("060");
erpSubmitReqDTO.setBskey(erpContract.getContractPaperNumber());
erpSubmitReqDTO.setUsrid(SecurityFrameworkUtils.getLoginUserId().toString());
erpSubmitReqDTO.setUsrnm(SecurityFrameworkUtils.getLoginUserNickname());
Map<String, Object> head = new HashMap<>();
// CZBS 操作标识 枚举值0新增 1修改
head.put("CZBS", erpContract.getOperationId());
// HTBH 合同编号
head.put("HTBH", erpContract.getContractPaperNumber());
// HTMC 合同名称
head.put("HTMC", erpContract.getContractName());
// HTLXBH 合同类型编号
head.put("HTLXBH", erpContract.getContractTypeNumber());
// HTLXMC 合同类型名称
head.put("HTLXMC", erpContract.getContractTypeName());
// HTLB 合同类别 枚举值1购销合同
head.put("HTLB", erpContract.getContractCategory());
// SFXNHT 是否虚拟合同 枚举值 0否 1
head.put("SFXNHT", erpContract.getIsVirtualContract());
// WLDWBH 客户/供应商编号 如果合同类型是收入类的,传客户编号和客户名称;
head.put("WLDWBH", erpContract.getSupplierNumber());
// WLDWMC 客户/供应商名称 如果合同类型是支出类的,传供应商编号和供应商名称;
head.put("WLDWMC", erpContract.getSupplierName());
// ZLIFNR 代理方
head.put("ZLIFNR", erpContract.getAgent());
// HTSSZTBH 合同实施主体编号 SAP公司代码
head.put("HTSSZTBH", erpContract.getContractImplementNumber());
// HTQDZTBH 合同签订主体编号 SAP公司代码
head.put("HTQDZTBH", erpContract.getContractSignNumber());
// HTQDRQ 合同签订日期 格式YYYY-MM-DD
head.put("HTQDRQ", erpContract.getSignDate());
// HTQSRQ 合同起始日期 格式YYYY-MM-DD
head.put("HTQSRQ", erpContract.getStartDate());
// HTZZRQ 合同终止日期 格式YYYY-MM-DD
head.put("HTZZRQ", erpContract.getStopDate());
// BZBH 币种编号 CNY、USD…
head.put("BZBH", erpContract.getCurrency());
// HTYBZJE 合同总金额(原币-含税)
head.put("HTYBZJE", erpContract.getSourceAmount());
// HTBWBZJE 合同总金额(本位币-含税)
head.put("HTBWBZJE", erpContract.getBasicAmount());
// BGHHTYBZJE 变更后合同总金额(原币-含税) 如果未做合同变更,金额等于合同总金额(原币-含税)
head.put("BGHHTYBZJE", erpContract.getChangeSourceAmount());
// BGHHTBWBZJE 变更后合同总金额(本位币-含税) 如果未做合同变更,金额等于合同总金额(本位币-含税)
head.put("BGHHTBWBZJE", erpContract.getChangeBasicAmount());
// HTZTBH 合同状态编号
head.put("HTZTBH", erpContract.getStatusNumber());
// HTZTMC 合同状态名称
head.put("HTZTMC", erpContract.getStatusName());
// SFYYFK 是否有预付款 枚举值 0否 1
head.put("SFYYFK", erpContract.getIsPrepayment());
// YFKBL 预付款比例 如果是否有预付款为1则必填
head.put("YFKBL", erpContract.getPrepaymentRatio());
// YFKJE 预付款金额
head.put("YFKJE", erpContract.getPrepaymentAmount());
// LYBZJBGQYB 履约保证金-变更前(原币)
head.put("LYBZJBGQYB", erpContract.getSourceBeforeBond());
// LYBZJBGQBWB 履约保证金-变更前(本位币)
head.put("LYBZJBGQBWB", erpContract.getBasicBeforeBond());
// LYBZJBGHYB 履约保证金-变更后(原币)
head.put("LYBZJBGHYB", erpContract.getSourceAfterBond());
// LYBZJBGHBWB 履约保证金-变更后(本位币)
head.put("LYBZJBGHBWB", erpContract.getBasicAfterBond());
// SFHZBJ 是否含质保金 枚举值 0否 1
head.put("SFHZBJ", erpContract.getIsQualityassuranceAmount());
// ZBJBL 质保金比例 如果是否含质保金为1则必填
head.put("ZBJBL", erpContract.getQualityassuranceRatio());
// BZJJE 质保金金额
head.put("BZJJE", erpContract.getQualityassuranceAmount());
// SFNBQY 是否内部企业 枚举值 0否 1
head.put("SFNBQY", erpContract.getIsInternal());
// SZXZ 收支性质 枚举值 1收入 2支出
head.put("SZXZ", erpContract.getNature());
// BZXX 备注信息
head.put("BZXX", erpContract.getRemark());
// SFKJHT 是否框架合同 01当等于1时合同总金额本币、合同总金额原币、变更后合同总金额原币-含税)、变更后合同总金额(本位币-含税赋默认值为1000000000000000.00
head.put("SFKJHT", erpContract.getIsFramework());
// JNJW 境内/境外 枚举值 0境内 1境外
head.put("JNJW", erpContract.getIsDomestic());
// JZFWFSD 建筑服务发生地
head.put("JZFWFSD", erpContract.getArchitectureServicePlace());
// DDSKJE 达到收款条件金额
head.put("DDSKJE", erpContract.getPayeeConditionAmount());
Map<String, Object> req = new HashMap<>();
req.put("head", head);
erpSubmitReqDTO.setReq(req);
HashMap<String, String> response = erpExternalApi.submitDataToErp(erpSubmitReqDTO);
System.out.println(response.get("resStr"));
return "";
}
/** /**
* 处理数据,区分新增和更新 * 处理数据,区分新增和更新
*/ */