#7ac3a
Back
2026/01/15
5 min read

任務牆 table schema

任務牆 table schema.md
81 additions, 16 deletions
... ... @@ -5,17 +5,17 @@
5 - | category | String | 任務類別:指定條件型 / 累計型 / 關聯型 | 累計型 |
5 + | category | String | 任務類別:指定條件型 / 多門檻型 / 關聯型 | 多門檻型 |
6 - | activity_start_time | Timestamp | 活動開始時間| 2026-01-01 00:00:00 |
6 + | activity_start_time | Timestamp | 活動開始時間/領獎開始時間 | 2026-01-01 00:00:00 |
7 - | award_start_time | Timestamp | 領獎開始時間 | 2026-01-01 00:00:00 |
7 + | display_share_button | boolean | 是否要顯示分享任務按鈕 | true |
8 -| activity_type | String | 活動類型:兌換 / 核銷 / 信用卡 / 登入 / mgm | 登入 |
9 - | category | String | 任務別:指定條件/ 累計型 / 關聯型 | 指定條件型 |
8 + | activity_type | String | 活動:兌換點數/ 兌換票券 / 核銷 / 登入 / mgm / 第三方 | 登入 |
9 +| category | String | 任務類別:指定條件型 / 多門檻型 / 關聯型 | 指定條件型 |
10 -| dependency_id | Integer | 依賴的 sub_id (累積型任務使用 : 前置任務設定) [TaskSubSetting.id](http://TaskSubSetting.id) | 指定條件型的話此欄位為null |
11 - | mission_content | String | 任務內容(條件限制):包含類 (type)、方式 (method)、內容 (value)、單 (unit) | EX. "serialId": [01,02,03,04,05,06,07,08,09,10]} |
10 + | tier | Integer | 多門檻的level, 指定條件的話此欄為查詢任務列表的顯示順序 | |
11 +| mission_content | String | 任務內容(條件限制):包含類型 (type)、方式 (method)、內容 (value)、單位 (unit) | EX. {<br>"field": "serial_id",<br>"operator": "in",<br>"values": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]<br>}<br> |
12 -#
13 -
14 - | content | String | 詳細紀錄內容(raw data) | {<br>        {<br>           "ticket_id": "01", "name": "C券","point":"500","deduct_time":"2026/01/01 00:09:00","amount":1<br>        },<br>        {<br>           "ticket_id": "01", "name": "C券","point":"500","deduct_time":"2026/01/01 09:09:00","amount":1<br>        }<br>} |
12 + | producer_id | String (unique) | kafka producer push id | |
13 +| activity_type | String | 活動類型:兌換點數/ 兌換票券 / 核銷 / 登入 / mgm / 第三方 | |
14 +| content | String | 詳細紀錄內容(raw data) | {<br>        "type": "exchange",<br>        "content": {<br>         "serialId": "01", "name": "A券","point":"500","deduct_time":"2025/12/30 00:09:00","amount":2<br>        }<br>} |
15 - | record_id (rule engine寫入) | String | [FK] UserSummaryRecord<br>.id | 1 |
15 + | record_id (rule engine寫入) | String | [FK] [UserEventLog.id](http://UserEventLog.id)<br> | 1 |
16 - | category | String<br><br> | 任務類別:指定條件型 / 累計| 指定條件型 |
16 + | category | String<br><br> | 任務類別:指定條件型 / 多門檻/ 關聯型 | 指定條件型 |
17 - | category | String | 獎勵類別:型 / 累積型 / 關聯型 | 累積<br> |
17 + | category | String | 類別:條件型 / 多門檻型 / 關聯型 | 多門檻 |
18 -| isFull | boolean | 是否已額滿 | false |
19 -| category | String | 任務類型:指定型 / 累積型 | 累積型 |
20 - | tier_index | Integer | 獎勵階層索引<br>指定:固定填 0<br>累積:第 1 階填 1, 第 2 階填 2... | 2 |
18 + | category | String | 類別指定條件 / 多門檻 / 關聯型 | 多門檻型 |
19 +| tier | Integer | 獎勵階層索引:<br>指定型:固定填 0<br>累積型:第 1 階填 1, 第 2 階填 2... | 2 |
20 +
21 +# 10. RuleEngineFlow
22 +
23 +| 名稱欄位 | 型態 | 欄位說明 | example |
24 +| ---| ---| ---| --- |
25 +| id | Integer | PK | 1 |
26 +| CHAIN_APPLICATION | varchar(32) DEFAULT NULL, | | |
27 +| CHAIN_ID | varchar(32) | | |
28 +| CHAIN_NAME | varchar(100) DEFAULT NULL | | |
29 +| CHAIN_DESCRIPTION | varchar(200) DEFAULT NULL, | | |
30 +| EL_DATA | text | | |
31 +| ROUTE | text | | |
32 +| ENABLE | String | | |
33 +| create_time | String | | |
34 +
35 +# cms傳來母任務的mission content寫法
36 +
37 +```json
38 +S001: "兌換商品serial 在 01~10 內的票券"
39 +S002: "兌換商品名稱必須包含「星巴克 150 元券」與「威秀電影票」"
40 +S003: "品名中包含 "現金券" or "抵用券"且 總兌換點數大於 500"
41 +
42 +{
43 + "logic": "and",
44 + "rules": [
45 + {
46 + "sub_id": "S001",
47 + "field": "serial_id",
48 + "operator": "in",
49 + "values": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]
50 + },
51 + {
52 + "sub_id": "S002",
53 + "field": "product_name",
54 + "operator": "in",
55 + "values": ["星巴克 150 元券", "威秀電影票"]
56 + },
57 + {
58 + "sub_id": "S003",
59 + "logic": "and",
60 + "rules": [
61 + {
62 + "logic": "or",
63 + "rules": [
64 + {
65 + "field": "product_name",
66 + "operator": "like",
67 + "values": ["現金券"]
68 + },
69 + {
70 + "field": "product_name",
71 + "operator": "like",
72 + "values": ["抵用券"]
73 + }
74 + ]
75 + },
76 + {
77 + "field": "total_cub_points",
78 + "operator": "gt",
79 + "values": ["500"]
80 + }
81 + ]
82 + }
83 + ]
84 +}
85 +```