7321 lines
367 KiB
JSON
7321 lines
367 KiB
JSON
{
|
||
"name": "devops",
|
||
"describe": "运维管理系统",
|
||
"avatar": "",
|
||
"version": "4.9.2",
|
||
"createdTime": "2023-5-19 09:47:50",
|
||
"updatedTime": "2024-10-29 15:11:39",
|
||
"dbConns": [],
|
||
"profile": {
|
||
"default": {
|
||
"db": "29D1CE08-4C35-4D2D-AAA9-23D93305B52E",
|
||
"dbConn": "",
|
||
"entityInitFields": [
|
||
{
|
||
"defKey": "TENANT_ID",
|
||
"defName": "租户号",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "ADB3AD14-6603-43E2-8261-114E32442B5B",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "REVISION",
|
||
"defName": "乐观锁",
|
||
"comment": "",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "92BF430E-01FA-4AEF-944F-25A142632654",
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "CREATED_BY",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C8BE2C7A-8251-4ADD-BB4F-411C5754DA62",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "CREATED_TIME",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4E471FD6-3E73-4A90-B660-51598A482409",
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "UPDATED_BY",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0DC24AA9-4CD0-45D8-95CF-FA546BE343AB",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "UPDATED_TIME",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "09F64AC4-4DEE-428F-AF64-4C103884E1AC",
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"entityInitProperties": {
|
||
"partitioned by": "(date string)",
|
||
"row format delimited": "",
|
||
"fields terminated by ','": "",
|
||
"collection items terminated by '-'": "",
|
||
"map keys terminated by ':'": "",
|
||
"store as textfile;": ""
|
||
}
|
||
},
|
||
"javaHome": "",
|
||
"sql": {
|
||
"delimiter": ""
|
||
},
|
||
"dataTypeSupports": [
|
||
{
|
||
"defKey": "MYSQL",
|
||
"id": "29D1CE08-4C35-4D2D-AAA9-23D93305B52E"
|
||
},
|
||
{
|
||
"defKey": "ORACLE",
|
||
"id": "A4E23CB7-BB01-4BD1-9F71-F73F3E15A542"
|
||
},
|
||
{
|
||
"defKey": "SQLServer",
|
||
"id": "BFC87171-C74F-494A-B7C2-76B9C55FACC9"
|
||
},
|
||
{
|
||
"defKey": "PostgreSQL",
|
||
"id": "DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022"
|
||
},
|
||
{
|
||
"defKey": "DB2",
|
||
"id": "89504F5D-94BF-4C9E-8B2E-44F37305FED5"
|
||
},
|
||
{
|
||
"defKey": "DM",
|
||
"id": "0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307"
|
||
},
|
||
{
|
||
"defKey": "GaussDB",
|
||
"id": "592C7013-143D-4E7B-AF64-0D7BF1E28230"
|
||
},
|
||
{
|
||
"defKey": "Kingbase",
|
||
"id": "77BD85E5-9D0D-4096-8427-CBA306FC9C6A"
|
||
},
|
||
{
|
||
"defKey": "GBase",
|
||
"id": "56F4B55B-F0B8-4049-9E6B-50B95C1D793A"
|
||
},
|
||
{
|
||
"defKey": "MaxCompute",
|
||
"id": "11D1FB71-A587-4217-89BA-611B8A1F83E0"
|
||
},
|
||
{
|
||
"defKey": "SQLite",
|
||
"id": "B363BE0B-F852-49B8-9B2E-F6D2174DEAC1"
|
||
},
|
||
{
|
||
"defKey": "Hive",
|
||
"id": "81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2"
|
||
},
|
||
{
|
||
"defKey": "JAVA",
|
||
"id": "797A1496-D649-4261-89B4-544132EC3F36"
|
||
},
|
||
{
|
||
"defKey": "JavaMybatis",
|
||
"id": "895CFD1D-4273-4D32-A2C4-CAC70200AB5B"
|
||
},
|
||
{
|
||
"defKey": "JavaMybatisPlus",
|
||
"id": "A2EE7B4A-CE62-4290-B00C-B26C1BF18073"
|
||
},
|
||
{
|
||
"defKey": "C#",
|
||
"id": "F3AC2415-E86B-40C6-9FEB-F4B7937D2C30"
|
||
},
|
||
{
|
||
"defKey": "Golang",
|
||
"id": "B91D99E0-9B7C-416C-8737-B760957DAF09"
|
||
},
|
||
{
|
||
"defKey": "Rust",
|
||
"id": "BDF457FD-9F98-4AC3-A705-7587B00A3BAB"
|
||
},
|
||
{
|
||
"defKey": "Doris",
|
||
"id": "483F9346-C99E-4014-A1D2-A554606BD8A3"
|
||
}
|
||
],
|
||
"codeTemplates": [
|
||
{
|
||
"type": "appCode",
|
||
"applyFor": "797A1496-D649-4261-89B4-544132EC3F36",
|
||
" JpaBean": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.entity;\n$blankline\nimport io.swagger.annotations.ApiModel;\nimport io.swagger.annotations.ApiModelProperty;\nimport javax.persistence.*;\nimport java.io.Serializable;\nimport java.util.Date;\n$blankline\n\n /**\n * {{=it.entity.defName}};{{=it.entity.comment}}\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@ApiModel(value = \"{{=it.entity.defName}}\",description = \"{{=it.entity.comment}}\")\n@Table(name=\"{{=it.entity.defKey}}\")\npublic class {{=beanClass}} implements Serializable,Cloneable{\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n {{? field.primaryKey }}\n @Id\n @GeneratedValue\n {{?}}\n @ApiModelProperty(name = \"{{=field.defName}}\",notes = \"{{=field.comment}}\")\n private {{=field.type}} {{=it.func.camel(field.defKey,false)}} ;\n{{~}}\n$blankline\n\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public {{=field.type}} get{{=it.func.camel(field.defKey,true)}}(){\n return this.{{=it.func.camel(field.defKey,false)}};\n }\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public void set{{=it.func.camel(field.defKey,true)}}({{=field.type}} {{= it.func.camel(field.defKey,false) }}){\n this.{{=it.func.camel(field.defKey,false)}}={{=it.func.camel(field.defKey,false)}};\n }\n{{~}}\n}"
|
||
},
|
||
{
|
||
"type": "appCode",
|
||
"applyFor": "F3AC2415-E86B-40C6-9FEB-F4B7937D2C30",
|
||
"Default": "using System;\nusing System.Collections.Generic;\n\n$blankline\n{{\n var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n}}\n/*\n * @author : http://www.chiner.com.cn\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n * @desc : {{=it.func.join(it.entity.defName,it.entity.comment,'-')}}\n */\nnamespace PDManer.Application\n{\n public partial class {{=it.func.camel(it.entity.defKey,true) }}\n {\n \n {{~it.entity.fields:field:index}}\n /// <summary>\n /// {{=it.func.join(field.defName,field.comment,';')}}\n /// </summary>\n public {{=field.type}} {{=it.func.camel(field.defKey,true)}} { get; set; }\n $blankline\n {{~}}\n \n }\n}",
|
||
"SqlSugar": "using System;\nusing System.Collections.Generic;\nusing SqlSugar;\n\n$blankline\n{{\n var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n var sqlSugartable='[SugarTable(\"{{=it.entity.defKey}}\", TableDescription = \"{{=it.func.join(it.entity.defName,it.entity.comment,';')}}\")]';\n}}\n/*\n * @author : xkdong@163.com\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n * @desc : {{=it.func.join(it.entity.defName,it.entity.comment,'-')}}\n */\nnamespace Model.DBModel\n{\n /// <summary>\n /// {{=it.func.join(it.entity.defName,it.entity.comment,';')}}\n /// </summary>\n {{=sqlSugartable}}\n public class {{=it.entity.defKey}}\n {\n {{~it.entity.fields:field:index}}\n /// <summary>\n /// {{=it.func.join(field.defName,field.comment,';')}}\n /// </summary>\n {{? field.primaryKey }}\n [SugarColumn(IsIdentity = true, IsPrimaryKey = true)]\n {{?}}\n public {{=field.type}} {{=it.func.camel(field.defKey,true)}}{ get; set; }\n $blankline\n {{~}}\n }\n}"
|
||
},
|
||
{
|
||
"applyFor": "895CFD1D-4273-4D32-A2C4-CAC70200AB5B",
|
||
"type": "appCode",
|
||
"Controller": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.controller;\n$blankline\nimport io.swagger.annotations.Api;\nimport io.swagger.annotations.ApiOperation;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.data.domain.Page;\nimport org.springframework.data.domain.PageRequest;\nimport org.springframework.http.ResponseEntity;\nimport org.springframework.web.bind.annotation.*;\nimport {{=pkgName}}.entity.{{=beanClass}};\nimport {{=pkgName}}.service.{{=serviceClass}};\n$blankline\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表控制层\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@Api(tags = \"{{=it.entity.defName}}对象功能接口\")\n@RestController\n@RequestMapping(\"/{{=it.func.camel(it.entity.defKey,false)}}\")\npublic class {{=beanClass}}Controller{\n @Autowired\n private {{=serviceClass}} {{=serviceVarName}};\n $blankline\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n @ApiOperation(\"通过ID查询单条数据\")\n @GetMapping(\"{{{=it.func.camel(pkVarName,false)}}}\")\n public ResponseEntity<{{=beanClass}}> queryById({{=pkDataType}} {{=pkVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.queryById({{=pkVarName}}));\n }\n $blankline\n /** \n * 分页查询\n *\n * @param {{=beanVarName}} 筛选条件\n * @param pageRequest 分页对象\n * @return 查询结果\n */\n @ApiOperation(\"分页查询\")\n @GetMapping\n public ResponseEntity<Page<{{=beanClass}}>> paginQuery({{=beanClass}} {{=beanVarName}}, PageRequest pageRequest){\n return ResponseEntity.ok({{=serviceVarName}}.paginQuery({{=beanVarName}}, pageRequest));\n }\n $blankline\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n @ApiOperation(\"新增数据\")\n @PostMapping\n public ResponseEntity<{{=beanClass}}> add({{=beanClass}} {{=beanVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.insert({{=beanVarName}}));\n }\n $blankline\n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n @ApiOperation(\"更新数据\")\n @PutMapping\n public ResponseEntity<{{=beanClass}}> edit({{=beanClass}} {{=beanVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.update({{=beanVarName}}));\n }\n $blankline\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 是否成功\n */\n @ApiOperation(\"通过主键删除数据\")\n @DeleteMapping\n public ResponseEntity<Boolean> deleteById({{=pkDataType}} {{=pkVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.deleteById({{=pkVarName}}));\n }\n}",
|
||
"Service": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.service;\n$blankline\nimport org.springframework.data.domain.Page;\nimport org.springframework.data.domain.PageRequest;\nimport {{=pkgName}}.entity.{{=beanClass}};\n$blankline\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表服务接口\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\npublic interface {{=serviceClass}}{\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n {{=beanClass}} queryById({{=pkDataType}} {{=pkVarName}});\n \n /** \n * 分页查询\n *\n * @param {{=beanVarName}} 筛选条件\n * @param pageRequest 分页对象\n * @return 查询结果\n */\n Page<{{=beanClass}}> paginQuery({{=beanClass}} {{=beanVarName}}, PageRequest pageRequest);\n\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n {{=beanClass}} insert({{=beanClass}} {{=beanVarName}});\n\n \n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n {{=beanClass}} update({{=beanClass}} {{=beanVarName}});\n\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 是否成功\n */\n boolean deleteById({{=pkDataType}} {{=pkVarName}});\n}",
|
||
"ServiceImpl": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkVarNameU = \"UndefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkVarNameU = it.func.camel(field.defKey,true);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n var mapperName = beanVarName+'Mapper';\n \n}}package {{=pkgName}}.service.impl;\n$blankline\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\nimport org.springframework.data.domain.Page;\nimport org.springframework.data.domain.PageImpl;\nimport org.springframework.data.domain.PageRequest;\nimport {{=pkgName}}.entity.{{=beanClass}};\nimport {{=pkgName}}.mapper.{{=beanClass}}Mapper;\nimport {{=pkgName}}.service.{{=serviceClass}};\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表服务实现类\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@Service\npublic class {{=serviceClass}}Impl implements {{=serviceClass}}{\n @Autowired\n private {{=beanClass}}Mapper {{=mapperName}};\n $blankline\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n public {{=beanClass}} queryById({{=pkDataType}} {{=pkVarName}}){\n return {{=mapperName}}.queryById({{=pkVarName}});\n }\n $blankline\n /** \n * 分页查询\n *\n * @param {{=beanVarName}} 筛选条件\n * @param pageRequest 分页对象\n * @return 查询结果\n */\n public Page<{{=beanClass}}> paginQuery({{=beanClass}} {{=beanVarName}}, PageRequest pageRequest){\n long total = {{=mapperName}}.count({{=beanVarName}});\n return new PageImpl<>({{=mapperName}}.queryAllByLimit({{=beanVarName}}, pageRequest), pageRequest, total);\n }\n $blankline\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n public {{=beanClass}} insert({{=beanClass}} {{=beanVarName}}){\n {{=mapperName}}.insert({{=beanVarName}});\n return {{=beanVarName}};\n }\n $blankline\n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n public {{=beanClass}} update({{=beanClass}} {{=beanVarName}}){\n {{=mapperName}}.update({{=beanVarName}});\n return queryById({{=beanVarName}}.get{{=pkVarNameU}}());\n }\n $blankline\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 是否成功\n */\n public boolean deleteById({{=pkDataType}} {{=pkVarName}}){\n int total = {{=mapperName}}.deleteById({{=pkVarName}});\n return total > 0;\n }\n}",
|
||
"Mapper": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.mapper;\n$blankline\nimport java.util.List;\nimport org.apache.ibatis.annotations.Mapper;\nimport org.apache.ibatis.annotations.Param;\nimport org.springframework.data.domain.Pageable;\nimport {{=pkgName}}.entity.{{=beanClass}};\n$blankline\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表数据库访问层\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@Mapper\npublic interface {{=beanClass}}Mapper{\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n {{=beanClass}} queryById({{=pkDataType}} {{=pkVarName}});\n \n /** \n * 分页查询指定行数据\n *\n * @param {{=beanVarName}} 查询条件\n * @param pageable 分页对象\n * @return 对象列表\n */\n List<{{=beanClass}}> queryAllByLimit({{=beanClass}} {{=beanVarName}}, @Param(\"pageable\") Pageable pageable);\n\n /** \n * 统计总行数\n *\n * @param {{=beanVarName}} 查询条件\n * @return 总行数\n */\n long count({{=beanClass}} {{=beanVarName}});\n\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 影响行数\n */\n int insert({{=beanClass}} {{=beanVarName}});\n\n /** \n * 批量新增数据\n *\n * @param entities List<{{=beanClass}}> 实例对象列表\n * @return 影响行数\n */\n int insertBatch(@Param(\"entities\") List<{{=beanClass}}> entities);\n \n /** \n * 批量新增或按主键更新数据\n *\n * @param entities List<{{=beanClass}}> 实例对象列表\n * @return 影响行数\n */\n int insertOrUpdateBatch(@Param(\"entities\") List<{{=beanClass}}> entities);\n \n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 影响行数\n */\n int update({{=beanClass}} {{=beanVarName}});\n\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 影响行数\n */\n int deleteById({{=pkDataType}} {{=pkVarName}});\n}",
|
||
"Mapper.xml": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n var pkField = \"UNDEFINED_ID\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkField = field.defKey;\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE mapper PUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\" \"http://mybatis.org/dtd/mybatis-3-mapper.dtd\">\n<mapper namespace=\"{{=pkgName}}.mapper.{{=beanClass}}Mapper\">\n <resultMap type=\"{{=pkgName}}.entity.{{=beanClass}}\" id=\"{{=beanClass}}Map\">\n {{~it.entity.fields:field:index}}\n <result property=\"{{=it.func.camel(field.defKey,false)}}\" column=\"{{=field.defKey}}\" jdbcType=\"{{=field.type}}\"/>\n {{~}}\n </resultMap>\n $blankline\n <!-- 通过ID查询单条数据 -->\n <select id=\"queryById\" resultMap=\"{{=beanClass}}Map\">\n select\n {{=it.entity.fields.map(function(e,i){return e.defKey}).join(',')}}\n from {{=it.entity.defKey}}\n where {{=pkField}} = #{{{=pkVarName}}}\n </select>\n $blankline\n <!--分页查询指定行数据-->\n <select id=\"queryAllByLimit\" resultMap=\"{{=beanClass}}Map\">\n select\n {{=it.entity.fields.map(function(e,i){return e.defKey}).join(',')}}\n from {{=it.entity.defKey}}\n <where>\n {{~it.entity.fields:field:index}}\n <if test=\"{{=it.func.camel(field.defKey,false)}} != null and {{=it.func.camel(field.defKey,false)}} != ''\">\n and {{=field.defKey}} = #{{{=it.func.camel(field.defKey,false)}}}\n </if>\n {{~}}\n </where>\n limit #{pageable.offset}, #{pageable.pageSize}\n </select>\n $blankline\n <!--统计总行数-->\n <select id=\"count\" resultType=\"java.lang.Long\">\n select count(1)\n from {{=it.entity.defKey}}\n <where>\n {{~it.entity.fields:field:index}}\n <if test=\"{{=it.func.camel(field.defKey,false)}} != null and {{=it.func.camel(field.defKey,false)}} != ''\">\n and {{=field.defKey}} = #{{{=it.func.camel(field.defKey,false)}}}\n </if>\n {{~}}\n </where>\n </select>\n $blankline\n <!--新增数据-->\n <insert id=\"insert\" keyProperty=\"{{=pkField}}\" useGeneratedKeys=\"true\">\n insert into {{=it.entity.defKey}}({{=it.entity.fields.map(function(e,i){return e.defKey}).join(',')}})\n values ({{=it.entity.fields.map(function(e,i){return '#{'+it.func.camel(e.defKey,false)+'}'}).join(',')}})\n </insert>\n $blankline\n <!-- 批量新增数据 -->\n <insert id=\"insertBatch\" keyProperty=\"{{=pkField}}\" useGeneratedKeys=\"true\">\n insert into {{=it.entity.defKey}}({{=it.entity.fields.map(function(e,i){return e.defKey}).join(',')}})\n values\n <foreach collection=\"entities\" item=\"entity\" separator=\",\">\n ({{=it.entity.fields.map(function(e,i){return '#{entity.'+it.func.camel(e.defKey,false)+'}'}).join(',')}})\n </foreach>\n </insert>\n $blankline\n <!-- 批量新增或按主键更新数据 -->\n <insert id=\"insertOrUpdateBatch\" keyProperty=\"{{=pkField}}\" useGeneratedKeys=\"true\">\n insert into {{=it.entity.defKey}}({{=it.entity.fields.map(function(e,i){return e.defKey}).join(',')}})\n values\n <foreach collection=\"entities\" item=\"entity\" separator=\",\">\n ({{=it.entity.fields.map(function(e,i){return '#{entity.'+it.func.camel(e.defKey,false)+'}'}).join(',')}})\n </foreach>\n on duplicate key update\n {{=it.entity.fields.map(function(e,i){return e.defKey + '=values('+e.defKey+')'}).join(',\\n\\t\\t')}}\n </insert>\n $blankline\n <!-- 更新数据 -->\n <update id=\"update\">\n update {{=it.entity.defKey}}\n <set>\n {{~it.entity.fields:field:index}}\n <if test=\"{{=it.func.camel(field.defKey,false)}} != null and {{=it.func.camel(field.defKey,false)}} != ''\">\n {{=field.defKey}} = #{{{=it.func.camel(field.defKey,false)}}},\n </if>\n {{~}}\n </set>\n where {{=pkField}} = #{{{=pkVarName}}}\n </update>\n $blankline\n <!--通过主键删除-->\n <delete id=\"deleteById\">\n delete from {{=it.entity.defKey}} where {{=pkField}} = #{{{=pkVarName}}}\n </delete>\n</mapper>\n\n",
|
||
"Entity": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.entity;\n$blankline\nimport io.swagger.annotations.ApiModel;\nimport io.swagger.annotations.ApiModelProperty;\nimport java.io.Serializable;\nimport java.util.Date;\n$blankline\n\n /**\n * {{=it.entity.defName}};{{=it.entity.comment}}\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@ApiModel(value = \"{{=it.entity.defName}}\",description = \"{{=it.entity.comment}}\")\npublic class {{=beanClass}} implements Serializable,Cloneable{\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n @ApiModelProperty(name = \"{{=field.defName}}\",notes = \"{{=field.comment}}\")\n private {{=field.type}} {{=it.func.camel(field.defKey,false)}} ;\n{{~}}\n$blankline\n\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public {{=field.type}} get{{=it.func.camel(field.defKey,true)}}(){\n return this.{{=it.func.camel(field.defKey,false)}};\n }\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public void set{{=it.func.camel(field.defKey,true)}}({{=field.type}} {{= it.func.camel(field.defKey,false) }}){\n this.{{=it.func.camel(field.defKey,false)}}={{=it.func.camel(field.defKey,false)}};\n }\n{{~}}\n}"
|
||
},
|
||
{
|
||
"applyFor": "A2EE7B4A-CE62-4290-B00C-B26C1BF18073",
|
||
"type": "appCode",
|
||
"Controller": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.controller;\n$blankline\nimport java.util.List;\nimport io.swagger.annotations.Api;\nimport io.swagger.annotations.ApiOperation;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.data.domain.PageImpl;\nimport org.springframework.data.domain.PageRequest;\nimport org.springframework.http.ResponseEntity;\nimport org.springframework.web.bind.annotation.*;\nimport {{=pkgName}}.entity.{{=beanClass}};\nimport {{=pkgName}}.service.{{=serviceClass}};\n$blankline\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表控制层\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@Api(tags = \"{{=it.entity.defName}}对象功能接口\")\n@RestController\n@RequestMapping(\"/{{=it.func.camel(it.entity.defKey,false)}}\")\npublic class {{=beanClass}}Controller{\n @Autowired\n private {{=serviceClass}} {{=serviceVarName}};\n $blankline\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n @ApiOperation(\"通过ID查询单条数据\")\n @GetMapping(\"{{{=it.func.camel(pkVarName,false)}}}\")\n public ResponseEntity<{{=beanClass}}> queryById({{=pkDataType}} {{=pkVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.queryById({{=pkVarName}}));\n }\n $blankline\n /** \n * 分页查询\n *\n * @param {{=beanVarName}} 筛选条件\n * @param pageRequest 分页对象\n * @return 查询结果\n */\n @ApiOperation(\"分页查询\")\n @GetMapping\n public ResponseEntity<PageImpl<{{=beanClass}}>> paginQuery({{=beanClass}} {{=beanVarName}}, PageRequest pageRequest){\n //1.分页参数\n long current = pageRequest.getPageNumber();\n long size = pageRequest.getPageSize();\n\n //2.分页查询\n /*把Mybatis的分页对象做封装转换,MP的分页对象上有一些SQL敏感信息,还是通过spring的分页模型来封装数据吧*/\n com.baomidou.mybatisplus.extension.plugins.pagination.Page<{{=beanClass}}> pageResult = {{=serviceVarName}}.paginQuery({{=beanVarName}}, current,size);\n\n //3. 分页结果组装\n List<{{=beanClass}}> dataList = pageResult.getRecords();\n long total = pageResult.getTotal();\n PageImpl<{{=beanClass}}> retPage = new PageImpl<{{=beanClass}}>(dataList,pageRequest,total);\n return ResponseEntity.ok(retPage);\n }\n $blankline\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n @ApiOperation(\"新增数据\")\n @PostMapping\n public ResponseEntity<{{=beanClass}}> add({{=beanClass}} {{=beanVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.insert({{=beanVarName}}));\n }\n $blankline\n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n @ApiOperation(\"更新数据\")\n @PutMapping\n public ResponseEntity<{{=beanClass}}> edit({{=beanClass}} {{=beanVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.update({{=beanVarName}}));\n }\n $blankline\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 是否成功\n */\n @ApiOperation(\"通过主键删除数据\")\n @DeleteMapping\n public ResponseEntity<Boolean> deleteById({{=pkDataType}} {{=pkVarName}}){\n return ResponseEntity.ok({{=serviceVarName}}.deleteById({{=pkVarName}}));\n }\n}",
|
||
"Service": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.service;\n$blankline\nimport com.baomidou.mybatisplus.extension.plugins.pagination.Page;\nimport {{=pkgName}}.entity.{{=beanClass}};\n$blankline\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表服务接口\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\npublic interface {{=serviceClass}}{\n $blankline\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n {{=beanClass}} queryById({{=pkDataType}} {{=pkVarName}});\n $blankline\n /**\n * 分页查询\n *\n * @param {{=beanVarName}} 筛选条件\n * @param current 当前页码\n * @param size 每页大小\n * @return\n */\n Page<{{=beanClass}}> paginQuery({{=beanClass}} {{=beanVarName}}, long current, long size);\n\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n {{=beanClass}} insert({{=beanClass}} {{=beanVarName}});\n\n \n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n {{=beanClass}} update({{=beanClass}} {{=beanVarName}});\n\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 是否成功\n */\n boolean deleteById({{=pkDataType}} {{=pkVarName}});\n}",
|
||
"ServiceImpl": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkVarNameU = \"UndefinedId\";\n var pkFieldKey = \"UNDEFINED\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkFieldKey = field.defKey;\n pkVarName = it.func.camel(field.defKey,false);\n pkVarNameU = it.func.camel(field.defKey,true);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n var mapperName = beanVarName+'Mapper';\n \n}}package {{=pkgName}}.service.impl;\n$blankline\nimport cn.hutool.core.util.StrUtil;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\nimport com.baomidou.mybatisplus.core.metadata.IPage;\nimport com.baomidou.mybatisplus.extension.plugins.pagination.Page;\nimport com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;\nimport com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;\n\nimport {{=pkgName}}.entity.{{=beanClass}};\nimport {{=pkgName}}.mapper.{{=beanClass}}Mapper;\nimport {{=pkgName}}.service.{{=serviceClass}};\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表服务实现类\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@Service\npublic class {{=serviceClass}}Impl implements {{=serviceClass}}{\n @Autowired\n private {{=beanClass}}Mapper {{=mapperName}};\n $blankline\n /** \n * 通过ID查询单条数据 \n *\n * @param {{=pkVarName}} 主键\n * @return 实例对象\n */\n public {{=beanClass}} queryById({{=pkDataType}} {{=pkVarName}}){\n return {{=mapperName}}.selectById({{=pkVarName}});\n }\n $blankline\n /**\n * 分页查询\n *\n * @param {{=beanVarName}} 筛选条件\n * @param current 当前页码\n * @param size 每页大小\n * @return\n */\n public Page<{{=beanClass}}> paginQuery({{=beanClass}} {{=beanVarName}}, long current, long size){\n //1. 构建动态查询条件\n LambdaQueryWrapper<{{=beanClass}}> queryWrapper = new LambdaQueryWrapper<>();\n {{~it.entity.fields.filter(function(e){return e[\"type\"]===\"String\"&&e.defKey !== pkFieldKey}):field:index}}\n if(StrUtil.isNotBlank({{=beanVarName}}.get{{=it.func.camel(field.defKey,true)}}())){\n queryWrapper.eq({{=beanClass}}::get{{=it.func.camel(field.defKey,true)}}, {{=beanVarName}}.get{{=it.func.camel(field.defKey,true)}}());\n }\n {{~}}\n\n //2. 执行分页查询\n Page<{{=beanClass}}> pagin = new Page<>(current , size , true);\n IPage<{{=beanClass}}> selectResult = {{=mapperName}}.selectByPage(pagin , queryWrapper);\n pagin.setPages(selectResult.getPages());\n pagin.setTotal(selectResult.getTotal());\n pagin.setRecords(selectResult.getRecords());\n\n //3. 返回结果\n return pagin;\n }\n $blankline\n /** \n * 新增数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n public {{=beanClass}} insert({{=beanClass}} {{=beanVarName}}){\n {{=mapperName}}.insert({{=beanVarName}});\n return {{=beanVarName}};\n }\n $blankline\n /** \n * 更新数据\n *\n * @param {{=beanVarName}} 实例对象\n * @return 实例对象\n */\n public {{=beanClass}} update({{=beanClass}} {{=beanVarName}}){\n //1. 根据条件动态更新\n LambdaUpdateChainWrapper<{{=beanClass}}> chainWrapper = new LambdaUpdateChainWrapper<{{=beanClass}}>({{=mapperName}});\n {{~it.entity.fields.filter(function(e){return e[\"type\"]===\"String\"&&e.defKey !== pkFieldKey}):field:index}}\n if(StrUtil.isNotBlank({{=beanVarName}}.get{{=it.func.camel(field.defKey,true)}}())){\n chainWrapper.eq({{=beanClass}}::get{{=it.func.camel(field.defKey,true)}}, {{=beanVarName}}.get{{=it.func.camel(field.defKey,true)}}());\n }\n {{~}}\n //2. 设置主键,并更新\n chainWrapper.set({{=beanClass}}::get{{=pkVarNameU}}, {{=beanVarName}}.get{{=pkVarNameU}}());\n boolean ret = chainWrapper.update();\n //3. 更新成功了,查询最最对象返回\n if(ret){\n return queryById({{=beanVarName}}.get{{=pkVarNameU}}());\n }else{\n return {{=beanVarName}};\n }\n }\n $blankline\n /** \n * 通过主键删除数据\n *\n * @param {{=pkVarName}} 主键\n * @return 是否成功\n */\n public boolean deleteById({{=pkDataType}} {{=pkVarName}}){\n int total = {{=mapperName}}.deleteById({{=pkVarName}});\n return total > 0;\n }\n}",
|
||
"Mapper": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.mapper;\n$blankline\n\nimport com.baomidou.mybatisplus.core.conditions.Wrapper;\nimport com.baomidou.mybatisplus.core.mapper.BaseMapper;\nimport com.baomidou.mybatisplus.core.metadata.IPage;\nimport com.baomidou.mybatisplus.core.toolkit.Constants;\nimport org.apache.ibatis.annotations.Mapper;\nimport org.apache.ibatis.annotations.Param;\nimport {{=pkgName}}.entity.{{=beanClass}};\n$blankline\n\n /**\n * {{=it.entity.defName}};({{=it.entity.defKey}})表数据库访问层\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@Mapper\npublic interface {{=beanClass}}Mapper extends BaseMapper<{{=beanClass}}>{\n /** \n * 分页查询指定行数据\n *\n * @param page 分页参数\n * @param wrapper 动态查询条件\n * @return 分页对象列表\n */\n IPage<{{=beanClass}}> selectByPage(IPage<{{=beanClass}}> page , @Param(Constants.WRAPPER) Wrapper<{{=beanClass}}> wrapper);\n}",
|
||
"Mapper.xml": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n var pkField = \"UNDEFINED_ID\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkField = field.defKey;\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE mapper PUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\" \"http://mybatis.org/dtd/mybatis-3-mapper.dtd\">\n$blankline\n\n<mapper namespace=\"{{=pkgName}}.mapper.{{=beanClass}}Mapper\">\n <select id=\"selectByPage\" resultType=\"{{=pkgName}}.entity.{{=beanClass}}\">\n select * from user ${ew.customSqlSegment}\n </select>\n</mapper>\n\n",
|
||
"Entity": "{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n var serviceClass = beanClass+'Service';\n var serviceVarName= beanVarName+'Service';\n \n}}package {{=pkgName}}.entity;\n$blankline\nimport io.swagger.annotations.ApiModel;\nimport io.swagger.annotations.ApiModelProperty;\nimport com.baomidou.mybatisplus.annotation.TableName;\nimport com.baomidou.mybatisplus.annotation.TableId;\nimport java.io.Serializable;\nimport java.util.Date;\n$blankline\n\n /**\n * {{=it.entity.defName}};{{=it.entity.comment}}\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n */\n@ApiModel(value = \"{{=it.entity.defName}}\",description = \"{{=it.entity.comment}}\")\n@TableName(\"{{=it.entity.defKey}}\")\npublic class {{=beanClass}} implements Serializable,Cloneable{\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n @ApiModelProperty(name = \"{{=field.defName}}\",notes = \"{{=field.comment}}\")\n {{? field.primaryKey }}\n @TableId\n {{?}}\n private {{=field.type}} {{=it.func.camel(field.defKey,false)}} ;\n{{~}}\n$blankline\n\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public {{=field.type}} get{{=it.func.camel(field.defKey,true)}}(){\n return this.{{=it.func.camel(field.defKey,false)}};\n }\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public void set{{=it.func.camel(field.defKey,true)}}({{=field.type}} {{= it.func.camel(field.defKey,false) }}){\n this.{{=it.func.camel(field.defKey,false)}}={{=it.func.camel(field.defKey,false)}};\n }\n{{~}}\n}"
|
||
},
|
||
{
|
||
"applyFor": "29D1CE08-4C35-4D2D-AAA9-23D93305B52E",
|
||
"type": "dbDDL",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n `{{=field.defKey}}` {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTO_INCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }} COMMENT '{{=it.func.join(field.defName,field.comment,';')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.entity.defName,it.entity.comment,';') }}';\n$blankline\n",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"deleteTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"deleteIndex": "{{~ it.entity.indexes:index}}\nDROP INDEX IF EXISTS {{=index.defKey}} ;\n{{~}}",
|
||
"message": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChanged(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('代码:'+(before.defKey||'NULL')+'->'+(after.defKey||'NULL'));\n }\n if(before.defName !== after.defName){\n ret.push('显示名称:'+(before.defName||'NULL')+'->'+(after.defName||'NULL'));\n }\n if(before.comment !== after.comment){\n ret.push('说明:'+(before.comment||'NULL')+'->'+(after.comment||'NULL'));\n }\n if(ret.length>0){\n return ' 基本信息:\\n\\t'+ret.join('\\n\\t');\n }\n return '';\n };\n \n function buildAddedDesc(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n \n for (let field of fieldAdded) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildRemovedDesc(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n \n for (let field of fieldRemoved) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildModifiedDesc(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n for (let field1 of fieldModified) { \n let row = [];\n let field = field1.before;\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n}}\n\n\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n{{? modifyEntities && modifyEntities.length > 0}}\n/* --------------- 修改表 --------------- */\n{{~ modifyEntities:entity}}\n{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]{{let changeText=baseChanged(entity.data.baseChanged);}}\n{{=baseChanged(entity.data.baseChanged)}}\n {{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n 修改字段:\n {{='\\t'}}{{=buildModifiedDesc(entity).join('\\n\\t')}}{{?}}{{\n /*计算是否调整了属性*/\n let propAdded = entity.data.propAdded || [];\n let propRemoved = entity.data.propRemoved || [];\n let propModified = entity.data.propModified || [];\n let changed = propAdded.length>0 || propRemoved.length>0 || propModified.length>0;\n /*计算关联是否调整*/\n let refEntityAdd = entity.data.refEntityAdd || [];\n let refEntityRemoved = entity.data.refEntityRemoved || [];\n let relaArray = [];\n for (let rela of refEntityAdd) {\n relaArray.push('建立关联:'+rela.defKey+'['+rela.defName+']');\n }\n for (let rela of refEntityRemoved) {\n relaArray.push('解除关联:'+rela.defKey+'['+rela.defName+']');\n }\n /*索引是否修改过*/\n let indexChanged = entity.data.indexChanged;\n }}{{=indexChanged?'\\n\\t更改了索引':''}}{{=changed?'\\n\\t更改了属性':''}}{{=relaArray.length>0?('\\n\\t'+relaArray.join('\\n\\t')):''}}\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n 添加字段:\n{{='\\t'}}{{=buildAddedDesc(entity).join('\\n\\t')}}\n{{?}}{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n 删除字段:\n{{='\\t'}}{{=buildRemovedDesc(entity).join('\\n\\t')}}\n{{?}}\n{{~}}\n{{?}}\n",
|
||
"update": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChangedDDL(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('ALTER TABLE '+before.defKey+' RENAME TO '+after.defKey);\n }\n let commentText = '';\n let commentChanged = false;\n if(before.defName !== after.defName){\n commentText = after.defName;\n commentChanged = true;\n }\n if(before.comment !== after.comment){\n commentChanged = true;\n if(commentText){\n commentText = (commentText+ ';'+after.comment)\n }else{\n commentText = after.comment\n }\n }\n if(commentChanged){\n ret.push('ALTER TABLE '+after.defKey+' COMMENT \\''+commentText+'\\'');\n }\n let baseText = '-- 基本信息:\\n';\n return baseText+ret.join(';\\n')+';';\n };\n \n function buildAddedDDL(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n if(fieldAdded.length == 0){\n return '';\n }\n \n let firstDDL = 'ALTER TABLE '+entity.data.baseInfo.defKey;\n for (let field of fieldAdded) { \n let ddlItem = 'ADD COLUMN `'+field.defKey+'` '+field.dbType;\n /*处理数据类型长度*/\n if(field.len>0){\n ddlItem += ('('+field.len);\n if(parseInt(field.scale)>0){\n ddlItem += (','+field.scale);\n }\n ddlItem += ')';\n }\n if(field.notNull){\n ddlItem += ' NOT NULL';\n }\n if(field.autoIncrement){\n ddlItem += ' AUTO_INCREMENT';\n }\n if(field.defaultValue){\n ddlItem += (' DEFAULT ' + field.defaultValue);\n }\n ddlItem += (' COMMENT \\''+field.defName+';'+field.comment+'\\'');\n \n if(field.index>0 && field.afterFieldKey){\n ddlItem += (' AFTER '+field.afterFieldKey);\n }\n ret.push(ddlItem);\n }\n return firstDDL+'\\n'+ret.join(',\\n');\n };\n \n function buildRemovedDDL(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n if(fieldRemoved.length == 0){\n return '';\n }\n \n let firstDDL = 'ALTER TABLE '+entity.data.baseInfo.defKey;\n for (let field of fieldRemoved) { \n ret.push('DROP '+field.defKey);\n }\n return firstDDL+'\\n'+ret.join(',\\n');\n };\n \n function buildModifiedDDL(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n let firstDDL = 'ALTER TABLE '+entity.data.baseInfo.defKey;\n for (let field of fieldModified) { \n let changeDDL = '';\n let before = field.before || {};\n let after = field.after || {};\n if(before.defKey === after.defKey){\n changeDDL += (' MODIFY COLUMN `'+after.defKey+'`');\n }else{\n changeDDL += (' CHANGE COLUMN `'+before.defKey+'` `'+after.defKey+'`');\n }\n changeDDL += (' '+after.dbType);\n if(after.len>0){\n changeDDL += ('('+after.len);\n if(parseInt(after.scale)>0){\n changeDDL += (','+after.scale);\n }\n changeDDL += ')';\n }\n if(after.notNull){\n changeDDL += ' NOT NULL';\n }\n let defaultValue = '';\n if(after.defaultValue != null && after.defaultValue.length>0){\n defaultValue = (after.defaultValue);\n }else{\n defaultValue = 'NULL';\n }\n if(defaultValue != 'NULL'){\n changeDDL += (' DEFAULT ' + defaultValue);\n }\n\n let comment = after.defName;\n if(after.comment){\n comment = comment + ';' + (after.comment||'');\n }\n if(comment){\n changeDDL += (' COMMENT \\''+comment+'\\';');\n }\n \n ret.push(firstDDL+' '+changeDDL);\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=it.func.createDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=it.func.dropDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* --------------- 修改表 --------------- */\n-- 修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]\n{{=baseChangedDDL(entity.data.baseChanged)}}\n{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n-- 修改字段:\n{{=buildModifiedDDL(entity).join('\\n')}}\n{{?}}{{\n/*索引是否修改过*/\nlet indexChanged = entity.data.indexChanged;\n}}\n{{? indexChanged }}\n{{=it.func.indexRebuildDDL(entity.data.baseInfo,entity.data.newIndexes,entity.data.fullFields,entity['type'])}}\n{{?}}\n\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n-- 添加字段:\n{{=buildAddedDDL(entity)}};\n{{?}}\n\n{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n-- 删除字段:\n{{=buildRemovedDDL(entity)}};\n{{?}}\n{{~}}\n{{?}}"
|
||
},
|
||
{
|
||
"applyFor": "A4E23CB7-BB01-4BD1-9F71-F73F3E15A542",
|
||
"type": "dbDDL",
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? '' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"deleteTable": "DROP TABLE {{=it.entity.defKey}};",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"deleteIndex": "{{~ it.entity.indexes:index}}\nDROP INDEX {{=index.defKey}} ;\n{{~}}",
|
||
"message": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChanged(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('代码:'+(before.defKey||'NULL')+'->'+(after.defKey||'NULL'));\n }\n if(before.defName !== after.defName){\n ret.push('显示名称:'+(before.defName||'NULL')+'->'+(after.defName||'NULL'));\n }\n if(before.comment !== after.comment){\n ret.push('说明:'+(before.comment||'NULL')+'->'+(after.comment||'NULL'));\n }\n if(ret.length>0){\n return ' 基本信息:\\n\\t'+ret.join('\\n\\t');\n }\n return '';\n };\n \n function buildAddedDesc(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n \n for (let field of fieldAdded) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildRemovedDesc(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n \n for (let field of fieldRemoved) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildModifiedDesc(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n for (let field1 of fieldModified) { \n let row = [];\n let field = field1.before;\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* -------------------------------------------------- */\n创建表:\n{{~ createEntities:entity}}\n {{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* -------------------------------------------------- */\n删除表:\n{{~ dropEntities:entity}}\n {{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* -------------------------------------------------- */\n修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]{{let changeText=baseChanged(entity.data.baseChanged);}}\n{{=baseChanged(entity.data.baseChanged)}}\n {{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n 添加字段:\n {{='\\t'}}{{=buildAddedDesc(entity).join('\\n\\t')}}\n {{?}}{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n 删除字段:\n {{='\\t'}}{{=buildRemovedDesc(entity).join('\\n\\t')}}\n {{?}}{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n 修改字段:\n {{='\\t'}}{{=buildModifiedDesc(entity).join('\\n\\t')}}\n {{?}}{{\n /*计算是否调整了属性*/\n let propAdded = entity.data.propAdded || [];\n let propRemoved = entity.data.propRemoved || [];\n let propModified = entity.data.propModified || [];\n let changed = propAdded.length>0 || propRemoved.length>0 || propModified.length>0;\n /*计算关联是否调整*/\n let refEntityAdd = entity.data.refEntityAdd || [];\n let refEntityRemoved = entity.data.refEntityRemoved || [];\n let relaArray = [];\n for (let rela of refEntityAdd) {\n relaArray.push('\\n\\t建立关联:'+rela.defKey+'['+rela.defName+']');\n }\n for (let rela of refEntityRemoved) {\n relaArray.push('\\n\\t解除关联:'+rela.defKey+'['+rela.defName+']');\n }\n /*索引是否修改过*/\n let indexChanged = entity.data.indexChanged;\n }}\n{{=indexChanged?'\\n\\t更改了索引':''}}\n{{=changed?'\\n\\t更改了属性':''}}\n{{=relaArray.length>0?relaArray.join(''):''}}\n{{~}}\n{{?}}",
|
||
"update": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChangedDDL(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push(`ALTER TABLE ${before.defKey} RENAME TO ${after.defKey}`);\n }\n let commentText = '';\n let commentChanged = false;\n if(before.defName !== after.defName){\n commentText = after.defName;\n commentChanged = true;\n }\n if(before.comment !== after.comment){\n commentChanged = true;\n if(commentText){\n commentText = (commentText+ ';'+after.comment)\n }else{\n commentText = after.comment\n }\n }\n if(commentChanged){\n let myText = `COMMENT ON TABLE ${after.defKey} IS '${commentText}'`;\n ret.push(myText);\n }\n let baseText = '-- 基本信息:\\n';\n return baseText+ret.join(';\\n')+';';\n };\n \n function buildAddedDDL(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n if(fieldAdded.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldAdded) { \n let ddlItem = `ADD (${field.defKey} ${field.dbType}`;\n /*处理数据类型长度*/\n if(field.len>0){\n ddlItem += ('('+field.len);\n if(parseInt(field.scale)>0){\n ddlItem += (','+field.scale);\n }\n ddlItem += ')';\n }\n let defaultValue = field.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n ddlItem += (' DEFAULT ' + defaultValue);\n }\n if(field.notNull){\n ddlItem += ' NOT NULL';\n }\n ddlItem += ')';\n ret.push(`${firstDDL} ${ddlItem}`);\n \n /*处理字段注释*/\n let fieldComments = [];\n if(field.defName != null &&field.defName.length>0){\n fieldComments.push(field.defName);\n }\n if(field.comment != null &&field.comment.length>0){\n fieldComments.push(field.comment);\n }\n let commentText = fieldComments.join(';');\n if(commentText != null && commentText.length > 0){\n let commentDDL = `COMMENT ON COLUMN ${entity.data.baseInfo.defKey}.${field.defKey} IS '${commentText}'`;\n ret.push(commentDDL);\n }\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildRemovedDDL(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n if(fieldRemoved.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldRemoved) { \n ret.push(`${firstDDL} DROP COLUMN ${field.defKey}`);\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildModifiedDDL(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldModified) { \n let changeDDL = '';\n let before = field.before || {};\n let after = field.after || {};\n if(before.defKey !== after.defKey){\n let renameText = `ALTER TABLE ${entity.data.baseInfo.defKey} RENAME COLUMN ${before.defKey} TO ${after.defKey};`;\n ret.push(renameText);\n }\n /*如果没有变化,则不生成变更语句*/\n if(before.dbType === after.dbType \n && before['len'] === after['len'] \n && before.scale === after.scale\n && before.primaryKey === after.primaryKey\n && before.notNull === after.notNull\n && before.autoIncrement === after.autoIncrement\n && before.defaultValue === after.defaultValue){\n continue;\n }\n changeDDL += ('MODIFY ('+after.defKey+'');\n changeDDL += (' '+after.dbType);\n if(after.len>0){\n changeDDL += ('('+after.len);\n if(parseInt(after.scale)>0){\n changeDDL += (','+after.scale);\n }\n changeDDL += ')';\n }\n let defaultValue = after.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n changeDDL += (' DEFAULT ' + defaultValue);\n }\n \n if(after.notNull){\n changeDDL += ' NOT NULL';\n }\n changeDDL += ')';\n ret.push(`${firstDDL} ${changeDDL};`);\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=it.func.createDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=it.func.dropDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* --------------- 修改表 --------------- */\n-- 修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]\n{{=baseChangedDDL(entity.data.baseChanged)}}\n{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n-- 修改字段:\n{{=buildModifiedDDL(entity).join('\\n')}}\n{{?}}{{\n/*索引是否修改过*/\nlet indexChanged = entity.data.indexChanged;\n}}\n{{? indexChanged }}\n{{=it.func.indexRebuildDDL(entity.data.baseInfo,entity.data.newIndexes,entity.data.fullFields,entity['type'])}}\n{{?}}\n\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n-- 添加字段:\n{{=buildAddedDDL(entity)}};\n{{?}}\n\n{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n-- 删除字段:\n{{=buildRemovedDDL(entity)}};\n{{?}}\n{{~}}\n{{?}}"
|
||
},
|
||
{
|
||
"applyFor": "BFC87171-C74F-494A-B7C2-76B9C55FACC9",
|
||
"type": "dbDDL",
|
||
"createTable": "IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[{{=it.entity.defKey}}]') AND type in (N'U')) DROP TABLE [dbo].[{{=it.entity.defKey}}];\n\nCREATE TABLE [dbo].[{{=it.entity.defKey}}](\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? ' IDENTITY(1,1)' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}EXEC sp_addextendedproperty 'MS_Description', '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}', 'SCHEMA', dbo, 'table', {{=it.entity.defKey}}, null, null;{{?}}\n{{~it.entity.fields:field:index}}\nEXEC sp_addextendedproperty 'MS_Description', '{{=it.func.join(field.defName,field.comment,';')}}', 'SCHEMA', dbo, 'table', {{=it.entity.defKey}}, 'column', {{=field.defKey}};\n{{~}}\n",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"deleteTable": "IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[{{=it.entity.defKey}}]') AND type in (N'U')) DROP TABLE [dbo].[{{=it.entity.defKey}}];",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"deleteIndex": "",
|
||
"message": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChanged(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('代码:'+(before.defKey||'NULL')+'->'+(after.defKey||'NULL'));\n }\n if(before.defName !== after.defName){\n ret.push('显示名称:'+(before.defName||'NULL')+'->'+(after.defName||'NULL'));\n }\n if(before.comment !== after.comment){\n ret.push('说明:'+(before.comment||'NULL')+'->'+(after.comment||'NULL'));\n }\n if(ret.length>0){\n return ' 基本信息:\\n\\t'+ret.join('\\n\\t');\n }\n return '';\n };\n \n function buildAddedDesc(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n \n for (let field of fieldAdded) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildRemovedDesc(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n \n for (let field of fieldRemoved) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildModifiedDesc(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n for (let field1 of fieldModified) { \n let row = [];\n let field = field1.before;\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n}}\n\n\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n{{? modifyEntities && modifyEntities.length > 0}}\n/* --------------- 修改表 --------------- */\n{{~ modifyEntities:entity}}\n{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]{{let changeText=baseChanged(entity.data.baseChanged);}}\n{{=baseChanged(entity.data.baseChanged)}}\n {{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n 修改字段:\n {{='\\t'}}{{=buildModifiedDesc(entity).join('\\n\\t')}}{{?}}{{\n /*计算是否调整了属性*/\n let propAdded = entity.data.propAdded || [];\n let propRemoved = entity.data.propRemoved || [];\n let propModified = entity.data.propModified || [];\n let changed = propAdded.length>0 || propRemoved.length>0 || propModified.length>0;\n /*计算关联是否调整*/\n let refEntityAdd = entity.data.refEntityAdd || [];\n let refEntityRemoved = entity.data.refEntityRemoved || [];\n let relaArray = [];\n for (let rela of refEntityAdd) {\n relaArray.push('建立关联:'+rela.defKey+'['+rela.defName+']');\n }\n for (let rela of refEntityRemoved) {\n relaArray.push('解除关联:'+rela.defKey+'['+rela.defName+']');\n }\n /*索引是否修改过*/\n let indexChanged = entity.data.indexChanged;\n }}{{=indexChanged?'\\n\\t更改了索引':''}}{{=changed?'\\n\\t更改了属性':''}}{{=relaArray.length>0?('\\n\\t'+relaArray.join('\\n\\t')):''}}\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n 添加字段:\n{{='\\t'}}{{=buildAddedDesc(entity).join('\\n\\t')}}\n{{?}}{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n 删除字段:\n{{='\\t'}}{{=buildRemovedDesc(entity).join('\\n\\t')}}\n{{?}}\n{{~}}\n{{?}}",
|
||
"update": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChangedDDL(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push(`EXEC sp_rename '${before.defKey}','${after.defKey}'`);\n }\n let commentText = '';\n let commentChanged = false;\n if(before.defName !== after.defName){\n commentText = after.defName;\n commentChanged = true;\n }\n if(before.comment !== after.comment){\n commentChanged = true;\n if(commentText){\n commentText = (commentText+ ';'+after.comment)\n }else{\n commentText = after.comment\n }\n }\n if(commentChanged){\n let myText = `IF ((SELECT COUNT(*) FROM ::fn_listextendedproperty('MS_Description','SCHEMA', 'dbo','TABLE', '${after.defKey}', NULL, NULL)) > 0)\n \\n\\tEXEC sp_updateextendedproperty 'MS_Description', '${commentText}','SCHEMA', 'dbo','TABLE', '${after.defKey}'\n \\nELSE\n \\n\\tEXEC sp_addextendedproperty 'MS_Description', '${commentText}', 'SCHEMA', 'dbo','TABLE', '${after.defKey}'\n `;\n ret.push(myText);\n /*ret.push('ALTER TABLE '+after.defKey+' COMMENT \\''+commentText+'\\'');*/\n }\n let baseText = '-- 基本信息:\\n';\n return baseText+ret.join(';\\n')+';';\n };\n \n function buildAddedDDL(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n if(fieldAdded.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE [dbo].[${entity.data.baseInfo.defKey}]`;\n for (let field of fieldAdded) { \n let ddlItem = `ADD [${field.defKey}] ${field.dbType}`;\n /*处理数据类型长度*/\n if(field.len>0){\n ddlItem += ('('+field.len);\n if(parseInt(field.scale)>0){\n ddlItem += (','+field.scale);\n }\n ddlItem += ')';\n }\n let defaultValue = field.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n ddlItem += (' DEFAULT ' + defaultValue);\n }\n if(field.notNull){\n ddlItem += ' NOT NULL';\n }\n ret.push(`${firstDDL} ${ddlItem}`);\n \n /*处理字段注释*/\n let fieldComments = [];\n if(field.defName != null &&field.defName.length>0){\n fieldComments.push(field.defName);\n }\n if(field.comment != null &&field.comment.length>0){\n fieldComments.push(field.comment);\n }\n let commentText = fieldComments.join(';');\n if(commentText != null && commentText.length > 0){\n let commentDDL = `EXEC sp_addextendedproperty 'MS_Description', N'${commentText}','SCHEMA', N'dbo','TABLE', N'${entity.data.baseInfo.defKey}','COLUMN', N'${field.defKey}'`;\n ret.push(commentDDL);\n }\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildRemovedDDL(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n if(fieldRemoved.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE [dbo].[${entity.data.baseInfo.defKey}]`;\n for (let field of fieldRemoved) { \n ret.push(`${firstDDL} DROP COLUMN [${field.defKey}]`);\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildModifiedDDL(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n let firstDDL = `ALTER TABLE [dbo].[${entity.data.baseInfo.defKey}]`;\n for (let field of fieldModified) { \n let changeDDL = '';\n let before = field.before || {};\n let after = field.after || {};\n if(before.defKey === after.defKey){\n changeDDL += (' ALTER COLUMN ['+after.defKey+']');\n }else{\n let renameText = `EXEC sp_rename '[dbo].[${entity.data.baseInfo.defKey}].[${before.defKey}]','${after.defKey}','COLUMN';`;\n ret.push(renameText);\n continue;\n }\n changeDDL += (' '+after.dbType);\n if(after.len>0){\n changeDDL += ('('+after.len);\n if(parseInt(after.scale)>0){\n changeDDL += (','+after.scale);\n }\n changeDDL += ')';\n }\n let defaultValue = after.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n changeDDL += (' DEFAULT ' + defaultValue);\n }\n \n if(after.notNull){\n changeDDL += ' NOT NULL';\n }\n ret.push(`${firstDDL} ${changeDDL};`);\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=it.func.createDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=it.func.dropDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* --------------- 修改表 --------------- */\n-- 修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]\n{{=baseChangedDDL(entity.data.baseChanged)}}\n{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n-- 修改字段:\n{{=buildModifiedDDL(entity).join('\\n')}}\n{{?}}{{\n/*索引是否修改过*/\nlet indexChanged = entity.data.indexChanged;\n}}\n{{? indexChanged }}\n{{=it.func.indexRebuildDDL(entity.data.baseInfo,entity.data.newIndexes,entity.data.fullFields,entity['type'])}}\n{{?}}\n\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n-- 添加字段:\n{{=buildAddedDDL(entity)}};\n{{?}}\n\n{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n-- 删除字段:\n{{=buildRemovedDDL(entity)}};\n{{?}}\n{{~}}\n{{?}}"
|
||
},
|
||
{
|
||
"applyFor": "DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022",
|
||
"type": "dbDDL",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{? field.autoIncrement}}SERIAL{{??}}{{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"deleteTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"deleteIndex": "{{~ it.entity.indexes:index}}\nDROP INDEX {{=index.defKey}} ;\n{{~}}",
|
||
"message": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChanged(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('代码:'+(before.defKey||'NULL')+'->'+(after.defKey||'NULL'));\n }\n if(before.defName !== after.defName){\n ret.push('显示名称:'+(before.defName||'NULL')+'->'+(after.defName||'NULL'));\n }\n if(before.comment !== after.comment){\n ret.push('说明:'+(before.comment||'NULL')+'->'+(after.comment||'NULL'));\n }\n if(ret.length>0){\n return ' 基本信息:\\n\\t'+ret.join('\\n\\t');\n }\n return '';\n };\n \n function buildAddedDesc(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n \n for (let field of fieldAdded) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildRemovedDesc(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n \n for (let field of fieldRemoved) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildModifiedDesc(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n for (let field1 of fieldModified) { \n let row = [];\n let field = field1.before;\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n}}\n\n\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n{{? modifyEntities && modifyEntities.length > 0}}\n/* --------------- 修改表 --------------- */\n{{~ modifyEntities:entity}}\n{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]{{let changeText=baseChanged(entity.data.baseChanged);}}\n{{=baseChanged(entity.data.baseChanged)}}\n {{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n 修改字段:\n {{='\\t'}}{{=buildModifiedDesc(entity).join('\\n\\t')}}{{?}}{{\n /*计算是否调整了属性*/\n let propAdded = entity.data.propAdded || [];\n let propRemoved = entity.data.propRemoved || [];\n let propModified = entity.data.propModified || [];\n let changed = propAdded.length>0 || propRemoved.length>0 || propModified.length>0;\n /*计算关联是否调整*/\n let refEntityAdd = entity.data.refEntityAdd || [];\n let refEntityRemoved = entity.data.refEntityRemoved || [];\n let relaArray = [];\n for (let rela of refEntityAdd) {\n relaArray.push('建立关联:'+rela.defKey+'['+rela.defName+']');\n }\n for (let rela of refEntityRemoved) {\n relaArray.push('解除关联:'+rela.defKey+'['+rela.defName+']');\n }\n /*索引是否修改过*/\n let indexChanged = entity.data.indexChanged;\n }}{{=indexChanged?'\\n\\t更改了索引':''}}{{=changed?'\\n\\t更改了属性':''}}{{=relaArray.length>0?('\\n\\t'+relaArray.join('\\n\\t')):''}}\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n 添加字段:\n{{='\\t'}}{{=buildAddedDesc(entity).join('\\n\\t')}}\n{{?}}{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n 删除字段:\n{{='\\t'}}{{=buildRemovedDesc(entity).join('\\n\\t')}}\n{{?}}\n{{~}}\n{{?}}",
|
||
"update": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChangedDDL(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push(`ALTER TABLE ${before.defKey} RENAME TO ${after.defKey}`);\n }\n let commentText = '';\n let commentChanged = false;\n if(before.defName !== after.defName){\n commentText = after.defName;\n commentChanged = true;\n }\n if(before.comment !== after.comment){\n commentChanged = true;\n if(commentText){\n commentText = (commentText+ ';'+after.comment)\n }else{\n commentText = after.comment\n }\n }\n if(commentChanged){\n let myText = `COMMENT ON TABLE ${after.defKey} IS '${commentText}'`;\n ret.push(myText);\n }\n let baseText = '-- 基本信息:\\n';\n return baseText+ret.join(';\\n')+';';\n };\n \n function buildAddedDDL(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n if(fieldAdded.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldAdded) { \n let ddlItem = `ADD COLUMN ${field.defKey} ${field.dbType}`;\n /*处理数据类型长度*/\n if(field.len>0){\n ddlItem += ('('+field.len);\n if(parseInt(field.scale)>0){\n ddlItem += (','+field.scale);\n }\n ddlItem += ')';\n }\n if(field.notNull){\n ddlItem += ' NOT NULL';\n } \n let defaultValue = field.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n ddlItem += (' DEFAULT ' + defaultValue);\n }\n\n ret.push(`${firstDDL} ${ddlItem}`);\n \n /*处理字段注释*/\n let fieldComments = [];\n if(field.defName != null &&field.defName.length>0){\n fieldComments.push(field.defName);\n }\n if(field.comment != null &&field.comment.length>0){\n fieldComments.push(field.comment);\n }\n let commentText = fieldComments.join(';');\n if(commentText != null && commentText.length > 0){\n let commentDDL = `COMMENT ON COLUMN ${entity.data.baseInfo.defKey}.${field.defKey} IS '${commentText}'`;\n ret.push(commentDDL);\n }\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildRemovedDDL(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n if(fieldRemoved.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldRemoved) { \n ret.push(`${firstDDL} DROP COLUMN ${field.defKey}`);\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildModifiedDDL(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldModified) { \n let before = field.before || {};\n let after = field.after || {};\n if(before.defKey !== after.defKey){\n let renameText = `ALTER TABLE ${entity.data.baseInfo.defKey} RENAME COLUMN ${before.defKey} TO ${after.defKey};`;\n ret.push(renameText);\n }\n /*如果没有变化,则不生成变更语句*/\n if(before.dbType === after.dbType \n && before['len'] === after['len'] \n && before.scale === after.scale\n && before.primaryKey === after.primaryKey\n && before.notNull === after.notNull\n && before.autoIncrement === after.autoIncrement\n && before.defaultValue === after.defaultValue){\n continue;\n }\n if(before.dbType !== after.dbType || before.len !== after.len || before.scale !== after.scale){\n let dbTypeDDL = `ALTER TABLE ${entity.data.baseInfo.defKey} ALTER COLUMN ${after.defKey} TYPE ${before.dbType}`;\n if(after.len>0){\n dbTypeDDL += ('('+after.len);\n if(parseInt(after.scale)>0){\n dbTypeDDL += (','+after.scale);\n }\n dbTypeDDL += ')';\n }\n ret.push(dbTypeDDL+';');\n }\n \n if(before.defaultValue !== after.defaultValue){\n let defaultDDL = '';\n let defaultValue = after.defaultValue;\n defaultValue = (defaultValue==null)?\"NULL\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n defaultDDL += ('SET DEFAULT ' + defaultValue);\n }\n let defaultTpl = `ALTER TABLE ${entity.data.baseInfo.defKey} ALTER COLUMN ${defaultDDL};`;\n ret.push(defaultTpl);\n }\n \n if(before.notNull !== after.notNull){\n let notNullDDL= 'SET NULL';\n if(after.notNull){\n let notNullDDL= 'SET NOT NULL';\n }\n let notNullTpl = `ALTER TABLE ${entity.data.baseInfo.defKey} ALTER COLUMN ${notNullDDL};`;\n ret.push(notNullTpl);\n }\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=it.func.createDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=it.func.dropDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* --------------- 修改表 --------------- */\n-- 修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]\n{{=baseChangedDDL(entity.data.baseChanged)}}\n{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n-- 修改字段:\n{{=buildModifiedDDL(entity).join('\\n')}}\n{{?}}{{\n/*索引是否修改过*/\nlet indexChanged = entity.data.indexChanged;\n}}\n{{? indexChanged }}\n-- 索引重建\n{{=it.func.indexRebuildDDL(entity.data.baseInfo,entity.data.newIndexes,entity.data.fullFields,entity['type'])}}\n{{?}}\n\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n-- 添加字段:\n{{=buildAddedDDL(entity)}};\n{{?}}\n\n{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n-- 删除字段:\n{{=buildRemovedDDL(entity)}};\n{{?}}\n{{~}}\n{{?}}"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "89504F5D-94BF-4C9E-8B2E-44F37305FED5",
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? '' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n"
|
||
},
|
||
{
|
||
"applyFor": "0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307",
|
||
"type": "dbDDL",
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'IDENTITY(1,1)' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }} COMMENT '{{=it.func.join(field.defName,field.comment,';')}}'{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"deleteTable": "",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"deleteIndex": "",
|
||
"message": "",
|
||
"update": ""
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "592C7013-143D-4E7B-AF64-0D7BF1E28230",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? ' AUTO_INCREMENT' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "77BD85E5-9D0D-4096-8427-CBA306FC9C6A",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n"
|
||
},
|
||
{
|
||
"applyFor": "11D1FB71-A587-4217-89BA-611B8A1F83E0",
|
||
"type": "dbDDL",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTO_INCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }} COMMENT '{{=it.func.join(field.defName,field.comment,';')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT '{{=it.func.join(it.entity.defName,it.entity.comment,';') }}';\n$blankline\n",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"deleteTable": "",
|
||
"createIndex": "",
|
||
"deleteIndex": "",
|
||
"message": "",
|
||
"update": ""
|
||
},
|
||
{
|
||
"applyFor": "B363BE0B-F852-49B8-9B2E-F6D2174DEAC1",
|
||
"type": "dbDDL",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTOINCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }} --{{=it.func.join(field.defName,field.comment,';')}}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) ; --{{=it.func.join(it.entity.defName,it.entity.comment,';') }}\n$blankline\n",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "dictSQLTemplate",
|
||
"content": "/* 插入字典总表[{{=it.dict.defKey}}-{{=it.dict.defName}}] */\nINSERT INTO SYS_DICT(KEY_,LABEL,INTRO,REVISION) VALUES('{{=it.dict.defKey}}','{{=it.dict.defName}}','{{=it.dict.intro}}',1);\n/* 插入字典明细表 */\n{{~it.dict.items:item:index}}\nINSERT INTO SYS_DICT_ITEM(DICT_KEY,KEY_,LABEL,SORT_,INTRO,REVISION) VALUES('{{=it.dict.defKey}}','{{=item.defKey}}','{{=item.defName}}','{{=item.sort}}','{{=item.intro}}',1);\n{{~}}",
|
||
"isDefault": true
|
||
},
|
||
{
|
||
"applyFor": "81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2",
|
||
"type": "dbDDL",
|
||
"createTable": "/**字段名,关键字等全部用的小写*/\ndrop table if exists {{=it.entity.defKey}};\n/**补充上库名,external关键字根据建表规范看是否添加*/\ncreate [external] table if not exists {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n/**这里把varchar,char,text,date,datetime字段全部映射为string类型.tinyint unsigned,bit,Integer,tinyint,smallint,mediumint映射为int类型,int unsigned映射为bigint.其它自定义映射规则根据自己情况修改*/\n/**当长度>0只有为decimal类型或double类型时才保留长度和小数的位数*/\n{{~it.entity.fields:field:index}}\n {{=it.func.lowerCase(field.defKey)}} {{=it.func.lowerCase(field.type)=='varchar'||it.func.lowerCase(field.type)=='char'||it.func.lowerCase(field.type)=='text'||it.func.lowerCase(field.type)=='date'||it.func.lowerCase(field.type)=='datetime' ? 'string':it.func.lowerCase(field.type)=='tinyint unsigned'||it.func.lowerCase(field.type)=='bit'||it.func.lowerCase(field.type)=='integer'||it.func.lowerCase(field.type)=='tinyint'||it.func.lowerCase(field.type)=='smallint'||it.func.lowerCase(field.type)=='mediumint' ? 'int':it.func.lowerCase(field.type)=='int unsigned' ? 'bigint':it.func.lowerCase(field.type)}}{{?field.len>0&&(it.func.lowerCase(field.type)=='decimal'||it.func.lowerCase(field.type)=='double')}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{=')'}}{{?}}{{?}} comment '{{=it.func.join(field.defName,field.comment,'')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n{{?}}\n)\n{{\n let partitionedBy = it.entity.properties['partitioned by'];\n partitionedBy = partitionedBy?partitionedBy:'请在扩展属性中配置[partitioned by]属性';\n}}\ncomment '{{=it.func.join(it.entity.defName,';') }}'\n/**是否分区表,分区字段名和字段注释自定义*/\n[partitioned by {{=partitionedBy}}]\n/**文件存储格式自定义*/\n[stored as orc]\n/**hdfs上的地址自定义*/\n[location xxx]\n;",
|
||
"createView": "",
|
||
"deleteTable": "",
|
||
"createIndex": "",
|
||
"deleteIndex": "",
|
||
"message": "",
|
||
"update": ""
|
||
},
|
||
{
|
||
"applyFor": "B91D99E0-9B7C-416C-8737-B760957DAF09",
|
||
"type": "appCode",
|
||
"content": "{{\n var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1<10?\"0\"+today.getMonth():today.getMonth();\n var days=today.getDate()<10?\"0\"+today.getDate():today.getDate();\n var hours = today.getHours()<10?\"0\"+today.getHours():today.getHours(); \n\tvar minutes = today.getMinutes()<10?\"0\"+today.getMinutes():today.getMinutes(); \n\tvar seconds = today.getSeconds()<10?\"0\"+today.getSeconds():today.getSeconds(); \n}}\n// Package models {{=it.func.join(it.entity.defName,it.entity.comment,',')}}\n// author : http://www.liyang.love\n// date : {{=fullYear}}-{{=month}}-{{=days}} {{=hours}}:{{=minutes}}\n// desc : {{=it.func.join(it.entity.defName,it.entity.comment,',')}}\npackage models\n\n$blankline\n\n// {{=it.func.camel(it.entity.defKey,true) }} {{=it.func.join(it.entity.defName,it.entity.comment,',')}}。\n// 说明:{{=it.entity.comment}}\n// 表名:{{=it.entity.defKey}}\n// group: {{=it.func.camel(it.entity.defKey,true) }}\n// obsolete:\n// appliesto:go 1.8+;\n// namespace:hongmouer.his.models.{{=it.func.camel(it.entity.defKey,true) }}\n// assembly: hongmouer.his.models.go\n// class:HongMouer.HIS.Models.{{=it.func.camel(it.entity.defKey,true) }}\n// version:{{=fullYear}}-{{=month}}-{{=days}} {{=hours}}:{{=minutes}}\ntype {{=it.func.camel(it.entity.defKey,true) }} struct {\n {{~it.entity.fields:field:index}}\n {{=formatGoLang(it.func.camel(field.defKey,true),null,field,it.entity.fields,null,1)}} {{=formatGoLang(field.type,\"type\",field,it.entity.fields,10,3)}} `gorm:\"column:{{=field.primaryKey?\"primaryKey;\":\"\"}}{{=field.defKey}}\" json:\"{{=it.func.camel(field.defKey,true)}}\"` {{=formatGoLang(\"gorm:column:\"+field.defKey+\" json:\"+it.func.camel(field.defKey,true),null,field,it.entity.fields,null,2)}} //type:{{=formatGoLang(field.type,\"type\",field,it.entity.fields,null,3)}} comment:{{=formatGoLang(it.func.join(field.defName,field.comment,';'),\"defName\",field,it.entity.fields,null,4)}} version:{{=fullYear}}-{{=month}}-{{=days}} {{=hours}}:{{=minutes}}\n {{~}}\n}\n\n\n$blankline\n// TableName 表名:{{=it.entity.defKey}},{{=it.entity.defName}}。\n// 说明:{{=it.entity.comment}}\nfunc (ZentaoUserInfo) TableName() string {\n\treturn \"{{=it.entity.defKey}}\"\n}\n\n{{\n\nfunction formatGoLang(str, fieldName, field, fileds, emptLength, isFiled) {\n var maxLength = 0;\n\n if (isFiled == 1) {\n for (var i = 0; i < fileds.length; i++) {\n if (getBlength(it.func.camel(fileds[i].defKey, true)) > maxLength) {\n maxLength = getBlength(it.func.camel(fileds[i].defKey, true)) + 2;\n }\n }\n } else if (isFiled == 2) {\n for (var i = 0; i < fileds.length; i++) {\n var newStr = \"gorm:column:\" + fileds[i].defKey + \" json:\" + it.func.camel(fileds[i].defKey, true);\n if (getBlength(newStr) > maxLength) {\n maxLength = getBlength(newStr) + 2;\n }\n }\n var empt = \"\";\n var strLength = getBlength(str);\n if (field.primaryKey) {\n strLength += getBlength(\"primaryKey;\");\n }\n for (var j = 0; j < maxLength - strLength; j++) {\n empt += ' ';\n }\n return empt;\n } else if (isFiled == 3) {\n /*获取某个字段的最大长度*/\n for (var i = 0; i < fileds.length; i++) {\n var newStr = eval(\"fileds[\" + i + \"].\" + fieldName);\n if (getBlength(newStr) > maxLength) {\n maxLength = getBlength(newStr) + 1;\n }\n }\n } else if (isFiled == 4) {\n /*获取某个字段的最大长度*/\n for (var i = 0; i < fileds.length; i++) {\n var newStr = fileds[i].comment + \";\" + fileds[i].defName;\n if (getBlength(newStr) > maxLength) {\n maxLength = getBlength(newStr) + 1;\n }\n }\n }\n else {\n maxLength = emptLength;\n }\n\n var strLength = getBlength(str);\n for (var j = 0; j < maxLength - strLength; j++) {\n str += ' ';\n }\n return str;\n}\n\nfunction getBlength(str) {\n var n = 0;\n for (var i = str.length; i--;) {\n n += str.charCodeAt(i) > 255 ? 2 : 1;\n }\n return n;\n} \n\n}}"
|
||
},
|
||
{
|
||
"applyFor": "BDF457FD-9F98-4AC3-A705-7587B00A3BAB",
|
||
"type": "appCode",
|
||
"struct": "use chrono::{DateTime, Local};\nuse serde::{Deserialize, Serialize};\n$blankline\n/// {{=it.entity.defName}}\n#[derive(Serialize, Deserialize, Debug, Clone)]\n{{ var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n \n var pkVarName = \"undefinedId\";\n var pkDataType = \"String\";\n it.entity.fields.forEach(function(field){\n if(field.primaryKey){\n pkVarName = it.func.camel(field.defKey,false);\n pkDataType = field[\"type\"];\n return;\n }\n });\n \n var pkgName = it.entity.env.base.nameSpace;\n var beanClass = it.entity.env.base.codeRoot;\n var beanVarName = beanClass.charAt(0).toLowerCase()+beanClass.slice(1);\n \n}}\npub struct {{=beanClass}} {\n {{~it.entity.fields:field:index}}\n {{\n let fieldDateType = field.type;\n if(!field.notNull){\n fieldDateType = 'Option<'+fieldDateType+'>';\n }\n }}/// {{=field.defName}}\n pub {{=it.func.camel(field.defKey,false)}}: {{=fieldDateType}},\n {{~}}\n}\n"
|
||
},
|
||
{
|
||
"applyFor": "56F4B55B-F0B8-4049-9E6B-50B95C1D793A",
|
||
"type": "dbDDL",
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? '' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline",
|
||
"deleteTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"deleteIndex": "{{~ it.entity.indexes:index}}\nDROP INDEX {{=index.defKey}} ;\n{{~}}",
|
||
"message": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChanged(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('代码:'+(before.defKey||'NULL')+'->'+(after.defKey||'NULL'));\n }\n if(before.defName !== after.defName){\n ret.push('显示名称:'+(before.defName||'NULL')+'->'+(after.defName||'NULL'));\n }\n if(before.comment !== after.comment){\n ret.push('说明:'+(before.comment||'NULL')+'->'+(after.comment||'NULL'));\n }\n if(ret.length>0){\n return ' 基本信息:\\n\\t'+ret.join('\\n\\t');\n }\n return '';\n };\n \n function buildAddedDesc(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n \n for (let field of fieldAdded) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildRemovedDesc(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n \n for (let field of fieldRemoved) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildModifiedDesc(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n for (let field1 of fieldModified) { \n let row = [];\n let field = field1.before;\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* -------------------------------------------------- */\n创建表:\n{{~ createEntities:entity}}\n {{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* -------------------------------------------------- */\n删除表:\n{{~ dropEntities:entity}}\n {{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* -------------------------------------------------- */\n修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]{{let changeText=baseChanged(entity.data.baseChanged);}}\n{{=baseChanged(entity.data.baseChanged)}}\n {{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n 添加字段:\n {{='\\t'}}{{=buildAddedDesc(entity).join('\\n\\t')}}\n {{?}}{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n 删除字段:\n {{='\\t'}}{{=buildRemovedDesc(entity).join('\\n\\t')}}\n {{?}}{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n 修改字段:\n {{='\\t'}}{{=buildModifiedDesc(entity).join('\\n\\t')}}\n {{?}}{{\n /*计算是否调整了属性*/\n let propAdded = entity.data.propAdded || [];\n let propRemoved = entity.data.propRemoved || [];\n let propModified = entity.data.propModified || [];\n let changed = propAdded.length>0 || propRemoved.length>0 || propModified.length>0;\n /*计算关联是否调整*/\n let refEntityAdd = entity.data.refEntityAdd || [];\n let refEntityRemoved = entity.data.refEntityRemoved || [];\n let relaArray = [];\n for (let rela of refEntityAdd) {\n relaArray.push('\\n\\t建立关联:'+rela.defKey+'['+rela.defName+']');\n }\n for (let rela of refEntityRemoved) {\n relaArray.push('\\n\\t解除关联:'+rela.defKey+'['+rela.defName+']');\n }\n /*索引是否修改过*/\n let indexChanged = entity.data.indexChanged;\n }}\n{{=indexChanged?'\\n\\t更改了索引':''}}\n{{=changed?'\\n\\t更改了属性':''}}\n{{=relaArray.length>0?relaArray.join(''):''}}\n{{~}}\n{{?}}",
|
||
"update": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChangedDDL(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push(`ALTER TABLE ${before.defKey} RENAME TO ${after.defKey}`);\n }\n let commentText = '';\n let commentChanged = false;\n if(before.defName !== after.defName){\n commentText = after.defName;\n commentChanged = true;\n }\n if(before.comment !== after.comment){\n commentChanged = true;\n if(commentText){\n commentText = (commentText+ ';'+after.comment)\n }else{\n commentText = after.comment\n }\n }\n if(commentChanged){\n let myText = `COMMENT ON TABLE ${after.defKey} IS '${commentText}'`;\n ret.push(myText);\n }\n let baseText = '-- 基本信息:\\n';\n return baseText+ret.join(';\\n')+';';\n };\n \n function buildAddedDDL(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n if(fieldAdded.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldAdded) { \n let ddlItem = `ADD (${field.defKey} ${field.dbType}`;\n /*处理数据类型长度*/\n if(field.len>0){\n ddlItem += ('('+field.len);\n if(parseInt(field.scale)>0){\n ddlItem += (','+field.scale);\n }\n ddlItem += ')';\n }\n let defaultValue = field.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n ddlItem += (' DEFAULT ' + defaultValue);\n }\n if(field.notNull){\n ddlItem += ' NOT NULL';\n }\n ddlItem += ')';\n ret.push(`${firstDDL} ${ddlItem}`);\n \n /*处理字段注释*/\n let fieldComments = [];\n if(field.defName != null &&field.defName.length>0){\n fieldComments.push(field.defName);\n }\n if(field.comment != null &&field.comment.length>0){\n fieldComments.push(field.comment);\n }\n let commentText = fieldComments.join(';');\n if(commentText != null && commentText.length > 0){\n let commentDDL = `COMMENT ON COLUMN ${entity.data.baseInfo.defKey}.${field.defKey} IS '${commentText}'`;\n ret.push(commentDDL);\n }\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildRemovedDDL(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n if(fieldRemoved.length == 0){\n return '';\n }\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldRemoved) { \n ret.push(`${firstDDL} DROP COLUMN ${field.defKey}`);\n }\n return '\\n'+ret.join(';\\n');\n };\n \n function buildModifiedDDL(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n let firstDDL = `ALTER TABLE ${entity.data.baseInfo.defKey}`;\n for (let field of fieldModified) { \n let changeDDL = '';\n let before = field.before || {};\n let after = field.after || {};\n if(before.defKey !== after.defKey){\n let renameText = `ALTER TABLE ${entity.data.baseInfo.defKey} RENAME COLUMN ${before.defKey} TO ${after.defKey};`;\n ret.push(renameText);\n }\n /*如果没有变化,则不生成变更语句*/\n if(before.dbType === after.dbType \n && before['len'] === after['len'] \n && before.scale === after.scale\n && before.primaryKey === after.primaryKey\n && before.notNull === after.notNull\n && before.autoIncrement === after.autoIncrement\n && before.defaultValue === after.defaultValue){\n continue;\n }\n changeDDL += ('MODIFY ('+after.defKey+'');\n changeDDL += (' '+after.dbType);\n if(after.len>0){\n changeDDL += ('('+after.len);\n if(parseInt(after.scale)>0){\n changeDDL += (','+after.scale);\n }\n changeDDL += ')';\n }\n let defaultValue = after.defaultValue;\n defaultValue = (defaultValue==null)?\"\":(\"\"+defaultValue);\n if(defaultValue.length>0){\n changeDDL += (' DEFAULT ' + defaultValue);\n }\n \n if(after.notNull){\n changeDDL += ' NOT NULL';\n }\n changeDDL += ')';\n ret.push(`${firstDDL} ${changeDDL};`);\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=it.func.createDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=it.func.dropDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* --------------- 修改表 --------------- */\n-- 修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]\n{{=baseChangedDDL(entity.data.baseChanged)}}\n{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n-- 修改字段:\n{{=buildModifiedDDL(entity).join('\\n')}}\n{{?}}{{\n/*索引是否修改过*/\nlet indexChanged = entity.data.indexChanged;\n}}\n{{? indexChanged }}\n{{=it.func.indexRebuildDDL(entity.data.baseInfo,entity.data.newIndexes,entity.data.fullFields,entity['type'])}}\n{{?}}\n\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n-- 添加字段:\n{{=buildAddedDDL(entity)}};\n{{?}}\n\n{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n-- 删除字段:\n{{=buildRemovedDDL(entity)}};\n{{?}}\n{{~}}\n{{?}}"
|
||
},
|
||
{
|
||
"applyFor": "483F9346-C99E-4014-A1D2-A554606BD8A3",
|
||
"type": "dbDDL",
|
||
"createTable": "{{let dorisDistributedBy = it.entity.properties['dorisDistributedBy'];\n dorisDistributedBy = dorisDistributedBy?dorisDistributedBy:'请在表的扩展属性中配置[dorisDistributedBy]属性';\n}}CREATE TABLE IF NOT EXISTS {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n `{{=field.defKey}}` {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}} {{= field.notNull ? 'NOT NULL' : '' }} COMMENT '{{=it.func.join(field.defName,field.comment,';')}}' {{= index < it.entity.fields.length-1 ? ',' : '' }}\n{{~}}\n) COMMENT '{{=it.func.join(it.entity.defName,it.entity.comment,';') }}'\n{{=dorisDistributedBy}} ;\n$blankline\n",
|
||
"createView": "",
|
||
"deleteTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};",
|
||
"createIndex": "",
|
||
"deleteIndex": "",
|
||
"message": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChanged(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('代码:'+(before.defKey||'NULL')+'->'+(after.defKey||'NULL'));\n }\n if(before.defName !== after.defName){\n ret.push('显示名称:'+(before.defName||'NULL')+'->'+(after.defName||'NULL'));\n }\n if(before.comment !== after.comment){\n ret.push('说明:'+(before.comment||'NULL')+'->'+(after.comment||'NULL'));\n }\n if(ret.length>0){\n return ' 基本信息:\\n\\t'+ret.join('\\n\\t');\n }\n return '';\n };\n \n function buildAddedDesc(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n \n for (let field of fieldAdded) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildRemovedDesc(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n \n for (let field of fieldRemoved) { \n let row = [];\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n \n function buildModifiedDesc(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n for (let field1 of fieldModified) { \n let row = [];\n let field = field1.before;\n row.push(field.defKey+'['+field.defName+']');\n ret.push(row.join(\"\"))\n }\n return ret;\n };\n}}\n\n\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=entity.data.defKey}}[{{=entity.data.defName}}]\n{{~}}\n{{?}}\n\n{{? modifyEntities && modifyEntities.length > 0}}\n/* --------------- 修改表 --------------- */\n{{~ modifyEntities:entity}}\n{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]{{let changeText=baseChanged(entity.data.baseChanged);}}\n{{=baseChanged(entity.data.baseChanged)}}\n {{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n 修改字段:\n {{='\\t'}}{{=buildModifiedDesc(entity).join('\\n\\t')}}{{?}}{{\n /*计算是否调整了属性*/\n let propAdded = entity.data.propAdded || [];\n let propRemoved = entity.data.propRemoved || [];\n let propModified = entity.data.propModified || [];\n let changed = propAdded.length>0 || propRemoved.length>0 || propModified.length>0;\n /*计算关联是否调整*/\n let refEntityAdd = entity.data.refEntityAdd || [];\n let refEntityRemoved = entity.data.refEntityRemoved || [];\n let relaArray = [];\n for (let rela of refEntityAdd) {\n relaArray.push('建立关联:'+rela.defKey+'['+rela.defName+']');\n }\n for (let rela of refEntityRemoved) {\n relaArray.push('解除关联:'+rela.defKey+'['+rela.defName+']');\n }\n /*索引是否修改过*/\n let indexChanged = entity.data.indexChanged;\n }}{{=indexChanged?'\\n\\t更改了索引':''}}{{=changed?'\\n\\t更改了属性':''}}{{=relaArray.length>0?('\\n\\t'+relaArray.join('\\n\\t')):''}}\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n 添加字段:\n{{='\\t'}}{{=buildAddedDesc(entity).join('\\n\\t')}}\n{{?}}{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n 删除字段:\n{{='\\t'}}{{=buildRemovedDesc(entity).join('\\n\\t')}}\n{{?}}\n{{~}}\n{{?}}\n",
|
||
"update": "{{\n let createEntities = it.changes.filter(function(row){return (row.opt==='add'&&row['type']==='entity');});\n let dropEntities = it.changes.filter(function(row){return (row.opt==='delete'&&row['type']==='entity');});\n let modifyEntities = it.changes.filter(function(row){return (row.opt==='update'&&row['type']==='entity');});\n \n function baseChangedDDL(beforeAfter){\n if(beforeAfter == null){\n return '';\n }\n let ret = [];\n let before = beforeAfter.before || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n let after = beforeAfter.after || {\"defKey\":\"\",\"defName\":\"\",\"comment\":\"\"};\n if(before.defKey !== after.defKey){\n ret.push('ALTER TABLE '+before.defKey+' RENAME TO '+after.defKey);\n }\n let commentText = '';\n let commentChanged = false;\n if(before.defName !== after.defName){\n commentText = after.defName;\n commentChanged = true;\n }\n if(before.comment !== after.comment){\n commentChanged = true;\n if(commentText){\n commentText = (commentText+ ';'+after.comment)\n }else{\n commentText = after.comment\n }\n }\n if(commentChanged){\n ret.push('ALTER TABLE '+after.defKey+' COMMENT \\''+commentText+'\\'');\n }\n let baseText = '-- 基本信息:\\n';\n return baseText+ret.join(';\\n')+';';\n };\n \n function buildAddedDDL(entity){\n let ret = [];\n let fieldAdded = entity.data.fieldAdded||[];\n if(fieldAdded.length == 0){\n return '';\n }\n \n let firstDDL = 'ALTER TABLE '+entity.data.baseInfo.defKey;\n for (let field of fieldAdded) { \n let ddlItem = 'ADD COLUMN `'+field.defKey+'` '+field.dbType;\n /*处理数据类型长度*/\n if(field.len>0){\n ddlItem += ('('+field.len);\n if(parseInt(field.scale)>0){\n ddlItem += (','+field.scale);\n }\n ddlItem += ')';\n }\n if(field.notNull){\n ddlItem += ' NOT NULL';\n }\n if(field.autoIncrement){\n ddlItem += ' AUTO_INCREMENT';\n }\n if(field.defaultValue){\n ddlItem += (' DEFAULT ' + field.defaultValue);\n }\n ddlItem += (' COMMENT \\''+field.defName+';'+field.comment+'\\'');\n \n if(field.index>0 && field.afterFieldKey){\n ddlItem += (' AFTER '+field.afterFieldKey);\n }\n ret.push(ddlItem);\n }\n return firstDDL+'\\n'+ret.join(',\\n');\n };\n \n function buildRemovedDDL(entity){\n let ret = [];\n let fieldRemoved = entity.data.fieldRemoved||[];\n if(fieldRemoved.length == 0){\n return '';\n }\n \n let firstDDL = 'ALTER TABLE '+entity.data.baseInfo.defKey;\n for (let field of fieldRemoved) { \n ret.push('DROP '+field.defKey);\n }\n return firstDDL+'\\n'+ret.join(',\\n');\n };\n \n function buildModifiedDDL(entity){\n let ret = [];\n let fieldModified = entity.data.fieldModified||[];\n \n let firstDDL = 'ALTER TABLE '+entity.data.baseInfo.defKey;\n for (let field of fieldModified) { \n let changeDDL = '';\n let before = field.before || {};\n let after = field.after || {};\n if(before.defKey === after.defKey){\n changeDDL += (' MODIFY COLUMN `'+after.defKey+'`');\n }else{\n changeDDL += (' CHANGE COLUMN `'+before.defKey+'` `'+after.defKey+'`');\n }\n changeDDL += (' '+after.dbType);\n if(after.len>0){\n changeDDL += ('('+after.len);\n if(parseInt(after.scale)>0){\n changeDDL += (','+after.scale);\n }\n changeDDL += ')';\n }\n if(after.notNull){\n changeDDL += ' NOT NULL';\n }\n let defaultValue = '';\n if(after.defaultValue != null && after.defaultValue.length>0){\n defaultValue = (after.defaultValue);\n }else{\n defaultValue = 'NULL';\n }\n if(defaultValue != 'NULL'){\n changeDDL += (' DEFAULT ' + defaultValue);\n }\n\n let comment = after.defName;\n if(after.comment){\n comment = comment + ';' + (after.comment||'');\n }\n if(comment){\n changeDDL += (' COMMENT \\''+comment+'\\';');\n }\n \n ret.push(firstDDL+' '+changeDDL);\n }\n return ret;\n };\n}}\n{{? createEntities && createEntities.length > 0}}\n/* --------------- 创建表 --------------- */\n{{~ createEntities:entity}}\n{{=it.func.createDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? dropEntities && dropEntities.length > 0}}\n/* --------------- 删除表 --------------- */\n{{~ dropEntities:entity}}\n{{=it.func.dropDDL(entity.data,entity['type'])}}\n{{~}}\n{{?}}\n\n\n{{? modifyEntities && modifyEntities.length > 0}}\n{{~ modifyEntities:entity}}\n/* --------------- 修改表 --------------- */\n-- 修改表:{{=entity.data.baseInfo.defKey}}[{{=entity.data.baseInfo.defName}}]\n{{=baseChangedDDL(entity.data.baseChanged)}}\n{{? entity.data.fieldModified && entity.data.fieldModified.length > 0}}\n-- 修改字段:\n{{=buildModifiedDDL(entity).join('\\n')}}\n{{?}}{{\n/*索引是否修改过*/\nlet indexChanged = entity.data.indexChanged;\n}}\n{{? indexChanged }}\n{{=it.func.indexRebuildDDL(entity.data.baseInfo,entity.data.newIndexes,entity.data.fullFields,entity['type'])}}\n{{?}}\n\n{{? entity.data.fieldAdded && entity.data.fieldAdded.length > 0}}\n-- 添加字段:\n{{=buildAddedDDL(entity)}};\n{{?}}\n\n{{? entity.data.fieldRemoved && entity.data.fieldRemoved.length > 0}}\n-- 删除字段:\n{{=buildRemovedDDL(entity)}};\n{{?}}\n{{~}}\n{{?}}"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "9D418CB9-BCD5-4C37-BE64-910C9F7FC6AE",
|
||
"isDefault": true,
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTO_INCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }} COMMENT '{{=it.func.join(field.defName,field.comment,';')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.entity.defName,it.entity.comment,';') }}';\n$blankline\n",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "29D1CE08-4C35-4D2D-AAA9-23D93305B52E"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "279AE005-CA55-42A2-9402-4B1C62A4AD54",
|
||
"isDefault": true,
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? '' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "A4E23CB7-BB01-4BD1-9F71-F73F3E15A542"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "6D5D9FD1-6FDF-408E-B491-F8F0DEDB55AB",
|
||
"isDefault": true,
|
||
"createTable": "IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[{{=it.entity.defKey}}]') AND type in (N'U'))\nDROP TABLE [dbo].[{{=it.entity.defKey}}];\n\nCREATE TABLE [dbo].[{{=it.entity.defKey}}](\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? ' IDENTITY(1,1)' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n){{=it.separator}}\n$blankline\n{{? it.entity.defKey || it.entity.defName}}EXEC sp_addextendedproperty 'MS_Description', '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}', 'SCHEMA', dbo, 'table', {{=it.entity.defKey}}, null, null;{{?}}\n{{~it.entity.fields:field:index}}\nEXEC sp_addextendedproperty 'MS_Description', '{{=it.func.join(field.defName,field.comment,';')}}', 'SCHEMA', dbo, 'table', {{=it.entity.defKey}}, 'column', {{=field.defKey}};\n{{~}}\n",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "BFC87171-C74F-494A-B7C2-76B9C55FACC9"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "AE731314-30AF-42CD-9482-1BBB9214D3B1",
|
||
"isDefault": true,
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? ' AUTO_INCREMENT' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022"
|
||
},
|
||
{
|
||
"type": "appCode",
|
||
"applyFor": "A0E42531-9483-428D-BBAC-3EA93519DF94",
|
||
"isDefault": true,
|
||
"content": "package cn.com.chiner.entity;\n$blankline\nimport javax.persistence.*;\nimport java.io.Serializable;\nimport java.util.Date;\n$blankline\n{{\n var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n}}\n /**\n * @author : http://www.chiner.pro\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n * @desc : {{=it.func.join(it.entity.defName,it.entity.comment,'-')}}\n */\n@Table(name=\"{{=it.entity.defKey}}\")\npublic class {{=it.func.camel(it.entity.defKey,true) }} implements Serializable,Cloneable{\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n {{? field.primaryKey }}\n @Id\n @GeneratedValue\n {{?}}\n private {{=field.type}} {{=it.func.camel(field.defKey,false)}} ;\n{{~}}\n$blankline\n\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public {{=field.type}} get{{=it.func.camel(field.defKey,true)}}(){\n return this.{{=it.func.camel(field.defKey,false)}};\n }\n /** {{=it.func.join(field.defName,field.comment,';')}} */\n public void set{{=it.func.camel(field.defKey,true)}}({{=field.type}} {{= it.func.camel(field.defKey,false) }}){\n this.{{=it.func.camel(field.defKey,false)}}={{=it.func.camel(field.defKey,false)}};\n }\n{{~}}\n}",
|
||
"apply": "797A1496-D649-4261-89B4-544132EC3F36"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "8B11DD94-5EC3-4E5A-B5DE-16C1257802D5",
|
||
"isDefault": true,
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? '' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "89504F5D-94BF-4C9E-8B2E-44F37305FED5"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "E2FC9111-1706-4F1B-9160-B8EFB2762C24",
|
||
"isDefault": true,
|
||
"createTable": "CREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? '' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ','('+field.defaultValue+')',' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307"
|
||
},
|
||
{
|
||
"type": "appCode",
|
||
"applyFor": "9F1DC5FC-C432-461F-8FE4-D26A413E652B",
|
||
"isDefault": true,
|
||
"content": "using System;\nusing System.Collections.Generic;\n\n$blankline\n{{\n var today=new Date();\n var fullYear=today.getFullYear();\n var month=today.getMonth() + 1;\n var days=today.getDate();\n}}\n/*\n * @author : http://www.chiner.com.cn\n * @date : {{=fullYear}}-{{=month}}-{{=days}}\n * @desc : {{=it.func.join(it.entity.defName,it.entity.comment,'-')}}\n */\nnamespace Chiner.Application\n{\n public partial class {{=it.func.camel(it.entity.defKey,true) }}\n {\n \n {{~it.entity.fields:field:index}}\n /// <summary>\n /// {{=it.func.join(field.defName,field.comment,';')}}\n /// </summary>\n public {{=field.type}} {{=it.func.camel(field.defKey,true)}} { get; set; }\n $blankline\n {{~}}\n \n }\n}",
|
||
"apply": "F3AC2415-E86B-40C6-9FEB-F4B7937D2C30"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "753F434C-234D-47AD-804B-84D042F1AE32",
|
||
"isDefault": true,
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= field.autoIncrement ? ' AUTO_INCREMENT' : '' }}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "592C7013-143D-4E7B-AF64-0D7BF1E28230"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "A5B9427A-35BA-40BB-9FDC-8719AA00644E",
|
||
"isDefault": true,
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{= field.defaultValue ? it.func.join(' DEFAULT ',field.defaultValue,' ') : '' }}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n);\n$blankline\n{{? it.entity.defKey || it.entity.defName}}COMMENT ON TABLE {{=it.entity.defKey}} IS '{{=it.func.join(it.entity.defName,it.entity.comment,';')}}';{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.defName || field.comment}}COMMENT ON COLUMN {{=it.entity.defKey}}.{{=field.defKey}} IS '{{=it.func.join(field.defName,field.comment,';')}}';{{?}}\n{{~}}",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "77BD85E5-9D0D-4096-8427-CBA306FC9C6A"
|
||
},
|
||
{
|
||
"type": "dbDDL",
|
||
"applyFor": "15FA0328-0770-47AE-8F13-06692612DDCD",
|
||
"isDefault": true,
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTO_INCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }} COMMENT '{{=it.func.join(field.defName,field.comment,';')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.entity.defName,it.entity.comment,';') }}';\n$blankline\n",
|
||
"createIndex": "",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "11D1FB71-A587-4217-89BA-611B8A1F83E0"
|
||
},
|
||
{
|
||
"applyFor": "AB3197BC-ECD0-416E-9055-E2C9FCA30B24",
|
||
"type": "dbDDL",
|
||
"createTable": "DROP TABLE IF EXISTS {{=it.entity.defKey}};\nCREATE TABLE {{=it.entity.defKey}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.primaryKey }}{{ pkList.push(field.defKey) }}{{?}}\n {{=field.defKey}} {{=field.type}}{{?field.len>0}}{{='('}}{{=field.len}}{{?field.scale>0}}{{=','}}{{=field.scale}}{{?}}{{=')'}}{{?}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTOINCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }} --{{=it.func.join(field.defName,field.comment,';')}}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) ; --{{=it.func.join(it.entity.defName,it.entity.comment,';') }}\n$blankline\n",
|
||
"createIndex": "{{~ it.entity.indexes:index}}\nCREATE {{? index.unique}}UNIQUE {{?}}INDEX {{=index.defKey}} ON {{=it.entity.defKey}}({{ fieldsKeys = index.fields.map(function(field){return field.fieldDefKey}) ; }}{{=it.func.join(...fieldsKeys,',')}});\n{{~}}",
|
||
"createView": "CREATE VIEW {{=it.view.defKey}} AS\nSELECT \n{{~it.view.fields:field:index}}\n {{=field.refEntity}}.{{=field.refEntityField}} AS {{=field.defKey}}{{= index < it.view.fields.length-1 ? ',' : ''}}\n{{~}}\nFROM {{~it.view.refEntities:refEntity:index}}{{=refEntity}}{{= index < it.view.refEntities.length-1 ? ',' : ''}}{{~}};\n$blankline\n",
|
||
"apply": "B363BE0B-F852-49B8-9B2E-F6D2174DEAC1"
|
||
}
|
||
],
|
||
"generatorDoc": {
|
||
"docTemplate": ""
|
||
},
|
||
"relationFieldSize": "15",
|
||
"uiHint": [
|
||
{
|
||
"defKey": "Input",
|
||
"defName": "普通输入框",
|
||
"id": "642D2E0A-8846-4549-BE56-8C0473F26EDE"
|
||
},
|
||
{
|
||
"defKey": "Select",
|
||
"defName": "下拉输入框",
|
||
"id": "FB111359-2B73-4443-926C-08A98E446448"
|
||
},
|
||
{
|
||
"defKey": "CheckBox",
|
||
"defName": "复选框",
|
||
"id": "0CB8A6C9-1115-4FC0-B51E-5C028065082F"
|
||
},
|
||
{
|
||
"defKey": "RadioBox",
|
||
"defName": "单选框",
|
||
"id": "5C04987A-260F-4B7C-A5D5-22A181AAE9CA"
|
||
},
|
||
{
|
||
"defKey": "Double",
|
||
"defName": "小数输入",
|
||
"id": "8D5BAFE4-E15C-4707-A047-8EE59C58E70F"
|
||
},
|
||
{
|
||
"defKey": "Integer",
|
||
"defName": "整数输入",
|
||
"id": "9999AF2A-A44E-415C-A2DC-D7C613BD0073"
|
||
},
|
||
{
|
||
"defKey": "Money",
|
||
"defName": "金额输入",
|
||
"id": "2B0C3D0C-7BAF-4B36-81AD-9362B5E5DC2E"
|
||
},
|
||
{
|
||
"defKey": "Date",
|
||
"defName": "日期输入",
|
||
"id": "E4D94E14-F695-487F-AFC2-4D888009B7DA"
|
||
},
|
||
{
|
||
"defKey": "DataYearMonth",
|
||
"defName": "年月输入",
|
||
"id": "936927E3-DD2D-4096-87FD-074CDE278D59"
|
||
},
|
||
{
|
||
"defKey": "Text",
|
||
"defName": "长文本输入",
|
||
"id": "D89DD4F1-ADAC-4469-BF8D-B3FF41AE7963"
|
||
},
|
||
{
|
||
"defKey": "RichText",
|
||
"defName": "富文本输入",
|
||
"id": "C134EB1F-4CFF-49E0-882F-2C6FB275CB20"
|
||
}
|
||
],
|
||
"headers": [
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false,
|
||
"value": "字段代码",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false,
|
||
"value": "显示名称",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false,
|
||
"value": "主键",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true,
|
||
"value": "不为空",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true,
|
||
"value": "自增",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": true,
|
||
"value": "数据域",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": false,
|
||
"value": "数据类型",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false,
|
||
"value": "长度",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false,
|
||
"value": "小数位数",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true,
|
||
"value": "说明",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true,
|
||
"value": "数据字典",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true,
|
||
"value": "默认值",
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false,
|
||
"value": "标准字段",
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true,
|
||
"value": "UI建议",
|
||
"enable": true,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "extProps",
|
||
"hideInGraph": true,
|
||
"value": "拓展属性",
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr1",
|
||
"value": "属性1",
|
||
"hideInGraph": true,
|
||
"enable": true,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr2",
|
||
"value": "属性2",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr3",
|
||
"value": "属性3",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr4",
|
||
"value": "属性4",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr5",
|
||
"value": "属性5",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr6",
|
||
"value": "属性6",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr7",
|
||
"value": "属性7",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr8",
|
||
"value": "属性8",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
},
|
||
{
|
||
"refKey": "attr9",
|
||
"value": "属性9",
|
||
"hideInGraph": true,
|
||
"enable": false,
|
||
"freeze": false
|
||
}
|
||
],
|
||
"modelType": "modalGroup",
|
||
"recentColors": [
|
||
"#d148d1",
|
||
"#ce4bce",
|
||
"#831b83",
|
||
"#dd31dd",
|
||
"#da2fda",
|
||
"#e988e9",
|
||
"#000000",
|
||
"#DDE5FF"
|
||
],
|
||
"DDLToggleCase": "L",
|
||
"extAttrProps": {
|
||
"attr1": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr2": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr3": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr4": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr5": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr6": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr7": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr8": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
},
|
||
"attr9": {
|
||
"editType": "",
|
||
"optionsData": "",
|
||
"optionsFetcher": ""
|
||
}
|
||
}
|
||
},
|
||
"entities": [
|
||
{
|
||
"defKey": "repair",
|
||
"defName": "运维报障信息",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "repair_id",
|
||
"defName": "运维单ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F624B3B4-4D79-4594-ABDA-4A5A00C1EB6E",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "title",
|
||
"defName": "标题",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4004E113-68CC-42F7-B879-5B9F637C45C9",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "user_id",
|
||
"defName": "申报账号ID",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F1570CF8-C356-435F-8840-003E05DE1DE5",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "nickname",
|
||
"defName": "申报用户昵称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "92F53714-FFA1-4E9A-99F9-FDBB4A742135",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "username",
|
||
"defName": "申报用户账号",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "868E4747-16BF-4942-9FAF-9DA8E52F7553",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org_id",
|
||
"defName": "所属机构Id",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8E924E3F-1E9A-46CB-A797-470C85A2420C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org",
|
||
"defName": "所属机构",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "71F647F1-65AC-4B0B-9117-D75A00EAC3C9",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept_id",
|
||
"defName": "所属部门Id",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "80F64A02-7BE7-42D5-BF36-7946E95FA81C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept",
|
||
"defName": "所属部门",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "131D3B9E-6B45-4F99-9157-6D7FA63F8A81",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "phone",
|
||
"defName": "联系电话",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7B4F9FCC-C931-4CC7-88FF-0B7279A8D23F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "question_type",
|
||
"defName": "问题类型",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "43810762-A2A2-43BE-A170-03D4C2D493DA",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "business",
|
||
"defName": "业务模块",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1E3D50F6-1D44-483E-BC7C-32E8A704546F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "urgency",
|
||
"defName": "紧急程度",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "CB110B0C-8D3A-4491-A305-D90056363838",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "priority",
|
||
"defName": "优先级别",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DBE4DE7D-06C2-4CBC-8619-31328D2576EC",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "fault_description",
|
||
"defName": "故障描述",
|
||
"comment": "",
|
||
"domain": "",
|
||
"type": "VARCHAR",
|
||
"len": 2024,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "53F0A25B-A51C-473D-8717-EF07458B1A1A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "launch_time",
|
||
"defName": "报送时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1ECBE0E8-B9B0-4F62-AFFF-A5D19C5659E2",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "solve_limit_time",
|
||
"defName": "解决期限时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "068FFB21-923C-4BA5-82BA-FEB45ED80488",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "bus_accept_no",
|
||
"defName": "业务受理号",
|
||
"comment": "",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DC24D892-1BD1-4C60-A6A0-3874D79977EA",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "bus_handle_time",
|
||
"defName": "业务要求办理时效",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C557A1DA-F5A5-4E87-A0D1-1FCF11034430",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "bus_classify",
|
||
"defName": "业务办理分类标签",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "5F4D2F09-047B-4B8C-B370-588C11ADA489",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "bus_step",
|
||
"defName": "业务办理环节",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4D756966-73F6-4770-8F73-9FD83379C2B2",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "bus_ent_name",
|
||
"defName": "业务企业名称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2D8914AF-2191-47F9-B0FD-56484FB8E1DA",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "leader_nickname",
|
||
"defName": "负责人昵称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "BC4C03F5-6FFB-4E16-A623-823A9E33B68C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "leader_username",
|
||
"defName": "负责人账号",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C44BD1FE-E84B-4A43-BA53-F8AEF3AA03AB",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "planned_time",
|
||
"defName": "计划完成时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "27008AFB-02EA-4E32-986F-D962FCCF2541",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "reality_time",
|
||
"defName": "实际完成时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DFA859BA-F1E5-4417-A17D-589371251EE8",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "thinking",
|
||
"defName": "解决思路填录",
|
||
"comment": "",
|
||
"domain": "",
|
||
"type": "VARCHAR",
|
||
"len": 2048,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8EDB17EB-DDCA-46FF-AE6B-9A68D83C4B2A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "label",
|
||
"defName": "标签集合字符",
|
||
"comment": "",
|
||
"domain": "6F67EBAF-9B16-474C-840A-85EF33578E79",
|
||
"type": "VARCHAR",
|
||
"len": 1024,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0B077A72-8BFD-4F50-B5C5-D195A7CA26D3",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "need_data_export",
|
||
"defName": "是否需要导出数据(0否1是)",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"extProps": {},
|
||
"domain": "6F7C1C5C-D159-41E6-BF9D-54DEEFA79AFF",
|
||
"id": "A221B966-AD87-497C-9F06-A32419C2D2E5"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9879267C-EAC9-48A6-85FF-C73D61A661E8",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D55856AE-FFDF-4494-A3FF-F7883EEE999E",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0FE00184-DF10-4F0B-94F3-1D55A2EAEBA3",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "44A644AE-1B0C-4E9A-A108-0A7CBF84E47F",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "69B5884B-2F86-4064-A711-06D1BCFC11B3",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
},
|
||
"notes": {}
|
||
},
|
||
{
|
||
"defKey": "repair_file",
|
||
"defName": "运维报障附件",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "uuid",
|
||
"defName": "文件ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "841856C1-67C7-4EF3-8890-7AC51285972A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_name",
|
||
"defName": "文件名",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2993FE4A-2711-4AEA-B208-C1D45A6DE3F4",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_type",
|
||
"defName": "文件类型",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1E2188FD-64A5-4792-AEF2-EE9A2FE9CEB7",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "type",
|
||
"defName": "类型",
|
||
"comment": "question:问题相关附件;answer:解答相关附件",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6ACAA59D-4951-40FB-B21E-CFBB686020EF",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_path",
|
||
"defName": "文件路径",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8AF1F518-D17F-446E-94DB-7908035A3ACB",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_size",
|
||
"defName": "文件大小",
|
||
"comment": "单位字节",
|
||
"domain": "1AF3C2A2-F8ED-4D89-8EB9-E8D93C8B7698",
|
||
"type": "BIGINT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "ACADD2A3-475D-45B1-9B6B-205DAB892373",
|
||
"extProps": {},
|
||
"baseType": "1A8A9C3C-15AC-43FC-8A1D-28B254CE103D"
|
||
},
|
||
{
|
||
"defKey": "repair_id",
|
||
"defName": "运维单ID",
|
||
"comment": "对应repair表的,repair_id",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4270716A-D2E8-4427-8DD6-9D62834E8CA7",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_id",
|
||
"defName": "处理ID",
|
||
"comment": "对应运维报障处理流程记录",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8BAC4E39-ADFA-44AB-81B8-B6FCB36A46CD",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "upload_time",
|
||
"defName": "上传时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "635DD700-C242-45C3-A0EA-78ADBDF7EF9A",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "71DE6338-2ECC-4457-B30A-5D244422EEDC",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2FBE46C2-A001-4894-BA9F-F192A8B139D4",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "82BAEF60-1C4A-40A8-BF07-A2392FB0A88D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1A63E441-BA20-4924-BE4E-56FAC74C7F47",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "5038707C-FB7B-4831-87E3-E814F0629D60",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "repair_handle",
|
||
"defName": "运维报障处理流程记录",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "handle_id",
|
||
"defName": "处理ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "E1B44809-1E28-47CC-9BD4-8DA4FF18B928",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "todo_id",
|
||
"defName": "报障待办ID",
|
||
"comment": "对应repair_todo表的,todo_id",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1D277B4B-2826-4CC1-87F2-0E194F42F4CF",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "repair_id",
|
||
"defName": "运维单ID",
|
||
"comment": "对应repair表的,repair_id",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A9741275-C247-469E-BCB0-96C30980B505",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_nickname",
|
||
"defName": "处理人",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6ADCAB49-0A7F-44E2-B7A5-B4493CF4B3A2",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_username",
|
||
"defName": "处理人账号",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "206AD74F-6CDE-4D26-B9B7-38C73690B49D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "step",
|
||
"defName": "环节步骤",
|
||
"comment": "declare:已报障;assign:分派;handle:处理中;feedback:已反馈;unresolved:未解决;resolved:已解决;end:结束;",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6F44C4F6-F36D-40EE-B5EA-9D8D34E90333",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "happen_time",
|
||
"defName": "生成时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DB31994E-BA40-4CFF-BAC8-F5050774133B",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "result",
|
||
"defName": "处理结果",
|
||
"comment": "",
|
||
"domain": "3E948CEC-3070-472C-AF92-F3CA11EC9D15",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F37E3AA6-B024-4C50-90F2-2B690B7DE53B",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "status",
|
||
"defName": "环节状态",
|
||
"comment": "0:过期;1:有效",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7E66CE13-C121-427D-AF97-6ED1FE421E79",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "E62B3432-C62C-4D9E-9117-1307B318EE0E",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "35C41702-06F1-4EB1-8C43-51E3BEEDAEF4",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9D821787-CF24-4D51-9726-1F720EE2E176",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "ED1C49BF-3AD6-4DCA-ACE4-A26D0ACE457C",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "2C2444AD-B3CE-4D10-BBC6-E3E44773BD73",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "repair_todo",
|
||
"defName": "运维报障待办",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "todo_id",
|
||
"defName": "报障待办ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "48E37C1B-DE0D-4960-839F-E8A6F4BAE65B",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "repair_id",
|
||
"defName": "运维单ID",
|
||
"comment": "对应repair表,repair_id",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C2102E2B-7A9C-488E-8F11-A1D52243501F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "title",
|
||
"defName": "标题",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A68FD911-A1E2-4F84-8AEB-9A40F495A83F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "user_id",
|
||
"defName": "申报账号ID",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "10AC0B46-DB73-40EE-90D2-BB27952A36D3",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "nickname",
|
||
"defName": "申报用户昵称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2E0A1007-D042-49C5-9C89-A261CE0BDB5E",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "username",
|
||
"defName": "申报用户账号",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "AD22BDBA-1814-4847-ACA5-BEDA699FF12F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "engineer",
|
||
"defName": "运维工程师",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A2C47059-A2BD-4A89-B033-AB5012A2EA3C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "engineer_username",
|
||
"defName": "运维工程师username",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6FCB3365-5327-457D-83B2-2BA69E83FC02",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org_id",
|
||
"defName": "所属机构Id",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "07599E6A-3AE9-4FF8-BE4B-2F896DEBCEA5",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org",
|
||
"defName": "所属机构",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "B5B19B54-144E-458E-89E6-B47CB8A39BB2",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept_id",
|
||
"defName": "所属部门Id",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DEEDBCA0-D260-47B7-A42D-D2C243BCCAB3",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept",
|
||
"defName": "所属部门",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9E6CEBC9-158B-4552-9B2B-0B5C4B0C3C03",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "urgency",
|
||
"defName": "紧急程度",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A6521663-729D-416F-B923-78554C10074F",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "business",
|
||
"defName": "业务模块",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F711A778-DA40-4AAD-90A9-D1DABCC53D35",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "priority",
|
||
"defName": "优先级别",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "E060948D-B7C4-436C-A821-1129787EA9EF",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "launch_time",
|
||
"defName": "报送时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F3BAB4A2-06AB-400D-910B-CDB32004BFF4",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "solve_limit_time",
|
||
"defName": "解决期限时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DD57F504-19D7-40E5-B9A9-0558E216072A",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "step",
|
||
"defName": "环节步骤",
|
||
"comment": "declare:已报障;assign:分派;handle:处理中;feedback:已反馈;unresolved:未解决;resolved:已解决;end:结束;",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2E242550-5CE7-4687-B805-5B80321CC24D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "reminder",
|
||
"defName": "催单次数",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C17D01DF-BE72-4289-836C-7964B6641B79",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "deleted",
|
||
"defName": "是否删除",
|
||
"comment": "0:有效;1:删除",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A40532E6-383A-44A8-B6E5-5DCC2680A797",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_time",
|
||
"defName": "处理更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "56EC9195-BC2A-4AEA-A1E7-940DE6026A20",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "feedback_time",
|
||
"defName": "最后处理反馈时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9C578135-59AD-43DF-AC9B-A26EBF77BF14",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "source",
|
||
"defName": "报账单来源",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"extProps": {},
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"id": "8006C938-FC64-477C-B26F-9A804E9420B2"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "EA21D6ED-6FD0-47A1-9E7A-671172CDC59A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "11C05E64-9AF2-4F5A-B8E1-14F8F90F4108",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "715B75D8-4604-49C9-8F01-16B3D0135CF7",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "BB0B7E62-5D23-42C4-A8CD-3236F9620313",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "7365AA08-253F-4989-B202-162A961C3116",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
},
|
||
"notes": {}
|
||
},
|
||
{
|
||
"defKey": "engineer",
|
||
"defName": "运维工程师",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "user_id",
|
||
"defName": "用户ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "043089A1-FD83-4105-A31D-CB8135E8C4CB",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "username",
|
||
"defName": "用户名",
|
||
"comment": "登陆账号",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "AE1254F0-0242-47B6-A669-7E952DD76BFC",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "password",
|
||
"defName": "密码",
|
||
"comment": "采用国产SM3",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2D4E93B3-5420-4308-9703-74536C78D53D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "nickname",
|
||
"defName": "昵称",
|
||
"comment": "",
|
||
"domain": "54611CCC-CA4B-42E1-9F32-4944C85B85A6",
|
||
"type": "VARCHAR",
|
||
"len": 90,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "3757351C-1F8A-4308-AD46-DC3992CA6620",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "sex",
|
||
"defName": "性别",
|
||
"comment": "1:男;2:女;",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "36D11D99-C714-493D-BE9A-6B68B6D1BD3C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "phone",
|
||
"defName": "手机号",
|
||
"comment": "",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "329E6E2E-380B-4E7B-BE93-6A9BC62C3914",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "email",
|
||
"defName": "邮箱",
|
||
"comment": "",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "64DB3F9A-903F-4CE0-A860-3DA20C5E4326",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "status",
|
||
"defName": "状态",
|
||
"comment": "1:正常;2:冻结;3:离职",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "595851B6-A2F3-4838-B707-19F16D9FC6EB",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "description",
|
||
"defName": "描述",
|
||
"comment": "",
|
||
"domain": "BF1ADA67-474C-4017-8D4B-05F155FF935B",
|
||
"type": "VARCHAR",
|
||
"len": 512,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "68146B3B-83AD-401C-94BC-CC20F213E772",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "sort",
|
||
"defName": "排序",
|
||
"comment": "越小则优先级更高",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0086AAF1-B8DE-46BD-9EC8-6AE6B8D32B37",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "roles",
|
||
"defName": "角色",
|
||
"comment": "角色代码集合,以“,”隔开;对应角色表的code",
|
||
"domain": "6F67EBAF-9B16-474C-840A-85EF33578E79",
|
||
"type": "VARCHAR",
|
||
"len": 1024,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "56A9A69D-DBE0-401A-946B-3051F0E5F4FE",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "is_deleted",
|
||
"defName": "是否删除",
|
||
"comment": "0:未删除、1:已删除",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C6A00164-FF12-424F-81B4-9FA332DAE8FF",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "5559F209-4F68-4183-ACB3-B261693BB4EF",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "87F131B9-235F-40F7-8B8E-6E87B64B8ED2",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "20595CA7-4A5C-4675-BF5A-2FABC927DD88",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2CD71F7D-2E12-4DD3-B6AB-51779C6727BC",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [
|
||
{
|
||
"defKey": "engineer_username_index",
|
||
"unique": true,
|
||
"defName": null,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "AE1254F0-0242-47B6-A669-7E952DD76BFC",
|
||
"id": "DB275DA9-2164-4375-99B3-4F5E7F4BA3B0"
|
||
}
|
||
],
|
||
"id": "6E544C7F-5387-4BE4-BFFA-84A193E35493"
|
||
}
|
||
],
|
||
"correlations": [],
|
||
"id": "A40BE0A5-DC2D-4592-A25D-8230BBF4C0AA",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "dict",
|
||
"defName": "字典",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "dict_id",
|
||
"defName": "字典ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "EDBAB12E-3D41-4A19-8469-A390FDAE7C83",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "type",
|
||
"defName": "类型",
|
||
"comment": "",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1195BCA9-B76D-40CD-A341-49401D4CBF2F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "code",
|
||
"defName": "代码",
|
||
"comment": "",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7F995934-4120-4719-B290-6E70C63F2A1A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "name",
|
||
"defName": "名称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "28A0D9CC-A61D-4404-885F-64F64C0109D1",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "sort",
|
||
"defName": "排序",
|
||
"comment": "越小则优先级更高",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "44B5790A-895D-4FE5-8295-9EC5E1B9C751",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "system_id",
|
||
"defName": "系统id",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"extProps": {},
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"id": "FD17CB29-3CA2-4F6D-9BD5-2414287B750D"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1DC14048-963D-4AEF-9CE1-8F796812769E",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D2E4FF71-9892-4D38-A53D-78C4B2F7CD0A",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9C48D1C1-5A67-4643-A703-95723981A695",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7B222326-A951-408F-B898-673C43BFC0AA",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [
|
||
{
|
||
"defKey": "dict_code_type_index",
|
||
"unique": true,
|
||
"defName": null,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "7F995934-4120-4719-B290-6E70C63F2A1A",
|
||
"id": "34BA965A-1957-4954-B788-3E28269C1FDE"
|
||
},
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "1195BCA9-B76D-40CD-A341-49401D4CBF2F",
|
||
"id": "4708A868-E6D4-4BFF-B9DA-01700E4885F8"
|
||
}
|
||
],
|
||
"id": "26F9830E-06B6-4675-8335-B1DF49C80B95"
|
||
}
|
||
],
|
||
"correlations": [],
|
||
"id": "5407189B-958D-44AD-9285-0BD21F517B0F",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
},
|
||
"notes": {}
|
||
},
|
||
{
|
||
"defKey": "repair_label",
|
||
"defName": "运维单标签",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "label_id",
|
||
"defName": "标签ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1814E80B-219E-4EDE-BB4F-EB27E1CCD965",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "name",
|
||
"defName": "名称",
|
||
"comment": "",
|
||
"domain": "58F8E04A-5645-445E-AFC7-5DB5110049BF",
|
||
"type": "VARCHAR",
|
||
"len": 128,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1A324C25-EA29-4AD4-883D-DF82E089E99C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "repair_id",
|
||
"defName": "运维单ID",
|
||
"comment": "对应repair表,repair_id",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1FFFDDBA-AE0E-4C46-8BFD-D4404EBF3723",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "65A7B9EA-D064-4D31-9E91-A0ADC7E7037D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "3AE8893A-D7EB-41C4-A401-DDFD1A81A47D",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2FF8E2CF-D4F5-40B7-8702-777A8BF60686",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "16758D9E-D5F7-45D8-97DD-5E116FD1E9E6",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [
|
||
{
|
||
"defKey": "repair_label_name_index",
|
||
"unique": false,
|
||
"defName": null,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "1A324C25-EA29-4AD4-883D-DF82E089E99C",
|
||
"id": "944A853E-0F5D-4A7F-8AD8-561183787F4B"
|
||
}
|
||
],
|
||
"id": "2E437CF2-CF47-4F82-9885-5EDDD19452D5"
|
||
},
|
||
{
|
||
"defKey": "repair_label_repair_id_index",
|
||
"unique": false,
|
||
"defName": null,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "1FFFDDBA-AE0E-4C46-8BFD-D4404EBF3723",
|
||
"id": "EE6ACD94-926F-43CD-849F-517B4E0FE1A1"
|
||
}
|
||
],
|
||
"id": "A85DD884-3331-4B86-9DED-2C4A9AD0A4BA"
|
||
}
|
||
],
|
||
"correlations": [],
|
||
"id": "0E546C6C-AA75-4550-B5F5-14DF92E9F632",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "repair_summary",
|
||
"defName": "运维报障统计汇总",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "uuid",
|
||
"defName": "id",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C7B050DC-0D43-4C1A-9A85-448D68063D79",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "time",
|
||
"defName": "时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7E249CB6-1942-4D54-8AB5-069FF355D3AE",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "type",
|
||
"defName": "统计类型",
|
||
"comment": "多种统计汇总结果类型,然后所有表字段拉平存放",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "3C5D4F7B-1548-4ABE-8891-135612059187",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "question_type",
|
||
"defName": "问题分类",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "92E81FB8-9E82-45D0-91AF-AF5B5CA27802",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "bus_total",
|
||
"defName": "业务总数",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "490895EF-AF84-4009-A5AC-E531BFCEB62A",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "org",
|
||
"defName": "机构",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "5AEA968E-F18F-48EE-9E59-DEE044BC73FF",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "report_total",
|
||
"defName": "报障数",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "342C9FCE-B8BE-418C-A12B-E44DE28A6514",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "handle_total",
|
||
"defName": "处理数",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F65DD6D2-AD30-4660-A584-371D3DA6EB66",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "24F21DB4-A87B-419D-B1C5-22AB6D2AFE6A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "22B52A57-D6FA-47C3-8676-E5F72C3929B0",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4B08F447-95C9-4C02-B946-ABCF6803F623",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "99F36D56-99DE-4D4E-B010-C6906B1CE2AF",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [
|
||
{
|
||
"defKey": "repair_summary_index_type",
|
||
"unique": false,
|
||
"defName": null,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "3C5D4F7B-1548-4ABE-8891-135612059187",
|
||
"id": "7C534DB1-B9CB-4D67-B110-1B24865E743E"
|
||
}
|
||
],
|
||
"id": "799BBF56-C67A-4DFE-819D-21A4CE0498B4"
|
||
},
|
||
{
|
||
"defKey": "repair_summary_index_org",
|
||
"unique": false,
|
||
"defName": null,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"ascOrDesc": "A",
|
||
"fieldDefKey": "5AEA968E-F18F-48EE-9E59-DEE044BC73FF",
|
||
"id": "198B0A61-760C-404F-8A54-05B16053A32C"
|
||
}
|
||
],
|
||
"id": "FC5B35B5-DF12-4F62-9BCF-06783D4E684C"
|
||
}
|
||
],
|
||
"correlations": [],
|
||
"id": "A8189F33-6BB5-492F-A0BE-DEF49D83ABCF",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "notification",
|
||
"defName": "通报",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "uuid",
|
||
"defName": "id",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2CB3950F-8201-48C6-B79E-4DE64EA3BCED",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "month_date",
|
||
"defName": "统计月份",
|
||
"comment": "",
|
||
"domain": "EF221659-DBCF-4F59-AA6A-D635D44460D8",
|
||
"type": "DATE",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "1A287672-CB2E-46F4-BC3A-82AB2C939E13",
|
||
"extProps": {},
|
||
"baseType": ""
|
||
},
|
||
{
|
||
"defKey": "org",
|
||
"defName": "统计单位",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "054DC70A-611E-41B7-AE86-748B27F69F6D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "total",
|
||
"defName": "报障总数",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C74FCDC0-614F-42FA-AAB8-9D2C332A2B5E",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "resolved",
|
||
"defName": "已解决",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FCEF829D-32B7-453C-90C2-3F1E66E44A32",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "confirmed",
|
||
"defName": "待确认",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "21B948FD-6018-4950-B2C8-AC653EFFB654",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "untreated",
|
||
"defName": "未处理",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2CBB1A76-11F3-44BB-BA50-26DCFB6C31FE",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "history_total",
|
||
"defName": "历史报障总数",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "B5A98FF7-1B60-4AC9-82B3-9B63E8866951",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "history_resolved",
|
||
"defName": "历史已解决",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "08D5D307-7C1D-49E9-992C-E059E48F8988",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "history_confirmed",
|
||
"defName": "历史待确认",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A88F1E75-A74C-4CBC-8EFA-E508CDA1A29B",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "history_untreated",
|
||
"defName": "历史未处理",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "B487F3A3-7E49-4E84-B302-409855F114BD",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "one",
|
||
"defName": "一次处理",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D9CFD424-D037-499E-B833-E6940D700A25",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "two",
|
||
"defName": "两次处理",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7A801D92-3F16-4743-8C50-76465BFFF63E",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "three",
|
||
"defName": "三次处理以上",
|
||
"comment": "",
|
||
"domain": "14F40377-4BA8-4E33-B15A-54770BDDE761",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "93F3AF0D-1A3C-4E4E-A0D9-7A239305AE84",
|
||
"extProps": {},
|
||
"baseType": "2F0597A0-B16A-4E91-AF8C-B28263544755"
|
||
},
|
||
{
|
||
"defKey": "avg_handle",
|
||
"defName": "故障平均处理时长",
|
||
"comment": "单位小时",
|
||
"domain": "FF4459C5-6B45-4DBF-8FC0-E06239BC05B4",
|
||
"type": "DECIMAL",
|
||
"len": 24,
|
||
"scale": 6,
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "AD185A9A-6CA3-4993-B001-85ED1CA976C9",
|
||
"extProps": {},
|
||
"baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E"
|
||
},
|
||
{
|
||
"defKey": "avg_resolved",
|
||
"defName": "故障平均解决时长",
|
||
"comment": "单位小时",
|
||
"domain": "FF4459C5-6B45-4DBF-8FC0-E06239BC05B4",
|
||
"type": "DECIMAL",
|
||
"len": 24,
|
||
"scale": 6,
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "62268C1F-DAB8-4EB5-9B09-DF7B96142499",
|
||
"extProps": {},
|
||
"baseType": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C79F5DEC-024E-4977-B9B3-AA0FF7C646B7",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6FFBD1D7-1FF3-43FC-B96C-4420CE4D11ED",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D898C71C-B97B-4ACA-8739-31CE689ECF81",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9DA82CFD-BFAE-48BC-B878-4322B16C7A40",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "4E1B9B99-FEBE-4BA9-8515-EE91C700148A",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "task_list",
|
||
"defName": "待办表",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"freeze": false,
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": true,
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": true,
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "domain",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "type",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "task_id",
|
||
"defName": "待办ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "508FE32E-E9AE-4A88-AD20-EEDCDD0DB999",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "biz_id",
|
||
"defName": "业务表ID,对应业务的表的ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "3E4C1700-FC16-4074-8ED1-277B25E04093",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "title",
|
||
"defName": "标题",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "219BE131-1E41-4296-BAF0-C6FCA6B3B466",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "send_id",
|
||
"defName": "申报账号ID",
|
||
"comment": "",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7088A456-7554-4FD2-B501-42EBBDA74B36",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "send_name",
|
||
"defName": "申报用户昵称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "BF4CE00B-3C4B-4B0D-9C7D-F18E70CDDF13",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "send_username",
|
||
"defName": "申报用户账号",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "398BF613-E5EE-4905-A5E5-699CB2F9C53D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "sign_id",
|
||
"defName": "签收人ID,个人或机构",
|
||
"comment": "",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "303DDB0A-A005-4149-BA2D-87D5AA66ACD1",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "sign_name",
|
||
"defName": "签收人名称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FC1B308B-7D29-4AD3-86FF-328281497A8B",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "sign_username",
|
||
"defName": "签收人账号,个人或机构",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"id": "364AFDE4-8900-46F0-9A24-4ED0948792B9",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org_id",
|
||
"defName": "所属机构Id",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "237489E6-A0A4-4A80-951F-E9BC65B2A492",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org",
|
||
"defName": "所属机构",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "476E55A1-6670-4E5A-A76F-F68BED1552F4",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept_id",
|
||
"defName": "所属部门Id",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FA12B9E0-22E2-4E49-89D4-92340B6D261B",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept",
|
||
"defName": "所属部门",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FF340B55-30FF-46CE-8B1A-80FFF8BECF92",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "bus_type",
|
||
"defName": "业务类型",
|
||
"comment": "assign:领导交办",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7E58E3AC-EEE7-469B-9F19-CCB994D3E64D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "priority",
|
||
"defName": "优先级别",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DDFB6CF5-EAF8-458E-9E91-A6E0E905DD78",
|
||
"extProps": {},
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "urgency",
|
||
"defName": "紧急程度",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6D740F30-918C-4C51-920A-53D3728E5200",
|
||
"extProps": {},
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "step",
|
||
"defName": "环节步骤",
|
||
"comment": "",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "AD6CE258-070B-4C2A-872F-5574B4F2428F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "reminder",
|
||
"defName": "催单次数",
|
||
"comment": "",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6BA17B82-FEFF-4516-9C17-901B2676302E",
|
||
"extProps": {},
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "launch_time",
|
||
"defName": "报送时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "35375039-271A-45DB-80EE-602DD6BA27A1",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "solve_limit_time",
|
||
"defName": "到期时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6B87A383-6333-45DC-ADB8-8F4BED05C73D",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "handle_time",
|
||
"defName": "处理更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "202D5D78-D260-404B-8935-6092086F7239",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "status",
|
||
"defName": "任务状态",
|
||
"comment": "0:在办;1:办结;",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"id": "87A3C3C7-0FCD-4ED5-B32B-0497D103E23A",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "deleted",
|
||
"defName": "是否删除",
|
||
"comment": "0:有效;1:删除",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D4CE9148-F0FF-4125-A6A5-A00AF127BBFD",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "EE6D4805-2F56-44A5-87B6-E6C7169E413E",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8BA67839-6B46-4292-B70F-A84C43D19EBA",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "22E5D4C6-35AD-4899-99D9-608F6B120E27",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8C182234-E145-41E7-AED5-A867B564F83D",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [
|
||
{
|
||
"defKey": "bus_type",
|
||
"defName": null,
|
||
"unique": false,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"fieldDefKey": "7E58E3AC-EEE7-469B-9F19-CCB994D3E64D",
|
||
"ascOrDesc": "A",
|
||
"id": "9588650E-46A7-4D7B-A76F-0A95D353A0FA"
|
||
}
|
||
],
|
||
"id": "B564DD72-AF5E-4FD5-B9C7-027B334CAD36"
|
||
},
|
||
{
|
||
"defKey": "biz_id",
|
||
"defName": null,
|
||
"unique": false,
|
||
"comment": "",
|
||
"fields": [
|
||
{
|
||
"fieldDefKey": "3E4C1700-FC16-4074-8ED1-277B25E04093",
|
||
"ascOrDesc": "A",
|
||
"id": "1F6F287B-04CE-401D-9568-399D7C39A530"
|
||
}
|
||
],
|
||
"id": "2A6C25D8-DAEA-4BB7-9E9D-A1041218711B"
|
||
}
|
||
],
|
||
"correlations": [],
|
||
"id": "D73E43AD-2495-47B1-A38C-DECDEE4B7186",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "assign",
|
||
"defName": "领导交办详情",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"freeze": false,
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": true,
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": true,
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "domain",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "type",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "biz_id",
|
||
"defName": "交办单号ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D85CA1DB-3B75-4E07-9534-574C3F6F5317",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "task_id",
|
||
"defName": "待办id",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"id": "D393BE46-3B46-455B-B1EF-11C88035B5E2",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "title",
|
||
"defName": "标题",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8F1BAB4A-D1AF-418F-B6E9-886A7D47B9B5",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "leader_name",
|
||
"defName": "领导名称",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"id": "91149DF8-2216-438C-8B43-F7469724F9D0",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "send_id",
|
||
"defName": "申报账号ID",
|
||
"comment": "",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "B8B786E8-573C-4518-B906-03FEA00A6029",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "send_name",
|
||
"defName": "申报用户昵称",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DF130575-2969-45D9-9AAA-3F6993455D66",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "send_username",
|
||
"defName": "申报用户账号",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "33F6E66E-5617-434D-B563-39ABFBBF546E",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org_id",
|
||
"defName": "所属机构Id",
|
||
"comment": "",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FCDF8ECD-5811-4226-B8B0-6D4DFE14B3DC",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "org",
|
||
"defName": "所属机构",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F240E9D2-5D6A-4297-8F0C-08A0C86F7D9F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept_id",
|
||
"defName": "所属部门Id",
|
||
"comment": "",
|
||
"domain": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "537D24CB-8143-4514-97C6-2A631BB78226",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "dept",
|
||
"defName": "所属部门",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "C064B1B2-1748-456D-9E2C-EB4D9DF62DE4",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "phone",
|
||
"defName": "联系电话",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "65C1D51E-6B3B-4339-99DC-F0B79EC0F5D6",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "event_type",
|
||
"defName": "事件类型",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DEA24DA1-2F18-42C8-B1BA-F69C59AA02A8",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "content",
|
||
"defName": "事件描述",
|
||
"comment": "",
|
||
"domain": "C4848B19-D0A0-4A40-AE63-27BE0DF15937",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A439330F-AACB-4715-9311-0A8CB2AC0E7A",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "urgency",
|
||
"defName": "紧急程度",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "9DC2CB02-6C53-48D3-BB87-598C03712F68",
|
||
"extProps": {},
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "priority",
|
||
"defName": "优先级别",
|
||
"comment": "1:紧急;2:高;3:中;4:低",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "148C4DFE-F575-4E1F-A44C-28A8E320CB0F",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "assign_time",
|
||
"defName": "交办时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FC254F6F-B18B-4F0E-8352-9DB30D72FBCD",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "launch_time",
|
||
"defName": "报送时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0F235340-74E6-44C8-864D-3E9FB998DC51",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "solve_limit_time",
|
||
"defName": "解决期限时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "6AA69F91-A7BD-438A-A3BD-DE76015D64A1",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "planned_time",
|
||
"defName": "计划完成时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0E49D958-2DFA-44B1-A165-04F0CADEEC7B",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "reality_time",
|
||
"defName": "实际完成时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "13E7368E-6A96-498E-A183-8D9F0FA31DDD",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "handle_userid",
|
||
"defName": "处理人id",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"id": "539CDBA0-45A8-4721-A62B-0145F25E2FDA",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_user",
|
||
"defName": "处理人账号",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"id": "09CF24D5-9280-41C7-BBBB-DE10D8EA789F",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_name",
|
||
"defName": "处理人",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"id": "AEEC7D2D-D652-45D2-B1AB-47B0E3E33E81",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "deleted",
|
||
"defName": "是否删除",
|
||
"comment": "0:有效;1:删除",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"id": "ED69A593-91C9-46EE-B41E-E9398B3B1753",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "096F28A2-01D2-4255-AB9A-8FCCB40B7A81",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "AB4C7CB4-9E31-427C-AAEE-2B96EA89A89E",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "79AE6F8F-CA8F-4FBC-A6FE-C7EAFE815400",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "97A1A862-6EE4-4DF9-B03E-F92F2C8A3FB0",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "589D3B99-7C51-4F8E-925D-E73AA4657416",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "task_file",
|
||
"defName": "任务附件",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "domain",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "type",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "id",
|
||
"defName": "文件ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FF0CD72F-2953-4E02-9922-1613AA240A73",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_name",
|
||
"defName": "文件名",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D5688359-55F3-478D-9874-B990030F4780",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_type",
|
||
"defName": "文件类型",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "D68D6FAC-5899-4C6C-A29C-0B52596F5CE9",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "type",
|
||
"defName": "类型",
|
||
"comment": "",
|
||
"domain": "05781CAE-BE28-48B8-B70C-9E61E31F272E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4EB17B5F-32D3-45FA-85A8-CBEFC09C29E7",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_path",
|
||
"defName": "文件路径",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7FA88463-6039-49F5-963C-341FFA686749",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "file_size",
|
||
"defName": "文件大小",
|
||
"comment": "单位字节",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "BCB5CE70-B2F2-465F-9CBA-33119BD438B6",
|
||
"extProps": {},
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "task_id",
|
||
"defName": "待办ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2B54BD90-1F2C-43DD-B00D-2F1D44148ED7",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_id",
|
||
"defName": "处理ID",
|
||
"comment": "对处理流程记录",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "698FF7D2-81DC-40DA-B03C-CF8237F2B62C",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "upload_time",
|
||
"defName": "上传时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "45596BC1-906C-4589-8BFE-D006E81D3804",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "10FD66D6-78B1-419B-9384-6ACD6459EA90",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "165B6400-F381-49BE-B39E-62528DEEE65F",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "E14A1BAE-FB90-4C5A-9494-7AE4D69686E3",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "0D3DC4ED-94B5-431F-8D5B-67D1DA447091",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "3D920EE5-88ED-4061-9DB5-2BC1A3E242AF",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
},
|
||
{
|
||
"defKey": "task_handle",
|
||
"defName": "任务处理流程记录",
|
||
"comment": "",
|
||
"properties": {
|
||
"partitionBy": ""
|
||
},
|
||
"headers": [
|
||
{
|
||
"freeze": false,
|
||
"refKey": "hideInGraph",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": true,
|
||
"refKey": "defKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": true,
|
||
"refKey": "defName",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "primaryKey",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "notNull",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "autoIncrement",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "domain",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "type",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "len",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "scale",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "comment",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "refDict",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "defaultValue",
|
||
"hideInGraph": true
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "isStandard",
|
||
"hideInGraph": false
|
||
},
|
||
{
|
||
"freeze": false,
|
||
"refKey": "uiHint",
|
||
"hideInGraph": true
|
||
}
|
||
],
|
||
"fields": [
|
||
{
|
||
"defKey": "handle_id",
|
||
"defName": "处理ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": true,
|
||
"notNull": true,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "8FA34C6E-1F0C-46AB-9E89-233EEDFA1229",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "task_id",
|
||
"defName": "待办ID",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "E9533B0F-D760-4169-8F1D-1A5D722F6AE6",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "bus_type",
|
||
"defName": "类型",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"domain": "05781CAE-BE28-48B8-B70C-9E61E31F272E",
|
||
"id": "40A1EE61-12CC-4545-918A-9A44A26BA339",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_nickname",
|
||
"defName": "处理人",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "EEB19972-9D83-4647-B3F4-FD7EA75ACEBD",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_user_id",
|
||
"defName": "处理人ID",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": 36,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"domain": "",
|
||
"id": "737A3DCB-0D24-4BD5-9724-751D2C2FF719",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "handle_username",
|
||
"defName": "处理人账号",
|
||
"comment": "",
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"type": "VARCHAR",
|
||
"len": 255,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "7A42B80A-1276-4AE3-92BD-7B3483436361",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "step",
|
||
"defName": "环节步骤",
|
||
"comment": "start:开始;assign:分派;handle:处理中;feedback:已反馈;unresolved:未解决;end:结束;",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A523C77A-23B3-454C-B766-89B1CCAF9549",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "order_index",
|
||
"defName": "步骤次数",
|
||
"comment": "",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"id": "2E3A3F8F-2C2A-4072-A2D9-6E5938805243",
|
||
"uiHint": "",
|
||
"extProps": {},
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "happen_time",
|
||
"defName": "生成时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "32B9AE46-1B0B-422B-B1AD-8032F0B17ECD",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "result",
|
||
"defName": "处理结果",
|
||
"comment": "",
|
||
"domain": "C4848B19-D0A0-4A40-AE63-27BE0DF15937",
|
||
"type": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "DA95F6BA-93E6-4ACE-AC5B-17CD76599B81",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "status",
|
||
"defName": "环节状态",
|
||
"comment": "0:过期;1:有效",
|
||
"domain": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98",
|
||
"type": "VARCHAR",
|
||
"len": 1,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "3F0675F5-8920-4BA0-AE6F-E88D20836E40",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_by",
|
||
"defName": "创建人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "15B9D7DE-913E-4DEF-B984-2BABA5A6B96D",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "create_time",
|
||
"defName": "创建时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "BF7C56E1-043F-4FBA-A5C7-F1A317B9177F",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "update_by",
|
||
"defName": "更新人",
|
||
"comment": "",
|
||
"domain": "16120F75-6AA7-4483-868D-F07F511BB081",
|
||
"type": "VARCHAR",
|
||
"len": 32,
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "E8F36487-817A-45EE-BE61-A9E62C0898FD",
|
||
"extProps": {},
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "update_time",
|
||
"defName": "更新时间",
|
||
"comment": "",
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": true,
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "4EABBDC1-FA41-425F-8072-3294AA43DCEE",
|
||
"extProps": {},
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
}
|
||
],
|
||
"indexes": [],
|
||
"correlations": [],
|
||
"id": "1947A412-4DEE-4307-AA1D-338EC0CBCCCD",
|
||
"type": "P",
|
||
"sysProps": {
|
||
"nameTemplate": "{defKey}[{defName}]"
|
||
}
|
||
}
|
||
],
|
||
"views": [],
|
||
"dicts": [],
|
||
"viewGroups": [
|
||
{
|
||
"defKey": "project",
|
||
"defName": "项目",
|
||
"refEntities": [
|
||
"69B5884B-2F86-4064-A711-06D1BCFC11B3",
|
||
"5038707C-FB7B-4831-87E3-E814F0629D60",
|
||
"2C2444AD-B3CE-4D10-BBC6-E3E44773BD73",
|
||
"7365AA08-253F-4989-B202-162A961C3116",
|
||
"A40BE0A5-DC2D-4592-A25D-8230BBF4C0AA",
|
||
"5407189B-958D-44AD-9285-0BD21F517B0F",
|
||
"0E546C6C-AA75-4550-B5F5-14DF92E9F632",
|
||
"A8189F33-6BB5-492F-A0BE-DEF49D83ABCF",
|
||
"4E1B9B99-FEBE-4BA9-8515-EE91C700148A",
|
||
"D73E43AD-2495-47B1-A38C-DECDEE4B7186",
|
||
"589D3B99-7C51-4F8E-925D-E73AA4657416",
|
||
"3D920EE5-88ED-4061-9DB5-2BC1A3E242AF",
|
||
"1947A412-4DEE-4307-AA1D-338EC0CBCCCD"
|
||
],
|
||
"refDiagrams": [],
|
||
"refViews": [],
|
||
"refDicts": [],
|
||
"id": "7B59C0CD-4118-4467-B15A-521524D4BF07"
|
||
}
|
||
],
|
||
"dataTypeMapping": {
|
||
"referURL": "",
|
||
"mappings": [
|
||
{
|
||
"defKey": "string",
|
||
"id": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"defName": "字串",
|
||
"29D1CE08-4C35-4D2D-AAA9-23D93305B52E": "VARCHAR",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "VARCHAR2",
|
||
"BFC87171-C74F-494A-B7C2-76B9C55FACC9": "VARCHAR",
|
||
"DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022": "VARCHAR",
|
||
"89504F5D-94BF-4C9E-8B2E-44F37305FED5": "VARCHAR",
|
||
"0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307": "VARCHAR2",
|
||
"592C7013-143D-4E7B-AF64-0D7BF1E28230": "VARCHAR",
|
||
"77BD85E5-9D0D-4096-8427-CBA306FC9C6A": "VARCHAR",
|
||
"11D1FB71-A587-4217-89BA-611B8A1F83E0": "STRING",
|
||
"B363BE0B-F852-49B8-9B2E-F6D2174DEAC1": "TEXT",
|
||
"797A1496-D649-4261-89B4-544132EC3F36": "String",
|
||
"895CFD1D-4273-4D32-A2C4-CAC70200AB5B": "String",
|
||
"A2EE7B4A-CE62-4290-B00C-B26C1BF18073": "String",
|
||
"F3AC2415-E86B-40C6-9FEB-F4B7937D2C30": "string",
|
||
"81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2": "string",
|
||
"B91D99E0-9B7C-416C-8737-B760957DAF09": "string",
|
||
"BDF457FD-9F98-4AC3-A705-7587B00A3BAB": "String",
|
||
"56F4B55B-F0B8-4049-9E6B-50B95C1D793A": "VARCHAR",
|
||
"483F9346-C99E-4014-A1D2-A554606BD8A3": "VARCHAR"
|
||
},
|
||
{
|
||
"defKey": "double",
|
||
"id": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
|
||
"defName": "小数",
|
||
"29D1CE08-4C35-4D2D-AAA9-23D93305B52E": "DECIMAL",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "DECIMAL",
|
||
"BFC87171-C74F-494A-B7C2-76B9C55FACC9": "DECIMAL",
|
||
"DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022": "NUMERIC",
|
||
"89504F5D-94BF-4C9E-8B2E-44F37305FED5": "DECIMAL",
|
||
"0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307": "DECIMAL",
|
||
"592C7013-143D-4E7B-AF64-0D7BF1E28230": "NUMERIC",
|
||
"77BD85E5-9D0D-4096-8427-CBA306FC9C6A": "NUMERIC",
|
||
"11D1FB71-A587-4217-89BA-611B8A1F83E0": "DOUBLE",
|
||
"B363BE0B-F852-49B8-9B2E-F6D2174DEAC1": "REAL",
|
||
"797A1496-D649-4261-89B4-544132EC3F36": "Double",
|
||
"895CFD1D-4273-4D32-A2C4-CAC70200AB5B": "Double",
|
||
"A2EE7B4A-CE62-4290-B00C-B26C1BF18073": "Double",
|
||
"F3AC2415-E86B-40C6-9FEB-F4B7937D2C30": "decimal",
|
||
"81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2": "double",
|
||
"B91D99E0-9B7C-416C-8737-B760957DAF09": "*float64",
|
||
"BDF457FD-9F98-4AC3-A705-7587B00A3BAB": "f64",
|
||
"56F4B55B-F0B8-4049-9E6B-50B95C1D793A": "DECIMAL",
|
||
"483F9346-C99E-4014-A1D2-A554606BD8A3": "DECIMAL"
|
||
},
|
||
{
|
||
"defKey": "int",
|
||
"id": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
|
||
"defName": "整数",
|
||
"29D1CE08-4C35-4D2D-AAA9-23D93305B52E": "INT",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "INT",
|
||
"BFC87171-C74F-494A-B7C2-76B9C55FACC9": "INT",
|
||
"DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022": "INTEGER",
|
||
"89504F5D-94BF-4C9E-8B2E-44F37305FED5": "INT",
|
||
"0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307": "INTEGER",
|
||
"592C7013-143D-4E7B-AF64-0D7BF1E28230": "INTEGER",
|
||
"77BD85E5-9D0D-4096-8427-CBA306FC9C6A": "INT4",
|
||
"11D1FB71-A587-4217-89BA-611B8A1F83E0": "INT",
|
||
"B363BE0B-F852-49B8-9B2E-F6D2174DEAC1": "INTEGER",
|
||
"797A1496-D649-4261-89B4-544132EC3F36": "Integer",
|
||
"895CFD1D-4273-4D32-A2C4-CAC70200AB5B": "Integer",
|
||
"A2EE7B4A-CE62-4290-B00C-B26C1BF18073": "Integer",
|
||
"F3AC2415-E86B-40C6-9FEB-F4B7937D2C30": "int",
|
||
"81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2": "int",
|
||
"B91D99E0-9B7C-416C-8737-B760957DAF09": "*int",
|
||
"BDF457FD-9F98-4AC3-A705-7587B00A3BAB": "i32",
|
||
"56F4B55B-F0B8-4049-9E6B-50B95C1D793A": "INTEGER",
|
||
"483F9346-C99E-4014-A1D2-A554606BD8A3": "INT"
|
||
},
|
||
{
|
||
"defKey": "date",
|
||
"id": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
|
||
"defName": "日期",
|
||
"29D1CE08-4C35-4D2D-AAA9-23D93305B52E": "TIMESTAMP",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "TIMESTAMP",
|
||
"BFC87171-C74F-494A-B7C2-76B9C55FACC9": "DATETIME",
|
||
"DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022": "TIMESTAMP",
|
||
"89504F5D-94BF-4C9E-8B2E-44F37305FED5": "DATE",
|
||
"0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307": "DATE",
|
||
"592C7013-143D-4E7B-AF64-0D7BF1E28230": "DATE",
|
||
"77BD85E5-9D0D-4096-8427-CBA306FC9C6A": "DATE",
|
||
"11D1FB71-A587-4217-89BA-611B8A1F83E0": "DATETIME",
|
||
"B363BE0B-F852-49B8-9B2E-F6D2174DEAC1": "NUMERIC",
|
||
"797A1496-D649-4261-89B4-544132EC3F36": "Date",
|
||
"895CFD1D-4273-4D32-A2C4-CAC70200AB5B": "Date",
|
||
"A2EE7B4A-CE62-4290-B00C-B26C1BF18073": "Date",
|
||
"F3AC2415-E86B-40C6-9FEB-F4B7937D2C30": "DateTime",
|
||
"81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2": "timestamp",
|
||
"B91D99E0-9B7C-416C-8737-B760957DAF09": "*time.Time",
|
||
"BDF457FD-9F98-4AC3-A705-7587B00A3BAB": "DateTime<Local>",
|
||
"56F4B55B-F0B8-4049-9E6B-50B95C1D793A": "DATE",
|
||
"483F9346-C99E-4014-A1D2-A554606BD8A3": "DATETIME"
|
||
},
|
||
{
|
||
"defKey": "bytes",
|
||
"id": "D516E75B-90F5-4741-B9B3-A186A263F04C",
|
||
"defName": "二进制",
|
||
"29D1CE08-4C35-4D2D-AAA9-23D93305B52E": "BLOB",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "BLOB",
|
||
"BFC87171-C74F-494A-B7C2-76B9C55FACC9": "VARBINARY",
|
||
"DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022": "BYTEA",
|
||
"89504F5D-94BF-4C9E-8B2E-44F37305FED5": "BLOB",
|
||
"0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307": "BLOB",
|
||
"592C7013-143D-4E7B-AF64-0D7BF1E28230": "BYTEA",
|
||
"77BD85E5-9D0D-4096-8427-CBA306FC9C6A": "BYTEA",
|
||
"11D1FB71-A587-4217-89BA-611B8A1F83E0": "BINARY",
|
||
"B363BE0B-F852-49B8-9B2E-F6D2174DEAC1": "NONE",
|
||
"797A1496-D649-4261-89B4-544132EC3F36": "byte[]",
|
||
"895CFD1D-4273-4D32-A2C4-CAC70200AB5B": "byte[]",
|
||
"A2EE7B4A-CE62-4290-B00C-B26C1BF18073": "byte[]",
|
||
"F3AC2415-E86B-40C6-9FEB-F4B7937D2C30": "byte[]",
|
||
"81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2": "binary",
|
||
"B91D99E0-9B7C-416C-8737-B760957DAF09": "[]byte",
|
||
"56F4B55B-F0B8-4049-9E6B-50B95C1D793A": "BYTE"
|
||
},
|
||
{
|
||
"defKey": "largeText",
|
||
"id": "B17BDED3-085F-40E1-9019-3B79CF2BF075",
|
||
"defName": "大文本",
|
||
"29D1CE08-4C35-4D2D-AAA9-23D93305B52E": "TEXT",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "CLOB",
|
||
"BFC87171-C74F-494A-B7C2-76B9C55FACC9": "TEXT",
|
||
"DFBEC1DD-AA84-456E-BBF3-C95DD0DB2022": "TEXT",
|
||
"89504F5D-94BF-4C9E-8B2E-44F37305FED5": "CLOB",
|
||
"0BBCABA5-B8E4-41B0-B8E4-8F5EA6029307": "CLOB",
|
||
"592C7013-143D-4E7B-AF64-0D7BF1E28230": "TEXT",
|
||
"77BD85E5-9D0D-4096-8427-CBA306FC9C6A": "TEXT",
|
||
"11D1FB71-A587-4217-89BA-611B8A1F83E0": "STRING",
|
||
"B363BE0B-F852-49B8-9B2E-F6D2174DEAC1": "TEXT",
|
||
"797A1496-D649-4261-89B4-544132EC3F36": "String",
|
||
"895CFD1D-4273-4D32-A2C4-CAC70200AB5B": "String",
|
||
"A2EE7B4A-CE62-4290-B00C-B26C1BF18073": "String",
|
||
"F3AC2415-E86B-40C6-9FEB-F4B7937D2C30": "string",
|
||
"81CCA482-3F4D-4EAC-8CF9-F5E7BC098AD2": "string",
|
||
"B91D99E0-9B7C-416C-8737-B760957DAF09": "string",
|
||
"BDF457FD-9F98-4AC3-A705-7587B00A3BAB": "String",
|
||
"56F4B55B-F0B8-4049-9E6B-50B95C1D793A": "TEXT",
|
||
"483F9346-C99E-4014-A1D2-A554606BD8A3": "STRING"
|
||
},
|
||
{
|
||
"defKey": "integer",
|
||
"id": "2F0597A0-B16A-4E91-AF8C-B28263544755",
|
||
"defName": "整数"
|
||
},
|
||
{
|
||
"defKey": "long",
|
||
"id": "1A8A9C3C-15AC-43FC-8A1D-28B254CE103D",
|
||
"defName": "大整数",
|
||
"A4E23CB7-BB01-4BD1-9F71-F73F3E15A542": "Number"
|
||
}
|
||
]
|
||
},
|
||
"domains": [
|
||
{
|
||
"defKey": "DefaultString",
|
||
"defName": "默认字串",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 255,
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "9092C4E0-1A54-4859-ABBB-5B62DBC27573"
|
||
},
|
||
{
|
||
"defKey": "IdOrKey",
|
||
"defName": "主键标识",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 32,
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "16120F75-6AA7-4483-868D-F07F511BB081"
|
||
},
|
||
{
|
||
"defKey": "Name",
|
||
"defName": "名称",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 90,
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "54611CCC-CA4B-42E1-9F32-4944C85B85A6"
|
||
},
|
||
{
|
||
"defKey": "Int",
|
||
"defName": "整数",
|
||
"applyFor": "1D764C4A-6F9F-421E-B11A-6F3E23B51811",
|
||
"len": "",
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E"
|
||
},
|
||
{
|
||
"defKey": "Double",
|
||
"defName": "小数",
|
||
"applyFor": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
|
||
"len": 24,
|
||
"scale": 6,
|
||
"uiHint": "",
|
||
"id": "FF4459C5-6B45-4DBF-8FC0-E06239BC05B4"
|
||
},
|
||
{
|
||
"defKey": "Money",
|
||
"defName": "金额",
|
||
"applyFor": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
|
||
"len": 24,
|
||
"scale": 6,
|
||
"uiHint": "",
|
||
"id": "C3B1681B-99F9-4818-9E80-DE1652A51D85"
|
||
},
|
||
{
|
||
"defKey": "DateTime",
|
||
"defName": "日期时间",
|
||
"applyFor": "89D69E81-EA34-42EE-9FA2-93B8BD27E098",
|
||
"len": "",
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC"
|
||
},
|
||
{
|
||
"defKey": "YesNo",
|
||
"defName": "是否",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": "1",
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "6F7C1C5C-D159-41E6-BF9D-54DEEFA79AFF"
|
||
},
|
||
{
|
||
"defKey": "Dict",
|
||
"defName": "数据字典",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": "32",
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "73FD2BAD-2358-4336-B96D-45DC897BD792"
|
||
},
|
||
{
|
||
"defKey": "DescText",
|
||
"defName": "描述文本",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": "900",
|
||
"scale": "",
|
||
"uiHint": "",
|
||
"id": "3E948CEC-3070-472C-AF92-F3CA11EC9D15"
|
||
},
|
||
{
|
||
"defKey": "LongKey",
|
||
"defName": "标识号-长_LongKey",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 64,
|
||
"scale": "",
|
||
"id": "F0EBB769-5D6E-4EF3-99CA-DCC3AE69827E"
|
||
},
|
||
{
|
||
"defKey": "Char",
|
||
"defName": "单字符_Char",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 1,
|
||
"scale": "",
|
||
"id": "1BB9C8DC-8A10-414C-ABD5-6D621A6CFB98"
|
||
},
|
||
{
|
||
"defKey": "Intro",
|
||
"defName": "备注说明_Intro",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 512,
|
||
"scale": "",
|
||
"id": "BF1ADA67-474C-4017-8D4B-05F155FF935B"
|
||
},
|
||
{
|
||
"defKey": "ShortString",
|
||
"defName": "字串-短_ShortString",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 128,
|
||
"scale": "",
|
||
"id": "58F8E04A-5645-445E-AFC7-5DB5110049BF"
|
||
},
|
||
{
|
||
"defKey": "MiddleString",
|
||
"defName": "字串-中_MiddleString",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 1024,
|
||
"scale": "",
|
||
"id": "6F67EBAF-9B16-474C-840A-85EF33578E79"
|
||
},
|
||
{
|
||
"defKey": "LongString",
|
||
"defName": "字串-长_LongString",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 2,
|
||
"scale": "",
|
||
"id": "01BA1028-4597-45C3-A43B-9600794C8E76"
|
||
},
|
||
{
|
||
"defKey": "LongText",
|
||
"defName": "大文本_LongText",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 4000,
|
||
"scale": "",
|
||
"id": "C4848B19-D0A0-4A40-AE63-27BE0DF15937"
|
||
},
|
||
{
|
||
"defKey": "Ratio",
|
||
"defName": "比例_Ratio",
|
||
"applyFor": "1A0BDC09-0792-4174-9E8E-80BE8DF44B8E",
|
||
"len": 4,
|
||
"scale": 2,
|
||
"id": "10B975C9-8342-4A0C-B5B4-856915FFC90F"
|
||
},
|
||
{
|
||
"defKey": "Integer",
|
||
"defName": "整数_Integer",
|
||
"applyFor": "2F0597A0-B16A-4E91-AF8C-B28263544755",
|
||
"len": "",
|
||
"scale": "",
|
||
"id": "14F40377-4BA8-4E33-B15A-54770BDDE761"
|
||
},
|
||
{
|
||
"defKey": "BigInt",
|
||
"defName": "大整数_BigInt",
|
||
"applyFor": "1A8A9C3C-15AC-43FC-8A1D-28B254CE103D",
|
||
"len": "",
|
||
"scale": "",
|
||
"id": "1AF3C2A2-F8ED-4D89-8EB9-E8D93C8B7698"
|
||
},
|
||
{
|
||
"defKey": "Date",
|
||
"defName": "日期_Date",
|
||
"applyFor": "",
|
||
"len": "",
|
||
"scale": "",
|
||
"id": "EF221659-DBCF-4F59-AA6A-D635D44460D8"
|
||
},
|
||
{
|
||
"defKey": "var20",
|
||
"defName": "20字符_var20",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 20,
|
||
"scale": "",
|
||
"id": "05781CAE-BE28-48B8-B70C-9E61E31F272E"
|
||
},
|
||
{
|
||
"defKey": "var36",
|
||
"defName": "36字符_va36",
|
||
"applyFor": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64",
|
||
"len": 36,
|
||
"scale": "",
|
||
"id": "518EFC41-B8E8-4CCC-AA5B-1CCA608BF5F4"
|
||
}
|
||
],
|
||
"diagrams": [],
|
||
"standardFields": [
|
||
{
|
||
"defKey": "personInfo",
|
||
"defName": "个人基本信息要素",
|
||
"fields": [
|
||
{
|
||
"defKey": "ID_CARD_NO",
|
||
"defName": "身份证号",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "60",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "A64A91C8-A41F-4113-92FB-7563D7EF054D",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "MOBILE_PHONE",
|
||
"defName": "手机号",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "60",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "479DA2AB-1974-411A-A81E-92FB939E75EB",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "GENDER",
|
||
"defName": "性别",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "32",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
|
||
"refDict": "BF9E20E0-80D3-486D-BD58-5FADCF3E4A1D",
|
||
"uiHint": "",
|
||
"id": "48473E29-6594-4912-AADE-C8AB44FCA3E9",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "BIRTH",
|
||
"defName": "出生日期",
|
||
"comment": "",
|
||
"type": "DATETIME",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "7CFFA0D3-6A93-4DDC-BC10-DF21211064DC",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "2BD3D2EE-2411-49A6-983D-84B81057312F",
|
||
"baseType": "89D69E81-EA34-42EE-9FA2-93B8BD27E098"
|
||
},
|
||
{
|
||
"defKey": "AVATAR",
|
||
"defName": "头像",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "60",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "FDD67CEE-4B52-4BD1-A1A3-9C5EBC6037E6",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "HEIGHT",
|
||
"defName": "身高",
|
||
"comment": "",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "CAAA0E79-41A1-4758-B481-D171168C4D68",
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "WEIGHT",
|
||
"defName": "体重",
|
||
"comment": "",
|
||
"type": "INT",
|
||
"len": "",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "6BC8F04B-6CFA-4995-98D3-318F5CDD774E",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "575482CE-64A6-4CB9-99DC-8E126D190AAA",
|
||
"baseType": "1D764C4A-6F9F-421E-B11A-6F3E23B51811"
|
||
},
|
||
{
|
||
"defKey": "NATION",
|
||
"defName": "名族",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "32",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
|
||
"refDict": "115EDEFC-0323-410E-81AB-CCAB8879837A",
|
||
"uiHint": "",
|
||
"id": "15B0D75D-0B97-4985-A816-D0EAFA90446B",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "POLITICAL",
|
||
"defName": "政治面貌",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "32",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
|
||
"refDict": "06EED564-BBA9-4747-8D73-AF809A330CB8",
|
||
"uiHint": "",
|
||
"id": "F458E86D-84D6-45A1-9DD3-51E6C8170D7F",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "MARITAL",
|
||
"defName": "婚姻状况",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "32",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
|
||
"refDict": "EA1587B7-3954-437A-BFE0-FCB0453BCABA",
|
||
"uiHint": "",
|
||
"id": "7275E578-6893-4922-AC69-95B261BFBD61",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "DOMICILE_PLACE_PROVINCE",
|
||
"defName": "籍贯(省)",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "60",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "F04BF130-3EC1-4E02-9DED-3214CA88E352",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "DOMICILE_PLACE_CITY",
|
||
"defName": "籍贯(市)",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "32",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "73FD2BAD-2358-4336-B96D-45DC897BD792",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "B97F5BC2-33DE-4857-9DB8-ECFD02C9040C",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
},
|
||
{
|
||
"defKey": "DOMICILE_PLACE_ADDRESS",
|
||
"defName": "户籍地址",
|
||
"comment": "",
|
||
"type": "VARCHAR",
|
||
"len": "60",
|
||
"scale": "",
|
||
"primaryKey": false,
|
||
"notNull": false,
|
||
"autoIncrement": false,
|
||
"defaultValue": "",
|
||
"hideInGraph": false,
|
||
"domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573",
|
||
"refDict": "",
|
||
"uiHint": "",
|
||
"id": "812ADF1D-8C03-40CA-B030-E539838FB889",
|
||
"baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64"
|
||
}
|
||
],
|
||
"id": "F30202B9-4B5D-4CE7-87CE-B3890C84D3F2"
|
||
}
|
||
],
|
||
"dbConn": [],
|
||
"namingRules": [
|
||
{
|
||
"id": "63F1DC0E-6A76-4B75-B3DA-4B00657B4E1B",
|
||
"defName": "属性代码不能超过32",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "L",
|
||
"applyFieldType": "field",
|
||
"programCode": "return (data.field.defName||\"\").length <= 32",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "668CBEE6-E0B7-4ACE-B72E-63942963B191",
|
||
"defName": "长度不能超过32位",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return (data.entity.defName||\"\").length <= 32",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "11BD987F-82E7-418E-A752-FDD84F1582A2",
|
||
"defName": "长度不能超过32位",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "return (data.field.defName||\"\").length <= 32",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "29D0A8D9-ABE2-451F-8A39-52FAB02E62B9",
|
||
"defName": "索引名-长度不超过32个字符",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "index",
|
||
"programCode": "return (data.index.defName||\"\").length <= 32",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "B425A96F-6A31-4DBD-8743-A00DE28FB50F",
|
||
"defName": "不能使用保留字",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "index",
|
||
"programCode": "let sysWords = \"action,add,aggregate,all,alter,after,and,as,asc,avg,avg_row_length,auto_increment,between,bigint,bit,binary,blob,bool,both,by,cascade,case,char,character,change,check,checksum,column,columns,comment,constraint,create,cross,current_date,current_time,current_timestamp,data,database,databases,date,datetime,day,day_hour,day_minute,day_second,dayofmonth,dayofweek,dayofyear,dec,decimal,default,delayed,delay_key_write,delete,desc,describe,distinct,distinctrow,double,drop,end,else,escape,escaped,enclosed,enum,explain,exists,fields,file,first,float,float4,float8,flush,foreign,from,for,full,function,global,grant,grants,group,having,heap,high_priority,hour,hour_minute,hour_second,hosts,identified,ignore,in,index,infile,inner,insert,insert_id,int,integer,interval,int1,int2,int3,int4,int8,into,if,is,isam,join,key,keys,kill,last_insert_id,leading,left,length,like,lines,limit,load,local,lock,logs,long,longblob,longtext,low_priority,max,max_rows,match,mediumblob,mediumtext,mediumint,middleint,min_rows,minute,minute_second,modify,month,monthname,myisam,natural,numeric,no,not,null,on,optimize,option,optionally,or,order,outer,outfile,pack_keys,partial,password,precision,primary,procedure,process,processlist,privileges,read,real,references,reload,regexp,rename,replace,restrict,returns,revoke,rlike,row,rows,second,select,set,show,shutdown,smallint,soname,sql_big_tables,sql_big_selects,sql_low_priority_updates,sql_log_off,sql_log_update,sql_select_limit,sql_small_result,sql_big_result,sql_warnings,straight_join,starting,status,string,table,tables,temporary,terminated,text,then,time,timestamp,tinyblob,tinytext,tinyint,trailing,to,type,use,using,unique,unlock,unsigned,update,usage,values,varchar,variables,varying,varbinary,with,write,when,where,year,year_month,zerofill\".split(\",\");\nreturn sysWords.indexOf(data.index.defKey.toLowerCase())<0;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "EF9E44D0-691A-4352-A079-CFF300107531",
|
||
"defName": "索引名-全小写",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "index",
|
||
"programCode": "return !/[A-Z]+/.test(data.index.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "972EB2FB-4428-429D-8B0A-F082A8C7A94D",
|
||
"defName": "名称不能为空",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "L",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return data.logicEntity.defName",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "EEAEB9C5-BB6C-4E92-949B-D27928690D85",
|
||
"defName": "名称长度不超过32",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "L",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return (data.logicEntity.defName||\"\").length <=32",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "24E3F7E5-730D-4378-B72D-195D6B940352",
|
||
"defName": "不能使用保留字",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "let sysWords = \"action,add,aggregate,all,alter,after,and,as,asc,avg,avg_row_length,auto_increment,between,bigint,bit,binary,blob,bool,both,by,cascade,case,char,character,change,check,checksum,column,columns,comment,constraint,create,cross,current_date,current_time,current_timestamp,data,database,databases,date,datetime,day,day_hour,day_minute,day_second,dayofmonth,dayofweek,dayofyear,dec,decimal,default,delayed,delay_key_write,delete,desc,describe,distinct,distinctrow,double,drop,end,else,escape,escaped,enclosed,enum,explain,exists,fields,file,first,float,float4,float8,flush,foreign,from,for,full,function,global,grant,grants,group,having,heap,high_priority,hour,hour_minute,hour_second,hosts,identified,ignore,in,index,infile,inner,insert,insert_id,int,integer,interval,int1,int2,int3,int4,int8,into,if,is,isam,join,key,keys,kill,last_insert_id,leading,left,length,like,lines,limit,load,local,lock,logs,long,longblob,longtext,low_priority,max,max_rows,match,mediumblob,mediumtext,mediumint,middleint,min_rows,minute,minute_second,modify,month,monthname,myisam,natural,numeric,no,not,null,on,optimize,option,optionally,or,order,outer,outfile,pack_keys,partial,password,precision,primary,procedure,process,processlist,privileges,read,real,references,reload,regexp,rename,replace,restrict,returns,revoke,rlike,row,rows,second,select,set,show,shutdown,smallint,soname,sql_big_tables,sql_big_selects,sql_low_priority_updates,sql_log_off,sql_log_update,sql_select_limit,sql_small_result,sql_big_result,sql_warnings,straight_join,starting,status,string,table,tables,temporary,terminated,text,then,time,timestamp,tinyblob,tinytext,tinyint,trailing,to,type,use,using,unique,unlock,unsigned,update,usage,values,varchar,variables,varying,varbinary,with,write,when,where,year,year_month,zerofill\".split(\",\");\nreturn sysWords.indexOf(data.entity.defKey.toLowerCase())<0;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "039BF435-DC77-4DA4-81C7-7F8076BF22BB",
|
||
"defName": "表名-全小写",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return !/[A-Z]+/.test(data.entity.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "CBEB0E30-19C6-427D-A8BF-61FF10E27A0B",
|
||
"defName": "表名-不允许空格",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return !/\\s+/.test(data.entity.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "1168C7C2-8E8E-4FB7-B639-B3DE839C395A",
|
||
"defName": "表名-英文及下划线",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return /^[a-zA-Z_][a-zA-Z0-9_]*$/.test(data.entity.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "D373637C-D3A6-4621-B656-6841A5444A76",
|
||
"defName": "表必须有comment注释",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "return (data.entity.defName||\"\").length > 0 || (data.entity.comment||\"\").length > 0",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "2BAB122B-8811-40BB-89F3-CDC24B5862D3",
|
||
"defName": "主键命名为 id,类型为 int 或 bigint,且为自增",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "let fields = data.entity.fields;\nfor(let i=0;i<fields.length;i++){\n let field = fields[i];\n if(field.primaryKey){\n return field.autoIncrement && (field.dbType.toUpperCase()==\"INT\"||field.dbType==\"BIGINT\");\n }\n}\nreturn false;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "0B2F0BD2-3B84-4AB1-BA29-9DE9620AF608",
|
||
"defName": "必须有数据的创建时间以及创建人字段",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "entity",
|
||
"programCode": "let count = 0;\nlet fields = data.entity.fields;\nfor(let i=0;i<fields.length;i++){\n let field = fields[i];\n if(\"created_time,updated_time\".indexOf(field.defKey.toLowerCase())>=0){\n count ++;\n }\n}\nreturn count==2;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "BEC54F19-52D5-4882-BCE1-4439785F8001",
|
||
"defName": "不能使用保留字",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "let sysWords = \"action,add,aggregate,all,alter,after,and,as,asc,avg,avg_row_length,auto_increment,between,bigint,bit,binary,blob,bool,both,by,cascade,case,char,character,change,check,checksum,column,columns,comment,constraint,create,cross,current_date,current_time,current_timestamp,data,database,databases,date,datetime,day,day_hour,day_minute,day_second,dayofmonth,dayofweek,dayofyear,dec,decimal,default,delayed,delay_key_write,delete,desc,describe,distinct,distinctrow,double,drop,end,else,escape,escaped,enclosed,enum,explain,exists,fields,file,first,float,float4,float8,flush,foreign,from,for,full,function,global,grant,grants,group,having,heap,high_priority,hour,hour_minute,hour_second,hosts,identified,ignore,in,index,infile,inner,insert,insert_id,int,integer,interval,int1,int2,int3,int4,int8,into,if,is,isam,join,key,keys,kill,last_insert_id,leading,left,length,like,lines,limit,load,local,lock,logs,long,longblob,longtext,low_priority,max,max_rows,match,mediumblob,mediumtext,mediumint,middleint,min_rows,minute,minute_second,modify,month,monthname,myisam,natural,numeric,no,not,null,on,optimize,option,optionally,or,order,outer,outfile,pack_keys,partial,password,precision,primary,procedure,process,processlist,privileges,read,real,references,reload,regexp,rename,replace,restrict,returns,revoke,rlike,row,rows,second,select,set,show,shutdown,smallint,soname,sql_big_tables,sql_big_selects,sql_low_priority_updates,sql_log_off,sql_log_update,sql_select_limit,sql_small_result,sql_big_result,sql_warnings,straight_join,starting,status,string,table,tables,temporary,terminated,text,then,time,timestamp,tinyblob,tinytext,tinyint,trailing,to,type,use,using,unique,unlock,unsigned,update,usage,values,varchar,variables,varying,varbinary,with,write,when,where,year,year_month,zerofill\".split(\",\");\nreturn sysWords.indexOf(data.field.defKey.toLowerCase())<0;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "082E186D-7B02-4F1C-9ECE-378AB98C4845",
|
||
"defName": "字段-全小写",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "return !/[A-Z]+/.test(data.field.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "F3CE5C67-23B6-4E7B-BA91-D5F0BCBC9E6A",
|
||
"defName": "字段-不允许空格",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "return !/\\s+/.test(data.field.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "21AFEAC8-96D7-467F-8320-A33887FC0C5D",
|
||
"defName": "字段-英文及下划线",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "return /^[a-zA-Z_][a-zA-Z0-9_]*$/.test(data.field.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "2BBDE47B-6926-4E1A-AE57-D4F6E5399EE6",
|
||
"defName": "字段-必需有comment注释",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "return (data.field.defName||\"\").length > 0 || (data.field.comment||\"\").length > 0",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "5E181E43-0D72-498F-8178-4C1CDBC89A16",
|
||
"defName": "字段-不能与表名相同",
|
||
"intro": "",
|
||
"controlIntensity": "F",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "return data.field.defKey != data.entity.defKey;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "DE8F8598-5D53-4727-A837-7816C2AF99D9",
|
||
"defName": "外键-字段必须具有表名及其主键",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "let relas = data.entity.correlations;\nfor(let i=0;i<relas.length;i++){\n let rela = relas[i];\n if(data.field.defKey==rela.myField&&rela.myRows==\"n\"){\n if(rela.myField==(rela.refEntity+\"_\"+rela.refField)){\n return true;\n }else{\n return false;\n }\n }\n}\nreturn true;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "D330BCC3-DBAB-4677-8C5A-A301003A5878",
|
||
"defName": "时间字段类型尽量选取 timestamp",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "if(data.field.defName.lastIndexOf(\"日期\")>=0 || data.field.defName.lastIndexOf(\"时间\")>=0 ){\n if(data.field.dbType.toLowerCase().indexOf(\"date\")>=0){\n return true;\n }else{\n return false;\n }\n};\nreturn true;",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "2E7FDA44-989A-4C5B-A0C5-12B1E40E57B1",
|
||
"defName": "索引名-英文及下划线",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "index",
|
||
"programCode": "return /^[a-zA-Z_][a-zA-Z0-9_]*$/.test(data.index.defKey);",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "023450B3-AAE2-4DC1-AE63-2196DD82823D",
|
||
"defName": "索引名-主键的名称以pk_开头,唯一键以uk_开头,普通索引以 ix_开头",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "index",
|
||
"programCode": "if(data.index.unique){\n return data.index.defKey.indexOf(\"uk_\")==0;\n}else{\n return data.index.defKey.indexOf(\"ix_\")==0;\n}",
|
||
"enable": true
|
||
},
|
||
{
|
||
"id": "1C563E17-262B-4EB6-87F0-203CAC667CF0",
|
||
"defName": "不允许存在blob、text等大字段",
|
||
"intro": "",
|
||
"controlIntensity": "S",
|
||
"applyObjectType": "P",
|
||
"applyFieldType": "field",
|
||
"programCode": "if(\"blob,text\".indexOf(data.field.dbType.toLowerCase())>=0){\n return false;\n}\nreturn true;",
|
||
"enable": true
|
||
}
|
||
]
|
||
} |