interface-dataSource.md 23 KB

接口设计 - 数据源

新增数据源

请求路径

/inputDataConnector

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteAdd')

请求参数
字段名(后端) 字段名(前端) 说明
dataName model.name 数据源名称
note model.description 数据源说明
loadObject model.target 数据对象
dataTag model.tags 标签
type model.type 类型
createBy 创建者
dbConfig 数据库设置
addrass model.address 数据库地址
port model.port 数据库
databaseType model.dbType 数据库类型
dataName model.dbName 数据库名(SID)
userName model.userName 用户名
passWord model.password 密码
请求示例
{
    "dataName": "文档测试",
    "note": "这个应该可以为空",
    "loadObject": "select * from bench",
    "type": "database",
    "createBy": "admin",
    "dbConfig": {
        "addrass": "192.168.253.6",
        "port": "1521",
        "databaseType": "oracle",
        "dataName": "orcl",
        "userName": "UAS",
        "passWord": "select!#%*("
    },
    "columnConfig": [{
        "columnName": "BC_CODE",
        "columnLable": "编号",
        "dataType": "VARCHAR2",
        "columnType": "categorical",
        "isGroup": "1",
        "isSubsection": "0",
        "isOpen": "1",
        "remarks": "编号"
    }, {
        "columnName": "BC_DESC",
        "columnLable": "工作台说明",
        "dataType": "VARCHAR2",
        "columnType": "categorical",
        "isGroup": "1",
        "isSubsection": "0",
        "isOpen": "1",
        "remarks": "工作台说明"
    }, {
        "columnName": "BC_DETNO",
        "columnLable": "序号",
        "dataType": "NUMBER",
        "columnType": "scale",
        "isGroup": "0",
        "isSubsection": "1",
        "isOpen": "1",
        "remarks": "序号"
    }],
    "connectorGroup": "-1"
}
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": 71
    }
}
详细说明

修改数据源

请求路径

/updateData

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteModify')

请求参数
字段名(后端) 字段名(前端) 说明
dataId code 数据源ID
dataName model.name 数据源名称
note model.description 数据源说明
loadObject model.target 数据对象
dataTag model.tags 数据源标签
type model.type 数据源类型
createBy 创建人
dbConfig{ 数据库配置(为空时不修改)
addrass model.address 数据库地址
port model.port 数据库端口
databaseType model.dbType 数据库类型
dataName model.dbName 数据库名
userName model.userName 用户名
passWord model.password 密码
columnConfig 列配置
columnName c.name 列名
columnLable c.alias 别名
dataType c.dataType 数据类型
columnType c.columnType 分析类型
isGroup c.groupable 可分组
isSubsection c.bucketizable 可分段
isOpen c.using 启用
remarks c.description 备注
connectorGroup model.groupCode 分组代码
请求示例
{
    "dataId": 71,
    "dataName": "文档测试1",
    "note": "这个应该可以为空",
    "loadObject": "select * from bench",
    "dataTag": null,
    "type": "database",
    "createBy": "admin",
    "connectorGroup": "-1",
    "dbConfig": {
        "addrass": "192.168.253.6",
        "port": "1521",
        "databaseType": "oracle",
        "dataName": "orcl",
        "userName": "UAS",
        "passWord": "select!#%*("
    },
    "columnConfig": [{
        "columnName": "BC_CODE",
        "columnLable": "编号",
        "dataType": "VARCHAR2",
        "columnType": "categorical",
        "isGroup": "1",
        "isSubsection": "0",
        "isOpen": "1",
        "remarks": "编号"
    }, {
        "columnName": "BC_DESC",
        "columnLable": "工作台说明",
        "dataType": "VARCHAR2",
        "columnType": "categorical",
        "isGroup": "1",
        "isSubsection": "0",
        "isOpen": "1",
        "remarks": "工作台说明"
    }, {
        "columnName": "BC_DETNO",
        "columnLable": "序号",
        "dataType": "NUMBER",
        "columnType": "scale",
        "isGroup": "0",
        "isSubsection": "1",
        "isOpen": "1",
        "remarks": "序号"
    }]
}
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": null
    }
}
详细说明

删除数据源

请求路径

/delDataConnector

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteDelete')

请求参数

code 数据源ID

请求示例
[71]
返回结果
{
    "code": -130,
    "msg": "图表正在使用",
    "data": []
}
详细说明

获取数据源列表

请求路径

/getListDataConnector

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/fetchList')

请求参数

请求示例
返回结果
{
    "code": 200,
    "msg": "成功",
    "data": [
        {
            "dataId": 43,
            "dataName": "commonuse",
            "note": "1",
            "type": "database",
            "dataTag": "null",
            "dbConfig": "{\"name\":null,\"addrass\":\"10.1.1.168\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"YITOA_DATACENTER\",\"passWord\":\"select!#%*(\"}",
            "connectorGroup": 1,
            "usedNumber": 0,
            "createBy": "admin",
            "createDate": "2018-08-02 09:31:53.0"
        },
        {
            "dataId": 50,
            "dataName": "bench_flowchart",
            "note": "1",
            "type": "database",
            "dataTag": "null",
            "dbConfig": "{\"name\":null,\"addrass\":\"10.1.1.168\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"YITOA_DATACENTER\",\"passWord\":\"select!#%*(\"}",
            "connectorGroup": -1,
            "usedNumber": 0,
            "createBy": "admin",
            "createDate": "2018-08-02 10:13:59.0"
        },
        {
            "dataId": 49,
            "dataName": "commonuse2",
            "note": "1",
            "type": "database",
            "dataTag": "null",
            "dbConfig": "{\"name\":null,\"addrass\":\"10.1.1.168\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"YITOA_DATACENTER\",\"passWord\":\"select!#%*(\"}",
            "connectorGroup": -1,
            "usedNumber": 0,
            "createBy": "admin",
            "createDate": "2018-08-02 10:11:09.0"
        },
        {
            "dataId": 71,
            "dataName": "文档测试1",
            "note": "这个应该可以为空",
            "type": "database",
            "dataTag": "null",
            "dbConfig": "{\"name\":null,\"addrass\":\"192.168.253.6\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"UAS\",\"passWord\":\"select!#%*(\"}",
            "connectorGroup": -1,
            "usedNumber": 0,
            "createBy": "admin",
            "createDate": "2018-08-08 15:05:48.0"
        },
        {
            "dataId": 62,
            "dataName": "PROJECT",
            "note": "Y",
            "type": "database",
            "dataTag": "null",
            "dbConfig": "{\"name\":null,\"addrass\":\"192.168.253.6\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"UAS\",\"passWord\":\"select!#%*(\"}",
            "connectorGroup": 20,
            "usedNumber": 0,
            "createBy": "admin",
            "createDate": "2018-08-07 15:16:45.0"
        },
        {
            "dataId": 55,
            "dataName": "销售订单",
            "note": "1",
            "type": "database",
            "dataTag": "null",
            "dbConfig": "{\"name\":null,\"addrass\":\"192.168.253.6\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"UAS\",\"passWord\":\"select!#%*(\"}",
            "connectorGroup": 1,
            "usedNumber": 0,
            "createBy": "admin",
            "createDate": "2018-08-06 15:20:29.0"
        }
    ]
}
详细说明

获得单个数据源详细数据

请求路径

/getDataConnector

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteDetail')

请求参数

code

请求示例
50
返回结果
{
    "code": 200,
    "msg": "成功",
    "data": {
        "dataId": 50,
        "dataName": "bench_flowchart",
        "tableName": null,
        "dbConfig": "{\"name\":null,\"addrass\":\"10.1.1.168\",\"port\":\"1521\",\"databaseType\":\"oracle\",\"dataName\":\"orcl\",\"userName\":\"YITOA_DATACENTER\",\"passWord\":\"select!#%*(\"}",
        "loadObject": "select * from bench_flowchart",
        "connectorGroup": -1,
        "note": "1",
        "columnConfig": "[{\"columnName\":\"ARROW1_\",\"columnLable\":\"起点箭头(line)\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"起点箭头(line)正负表示方向,大小表示长度\"},{\"columnName\":\"ARROW2_\",\"columnLable\":\"终点箭头(line)\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"终点箭头(line)正负表示方向,大小表示长度\"},{\"columnName\":\"BC_ID\",\"columnLable\":\"工作台ID\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"工作台ID\"},{\"columnName\":\"BG_COLOR\",\"columnLable\":\"背景色\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"背景色\"},{\"columnName\":\"COLOR_\",\"columnLable\":\"颜色\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"颜色\"},{\"columnName\":\"DOT_\",\"columnLable\":\"虚线值\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"虚线值\"},{\"columnName\":\"FONT_SIZE\",\"columnLable\":\"字体大小\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"字体大小\"},{\"columnName\":\"HEIGHT_\",\"columnLable\":\"组件高度\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"组件高度\"},{\"columnName\":\"ID_\",\"columnLable\":\"ID\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"ID\"},{\"columnName\":\"ITEMS_\",\"columnLable\":\"\",\"columnType\":\"string\",\"dataType\":\"CLOB\",\"isGroup\":\"0\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":null},{\"columnName\":\"POINTS_\",\"columnLable\":\"坐标点集\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"坐标点集\"},{\"columnName\":\"TABNAME_\",\"columnLable\":\"标签名\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"标签名\"},{\"columnName\":\"TEXT_\",\"columnLable\":\"组件内容\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"组件内容\"},{\"columnName\":\"TYPE_\",\"columnLable\":\"组件类型(node/\",\"columnType\":\"categorical\",\"dataType\":\"VARCHAR2\",\"isGroup\":\"1\",\"isSubsection\":\"0\",\"isOpen\":\"1\",\"remarks\":\"组件类型(node/line)\"},{\"columnName\":\"WIDTH_\",\"columnLable\":\"组件宽度\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"组件宽度\"},{\"columnName\":\"X2_\",\"columnLable\":\"终止位置x(line\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"终止位置x(line)\"},{\"columnName\":\"X_\",\"columnLable\":\"组件位置x\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"组件位置x\"},{\"columnName\":\"Y2_\",\"columnLable\":\"终止位置y(line\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"终止位置y(line)\"},{\"columnName\":\"Y_\",\"columnLable\":\"组件位置y\",\"columnType\":\"scale\",\"dataType\":\"NUMBER\",\"isGroup\":\"0\",\"isSubsection\":\"1\",\"isOpen\":\"1\",\"remarks\":\"组件位置y\"}]",
        "dataTag": "null",
        "usedNumber": 0,
        "type": "database",
        "createBy": "admin",
        "createDate": "2018-08-02 10:13:59.0",
        "updateDate": null
    }
}
详细说明

根据sql请求列数据信息

请求路径

/implementSql

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/importNewModelColumns')

请求参数

baseName: dataSource.newOne.userName strSql

请求示例
{
	"baseName": "UAS",
	"strSql": "select * from Bench"
}
返回结果
{
    "code": 200,
    "msg": "成功",
    "data": [
        {
            "columnName": "BC_CODE",
            "columnType": "VARCHAR2",
            "remarks": "编号"
        },
        {
            "columnName": "BC_DESC",
            "columnType": "VARCHAR2",
            "remarks": "工作台说明"
        },
        {
            "columnName": "BC_DETNO",
            "columnType": "NUMBER",
            "remarks": "序号"
        },
        {
            "columnName": "BC_ICON",
            "columnType": "VARCHAR2",
            "remarks": "图标"
        },
        {
            "columnName": "BC_ID",
            "columnType": "NUMBER",
            "remarks": "ID"
        },
        {
            "columnName": "BC_TITLE",
            "columnType": "VARCHAR2",
            "remarks": "工作台标题"
        },
        {
            "columnName": "BC_URLCOND",
            "columnType": "VARCHAR2",
            "remarks": "链接条件"
        },
        {
            "columnName": "BC_USED",
            "columnType": "NUMBER",
            "remarks": "是否使用"
        }
    ]
}
详细说明

此处业务逻辑需要调整为以下两种情况: 1.根据sql取出实际的列数据,不限于单表,可能只取部分列。 2.支持表名、列定义的方式获得列数据(类似数据观)


获得数据源所有分组/子分组

请求路径

/getConnectorGroup

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteGroupList')

请求参数

请求示例
null
返回结果
{
    "code": 200,
    "msg": "成功",
    "data": [
        {
            "id": 1,
            "groupName": "默认分组",
            "groupIndex": 0,
            "fatherId": -1,
            "createBy": "zhuth",
            "createDate": "2018-07-25T22:41:16.000+0000",
            "updataDate": null
        },
        {
            "id": 2,
            "groupName": "默认子分组11",
            "groupIndex": 0,
            "fatherId": 1,
            "createBy": "zhuth",
            "createDate": "2018-07-25T22:49:24.000+0000",
            "updataDate": null
        },
        {
            "id": 3,
            "groupName": "我的分组",
            "groupIndex": 1,
            "fatherId": -1,
            "createBy": "zhuth",
            "createDate": "2018-07-25T23:03:10.000+0000",
            "updataDate": null
        },
        {
            "id": 19,
            "groupName": "默认子分组22",
            "groupIndex": 1,
            "fatherId": 1,
            "createBy": "zhuth",
            "createDate": "2018-07-27T03:39:17.000+0000",
            "updataDate": null
        },
        {
            "id": 41,
            "groupName": "我的子分组2",
            "groupIndex": 1,
            "fatherId": 3,
            "createBy": "zhuth",
            "createDate": "2018-07-28T02:52:16.000+0000",
            "updataDate": null
        },
        {
            "id": 20,
            "groupName": "我的子分组1",
            "groupIndex": 0,
            "fatherId": 3,
            "createBy": "zhuth",
            "createDate": "2018-07-27T07:18:41.000+0000",
            "updataDate": null
        },
        {
            "id": 32,
            "groupName": "默认子分组33",
            "groupIndex": 2,
            "fatherId": 1,
            "createBy": "zhuth",
            "createDate": "2018-07-27T08:06:43.000+0000",
            "updataDate": null
        },
        {
            "id": 42,
            "groupName": "我的子分组3",
            "groupIndex": 2,
            "fatherId": 3,
            "createBy": "zhuth",
            "createDate": "2018-07-28T02:52:18.000+0000",
            "updataDate": null
        }
    ]
}
详细说明

新增数据源分组/子分组

请求路径

/setConnectorGroup

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/ remoteAddGroup')

请求参数
字段名(后端) 字段名(前端) 说明
fatherId pgroup.code 父级分组ID
groupName “新子分组”' 基础配置 – 数据源
groupIndex 分组索引
createBy 创建人
请求示例
{
    "fatherId": "-1",
    "groupName": "新分组",
    "groupIndex": 2,
    "createBy": "zhuth"
}
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": 71
    }
}
详细说明

如果是顶级分组(没有父级分组),则父级分组ID设置为-1


修改数据源分组信息

请求路径

/updataDataConnectorGroup

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteModifyGroup')

请求参数
字段名(后端) 字段名(前端) 说明
Id Group.code 分组ID
fatherId pgroup.code 父级分组ID
groupName “新子分组”' 基础配置 – 数据源
groupIndex 分组索引
createBy 创建人
请求示例
{
    "id": "2",
    "fatherId": "1",
    "groupName": "默认子分组11",
    "groupIndex": 0,
    "createBy": "zhuth"
}
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": null
    }
}
详细说明

设置数据源所属分组

请求路径

/updateConnectConfigGroup

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteSetDataSourceGroup')

请求参数
字段名(后端) 字段名(前端) 说明
Id DatasourceCode 数据源ID
GroupID “新子分组”' 目标分组ID
请求示例
{
    "id": 71,
    "groupId": "1"
}
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": null
    }
}
详细说明

批量修改数据源分组信息

请求路径

/updataConnectorGroup

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteModifyGroups')

请求参数
字段名(后端) 字段名(前端) 说明
fatherId pgroup.code 父级分组ID
groupName “新子分组”' 基础配置 – 数据源
groupIndex 分组索引
createBy 创建人
请求示例
[{
    "id": "19",
    "groupName": "默认子分组22",
    "groupIndex": 0,
    "fatherId": "1",
    "createBy": "zhuth"
}, {
    "id": "2",
    "groupName": "默认子分组11",
    "groupIndex": 1,
    "fatherId": "1",
    "createBy": "zhuth"
}, {
    "id": "32",
    "groupName": "默认子分组33",
    "groupIndex": 2,
    "fatherId": "1",
    "createBy": "zhuth"
}]
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": null
    }
}
详细说明

批量修改现在主要用于移动分组位置的改动,前台计算移动位置可能造成改动的分组节点生成一个数组返回到后台统一更新。 此处将整个groups集体上传 集体替换。 此处建议使用batch表达批量修改的概念。


删除数据源分组/子分组

请求路径

/delDataConnectorGroup

请求方式

HTTP - POST

包类方法

dispatch(type:'dataSource/remoteDeleteGroup'')

请求参数

group.code 分组ID

请求示例
71
返回结果
{
    "data": {
        "code": 200,
        "msg": "成功",
        "data": null
    }
}
详细说明

因为分组是有序的,所以在请求执行删除操作时一般需要同步请求批量更新操作。