feat: HCS一期范围调整,C103-9/C106-1/C108-1/2暂不对接改为配置开关默认关(exe-stage/credit/perf-record)

This commit is contained in:
刘泉佳
2026-10-09 12:00:23 +08:00
parent 03c874d4cd
commit 8c42bbb5c9
4 changed files with 28 additions and 4 deletions
@@ -130,7 +130,10 @@ public class HcsContractSyncSupport {
markSynced(contractManage, contractManage.getHcsFdId(), "C103-11 合同更新成功");
resultMessage = "C103-11 合同更新成功";
}
// ⑤ 履约规则 C103-9 行级同步(随合同链路,§5.3;失败抛出由任务落 failed,下轮凭 hcs_fd_id 走更新补偿)
// ⑤ 履约规则 C103-9 行级同步(随合同链路,§5.3;一期暂不对接默认关,打开后失败抛出由任务落 failed,下轮凭 hcs_fd_id 走更新补偿)
if (!hcsProperties.getExeStage().isSyncEnabled()) {
return resultMessage;
}
String exeStageResult = hcsExeStageSyncSupport.syncExeStages(contractManage);
return resultMessage + ";" + exeStageResult;
}
@@ -90,7 +90,10 @@ public class HcsCreditCheckSupport {
if (hcsProperties.getRisk().isCheckOnPayment()) {
checkRelativeRisk(payment);
}
// ② 额度校验(超额不拦截,转特批)
// ② 额度校验(超额不拦截,转特批);一期暂不对接默认关,关闭后特批无自动触发
if (!hcsProperties.getCredit().isCheckEnabled()) {
return;
}
checkCredit(payment);
}
@@ -29,6 +29,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.tool.utils.StringUtil;
import org.springblade.hcs.config.HcsProperties;
import org.springblade.transport.constant.HcsSyncConstant;
import org.springblade.transport.mapper.PaymentApplicationMapper;
import org.springblade.transport.pojo.entity.PaymentApplication;
@@ -56,6 +57,7 @@ public class HcsPaymentSyncSupport {
private static final List<String> APPROVED_STATUSES = List.of("approved");
private final PaymentApplicationMapper paymentApplicationMapper;
private final HcsProperties hcsProperties;
private final HcsSpecPaySyncSupport hcsSpecPaySyncSupport;
private final HcsPerfRecordSyncSupport hcsPerfRecordSyncSupport;
@@ -67,11 +69,15 @@ public class HcsPaymentSyncSupport {
*/
public String pushPayment(PaymentApplication payment) {
StringBuilder result = new StringBuilder();
// ① 结算付款特批:提交时额度超额(hcs_spec_status=need)且未发起时发起 C106-3
// ① 结算付款特批:提交时额度超额(hcs_spec_status=need)且未发起时发起 C106-3(C106-1 暂不对接后无自动置 need,仅历史数据/人工场景可达)
if (HcsSyncConstant.SPEC_STATUS_NEED.equals(payment.getHcsSpecStatus())) {
result.append(hcsSpecPaySyncSupport.pushSpecPay(payment));
}
// ② 履约记录:审批通过新建 C108-1 / 实际付款推进更新 C108-2
// ② 履约记录:审批通过新建 C108-1 / 实际付款推进更新 C108-2(一期暂不对接默认关)
if (!hcsProperties.getPerfRecord().isSyncEnabled()) {
markSynced(payment, result.toString());
return result.toString();
}
if (result.length() > 0) {
result.append(";");
}
@@ -163,6 +163,10 @@ public class HcsProperties {
@Data
public static class ExeStage {
/**
* 履约规则同步开关(C103-9 行级同步,一期暂不对接,默认关)
*/
private boolean syncEnabled = false;
/**
* 履约规则金额类型默认值(fdFundType)
*/
@@ -187,6 +191,10 @@ public class HcsProperties {
@Data
public static class Credit {
/**
* 额度校验开关(C106-1,一期暂不对接,默认关;关闭后特批无自动触发)
*/
private boolean checkEnabled = false;
/**
* 付款提交校验是否要求合同已推送合规(hcs_fd_id 存在)
*/
@@ -239,6 +247,10 @@ public class HcsProperties {
@Data
public static class PerfRecord {
/**
* 履约记录同步开关(C108-1/2,一期暂不对接,默认关)
*/
private boolean syncEnabled = false;
/**
* 履约记录表单模板ID(fd_xform_id,环境相关值,§9-U9 待合规方提供)
*/