|
@@ -0,0 +1,672 @@
|
|
|
+# 数据字典接口文档
|
|
|
+### 术语说明:
|
|
|
+
|
|
|
+#### 平台级字典
|
|
|
+通用的类型定于与信息点定义
|
|
|
+
|
|
|
+
|
|
|
+#### 集团级数据(集团级变更请求审核通过后形成的数据)
|
|
|
+集团层面新增或编辑的类型与信息点数据
|
|
|
+
|
|
|
+
|
|
|
+#### 集团级字典
|
|
|
+平台级字典与集团级数据的并集
|
|
|
+
|
|
|
+
|
|
|
+#### 集团方案
|
|
|
+从集团级字典订阅类型与信息点后形成方案,是集团级字典的子集
|
|
|
+集团可以配置任意个集团方案
|
|
|
+
|
|
|
+
|
|
|
+#### 项目级数据(项目级变更请求审核通过后形成的数据)
|
|
|
+项目层面新增或编辑的信息点数据
|
|
|
+
|
|
|
+
|
|
|
+#### 项目级字典
|
|
|
+项目所继承的集团方案包含的数据与项目级数据的并集
|
|
|
+(继承:当集团方案变化时项目级字典也会同步发生变化)
|
|
|
+
|
|
|
+#### 应用订阅
|
|
|
+应用在项目级字典中订阅类型与信息点
|
|
|
+
|
|
|
+```
|
|
|
+站在用户或数据字典使用方的角度来看数据字典有三层:平台级字典,集团级字典,项目级字典
|
|
|
+类型相同或信息点相同时项目级字典优先级最高,集团级次之,平台级字典最低,优先级高的会覆盖优先级低的
|
|
|
+
|
|
|
+使用数据字典时明确"使用的字典位于哪个层级"对需求的分析和理解会有很大帮组
|
|
|
+
|
|
|
+集团级数据、集团方案、项目级数据是数据字典内部逻辑概念
|
|
|
+应用和服务应该关注的是项目级字典和应用订阅内容
|
|
|
+
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+### 字段约定
|
|
|
+
|
|
|
+| 字段 | 说明 | 备注 |
|
|
|
+| --------- | ----------------------------- | ---- |
|
|
|
+| class | 类型 | |
|
|
|
+| funcid | 信息点 | |
|
|
|
+| classCode | 类型定义的code: class.code | |
|
|
|
+| className | 类型定义的name: class.name | |
|
|
|
+| infoCode | 信息点定义的code: funcid.code | |
|
|
|
+| infoName | 信息点定义的name: funcid.name | |
|
|
|
+| groupId | 集团ID | |
|
|
|
+| projectId | 项目ID | |
|
|
|
+| schemeId | 集团方案ID | |
|
|
|
+| | | |
|
|
|
+| | | |
|
|
|
+
|
|
|
+### 数据结构
|
|
|
+
|
|
|
+类型 class
|
|
|
+
|
|
|
+| 字段 | 数据类型 | 说明 |
|
|
|
+| ---------- | -------- | ---------------------------------------------------------- |
|
|
|
+| code | String | 全局唯一 |
|
|
|
+| name | String | 类型名称 |
|
|
|
+| aliasCode | String | 类型别名编码, 集团下唯一 |
|
|
|
+| aliasName | String | 类型别名名称 |
|
|
|
+| type | String | 类别:平台级common,集团级group,项目级project |
|
|
|
+| groupId | String | 集团id, type=group或type=project时该字段为集团id,否则为"0" |
|
|
|
+| projectId | String | 集团id, type=project时该字段为项目id,否则为"0" |
|
|
|
+| majorCode | String | 专业编码, 上级类型是系统or设备时该字段有值 |
|
|
|
+| systemCode | String | 系统编码,上级类型是设备时该字段有值,值为系统类型的code |
|
|
|
+| parentCode | String | 上级类型code |
|
|
|
+| | | |
|
|
|
+
|
|
|
+信息点 funcid
|
|
|
+
|
|
|
+| 字段 | 数据类型 | 说明 |
|
|
|
+| ---------- | ----------------- | ------------------------------------------------------------ |
|
|
|
+| code | String | 信息点编码,同类型下唯一 |
|
|
|
+| name | String | 信息点名称 |
|
|
|
+| classCode | String | 类型编码 |
|
|
|
+| type | String | 字典级别:平台级common,集团级group,项目级project |
|
|
|
+| category | String | 信息点分类:静态,脉冲,阶段,时序 |
|
|
|
+| groupId | String | 集团id, type=group或type=project时该字段为集团id,否则为"0" |
|
|
|
+| projectId | String | 集团id, type=project时该字段为项目id,否则为"0" |
|
|
|
+| firstTag | String | 一级标签 |
|
|
|
+| secondTag | String | 二级标签 |
|
|
|
+| priority | String | 优先级 |
|
|
|
+| inputMode | String | 输入方式 |
|
|
|
+| unit | String | 单位 |
|
|
|
+| dataType | String | 数据类型 |
|
|
|
+| isMultiple | Boolean | 是否复数 |
|
|
|
+| isRegion | Boolean | 是否区间 |
|
|
|
+| formater | String | 数据格式 |
|
|
|
+| dataSource | String / Object[] | 数据源取值范围/枚举值清单等,根据dataType有不同的内容 |
|
|
|
+| note | String | 备注 |
|
|
|
+| subFlag | String | 子分类标记:是否可以按此信息点进行子分类替换,同一类型下目前只支持一个子分类信息点 |
|
|
|
+
|
|
|
+#### 信息点数据类型
|
|
|
+|数据类型|类型名称|信息点分类|是否复数|是否区间|数据源|格式|
|
|
|
+|---|---|---|---|---|---|---|
|
|
|
+|INTEGER | 整数 |静态/脉冲/时序/阶段 |true/false |true/false |{$gt:10, $lt:50} | 无 |
|
|
|
+|DOUBLE | 浮点型 |静态/脉冲/时序/阶段 |true/false |true/false |{$gte:10.1, $lt:50.9} | 无 |
|
|
|
+|BOOLEAN | 布尔值 |静态/脉冲/时序/阶段 |true/false |false | | 无 |
|
|
|
+|STRING | 字符串 |静态/脉冲/时序/阶段 |true/false |false |(字符串长度区间){$gt:10, $lt:50} | 无 |
|
|
|
+|DATETIME | 日期时间 |静态/脉冲/时序/阶段 |true/false |true/false |{$gt:'0915', $lt:'1031'} | 'MMdd' |
|
|
|
+|ENUM | 单选枚举 |静态/脉冲/时序/阶段 |true/false |false |[{code: 'GC', name: '国产'},{code: 'JK', name: '进口'}] | 无 |
|
|
|
+|MENUM | 多选枚举 |静态/脉冲/时序/阶段 |true/false |false |[{code: 'GC', name: '国产'},{code: 'JK', name: '进口'}] | 无 |
|
|
|
+|ATTACHMENT | 附件 |静态 |true/false |false | | pdf |
|
|
|
+|OBJECT | 对象 |静态 |true/false |false | | 对象id |
|
|
|
+
|
|
|
+说明
|
|
|
+```
|
|
|
+把原来的data_type拆解成多个属性,减少了data_type种类数量
|
|
|
+使用新的数据类型时,使用新的数据类型时,创建或编辑信息点需要明确指出数据类型、动静分类、是否复数、是否区间、长度(可选)、取值区间(可选)、格式(可选)
|
|
|
+Tree、Topology、Route、Function四种类型不再支持(有需求再加回来)
|
|
|
+
|
|
|
+动静分类(静态、脉冲、时序、阶段)应该是信息点的一个分类,不是数据类型的属性,放在这里是为了更直观更容易理解
|
|
|
+根据动静分类区分动态量或静态量,静态量的值存储的是具体的数据,动态量的值存储的是表号-功能号,动态量包括脉冲量、时序量和阶段量
|
|
|
+根据是否区间来判断存储的值是具体值还是区间, 比如INT非区间的值12, 区间值[8, 15],为了区分开闭区间,这里实际存储为{$gt: 12, $lte: 15}, 其中$gt大于,$lt小于,$gte大于等于,$lte小于等于
|
|
|
+根据是否复数区分存储的值是单个值还是多个值,单个值存储形式为xxx,多个值存储形式为[xxx, yyy],如果同时是复数和区间,存储的是多个区间
|
|
|
+取值区间可以约束值的取值范围,可以通过取值区间做一次校验,如果是区间值,区间也应该是在取值区间的内部
|
|
|
+统一用DATETIME表示日期和时间,通过格式设定具体存储的内容,格式由数据字典进行维护,物理世界存储的数据严格符合格式
|
|
|
+格式是数据存储的数据格式或文件格式,对于日期时间附件对象等可进行校验
|
|
|
+单选枚举Enum单数存储为GC, 复数存储为[GC, JK]
|
|
|
+多选枚举MEnum单数存储为[GC, JK], 复数存储为[[GC], [GC,JK]], 多选枚举单数和单选枚举复数的存储形式一样应该不会出现问题,因为实际使用时是和类型(Enum,Menum)一起使用,
|
|
|
+
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+### 接口
|
|
|
+
|
|
|
+#### 基础接口: 专业
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+POST: /major/query
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "criteria": {
|
|
|
+ "code": "AC"
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
+返回内容
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "count": 1,
|
|
|
+ "data": [
|
|
|
+ {
|
|
|
+ "code": "AC",
|
|
|
+ "name": "空调专业"
|
|
|
+ }
|
|
|
+ ]
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+#### 基础接口:类型查询
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+POST: /class/query
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "criteria": {
|
|
|
+ "majorCode": "AC"
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+请求参数说明
|
|
|
+
|
|
|
+| 字段 | | 说明 | |
|
|
|
+| -------- | ---------- | ------------------------------------------- | :--- |
|
|
|
+| criteria | | | |
|
|
|
+| | code | 类型编码 | |
|
|
|
+| | type | 分类:平台级common,集团级group,项目级project | |
|
|
|
+| | groupId | 集团id, type=group时必须传入该参数 | |
|
|
|
+| | projectId | 项目id, type=project时必须传入该参数 | |
|
|
|
+| | parentCode | 上级类型编码 | |
|
|
|
+| | majorCode | 专业编码,查询系统or设备时可以传入该字段 | |
|
|
|
+| | systemCode | 系统类型编码, 查询设备时可以传入该字段 | |
|
|
|
+| | | | |
|
|
|
+
|
|
|
+返回内容
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "count": 2,
|
|
|
+ "data": class[] // 类型列表
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 基础接口:信息点查询
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+POST: /funcid/query
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "criteria": {
|
|
|
+ "type": ["group"],
|
|
|
+ "classCode": "ACCC"
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+参数说明
|
|
|
+
|
|
|
+| 字段 | | 非空 | 描述 |
|
|
|
+| -------- | --------- | ---- | ------------------------------------------- |
|
|
|
+| criteria | | Y | |
|
|
|
+| | classCode | Y | 根据类型编码查询 |
|
|
|
+| | type | N | 分类:平台级common,集团级group,项目级project |
|
|
|
+| | groupId | N | 集团id, type=group时必须传入该参数 |
|
|
|
+| | projectId | N | 项目id, type=project时必须传入该参数 |
|
|
|
+| | code | N | 信息点编码 |
|
|
|
+| | name | N | |
|
|
|
+| | firstTag | N | 一级标签 |
|
|
|
+| | secondTag | N | 二级标签 |
|
|
|
+| | inputMode | N | |
|
|
|
+
|
|
|
+返回内容
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "count": 159,
|
|
|
+ "data": funcid[] // 信息点列表
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 封装接口:类型树
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+GET: /class
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+| 参数名 | 说明 | |
|
|
|
+| --------- | --------------------------------------- | -------------- |
|
|
|
+| groupId | 集团id | 可选 |
|
|
|
+| schemeId | 集团方案id | 可选 |
|
|
|
+| projectId | 项目id | 可选 |
|
|
|
+| appId | 应用id,传入appId时必须同时传入projectId | 可选 |
|
|
|
+| subFlag | true/false, 是否按分类信息点展示子分类 | 可选,默认false |
|
|
|
+
|
|
|
+返回参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "data": [
|
|
|
+ {
|
|
|
+ "code": "project",
|
|
|
+ "name": "项目",
|
|
|
+ "aliasCode": "project",
|
|
|
+ "aliasName": "项目"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "code": "system",
|
|
|
+ "name": "系统",
|
|
|
+ "aliasCode": "system",
|
|
|
+ "aliasName": "系统",
|
|
|
+ "children": [
|
|
|
+ {
|
|
|
+ "code": "system-AC",
|
|
|
+ "name": "空调专业",
|
|
|
+ "aliasCode": "system-AC",
|
|
|
+ "aliasName": "空调专业",
|
|
|
+ "children": [
|
|
|
+ {
|
|
|
+ "code": "ACCH",
|
|
|
+ "name": "中央供热系统",
|
|
|
+ "aliasCode": "ACCH",
|
|
|
+ "aliasName": "中央供热系统",
|
|
|
+ "majorCode": "AC",
|
|
|
+ "parentCode": "system"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "code": "ACCC",
|
|
|
+ "name": "中央供冷系统",
|
|
|
+ "aliasCode": "ACCC",
|
|
|
+ "aliasName": "中央供冷系统",
|
|
|
+ "majorCode": "AC",
|
|
|
+ "parentCode": "system"
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "code": "equipment",
|
|
|
+ "name": "设备",
|
|
|
+ "aliasCode": "equipment",
|
|
|
+ "aliasName": "设备",
|
|
|
+ "children": [
|
|
|
+ {
|
|
|
+ "code": "equipment-AC",
|
|
|
+ "name": "空调专业",
|
|
|
+ "aliasCode": "equipment-AC",
|
|
|
+ "aliasName": "空调专业",
|
|
|
+ "children": [
|
|
|
+ {
|
|
|
+ "code": "equipment-ACCH",
|
|
|
+ "name": "中央供热系统",
|
|
|
+ "aliasCode": "equipment-ACCH",
|
|
|
+ "aliasName": "中央供热系统",
|
|
|
+ "children": [
|
|
|
+ {
|
|
|
+ "code": "ACCHCL",
|
|
|
+ "name": "供热集水器",
|
|
|
+ "aliasCode": "ACCHCL",
|
|
|
+ "aliasName": "供热集水器",
|
|
|
+ "majorCode": "AC",
|
|
|
+ "systemCode": "ACCH",
|
|
|
+ "parentCode": "equipment"
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "code": "equipment-ACCC",
|
|
|
+ "name": "中央供冷系统",
|
|
|
+ "aliasCode": "equipment-ACCC",
|
|
|
+ "aliasName": "中央供冷系统",
|
|
|
+ "children": [
|
|
|
+ {
|
|
|
+ "code": "ACCCWT",
|
|
|
+ "name": "供冷水箱",
|
|
|
+ "aliasCode": "ACCCWT",
|
|
|
+ "aliasName": "供冷水箱",
|
|
|
+ "majorCode": "AC",
|
|
|
+ "systemCode": "ACCC",
|
|
|
+ "parentCode": "equipment"
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+#### 封装接口:信息点
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+GET: /funcid
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+| 参数名 | 说明 | |
|
|
|
+| --------- | --------------------------------------- | ---- |
|
|
|
+| classCode | 类型编码 | 必选 |
|
|
|
+| groupId | 集团id | 可选 |
|
|
|
+| schemeId | 集团方案id | 可选 |
|
|
|
+| projectId | 项目id | 可选 |
|
|
|
+| appId | 应用id,传入appId时必须同时传入projectId | 可选 |
|
|
|
+| | | |
|
|
|
+请求参数说明
|
|
|
+```
|
|
|
+1.传入projectId是必须同时传入groupId
|
|
|
+2.传入projectId时对应项目必须已配置集团方案,schemeId可以不传,否则报错"当前项目未配置集团方案"
|
|
|
+3.传入appId时必须同时传入projectId
|
|
|
+
|
|
|
+```
|
|
|
+
|
|
|
+返回参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "count": 159,
|
|
|
+ "data": funcid[] // 信息点列表
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 基础接口: 提交变更请求
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+POST: /req/create
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "type": "group",
|
|
|
+ "groupId": "WD",
|
|
|
+ "projectId": "pj01",
|
|
|
+ "note": "变更原因",
|
|
|
+ "createUser": "f0bcc7a79f7043f9a16812b5f80580d2",
|
|
|
+ "classes": [{
|
|
|
+ "code": "类型编码",
|
|
|
+ "name": "类型名称",
|
|
|
+ "aliasCode": "",
|
|
|
+ "aliasName": "",
|
|
|
+ "parentCode": "",
|
|
|
+ "majorCode": "",
|
|
|
+ "systemCode": "",
|
|
|
+ "note": "",
|
|
|
+ "funcids": [{
|
|
|
+ "code": "",
|
|
|
+ "name": "",
|
|
|
+ "firstTag": "",
|
|
|
+ "secondTag": "",
|
|
|
+ "unit": "",
|
|
|
+ "dataType": "",
|
|
|
+ "priority": "",
|
|
|
+ "inputMode": "",
|
|
|
+ "dataSource": "",
|
|
|
+ "subFlag": false,
|
|
|
+ "note": ""
|
|
|
+ }]
|
|
|
+ }]
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+请求参数说明
|
|
|
+
|
|
|
+| 字段 | | | 类型 | 说明 |
|
|
|
+| --------- | ---------- | ---------- | -------- | ------------------------------ |
|
|
|
+| type | | | String | group/project |
|
|
|
+| groupId | | | String | 集团id, 不可为空 |
|
|
|
+| projectId | | | String | 项目id, type=project时不可为空 |
|
|
|
+| note | | | String | 变更原因说明 |
|
|
|
+| createUser | | | String | 提交人id,不可为空 |
|
|
|
+| classes | | | Object[] | 不可为空且长度>0 |
|
|
|
+| | code | | String | 不可为空 |
|
|
|
+| | name | | String | |
|
|
|
+| | aliasCode | | String | |
|
|
|
+| | aliasName | | String | |
|
|
|
+| | parentCode | | String | |
|
|
|
+| | majorCode | | String | |
|
|
|
+| | systemCode | | String | |
|
|
|
+| | note | | String | |
|
|
|
+| | funcids | | Object[] | |
|
|
|
+| | | code | String | 不可为空 |
|
|
|
+| | | name | String | |
|
|
|
+| | | firstTag | String | |
|
|
|
+| | | secondTag | String | |
|
|
|
+| | | unit | String | |
|
|
|
+| | | dataType | String | |
|
|
|
+| | | priority | String | |
|
|
|
+| | | inputMode | String | |
|
|
|
+| | | dataSource | String | |
|
|
|
+| | | subFlag | Boolean | |
|
|
|
+| | | note | String | |
|
|
|
+| | | | | |
|
|
|
+
|
|
|
+接口逻辑说明:
|
|
|
+
|
|
|
+```
|
|
|
+1.type=group为集团级变更, type=project为项目级变更
|
|
|
+
|
|
|
+2.classes不可为空且长度必须>0
|
|
|
+若classes.code存在(从集团级字典判断)则为修改:
|
|
|
+ name不可修改(传入也无效), 其他字段根据传入值进行修改, 不传则不修改
|
|
|
+若classes.code不存在则为新增:
|
|
|
+ code、name、parentCode不可为空
|
|
|
+ parentCode=system时majorCode不可为空
|
|
|
+ parentCode=equipment时majorCode、systemCode不可为空
|
|
|
+
|
|
|
+3.funcids存在且长度>0时,根据classes.code进行判断
|
|
|
+若funcids.code存在则为修改:
|
|
|
+ 所有字段都可以修改,根据传入值进行修改,不传则不修改
|
|
|
+若funcids.code不存在则为新增:
|
|
|
+ code、name、unit、dataType、inputMode、dataSource、subFlag不可为空
|
|
|
+```
|
|
|
+
|
|
|
+返回参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "data": {
|
|
|
+ "id": 123
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+返回参数说明
|
|
|
+
|
|
|
+| 字段 | 类型 | 说明 |
|
|
|
+| ---- | ---- | ------ |
|
|
|
+| id | Int | 变更ID |
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 基础接口: 审核变更请求
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+POST: /req/audit
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "id": 123,
|
|
|
+ "status": 2,
|
|
|
+ "applyUser": "f0bcc7a79f7043f9a16812b5f80580d2"
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+请求参数说明
|
|
|
+
|
|
|
+| 字段 | 类型 | 说明 |
|
|
|
+| ---------- | ------ | ------------------------------------ |
|
|
|
+| id | Int | 变更ID,不可为空 |
|
|
|
+| status | Int | 状态: 1待审核,2审核通过, 3审核不通过 |
|
|
|
+| applyUser | String | 审核人id |
|
|
|
+| | | |
|
|
|
+
|
|
|
+返回内容
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+#### 基础接口: 查询变更请求
|
|
|
+
|
|
|
+请求地址
|
|
|
+
|
|
|
+```
|
|
|
+POST: /req/query
|
|
|
+```
|
|
|
+
|
|
|
+请求参数
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "criteria": {
|
|
|
+ "id": 123,
|
|
|
+ "type": "project",
|
|
|
+ "groupId": "WD",
|
|
|
+ "projectId": "pj01",
|
|
|
+ "status": 2,
|
|
|
+ "createTime": {
|
|
|
+ "$gt": "20200330120000"
|
|
|
+ },
|
|
|
+ "applyTime": {
|
|
|
+ "$gt": "20200330120000"
|
|
|
+ },
|
|
|
+ },
|
|
|
+ "withColumns": [ "classes", "funcids" ]
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+请求参数说明
|
|
|
+
|
|
|
+| 字段 | | 说明 | |
|
|
|
+| ----------- | ---------- | -------------------------------------------------- | :--- |
|
|
|
+| criteria | | | |
|
|
|
+| | id | 变更ID | |
|
|
|
+| | type | 分类:集团级group,项目级project | |
|
|
|
+| | groupId | 集团id, type=group时必须传入该参数 | |
|
|
|
+| | projectId | 项目id, type=project时必须传入该参数 | |
|
|
|
+| | status | 状态: 1待审核,2审核通过, 3审核不通过 | |
|
|
|
+| | createTime | 提交时间 | |
|
|
|
+| | creatUser | 申请提交人 | |
|
|
|
+| | applyTime | 审核时间 | |
|
|
|
+| | applyUser | 申请审核人 | |
|
|
|
+| withColumns | | | |
|
|
|
+| | classes | 返回申请的类型数据 | |
|
|
|
+| | funcids | 返回申请的类型的信息点数据,必须同时指定返回classes | |
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+返回内容
|
|
|
+
|
|
|
+```
|
|
|
+{
|
|
|
+ "result": "success",
|
|
|
+ "data": [{
|
|
|
+ "id": 123,
|
|
|
+ "type": "group",
|
|
|
+ "groupId": "WD",
|
|
|
+ "projectId": "pj01",
|
|
|
+ "note": "变更原因",
|
|
|
+ "userId": "提交用户",
|
|
|
+ "status": 2,
|
|
|
+ "createTime": 1585014171013,
|
|
|
+ "createUser": "f0bcc7a79f7043f9a16812b5f80580d2",
|
|
|
+ "applyTime": 1585014190419,
|
|
|
+ "applyUser": "f0bcc7a79f7043f9a16812b5f80580d2",
|
|
|
+ "classes": [{
|
|
|
+ "code": "类型编码",
|
|
|
+ "name": "类型名称",
|
|
|
+ "optType": "create/update",
|
|
|
+ "aliasCode": "",
|
|
|
+ "aliasName": "",
|
|
|
+ "parentCode": "",
|
|
|
+ "majorCode": "",
|
|
|
+ "systemCode": "",
|
|
|
+ "note": "",
|
|
|
+ "funcids": [{
|
|
|
+ "optType": "create/update",
|
|
|
+ "code": "",
|
|
|
+ "name": "",
|
|
|
+ "firstTag": "",
|
|
|
+ "secondTag": "",
|
|
|
+ "unit": "",
|
|
|
+ "dataType": "",
|
|
|
+ "priority": "",
|
|
|
+ "inputMode": "",
|
|
|
+ "dataSource": "",
|
|
|
+ "subFlag": false,
|
|
|
+ "note": ""
|
|
|
+ }]
|
|
|
+ }]
|
|
|
+ }
|
|
|
+]}
|
|
|
+```
|
|
|
+
|
|
|
+返回内容说明
|
|
|
+
|
|
|
+| 字段 | 类型 | 说明 | |
|
|
|
+| ----------------------- | ------ | ------------------------------------ | ---- |
|
|
|
+| status | int | 状态: 1待审核,2审核通过, 3审核不通过 | |
|
|
|
+| createUser | string | 申请人id | |
|
|
|
+| createTime | long | 申请提交时间 | |
|
|
|
+| applyUser | string | 审核人id, status=1时为空 | |
|
|
|
+| applyTime | long | 审核时间 | |
|
|
|
+| classes.optType | string | 操作类型: create新增,update更新 | |
|
|
|
+| classes.funcids.optType | string | 操作类型: create新增,update更新 | |
|
|
|
+| ... | | 其他字段与申请提交的入参相同 | |
|
|
|
+| | | | |
|
|
|
+| | | | |
|
|
|
+
|
|
|
+
|