33 Commits

Author SHA1 Message Date
Hermes Agent
daa6e66d09 fix: 重写load_path.py,补全RBAC权限路径
问题:discount_list/discount_detail_list/discount_customer_bind_list 返回403
原因:缺少CRUD目录路径、auto-generated .dspy、角色专属权限

修复:
- PATHS_ANY: 添加5个CRUD目录别名
- PATHS_LOGINED: 添加25个CRUD auto-generated .dspy
- PATHS_OPERATOR: reseller.operator可管理全部折扣功能
- PATHS_SALE: reseller.sale可查看促销码和客户归属
2026-06-24 01:16:33 +08:00
Hermes Agent
a6a553ea78 feat: load_path.py添加新CRUD页面和API路径权限注册
新增15条logined路径:
- discount_marketing_list, discount_promo_code_list, discount_customer_bind_list
- api/marketing_*, api/promo_code_*, api/customer_bind_* (9个API)
2026-06-24 01:08:05 +08:00
Hermes Agent
8040238ea5 fix: 移除timestamp字段的显式default声明
DDL生成器会自动为timestamp类型添加DEFAULT CURRENT_TIMESTAMP,
显式指定会导致重复DEFAULT声明,MySQL报错1067。

修复的表:
- discount_marketing (created_at, updated_at)
- discount_promo_code (created_at)
- discount_customer_bind (created_at)
2026-06-24 01:03:35 +08:00
Hermes Agent
d87d8f5ffa chore: add __pycache__ to .gitignore 2026-06-24 00:56:40 +08:00
Hermes Agent
f5250fb261 feat: 营销方案、促销码、客户归属绑定功能
- 新增3个数据模型: discount_marketing, discount_promo_code, discount_customer_bind
- 新增CRUD定义: marketing/promo_code/customer_bind 的list和api
- 新增init/data.json: appcodes编码(促销码类型、绑定方式)
- init.py: bind_customer支持customerid参数覆盖(注册场景)
- 折扣校验放宽至 0 < discount <= 1
2026-06-24 00:56:32 +08:00
Hermes Agent
8498a10809 feat: add i18n translations (zh/en/jp/ko) for all modules 2026-06-19 15:01:23 +08:00
Hermes Agent
73b7561de8 chore: 添加json/build.sh脚本 2026-06-17 17:26:21 +08:00
a00dc84cb5 bugfix 2026-05-28 15:44:12 +08:00
8424d71090 bugfix 2026-05-28 15:43:53 +08:00
a8cb13446e refactor(models): convert to json format per database-table-definition-spec 2026-05-27 13:23:25 +08:00
049b4225ad feat: add load_path.py RBAC permission registration script 2026-05-27 13:16:04 +08:00
d514d10319 chore: remove __pycache__ from git 2026-05-24 22:31:52 +08:00
3a57205337 fix(discount): 兼容discount_detail表不存在的情况,fallback到discount.discount字段 + 新增discount_detail表定义和迁移脚本 + 修复discount.json中float类型缺少dec字段 2026-05-24 22:31:42 +08:00
b41c89e9dd bugfix 2026-05-11 11:30:57 +08:00
a25c9e56dc bugfix 2026-04-08 14:27:38 +08:00
678cf4bac8 bugfix 2026-03-30 14:05:04 +08:00
aaf09f50a0 bugfix 2026-03-30 14:01:10 +08:00
eb26b179a3 bugfix 2026-02-26 13:36:59 +08:00
41a7412283 bugfix 2026-02-26 11:19:39 +08:00
a563f92fd5 bugfix 2026-02-26 11:18:16 +08:00
8ab227ddd3 bugfix 2026-02-25 19:06:47 +08:00
98581b2a37 bugfix 2026-02-25 13:49:16 +08:00
c890fdf249 bugfix 2026-02-25 12:05:48 +08:00
cdf20b7aee bugfix 2026-02-25 12:01:14 +08:00
11b6f8b0c8 bugfix 2026-02-25 11:58:22 +08:00
c64921972f bugfix 2026-02-25 11:56:23 +08:00
9f99790d38 bugfix 2026-02-25 11:33:34 +08:00
d80b177adb bugfix 2026-02-25 11:29:35 +08:00
1165982e1f bugfix 2026-02-25 11:25:00 +08:00
97dc4befef bugfix 2026-02-24 19:48:26 +08:00
45333b6b23 bugfix 2026-02-24 17:32:46 +08:00
319d88fcae bugfix 2026-02-24 12:07:26 +08:00
09b1a470ed Initial commit 2026-02-24 11:41:09 +08:00