feat: initialize project backend structure and document system specifications across all modules
This commit is contained in:
40
docs/specs/reward_campaign/campaign_rule_criteria.md
Normal file
40
docs/specs/reward_campaign/campaign_rule_criteria.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
title: "Campaign Rule Criteria"
|
||||
type: OpenSpec
|
||||
status: Draft
|
||||
domain: Reward Campaign Management
|
||||
---
|
||||
|
||||
# Campaign Rule Criteria
|
||||
|
||||
## Requirement Definition
|
||||
Defines the conditions a transaction must meet to trigger a Campaign Rule. Built using a drag-and-drop Query Builder interface.
|
||||
|
||||
## Process Flow
|
||||
|
||||
### Pre-Conditions
|
||||
- Rule must be created.
|
||||
|
||||
## Business Rules
|
||||
|
||||
### Data Schema
|
||||
Criteria are categorized into: Customer, Account, Transaction, Attribute, Counter, Merchant.
|
||||
|
||||
#### Operators
|
||||
| Data Type | Operators | Logic Type / Details |
|
||||
|---|---|---|
|
||||
| String / Lookup | Is in, Is not in, Contains, Equal to, Not equal to, Starts with, Ends with, Is null, Is not null. | Validates against provided text or list of values. |
|
||||
| Number | Equal, Not equal, Less than, Less/equal, Greater, Greater/equal, Between, Null, Not null. | Standard numerical comparison. |
|
||||
| Date | On or before, On or after, Fixed date, Between date range, Between period from N. | Complex date logic (e.g. comparing Day/Month regardless of year, comparing "3 months ago"). |
|
||||
| Day of week | Is the day of week. | Monday-Sunday. |
|
||||
| Time | Is between. | Time-of-day comparison (00:00 - 23:59). |
|
||||
| Boolean | Is. | True / False. |
|
||||
|
||||
### Execution
|
||||
- Supports AND and OR logic grouping.
|
||||
- A single rule can have multiple groups, but inter-group logic must be consistent (all ANDs or all ORs).
|
||||
- NOT toggles support exclusion.
|
||||
- All criteria defined in the rule must evaluate to true (for AND) or at least one (for OR) to trigger the Formula execution.
|
||||
|
||||
## Exception Flow
|
||||
- Validation failure means the rule is not triggered (proceeds to next rule in Execution Sequence).
|
||||
Reference in New Issue
Block a user