feat: 合同列表客商风险行组装甲乙双方明细文案供悬浮展示

This commit is contained in:
刘泉佳
2026-10-30 21:37:29 +08:00
parent 23c9c3c533
commit 7810ab4cdb
2 changed files with 14 additions and 0 deletions
@@ -91,4 +91,8 @@ public class ContractManageVO extends ContractManage {
@Schema(description = "客商黑名单状态(甲乙双方关联客商档案实时组装,任一方金蝶黑名单命中记是):yes/no")
private String kingdeeBlackStatus;
@TableField(exist = false)
@Schema(description = "客商风险明细文案(甲乙双方风险信息合并,列表悬浮展示,与客商列表/表单实时提示同口径)")
private String hcsRiskDetail;
}
@@ -70,6 +70,7 @@ import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* 合同管理 服务实现类
@@ -160,6 +161,15 @@ public class ContractManageServiceImpl extends BaseServiceImpl<ContractManageMap
contract.setKingdeeBlackStatus(
HcsCreditCheckSupport.isKingdeeBlackHit(partyARisk) || HcsCreditCheckSupport.isKingdeeBlackHit(partyBRisk)
? HcsSyncConstant.BLACK_STATUS_YES : HcsSyncConstant.BLACK_STATUS_NO);
// 悬浮明细与客商列表/表单实时提示同口径(buildRiskDetail 统一组装),有风险信息的甲乙方段拼接展示
String partyADetail = partyARisk == null ? ""
: HcsCreditCheckSupport.buildRiskDetail(contract.getPartyA().trim(), partyARisk.getHcsRiskLevel(),
partyARisk.getKingdeeBlackCategory(), partyARisk.getKingdeeBlackReason());
String partyBDetail = partyBRisk == null ? ""
: HcsCreditCheckSupport.buildRiskDetail(contract.getPartyB().trim(), partyBRisk.getHcsRiskLevel(),
partyBRisk.getKingdeeBlackCategory(), partyBRisk.getKingdeeBlackReason());
contract.setHcsRiskDetail(Stream.of(partyADetail, partyBDetail)
.filter(Func::isNotEmpty).collect(Collectors.joining(";")));
}
}