fix: 客商黑名单口径调整为仅金蝶黑名单命中(A801-5),C101-1黑名单状态不用于展示与筛选
This commit is contained in:
+2
-2
@@ -181,11 +181,11 @@
|
||||
<if test="customer.createTimeEnd != null">
|
||||
AND create_time <= #{customer.createTimeEnd}
|
||||
</if>
|
||||
<!-- 客商风险筛选:blacklist 按黑名单状态过滤;等级筛选与黑名单独立(黑名单客商也有等级,组合展示口径一致) -->
|
||||
<!-- 客商风险筛选:blacklist 仅按金蝶黑名单(A801-5)命中过滤;等级筛选独立 -->
|
||||
<if test="customer.customerRisk != null and customer.customerRisk != ''">
|
||||
<choose>
|
||||
<when test="customer.customerRisk == 'blacklist'">
|
||||
AND hcs_black_status = 'yes'
|
||||
AND (kingdee_black_category IS NOT NULL OR kingdee_black_reason IS NOT NULL)
|
||||
</when>
|
||||
<when test="customer.customerRisk == 'high'">
|
||||
AND hcs_risk_level = '2'
|
||||
|
||||
+1
-1
@@ -2158,7 +2158,7 @@ public class CustomerArchiveServiceImpl extends BaseServiceImpl<CustomerArchiveM
|
||||
for (CustomerArchiveVO record : records) {
|
||||
String customerName = Func.isEmpty(record.getFullName()) ? record.getCustomerCode() : record.getFullName();
|
||||
record.setHcsRiskDetail(HcsCreditCheckSupport.buildRiskDetail(customerName,
|
||||
"yes".equalsIgnoreCase(record.getHcsBlackStatus()), record.getHcsRiskLevel(),
|
||||
record.getHcsRiskLevel(),
|
||||
record.getKingdeeBlackCategory(), record.getKingdeeBlackReason()));
|
||||
}
|
||||
}
|
||||
|
||||
+8
-8
@@ -235,8 +235,8 @@ public class HcsCreditCheckSupport {
|
||||
: this.queryBlacklistByCodes(List.of(creditCode.trim().toUpperCase())).get(creditCode.trim().toUpperCase());
|
||||
String blackCategory = hit == null ? null
|
||||
: (Func.isEmpty(hit.getAwrpCombofieldTitle()) ? hit.getAwrpCombofield() : hit.getAwrpCombofieldTitle());
|
||||
riskVO.setRiskTip(buildRiskDetail(customerName, BLACK_STATUS_YES.equalsIgnoreCase(riskVO.getFdBlackStatus()),
|
||||
riskVO.getFdRiskLevel(), blackCategory, hit == null ? null : hit.getAwrpTextareafield()));
|
||||
riskVO.setRiskTip(buildRiskDetail(customerName, riskVO.getFdRiskLevel(),
|
||||
blackCategory, hit == null ? null : hit.getAwrpTextareafield()));
|
||||
try {
|
||||
hcsContractCheckLogMapper.insert(this.buildRiskCheckLog(customerCode, riskVO, fetch.traceId()));
|
||||
} catch (Exception exception) {
|
||||
@@ -361,21 +361,21 @@ public class HcsCreditCheckSupport {
|
||||
/**
|
||||
* 组装客商风险明细文案(后台统一组装、前端只展示;列表悬浮明细与表单实时提示共用本方法,口径一致),
|
||||
* 格式:【客商名称】:被列入外部黑名单(失信类别:xx);{列入事由};风险等级:xx,分段说明:
|
||||
* ① 黑名单段:合同系统黑名单(blackStatusYes)或金蝶黑名单命中(类别/事由任一非空)→「被列入外部黑名单」,
|
||||
* 失信类别(A801-5 awrp_combofield_title,缺失兜底 awrp_combofield)有值时括号展示区分禁止交易/风险警示类;
|
||||
* ① 黑名单段:**仅以金蝶黑名单(A801-5)命中为准**(失信类别/列入事由任一非空),
|
||||
* 失信类别(awrp_combofield_title,缺失兜底 awrp_combofield)有值时括号展示区分禁止交易/风险警示类;
|
||||
* 合同合规系统 C101-1 的黑名单状态(fdBlackStatus)不作为展示黑名单依据;
|
||||
* ② 列入事由:金蝶 A801-5 awrp_textareafield 真实明细,非空时追加;
|
||||
* ③ 等级段:C101-1 风险等级(risk_level 字典翻译,黑名单不转义、按实际等级展示),非空时追加
|
||||
* ③ 等级段:C101-1 风险等级(risk_level 字典翻译),非空时追加
|
||||
*
|
||||
* @param customerName 客商名称
|
||||
* @param blackStatusYes 合同系统黑名单状态(C101-1 fdBlackStatus=yes)
|
||||
* @param riskLevel C101-1 风险等级(0/1/2)
|
||||
* @param blackCategory 金蝶黑名单失信类别
|
||||
* @param blackReason 金蝶黑名单列入事由
|
||||
* @return 明细文案,无风险信息返回空字符串
|
||||
*/
|
||||
public static String buildRiskDetail(String customerName, boolean blackStatusYes, String riskLevel, String blackCategory, String blackReason) {
|
||||
public static String buildRiskDetail(String customerName, String riskLevel, String blackCategory, String blackReason) {
|
||||
List<String> parts = new ArrayList<>();
|
||||
boolean blacklist = blackStatusYes || Func.isNotEmpty(blackCategory) || Func.isNotEmpty(blackReason);
|
||||
boolean blacklist = Func.isNotEmpty(blackCategory) || Func.isNotEmpty(blackReason);
|
||||
if (blacklist) {
|
||||
parts.add(Func.isNotEmpty(blackCategory)
|
||||
? "被列入外部黑名单(失信类别:" + blackCategory + ")"
|
||||
|
||||
Reference in New Issue
Block a user