chore: remove legacy specification documents and internal rules file

This commit is contained in:
2026-07-27 18:28:46 +07:00
parent 4534e4ecb8
commit 911d5be3b2
151 changed files with 26567 additions and 7922 deletions

View File

@@ -0,0 +1,70 @@
---
card_id: "customer/pool_balance"
title: "Số dư Ví điểm (Pool Balance)"
domain: "customer"
related_cards:
- "customer/customer_overview"
- "campaign/pool_definition"
- "customer/account"
- "customer/card"
tags: ["pool", "balance", "bucket", "LAB", "redeemable"]
---
# Số dư Ví điểm (Pool Balance)
## Mô tả ngắn
Pool Balance (Số dư Ví điểm) là thực thể đại diện cho tổng hợp số dư điểm, dặm thưởng hoặc đơn vị giá trị khác của khách hàng trong hệ thống. Dữ liệu này là kết quả tổng hợp (aggregation) từ các ví nhỏ (buckets) trong bảng dữ liệu LAB (Loyalty Account Bucket), giúp xác định số điểm hiện có, số điểm khả dụng và thời hạn của điểm.
## Thuật ngữ liên quan
- **Pool**: Ví điểm/Kho điểm - Nơi lưu trữ điểm thưởng theo một loại cụ thể.
- **Bucket**: Nhóm điểm/Lô điểm - Một phần của Pool, chứa điểm có cùng ngày sinh và ngày hết hạn.
- **LAB**: Loyalty Account Bucket - Bảng lưu trữ chi tiết từng bucket điểm của khách hàng.
- **ASN**: Account Sequence Number - Định danh tài khoản.
- **CSN**: Card Sequence Number - Định danh thẻ.
## Cấu trúc dữ liệu (Data Schema)
Dữ liệu tổng hợp số dư Ví điểm:
| Field (EN/VN) | Description | Data type / Rules |
| --- | --- | --- |
| Pool ID | Mã ví điểm. | Lookup từ Pool Definition. |
| Pool Name | Tên ví điểm. | Lookup từ Pool Definition. |
| Pool type | Loại ví điểm. | Lookup từ Pool Definition. |
| Pool Entity level | Cấp độ thực thể của ví điểm (VD: Khách hàng, Tài khoản, Thẻ). | Lookup. |
| Balance | Tổng số dư hiện có. | Tính tổng (Sum) tất cả các buckets của Pool từ bảng LAB. |
| Redeemable Balance | Số dư khả dụng. | Tính tổng các buckets chưa hết hạn (non-expired) và có thể sử dụng (available) từ LAB. |
| Next Expiring Balance | Số dư sắp hết hạn. | Số dư của bucket có ngày hết hạn gần nhất (sắp đến hạn nhưng chưa hết hạn) từ LAB. |
| Account type | Loại tài khoản (PAL + PAT). | Lookup từ Product_Account bằng ASN. |
| Account No | Số tài khoản liên kết. | Lookup bằng ASN. |
| Card Number | Số thẻ liên kết (chỉ có nếu Pool Entity Level là Card). | Hiển thị dựa trên thẻ liên kết. |
| Expiry Date | Ngày hết hạn của bucket điểm. | Được nhóm (Group by) theo Ngày hết hạn / Pool ID / ASN / CSN. |
## Cách hoạt động (How It Works)
- **Bản chất dữ liệu**: Số dư ví điểm (Pool Balance) không được lưu thành một con số cứng tĩnh lẻ tẻ mà được tính toán/tổng hợp động từ nhiều lô điểm (buckets) thuộc bảng LAB.
- **Phân loại số dư**:
- **Balance**: Tổng cộng mọi điểm đang tồn tại trong Pool.
- **Redeemable Balance**: Chỉ tính những điểm hợp lệ (có thể sử dụng), loại bỏ các điểm đã hết hạn hoặc bị phong tỏa (blocked).
- **Next Expiring**: Hệ thống dò tìm bucket có ngày hết hạn gần nhất ở tương lai để hiển thị con số sẽ bị mất nếu không sử dụng kịp thời.
- **Cấp độ (Entity Level)**: Tùy thuộc vào cấu hình của Pool (Pool Entity Level), số dư có thể gắn ở cấp độ toàn bộ Khách hàng (Customer), từng Tài khoản (Account) hoặc từng Thẻ (Card).
- **Read-only**: Dữ liệu này hoàn toàn là kết quả tính toán hiển thị (chỉ xem), mọi sự thay đổi điểm số phải thông qua các giao dịch phát sinh (award/redeem) hoặc điều chỉnh (adjustment) tác động trực tiếp vào các buckets.
## Mối quan hệ với modules khác
- **Pool Definition**: Định nghĩa các tham số của ví điểm (Tên, Loại, Cấp độ).
- **Customer Overview**: Nơi hiển thị tổng quan các ví điểm của toàn bộ khách hàng.
- **Account / Card**: Số dư có thể được gắn cụ thể vào một tài khoản hoặc một thẻ tùy thuộc vào Entity Level của Pool.
## Ví dụ thực tế
Khách hàng sở hữu ví điểm "Cashback" (Pool ID: P01). Trong bảng LAB, khách có 2 lô điểm (buckets):
1. Bucket 1: 50,000 điểm, hết hạn 31/12/2026.
2. Bucket 2: 20,000 điểm, hết hạn 30/06/2026.
Hệ thống sẽ tổng hợp Pool Balance như sau:
- **Balance**: 70,000 điểm (50K + 20K).
- **Redeemable Balance**: 70,000 điểm (giả sử cả 2 đều đang khả dụng).
- **Next Expiring Balance**: 20,000 điểm (vì bucket 2 hết hạn sớm nhất).
- **Expiry Date**: 30/06/2026.