创建常规的表模块
直接上示例
{
"base_info": {
"#meta": {
"fieldLabel": "基本信息",
"includeKey": "no",
"showTitle": "yes",
"position": "card",
"span": 3
},
"id": "string(12),formSize:2,listSize:10,disabled:true,searchable:true,hidden:true;ID",
"name": "string(12),formSize:2,listSize:16,searchable:true,required:true;名称",
"mobile": "string(16),formSize:2,listSize:8,inputType:mobile,searchable:true,unique:true,required:true;手机",
"blank2": "space,formSize:4;空白",
"isEnable": "choice,formSize:1,listSize:5,values:1_是/0_否,defaultValue:1,searchable:true,hidden:false;是否有效",
"certifyState": "choice,formSize:1,listSize:5,values:0_待审核/1_已审核_#34bf49/2_未过审_#be0027,defaultValue:0,searchable:true;审核状态",
"source_id": "string(16),formSize:1,searchable:true,hidden:true;来源ID",
"source_name": "linkId,formSize:2,listSize:10,datasource:mall_user_source,displayField:source_name,fields:id/source_name,toFields:source_id/source_name;来源名称",
"blank3": "space,formSize:4;空白",
"logo": "image,formSize:2,listSize:5,maxFileCount:1,spec:160x160,size:5M,exts:png#jpg#gif#jpeg;图片",
"video": "video,formSize:2,listSize:6,spec:800x800,size:20M,exts:mp4#avi#rmvb#rm#flv#3gp#mkv#mov#wmv#mpeg#mpg#vob#dat#asf#ts#mts#m2ts,maxFileCount:5,disabled:false;视频",
"file": "file,formSize:2,disabled:false;文件",
"remark": "string(500),formSize:8,listSize:12,multiline:T,showList:false;备注"
},
"other_info": {
"#meta": {
"fieldLabel": "其他信息",
"includeKey": "no",
"showTitle": "yes",
"position": "card",
"span": 1
},
"owl_createTime": "date,formSize:8,listSize:9,disabled:true;创建时间",
"owl_createUserId": "string(10),formSize:8,listSize:10,disabled:true;创建人",
"owl_modifyTime": "date,formSize:8,listSize:9,disabled:true;最后修改时间",
"owl_lastModifiedUserId": "string(10),formSize:8,listSize:10,disabled:true;最后修改人"
},
"bank_info": {
"#meta": {
"fieldLabel": "账户信息",
"includeKey": "no",
"position": "tab"
},
"account_name": "string(12),formSize:2,showList:false;账户名称",
"blank1": "space,formSize:6;空白",
"bank_name": "string(10),formSize:2,showList:false;开户银行",
"blank2": "space,formSize:6;空白",
"bank_no": "string(10),formSize:2,inputType:number,showList:false;银行账号"
},
"_t": "hello_general",
"#meta": {
"rem": "常规的表",
"projectName": "示例",
"changeLogEnabled": true,
"parent": ["platform"],
"visitType": ["platform"],
"tags": [
{"name": "全部","searchArgs":{}},
{"name": "待审核","searchArgs":{"certifyState": "0"}},
{"name": "已审核","searchArgs":{"certifyState": "1"}},
{"name": "未过审","searchArgs":{"certifyState": "2"}}
],
"pos": 2,
"group": {
"id": "mall_user",
"name": "会员管理",
"icon": "user",
"pos": 6,
"level2": {
"id": "user_setting",
"name": "会员综合设置",
"icon": "outline",
"pos": 1
}
},
"formPlugins": [
{
"label": "审核通过",
"id": "hello_general_doCertifyToPass",
"action": "/owl_hello_general/plugins/doCertifyToPass.jsx",
"position": "list,form",
"responseAction": "showMessage"
},
{
"label": "审核不通过",
"id": "hello_general_doCertifyToNotPass",
"action": "/owl_hello_general/plugins/doCertifyToNotPass.jsx",
"position": "list,form",
"responseAction": "showMessage",
"inputForm": {
"label": "审核不通过",
"fields": {
"certify_reason": "string(16),searchable:true,required:true,multiline:T,formSize:8;审核不通过原因"
}
}
},
{
"label": "查看详情页面",
"id": "hello_general_gotoDetailPage",
"action": "/owl_hello_general/plugins/gotoDetailPage.jsx",
"responseAction": "navigate",
"target": "_blank",
"position": "listItem"
}
]
}
}
开发说明
- 以上json直接复制保存为
hello_general.json
文件,编译并发布后,将可以在会员管理
/会员综合设置
的三级栏目下找到常规的表
的栏目,点击该栏目即可进行添删改查和审核的操作。
示例中的关键字段说明
{
"base_info": {
"#meta": {
"fieldLabel": "基本信息", //块名称
"includeKey": "no", //数据保存结构,是否包含本块的id【base_info】作为字段的一部分
"showTitle": "yes",//是否显示块名称。(yes-显示,no-不显示)
"position": "card",//块的显示方式。(card-以卡片块的方式显示,tab-tab的方式显示)
"span": 3 //占位多少,可填写值为1-4。(每个页面的每一行分4份,3表示占位3份)
},
"id": "string(12),formSize:2,listSize:10,disabled:true,searchable:true,hidden:true;ID",
"name": "string(12),formSize:2,listSize:16,searchable:true,required:true;名称",
"mobile": "string(16),formSize:2,listSize:8,inputType:mobile,searchable:true,unique:true,required:true;手机",
"blank2": "space,formSize:4;空白",
"isEnable": "choice,formSize:1,listSize:5,values:1_是/0_否,defaultValue:1,searchable:true,hidden:false;是否有效",
"certifyState": "choice,formSize:1,listSize:5,values:0_待审核/1_已审核_#34bf49/2_未过审_#be0027,defaultValue:0,searchable:true;审核状态",
"source_id": "string(16),formSize:1,searchable:true,hidden:true;来源ID",
"source_name": "linkId,formSize:2,listSize:10,datasource:mall_user_source,displayField:source_name,fields:id/source_name,toFields:source_id/source_name;来源名称",
"blank3": "space,formSize:4;空白",
"logo": "image,formSize:2,listSize:5,maxFileCount:1,spec:160x160,size:5M,exts:png#jpg#gif#jpeg;图片",
"video": "video,formSize:2,listSize:6,spec:800x800,size:20M,exts:mp4#avi#rmvb#rm#flv#3gp#mkv#mov#wmv#mpeg#mpg#vob#dat#asf#ts#mts#m2ts,maxFileCount:5,disabled:false;视频",
"file": "file,formSize:2,disabled:false;文件",
"remark": "string(500),formSize:8,listSize:12,multiline:T,showList:false;备注"
},
"other_info": {
"#meta": {
"fieldLabel": "其他信息",
"includeKey": "no",
"showTitle": "yes",
"position": "card",
"span": 1
},
"owl_createTime": "date,formSize:8,listSize:9,disabled:true;创建时间",
"owl_createUserId": "string(10),formSize:8,listSize:10,disabled:true;创建人",
"owl_modifyTime": "date,formSize:8,listSize:9,disabled:true;最后修改时间",
"owl_lastModifiedUserId": "string(10),formSize:8,listSize:10,disabled:true;最后修改人"
},
"bank_info": {
"#meta": {
"fieldLabel": "账户信息",
"includeKey": "no",
"position": "tab" //本块内容以tab的方式显示
},
"account_name": "string(12),formSize:2,showList:false;账户名称",
"blank1": "space,formSize:6;空白",
"bank_name": "string(10),formSize:2,showList:false;开户银行",
"blank2": "space,formSize:6;空白",
"bank_no": "string(10),formSize:2,inputType:number,showList:false;银行账号"
},
"_t": "hello_general",
"#meta": {
"rem": "常规的表",
"projectName": "示例",
"changeLogEnabled": true, //每次修改是否启用版本日志(true-启用,false-不启用)。
"parent": ["platform"],
"visitType": ["platform"],
"tags": [ //列表中的快速搜索tag,根据配置的搜索条件快速索索查看
{"name": "全部","searchArgs":{}},
{"name": "待审核","searchArgs":{"certifyState": "0"}},
{"name": "已审核","searchArgs":{"certifyState": "1"}},
{"name": "未过审","searchArgs":{"certifyState": "2"}}
],
"pos": 2,
"group": {
"id": "mall_user",
"name": "会员管理",
"icon": "user",
"pos": 6,
"level2": {
"id": "user_setting",
"name": "会员综合设置",
"icon": "outline",
"pos": 1
}
},
"formPlugins": [//插件操作
{
"label": "审核通过",//插件操作名称
"id": "hello_general_doCertifyToPass",//插件操作id,注意必须全局唯一命名,建议格式为:“_t” + 操作jsx的名称
"action": "/owl_hello_general/plugins/doCertifyToPass.jsx",//点击后触发的请求地址
"position": "list,form",//显示的位置,可选值有【batch,form,list,listItem,listHeader】
"responseAction": "showMessage",//操作完成后的响应方式。(showMessage-提示框的形式响应,navigate-跳转的方式)
"help": "确定要审核通过吗?"//点击后的自定义弹框提示信息
},
{
"label": "审核不通过",
"id": "hello_general_doCertifyToNotPass",
"action": "/owl_hello_general/plugins/doCertifyToNotPass.jsx",
"position": "list,form",
"responseAction": "showMessage",
"inputForm": {//点击后确认信息填写框
"label": "审核不通过",
"fields": {
"certify_reason": "string(16),searchable:true,required:true,multiline:T,formSize:8;审核不通过原因"
}
}
},
{
"label": "查看详情页面",
"id": "hello_general_gotoDetailPage",
"action": "/owl_hello_general/plugins/gotoDetailPage.jsx",
"responseAction": "navigate",
"target": "_blank", //新页面打开
"position": "listItem"
}
]
}
}
完整示例下载
特别说明
- 关于
"changeLogEnabled": true
的设置,对于经常update的对象建议关闭,以免产生太多数据占用数据库空间。 - 对于
formPlugins
中的插件操作id,要注意名称规范和保持全局唯一,因为权限管理中会用到该id。 - 下载好示例代码
hello_general.zip
后,解压放到工作目录中的models
下面,编译发布即可查看效果。 - 本示例说明了如果布局card和tab的显示方式,以及如何增加插件操作功能,比如单独的审核操作,点击页面跳转等。