7 Commits

Author SHA1 Message Date
d3d59d2068 bugfix 2026-06-03 15:48:54 +08:00
338b232b9b feat: add appbase module permissions to superuser initialization
- Add appcodes_kv management (KV store)
- Add cron management
- Add appcodes management
- Add params management
- Add svgicon management
- Total 25 appbase paths for owner.superuser
2026-06-03 15:37:14 +08:00
0d624c73df feat: add init_superuser.py for RBAC superuser permission initialization
- Initialize owner.superuser role with all CMS permissions
- Cover both entcms and dingdingflow modules
- Include content, categories, sections, site config, leads, and approvals
2026-06-03 15:02:28 +08:00
411ee81f39 fix: 添加应用根目录到sys.path,解决entcms模块导入问题 2026-05-27 18:46:07 +08:00
569c8e6715 refactor: CMS从Sage子模块重构为独立ahserver Web应用
架构变更:
- CMS作为独立进程运行(端口9090),不再嵌入Sage
- 使用ahserver框架,复用rbac模块做认证授权
- 所有模块共享sage数据库(配置在conf/config.json)

新增文件:
- app/cms.py: 独立Web应用主入口(webapp(init))
- app/global_func.py: 全局函数(get_module_dbname/UiWindow等)
- conf/config.json: 应用配置模板(数据库/路径/处理器/Redis)
- start.sh/stop.sh: 进程管理脚本
- pyproject.toml: 顶层Python包配置

路径重构(去掉/entcms前缀):
- 官网首页: /entcms/index.ui → /index.ui
- 管理后台: /entcms/admin.ui → /admin.ui
- API: /entcms/api/xxx.dspy → /api/xxx.dspy
- CRUD: /entcms/cms_content_list → /cms_content_list
- dingdingflow保持/dingdingflow前缀(映射子目录)

config.json路径映射:
- entcms/wwwroot → / (根路径)
- dingdingflow/wwwroot → /dingdingflow
- bricks/dist → /bricks

构建脚本(build.sh):
- 创建独立venv(py3/)
- 安装核心依赖(apppublic/sqlor/ahserver/bricks/rbac等)
- json2ddl生成CMS业务表DDL
- xls2ui生成CRUD UI
- 生成systemd服务文件

load_path.py更新:
- entcms: 所有路径去掉/entcms前缀
- dingdingflow: 保持/dingdingflow前缀
- 查找set_role_perm.py支持CMS和Sage两种环境

init_superuser.py更新:
- 支持CMS独立环境(自动检测py3/conf)
- 创建superuser角色并分配全部权限
2026-05-27 17:20:36 +08:00
52f4632dfc feat: 角色权限体系 + 栏目管理
1. 角色体系(owner企业类型):
   - superuser: 超级用户(继承全部权限)
   - webmaster: 内容管理员(CRUD全部内容/分类/栏目/配置/线索)
   - reviewer: 内容审核(查看内容+审批状态更新)
   - supervisor: 主管(只读全部+线索管理+审批)
   - customer-support: 客服(线索查看和更新)
   - anonymous: 匿名用户(公开页面+提交线索)

2. 超级用户初始化脚本(scripts/init_superuser.py)
   - 默认: admin/admin123
   - 自动创建用户+分配owner.superuser角色

3. cms_sections栏目管理表:
   - section_key: 栏目标识(hero/products/cases/news/cta/footer/float)
   - display_config: 展示配置JSON(布局/列数/悬停效果)
   - style_config: 样式配置JSON(颜色/渐变/边框)
   - static_content: 静态内容(Hero标语/产品卡片/CTA文案)
   - is_visible: 显示/隐藏控制
   - sort_order: 栏目排序

4. cms_categories增加display_config字段(分类展示风格)

5. 初始化6个栏目数据(Hero/产品/案例/新闻/页脚/浮动入口)

6. 更新菜单和管理后台增加栏目管理入口
2026-05-27 16:57:00 +08:00
5cfb0e867b feat: 开元云科技官网CMS系统初始版本
entcms模块:
- 4个数据表(cms_content/cms_categories/cms_leads/cms_site_config)
- 22个.dspy API(含公开API和data_filter)
- 4个公开页面(首页/新闻/案例)+管理后台
- 完整营销站点CSS/JS(暗色主题/渐变/动画/响应式)
- 云宝SVG线稿占位符
- RBAC权限配置

dingdingflow模块:
- 2个数据表(dd_approvals/dd_approval_configs)
- 10个.dspy API(含钉钉回调endpoint)
- 钉钉API客户端(环境变量配置,开发模式mock)
- 管理UI

文档: 架构设计/53条测试用例/开发日志
2026-05-27 15:44:26 +08:00