12 Commits

Author SHA1 Message Date
Hermes Agent
014d6e593d fix: 产品类别树排除product_type_title编辑,移除冗余alters(框架自动从codes生成) 2026-06-17 17:21:08 +08:00
Hermes Agent
8fda537caa fix: menu and index.ui point directly to CRUD lists instead of iframe wrappers 2026-06-17 16:14:50 +08:00
Hermes Agent
9dcef6a1a9 fix: 修正appcodes_kv数据格式,id唯一且parentid指向appcodes 2026-06-17 15:35:55 +08:00
Hermes Agent
e3df4132cb feat: 补充enabled_flg编码字典到init/data.json 2026-06-17 15:22:26 +08:00
82b494ecd9 fix: wrap Tabular in VBox with cheight for proper scrolling 2026-05-29 22:09:54 +08:00
235412c9f7 fix: remove hardcoded dark theme colors for light theme support 2026-05-28 16:16:05 +08:00
5d6538b7d3 refactor: dark theme 3-part layout with filler scrollable content 2026-05-26 14:07:11 +08:00
43787a63a4 fix: spec compliance pass - ServerEnv removal in .dspy, core.py DBPools singleton, scripts/load_path.py
- All .dspy files: replace ServerEnv() org_id access with await get_userorgid()
  (get_userorgid is registered as global in ahserver processorResource)
- core.py: simplify _get_db to use DBPools() singleton directly (DBPools is @SingletonDecorator)
  remove unnecessary db.databases = config.databases assignment
- core.py: add MODULE_NAME constant, use env.get_module_dbname(MODULE_NAME) pattern
- Create scripts/load_path.py with all RBAC paths per module-development-spec
  Covers: entry pages, feature .ui files, CRUD directories, all API .dspy endpoints
- .gitignore: add __pycache__/ exclusion
- All models/*.json and json/*.json pass spec validation checks
2026-05-25 17:03:08 +08:00
4fd136bf53 refactor: reseller org_id isolation for product_management module
- product_category: org_id scoped tree, product_table_name -> product_type
- product: org_id scoped, added extra_json for custom attributes, product_type field
- product_type_config: org_id + operator_id dual isolation, unique key on (org_id, operator_id, category_id, config_name)
- All 18 API endpoints enforce org_id filtering via ServerEnv
- core.py: all methods accept optional org_id, default to current user's org
- CRUD definitions: logined_userorgid set to org_id on all lists
- init/data.json: removed hardcoded global categories (managed per reseller)
- Rebuilt mysql.ddl.sql and all CRUD UI files
2026-05-25 17:03:08 +08:00
6b37adc92d fix: build.sh symlink generated CRUD directories to Sage wwwroot 2026-05-25 17:03:08 +08:00
d1ceed9cb9 feat: initial product_management module - category tree, product registry, operator config, standardized API 2026-05-25 17:03:08 +08:00
e90653bc29 Initial commit 2026-05-25 16:39:42 +08:00