feat: add json table definitions for all models (converted from xlsx)

This commit is contained in:
yumoqing 2026-05-21 12:46:27 +08:00
parent 0ac6c83ead
commit ce1521d46a
10 changed files with 701 additions and 0 deletions

83
models/audit_log.json Normal file
View File

@ -0,0 +1,83 @@
{
"summary": [
{
"name": "audit_log",
"title": "审计日志",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "用户id",
"type": "str",
"length": 32
},
{
"name": "permid",
"title": "权限id",
"type": "str",
"length": 32
},
{
"name": "userid",
"title": "用户id",
"type": "str",
"length": 32
},
{
"name": "params_kw",
"title": "调用参数",
"type": "text",
"length": 40000
},
{
"name": "exe_date",
"title": "调用日期",
"type": "date"
},
{
"name": "exe_timestamp",
"title": "调用时间戳",
"type": "timestamp"
},
{
"name": "remote_ip",
"title": "远程IP",
"type": "str",
"length": 40
}
],
"indexes": [
{
"name": "idx1",
"idxtype": "index",
"idxfields": [
"permid"
]
},
{
"name": "idx2",
"idxtype": "index",
"idxfields": [
"userid"
]
}
],
"codes": [
{
"field": "userid",
"table": "users",
"valuefield": "id",
"textfield": "username"
},
{
"field": "permid",
"table": "permission",
"valuefield": "id",
"textfield": "name"
}
]
}

153
models/organization.json Normal file
View File

@ -0,0 +1,153 @@
{
"summary": [
{
"name": "organization",
"title": "机构",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "机构编码",
"type": "str",
"length": 32
},
{
"name": "orgname",
"title": "机构名称",
"type": "str",
"length": 255
},
{
"name": "orgabbr",
"title": "机构简称",
"type": "str",
"length": 100
},
{
"name": "alias_name",
"title": "机构别名",
"type": "str",
"length": 255
},
{
"name": "contactor",
"title": "联系人",
"type": "str",
"length": 32
},
{
"name": "contactor_phone",
"title": "联系人电话",
"type": "str",
"length": 100
},
{
"name": "province_id",
"title": "所在省id",
"type": "str",
"length": 32
},
{
"name": "city_id",
"title": "所在城市id",
"type": "str",
"length": 32
},
{
"name": "distinct_id",
"title": "所在地区id",
"type": "str",
"length": 32
},
{
"name": "emailaddress",
"title": "邮箱",
"type": "str",
"length": 256
},
{
"name": "address",
"title": "地址",
"type": "str",
"length": 400
},
{
"name": "main_business",
"title": "主营业务描述",
"type": "str",
"length": 1000
},
{
"name": "orgcode",
"title": "组织结构代码",
"type": "str",
"length": 100
},
{
"name": "license_img",
"title": "营业执照",
"type": "str",
"length": 400
},
{
"name": "id_img",
"title": "身份证",
"type": "str",
"length": 400
},
{
"name": "parentid",
"title": "父机构id",
"type": "str",
"length": 32
},
{
"name": "org_type",
"title": "机构类型",
"type": "str",
"length": 32
},
{
"name": "sitename",
"title": "网站域名",
"type": "str",
"length": 300
}
],
"indexes": [
{
"name": "idx1",
"idxtype": "unique",
"idxfields": [
"orgname"
]
}
],
"codes": [
{
"field": "province_id",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='chnaddr'"
},
{
"field": "city_id",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='city'"
},
{
"field": "distinct_id",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='distinct'"
}
]
}

40
models/orgtypes.json Normal file
View File

@ -0,0 +1,40 @@
{
"summary": [
{
"name": "orgtypes",
"title": "机构拥有角色",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "id",
"type": "str",
"length": 32
},
{
"name": "orgid",
"title": "机构id",
"type": "str",
"length": 32
},
{
"name": "orgtypeid",
"title": "机构类型",
"type": "str",
"length": 32
}
],
"codes": [
{
"field": "orgtypeid",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='org_type'"
}
]
}

86
models/permission.json Normal file
View File

@ -0,0 +1,86 @@
{
"summary": [
{
"name": "permission",
"title": "权限",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "权限id",
"type": "str",
"length": 32
},
{
"name": "name",
"title": "名称",
"type": "str",
"length": 255
},
{
"name": "description",
"title": "描述",
"type": "str",
"length": 255
},
{
"name": "parentid",
"title": "父权限id",
"type": "str",
"length": 32
},
{
"name": "path",
"title": "路径",
"type": "str",
"length": 255
},
{
"name": "icon",
"title": "图标",
"type": "str",
"length": 255
},
{
"name": "permtype",
"title": "类型",
"type": "str",
"length": 255
},
{
"name": "need_audit",
"title": "是否审计",
"type": "str",
"length": 1
}
],
"indexes": [
{
"name": "idx1",
"idxtype": "unique",
"idxfields": [
"path"
]
}
],
"codes": [
{
"field": "permtype",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='permtype'"
},
{
"field": "need_audit",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='yesno'"
}
]
}

41
models/role.json Normal file
View File

@ -0,0 +1,41 @@
{
"summary": [
{
"name": "role",
"title": " 角色",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "角色id",
"type": "str",
"length": 32
},
{
"name": "orgtypeid",
"title": "机构类型",
"type": "str",
"length": 32,
"default": "0"
},
{
"name": "name",
"title": "角色名称",
"type": "str",
"length": 100
}
],
"codes": [
{
"field": "orgtypeid",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='org_type'"
}
]
}

View File

@ -0,0 +1,45 @@
{
"summary": [
{
"name": "rolepermission",
"title": "角色权限表",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "id",
"type": "str",
"length": 32
},
{
"name": "roleid",
"title": "角色id",
"type": "str",
"length": 32
},
{
"name": "permid",
"title": "权限id",
"type": "str",
"length": 32
}
],
"codes": [
{
"field": "permid",
"table": "permission",
"valuefield": "id",
"textfield": "path"
},
{
"field": "roleid",
"table": "(select id, concat(orgtypeid, '.', name) as name from role) as a",
"valuefield": "id",
"textfield": "name"
}
]
}

55
models/userapp.json Normal file
View File

@ -0,0 +1,55 @@
{
"summary": [
{
"name": "userapp",
"title": "用户应用",
"primary": [
"id"
],
"catelog": "entity"
}
],
"fields": [
{
"name": "id",
"title": "id",
"type": "str",
"length": 32
},
{
"name": "userid",
"title": "用户id",
"type": "str",
"length": 32,
"default": "0"
},
{
"name": "appname",
"title": "应用名称",
"type": "str",
"length": 99
},
{
"name": "apikey",
"title": "apikey",
"type": "str",
"length": 400
},
{
"name": "enabled_date",
"title": "启用日期",
"type": "date"
},
{
"name": "expired_date",
"title": "失效日期",
"type": "date"
},
{
"name": "allowed_ips",
"title": "允许IP集",
"type": "str",
"length": 200
}
]
}

View File

@ -0,0 +1,31 @@
{
"summary": [
{
"name": "userdepartment",
"title": "用户部门表",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "id",
"type": "str",
"length": 32
},
{
"name": "userid",
"title": "用户id",
"type": "str",
"length": 32
},
{
"name": "depid",
"title": "部门id",
"type": "str",
"length": 32
}
]
}

45
models/userrole.json Normal file
View File

@ -0,0 +1,45 @@
{
"summary": [
{
"name": "userrole",
"title": "用户角色",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "用户id",
"type": "str",
"length": 32
},
{
"name": "userid",
"title": "用户id",
"type": "str",
"length": 32
},
{
"name": "roleid",
"title": "角色id",
"type": "str",
"length": 32
}
],
"codes": [
{
"field": "userid",
"table": "users",
"valuefield": "id",
"textfield": "username"
},
{
"field": "roleid",
"table": "(select id, concat(orgtypeid, '.', name) as name from role) as a",
"valuefield": "id",
"textfield": "name"
}
]
}

122
models/users.json Normal file
View File

@ -0,0 +1,122 @@
{
"summary": [
{
"name": "users",
"title": "用户",
"primary": [
"id"
]
}
],
"fields": [
{
"name": "id",
"title": "用户id",
"type": "str",
"length": 32
},
{
"name": "username",
"title": "用户名",
"type": "str",
"length": 255
},
{
"name": "password",
"title": "密码",
"type": "str",
"length": 255
},
{
"name": "email",
"title": "邮件地址",
"type": "str",
"length": 255
},
{
"name": "orgid",
"title": "所属机构",
"type": "str",
"length": 32
},
{
"name": "nick_name",
"title": "显示名",
"type": "str",
"length": 255
},
{
"name": "address",
"title": "地址",
"type": "str",
"length": 255
},
{
"name": "mobile",
"title": "手机",
"type": "str",
"length": 255
},
{
"name": "user_status",
"title": "用户状态",
"type": "str",
"length": 1,
"default": "0"
},
{
"name": "created_at",
"title": "注册日期",
"type": "timestamp"
},
{
"name": "last_login",
"title": "最后登录",
"type": "timestamp",
"nullable": true
},
{
"name": "login_fail_count",
"title": "连续失败次数",
"type": "short",
"default": "0"
},
{
"name": "last_login_fail",
"title": "最后登录失败时间",
"type": "timestamp",
"nullable": true
}
],
"indexes": [
{
"name": "idx1",
"idxtype": "index",
"idxfields": [
"orgid"
]
},
{
"name": "idx2",
"idxtype": "unique",
"idxfields": [
"username"
]
}
],
"codes": [
{
"field": "user_status",
"table": "appcodes_kv",
"valuefield": "k",
"textfield": "v",
"cond": "parentid='user_status'"
},
{
"field": "orgid",
"table": "organization",
"valuefield": "id",
"textfield": "orgname"
}
]
}