创建常规的表模块
直接上示例
{
  "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的显示方式,以及如何增加插件操作功能,比如单独的审核操作,点击页面跳转等。
 



