汇丰银行后台需要基于客户数据标签筛选目标客群,用于权益投放、活动触达、名单圈选等业务场景。
当前《汇丰借记卡权益》PRD 中,"展示客群限制""领取客群限制"依赖标签 ID 关联客群,但标签本身的创建、编辑、维护能力缺失。本需求补齐客户数据标签的后台管理能力,支持运营人员通过可视化方式按客户属性组合规则,生成可被其他业务模块引用的标签。
入口:定制功能 → 汇丰银行 → 标签管理
标签列表
新建标签
编辑标签
查看标签
删除标签
启用 / 停用标签
flowchart TD
A[运营人员进入标签管理] --> B{操作类型}
B -->|新建/编辑| C[填写标签名称与描述]
C --> D[新增规则组]
D --> E[组内新增规则]
E --> E1[选择参数]
E1 --> E2{参数是否含历史月末值?}
E2 -->|是| E3[选择时间窗口与聚合方式]
E2 -->|否| E4[跳过]
E3 --> E5[选择运算符]
E4 --> E5
E5 --> E6[填写/选择比较值]
E6 --> F{继续新增规则?}
F -->|是| E
F -->|否| G[设置组内关系 且/或]
G --> H{继续新增规则组?}
H -->|是| D
H -->|否| J[保存标签]
J --> K[标签可在权益/活动配置中引用]
B -->|查看| L[只读展示规则]
B -->|删除| M{是否被业务引用?}
M -->|是| M1[阻止删除, 提示先解除引用]
M -->|否| M2[二次确认, 软删除]
B -->|启用/停用| N[状态切换, 实时生效]
菜单入口:liso 定制功能 → 汇丰银行 → 标签管理
(1)筛选条件
| 字段名称 | 字段类型 | 是否必填 | 说明 |
|---|---|---|---|
| 标签名称 | 文本输入框 | 否 | 模糊搜索 |
| 标签 ID | 文本输入框 | 否 | 精确匹配 |
| 状态 | 下拉选择 | 否 | 全部 / 启用 / 停用,默认"全部" |
| 创建时间 | 日期范围 | 否 | 起止日期,格式 Y-m-d |
| 创建人 | 文本输入框 | 否 | 模糊搜索创建人姓名/账号 |
(2)操作按钮
查询:按筛选条件查询
重置:清空筛选条件
新建标签:打开【新建标签】页面
(3)列表字段
| 字段名称 | 说明 |
|---|---|
| 操作 | • 查看:查看标签详情 • 编辑:编辑标签 • 删除:软删除该标签 • 启用 / 停用:切换标签状态 |
| 标签 ID | 系统生成,唯一,可复制 |
| 标签名称 | 运营定义的名称 |
| 标签描述 | 标签用途说明,超出省略 |
| 规则摘要 | "规则组数 / 规则总数",如 2 组 / 5 条 |
| 状态 | 启用 / 停用 |
| 创建人 / 创建时间 | 展示姓名与 Y-m-d H:i:s |
| 最后更新人 / 更新时间 | 展示姓名与 Y-m-d H:i:s |
| 引用数 | 该标签被权益、活动等引用的次数,点击可查看引用明细 |
(4)分页
默认每页 20 条
支持首页、上一页、下一页、末页、跳转至指定页
采用单页表单布局:基础信息 + 规则配置。
2.1 基础信息
| 字段名称 | 字段类型 | 是否必填 | 说明 |
|---|---|---|---|
| 标签名称 | 文本输入框 | 是 | 最长 40 字符,同一渠道下不可重复 |
| 标签描述 | 文本域 | 否 | 最长 200 字符,便于识别标签用途 |
| 状态 | 开关(Toggle) | 是 | 默认开启 |
2.2 规则配置
规则采用"规则组 + 规则"两级嵌套结构:
规则组之间:固定为 且(AND)
规则组内部:可切换为 且(AND) 或 或(OR)
(1)规则组管理
新增规则组:页面右上角"+ 新增规则组"按钮;新建标签时默认已有 1 个空规则组
删除规则组:每个规则组右上角提供删除按钮;至少保留 1 个规则组,最后一个不可删除
复制规则组:复制当前组的全部规则到新规则组(含组内关系设置)
(2)规则管理(组内)
新增规则:规则组底部"+ 新增规则"按钮;新建规则组时默认已有 1 条空规则
删除规则:每条规则末尾提供删除按钮;每组至少保留 1 条规则
组内关系:规则组头部切换"且 / 或"
(3)单条规则配置
每条规则包含四段输入:参数 → 时间窗口(仅历史值参数) → 运算符 → 比较值
| 输入段 | 控件 | 说明 |
|---|---|---|
| 参数 | 级联下拉 / 搜索下拉 | 按分组展示(客户基础 / 资产 / 尊尚与私行 / 跨境资格 / MGM / 投资偏好 / 行为触点),支持中文、参数名双向搜索。详见【附录 A:参数清单】 |
| 时间窗口 | 动态下拉组合 | 仅当参数含"近 12 个月月末值"变体时展示: ① 取值方式:当前值 / 指定某月 / 近 N 个月(N=1-12) ② 聚合方式(取值方式为"近 N 个月"时):任一月满足 / 所有月满足 / 至少 M 个月满足 / 平均值 / 最大值 / 最小值(后三项仅数值类型支持) |
| 运算符 | 下拉 | 根据参数类型动态展示可选项。详见【附录 B:运算符清单】 |
| 比较值 | 动态控件 | 根据运算符类型切换输入控件: • 单值:文本 / 数字 / 日期选择器 / 布尔下拉(真/假) • 多值:多选下拉 或 以逗号分隔的批量输入 • 区间:两个输入框或区间选择器 • 为空 / 不为空:不需要输入 |
参数取值规则:
参数类型为枚举(如私行权益标签、客户持有定存种类、资产大类明细等)时,运算符与比较值均使用枚举选择器,避免手工输入错误
比较值输入需与参数类型一致:BigDecimal 仅允许数字;YYYY-MM-DD 仅允许日期;Boolean 使用"真/假"下拉选择
2.3 操作按钮
取消:若有未保存修改则二次确认"未保存内容将丢失,确认退出?";否则直接返回列表
保存:校验必填项与规则完整性,通过后持久化;保存成功 toast "保存成功"并返回列表
入口:列表"编辑"按钮
字段同【新建标签】,标签 ID 不可编辑
若标签已被业务引用(引用数 > 0),保存时二次确认:"该标签已被 N 个权益/活动引用,修改后将影响其客群匹配,确认保存?"
操作按钮:取消 / 保存(同新建)
入口:列表"查看"按钮
字段同【编辑标签】
所有输入框、选择框、按钮(新增规则组 / 新增规则 / 删除)禁用
仅展示【返回】按钮
入口:列表"删除"按钮
若 引用数 > 0:弹窗提示"该标签已被 N 个权益/活动引用,请先在对应业务中解除引用后再删除",仅显示"我知道了"按钮,阻止删除
若 引用数 = 0:弹窗二次确认"确定要删除标签「XXX」吗?删除后无法恢复"
确定:软删除(保留数据用于审计),列表不再展示
取消:关闭弹窗
入口:列表"启用"/"停用"按钮
启用 → 停用:弹窗二次确认"停用后,引用该标签的业务将视为该客群不命中,确认停用?"
停用 → 启用:无需确认,直接切换
状态变更实时生效
| 状态 | 说明 | 可执行操作 |
|---|---|---|
| 启用 | 参与客户匹配,可被业务引用 | 查看 / 编辑 / 停用 / 删除(引用数=0 时) |
| 停用 | 不参与匹配,引用方视为未命中 | 查看 / 编辑 / 启用 / 删除(引用数=0 时) |
标签名称:必填、长度 ≤ 40、同渠道下唯一;重复时提示"标签名称已存在"
规则组:至少 1 个;每组至少 1 条完整规则
规则完整性:参数、运算符、比较值(除"为空/不为空"外)均不得为空
数值比较值:须可解析为数字;"区间"运算符要求下限 ≤ 上限
日期比较值:格式须与参数格式匹配(YYYY-MM-DD 或 YYYY-MM)
枚举比较值:仅允许枚举内取值
时间窗口参数:近 N 个月的 N 取值 1-12;至少 M 个月的 M 不得大于 N
并发编辑:以保存时间戳为准,后保存覆盖先保存;列表展示最后更新人与时间,便于追溯
删除保护:引用数 > 0 的标签不可删除
接口异常:保存 / 预估接口异常时 toast 报错并保留当前输入,不清空表单
所有参数仅在存在数据时返回;标签匹配时参数值为空则该条规则判为不匹配(除非运算符为"为空")。
| 中文名 | 参数名 | 类型 | 历史值 | 说明 / 取值 |
|---|---|---|---|---|
| 客户 MSC Group | mscGroup / mscGroupList | String / List | ✔ | 历史值:近 12 个月月末值 [{"date":"2025-03","mscGroup":"xxx"}, ...] |
| 客户类型 MSC | mscCode / mscCodeList | String / List | ✔ | 历史值:近 12 个月月末值 [{"date":"2025-03","mscCode":"xxx"}, ...] |
| Current MSC entry date | currentMscEntryDate | String (YYYY-MM-DD) | 当前 MSC 生效起始日期 | |
| 客户 MOB 值(含信用卡) | mob | String | 取值:0 / 1 / 2 / 3 / 4 / 5 / 6 / … | |
| First contact date | firstContactDate | String (YYYY-MM-DD) | ||
| 开户时间 | openDate | String (YYYY-MM-DD) | ||
| 城市 | city | String | ||
| RM 类型 | rmType | String | ||
| 客户姓名 | customerName | String |
| 中文名 | 参数名 | 类型 | 历史值 | 说明 / 取值 |
|---|---|---|---|---|
| End of day balance(所有资金含产品) | endOfBalance / endOfBalanceList | BigDecimal / List | ✔ | 历史值:近 12 个月月末值 [{"date":"2025-03","endOfBalance":"xxx"}, ...] |
| TRB 值 - Avg TRB 口径(含家庭账户余额) | avgTrbIncludingHousehold / avgTrbIncludingHouseholdList | BigDecimal / List | ✔ | 历史值:近 12 个月月末值 |
| TRB 值 - Avg TRB 口径(不含家庭账户余额) | avgTrbExcludingHousehold / avgTrbExcludingHouseholdList | BigDecimal / List | ✔ | 历史值:近 12 个月月末值 |
| 资产大类明细 | assetCategoryDetails | String(多选) | 1-9 依次表示,多个英文逗号分隔: 1 存款(定期 / 通知 / 个人大额存单) 2 结构性存款(自有) 3 基金相关产品(代客境外理财海外基金 / 代销内地证券投资基金 / 代销香港互认基金) 4 理财产品(代销) 5 代客境外理财海外债券型 / 结构性票据型(自有) 6 资产管理计划(代销) 7 信托计划(代销) 8 保险产品(代销) 9 预留 |
|
| 客户持有定存种类 | fixedDepositTypes | String(多选) | 1-5 依次表示,多个英文逗号分隔: 1 不持有定存 2 持有普通定存(美金) 3 持有普通定存(人民币) 4 持有普通定存(其他币种) 5 持有大额存单(人民币) |
| 中文名 | 参数名 | 类型 | 历史值 | 说明 / 取值 |
|---|---|---|---|---|
| 近 6 个月是否符合尊尚资格 | isQualifiedLast6Months | Boolean | ||
| 私行权益标签 | privateBankTag | String | 取值:银辉 / 金曜 / 钻皓私人银行客户 | |
| 首次升级尊尚的时间 | firstUpgradePremierDate | String (YYYY-MM-DD) | ||
| 私行 ID 卓越理财尊尚编号 | privateBankId | String | ||
| 尊尚资格到期日 | premierValidityDate | String (YYYY-MM-DD) | ||
| 首次达标日期 | firstAchievementDate | String (YYYY-MM) | ||
| 首次升级为 PB 的日期 | firstPBUpgradeDate | String (YYYY-MM) | ||
| PB 活动参与白名单 | isPbActivityWhitelisted | Boolean |
| 中文名 | 参数名 | 类型 | 历史值 | 说明 |
|---|---|---|---|---|
| 是否为 1+1 CN-HK 双边客户 | isCrossBorderHK | Boolean | ||
| 是否为 1+1 CN-SG 双边客户 | isCrossBorderSG | Boolean | ||
| 是否为 HK qualifier | isHKQualifier | Boolean | ||
| New to 1+1 CN-HK qualifier 时间 | cnHkQualifierDate | String (YYYY-MM) | ||
| 是否为 SG qualifier | isSGQualifier | Boolean | ||
| New to 1+1 CN-SG qualifier 时间 | cnSgQualifierDate | String (YYYY-MM) |
| 中文名 | 参数名 | 类型 | 历史值 | 说明 |
|---|---|---|---|---|
| 某自然月成功推荐人数 | monthlySuccessfulReferrals | List | ✔ | 近 12 个月 [{"date":"2025-03","successfulReferrals":"xxx"}, ...] |
| 某自然年成功推荐人数总数 | yearlySuccessfulReferrals | List | ✔ | 近 N 年 [{"date":"2024","successfulReferrals":"xxx"}, ...] |
| 是否被成功推荐来开户且达标 | isReferredAndQualified | Boolean | ||
| MGM case ID | mgmCaseId | String | ||
| 某自然月推荐人数 | monthlyReferrals | List | ✔ | 近 12 个月 |
| 某自然年推荐人数 | yearlyReferrals | List | ✔ | 近 N 年 |
| 推荐关系 | referralRelation | List | [{customerId:"xxx"}, ...];通过被推荐人客户号查询其数据 |
| 中文名 | 参数名 | 类型 | 历史值 | 说明 |
|---|---|---|---|---|
| 客户持有 valid RPQ 等级 | validRpq | String | 取值:0 / 1 / 2 / 3 / 4 / 5 / NA | |
| Prospects Needs | prospectsNeeds | Boolean |
| 中文名 | 参数名 | 类型 | 历史值 | 说明 |
|---|---|---|---|---|
| 是否关注 "汇丰中国客户服务" 微信服务号且绑定银行账户 | isHsbcWechatLinked | Boolean | ||
| 上个自然月未登录、当前自然月登录过手机银行 1 天或以上 | isPrevMonthInactiveCurMonthActive | Boolean | ||
| 从当前自然月起前序连续 2 个完整月是否登录手机银行 | isPrevTwoMonthsActive | Boolean | ||
| 是否绑定 RM 企业微信 | isRmWeComBound | Boolean | ||
| 是否首次使用 Face ID 或指纹登录手机银行 | firstBiometricLogin | Boolean | ||
| 成功完成模拟资产配置的客户 | isSimulatedAllocationCompleted | Boolean |
| 运算符 | 适用说明 |
|---|---|
| 等于 / 不等于 | 单值精确匹配 |
| 包含 / 不包含 | 子串匹配(仅自由文本类参数开放) |
| 属于 / 不属于 | 多值集合,比较值为多选或逗号分隔 |
| 为空 / 不为空 | 无需输入比较值 |
| 运算符 | 适用说明 |
|---|---|
| \= / ≠ | 精确匹配 |
| >、≥、<、≤ | 单边比较 |
| 区间 | [下限, 上限],支持"含 / 不含端点"设置 |
| 为空 / 不为空 | 无需输入比较值 |
| 运算符 | 适用说明 |
|---|---|
| \= / ≠ | 比较值为 真 / 假(下拉选择);= 假 与 ≠ 真 等价 |
| 运算符 | 适用说明 |
|---|---|
| \= / ≠ | 精确日期匹配 |
| >、≥、<、≤ | 早于 / 晚于 |
| 区间 | 起止日期 |
| 相对当前 | N 日 / 月 / 年内;超过 N 日 / 月 / 年 |
| 为空 / 不为空 | 无需输入比较值 |
先在"时间窗口"阶段聚合为单值,再套用 B.2 数值运算符:
在"时间窗口"阶段选择匹配策略:
任一月等于 X
所有月等于 X
至少 M 个月等于 X
列表长度(推荐人数)→ 套用 B.2 数值运算符
是否包含指定客户号 → 精确匹配,比较值为客户号或客户号列表
可聚合后套用 B.2(同 B.5.1)
也可指定月份 / 年份单点匹配