- cms/: Python包(合并原entcms+dingdingflow) - init.py: 791行,load_cms()注册所有CRUD+审批函数 - dingtalk_client.py: 钉钉API客户端 - models/: 7个表定义JSON(5个CMS+2个DD) - json/: 7个CRUD定义JSON - wwwroot/: 管理后台CRUD页面和API(37个dspy) - init/data.yaml: 模块初始数据(appcodes/appcodes_kv/分类/栏目/配置) - scripts/load_path.py: RBAC权限配置 - pyproject.toml: pip-installable包定义 - 删除: app/, conf/, build.sh, entcms/, dingdingflow/等webapp文件 - 数据库访问统一为DBPools()+_get_dbname()动态模式
155 lines
3.5 KiB
JSON
155 lines
3.5 KiB
JSON
{
|
|
"summary": [
|
|
{
|
|
"name": "cms_content",
|
|
"title": "CMS内容表",
|
|
"primary": [
|
|
"id"
|
|
]
|
|
}
|
|
],
|
|
"fields": [
|
|
{
|
|
"name": "id",
|
|
"title": "主键ID",
|
|
"type": "str",
|
|
"length": 32,
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "org_id",
|
|
"title": "组织ID",
|
|
"type": "str",
|
|
"length": 32,
|
|
"default": "0"
|
|
},
|
|
{
|
|
"name": "content_type",
|
|
"title": "内容类型(banner/product/case/news)",
|
|
"type": "str",
|
|
"length": 32,
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "category_id",
|
|
"title": "分类ID",
|
|
"type": "str",
|
|
"length": 32
|
|
},
|
|
{
|
|
"name": "title",
|
|
"title": "标题",
|
|
"type": "str",
|
|
"length": 255,
|
|
"nullable": "no"
|
|
},
|
|
{
|
|
"name": "subtitle",
|
|
"title": "副标题",
|
|
"type": "str",
|
|
"length": 255
|
|
},
|
|
{
|
|
"name": "summary_text",
|
|
"title": "摘要",
|
|
"type": "str",
|
|
"length": 500
|
|
},
|
|
{
|
|
"name": "body",
|
|
"title": "正文内容",
|
|
"type": "text"
|
|
},
|
|
{
|
|
"name": "image_url",
|
|
"title": "封面图片URL",
|
|
"type": "str",
|
|
"length": 500
|
|
},
|
|
{
|
|
"name": "tags",
|
|
"title": "标签(逗号分隔)",
|
|
"type": "str",
|
|
"length": 500
|
|
},
|
|
{
|
|
"name": "sort_order",
|
|
"title": "排序号",
|
|
"type": "int",
|
|
"default": "0"
|
|
},
|
|
{
|
|
"name": "status",
|
|
"title": "状态(draft/pending/approved/published/archived)",
|
|
"type": "str",
|
|
"length": 32,
|
|
"default": "draft"
|
|
},
|
|
{
|
|
"name": "approval_id",
|
|
"title": "审批单ID",
|
|
"type": "str",
|
|
"length": 32
|
|
},
|
|
{
|
|
"name": "published_at",
|
|
"title": "发布时间",
|
|
"type": "datetime"
|
|
},
|
|
{
|
|
"name": "extra_json",
|
|
"title": "扩展JSON",
|
|
"type": "text"
|
|
},
|
|
{
|
|
"name": "created_by",
|
|
"title": "创建人",
|
|
"type": "str",
|
|
"length": 32
|
|
},
|
|
{
|
|
"name": "created_at",
|
|
"title": "创建时间",
|
|
"type": "timestamp"
|
|
},
|
|
{
|
|
"name": "updated_at",
|
|
"title": "更新时间",
|
|
"type": "timestamp"
|
|
}
|
|
],
|
|
"indexes": [
|
|
{
|
|
"name": "idx_content_type_status",
|
|
"idxtype": "index",
|
|
"idxfields": [
|
|
"content_type",
|
|
"status"
|
|
]
|
|
},
|
|
{
|
|
"name": "idx_content_org",
|
|
"idxtype": "index",
|
|
"idxfields": [
|
|
"org_id",
|
|
"content_type"
|
|
]
|
|
},
|
|
{
|
|
"name": "idx_content_sort",
|
|
"idxtype": "index",
|
|
"idxfields": [
|
|
"sort_order"
|
|
]
|
|
}
|
|
],
|
|
"codes": [
|
|
{
|
|
"field": "category_id",
|
|
"table": "cms_categories",
|
|
"valuefield": "id",
|
|
"textfield": "name"
|
|
}
|
|
]
|
|
}
|