政务数据资源中心(Government data Resource center) 03专项3期主要建设内容
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

116 lines
3.8 KiB

'use strict';
import request from 'superagent';
export const ApiTable = {
login: 'login',
logout: 'logout',
validatePhone: 'validate/phone',
//标签管理
getTags: 'tags',
postTagSets: 'tag-sets',
putTagSets: 'tag-sets/{id}',
delTagSets: 'tag-sets/{id}',
postTags: 'tags',
putTags: 'tags/{id}',
delTags: 'tags/{id}',
//元数据管理-模型管理
getMetaModelList: 'meta/models',
addMetaModel: 'meta/model',
modifyMetaModel: 'meta/model/{id}',
//最新元数据-资源目录
getResourceCatalog: 'resource-catalog',
postResourceCatalog: 'resource-catalog',
putResourceCatalog: 'resource-catalog/{id}',
delResourceCatalog: 'resource-catalog/{id}',
//最新元数据-元数据列表查询
getMetadataDatabases: 'metadata/databases',
getMetadataFiles: 'metadata/files',
getMetadataRestapis: 'metadata/restapis',
getMetadataModels: 'metadata/models',
//库表元数据增删改、等配置
postMetadataDatabases: 'metadata/databases',
putMetadataDatabases: 'metadata/databases/{id}',
delMetadataDatabases: 'metadata/databases/{id}',
getMetadataDatabasesById: 'metadata/databases/{id}',
postTagMetadata: 'tag/metadata',
getTagMetadata: 'tag/metadata/{id}',
getMetadataResourceApplications: 'resource-consumption/applications',
postMetadataResourceApplications: 'resource-consumption/applications',
//文件元数据增删改
postMetadataFiles: 'metadata/files',
putMetadataFiles: 'metadata/files/{id}',
delMetadataFiles: 'metadata/files/{id}',
//接口元数据增删改
postMetadataRestapis: 'metadata/restapis',
putMetadataRestapis: 'metadata/restapis/{id}',
delMetadataRestapis: 'metadata/restapis/{id}',
//元数据采集-数据源管理
pgCheckConnect: 'adapter/check/connect',
addDataSource: 'meta/acq/dataSource',
getAdapters: 'meta/acq/adapters',
getDataSources: 'meta/acq/dataSources',
modifyDataSource: 'acq/dataSource/{id}',
//元数据采集-采集任务管理
addTask: 'meta/acq/task',
getTasks: 'meta/acq/tasks',
modifyTask: 'acq/task/{id}',
runTask: 'run/acq/task',
//采集日志
getLogs: "meta/acq/logs"
};
export const RouteTable = {
fileUpload: '/_upload/new',
cleanUpUploadTrash: '/_upload/cleanup',
};
const resultHandler = (resolve, reject) => (err, res) => {
if (err) {
if (err.status == 401) {
// 退出到登录页
const user = JSON.parse(sessionStorage.getItem('user'));
sessionStorage.clear();
window.document.location.replace('/login');
reject('unauth');
} else {
reject({
status: err.status || 0,
body: err.response ? err.response.body : err.message
});
}
reject({
status: err.status || 0,
body: err.response ? err.response.body : err.message
});
} else {
resolve(res.body);
}
};
export const buildRoute = (url) => {
const user = JSON.parse(sessionStorage.getItem('user'));
if (user == null) {
return url;
}
let connector = url.indexOf('?') === -1 ? '?' : '&';
return `${url}${connector}token=${user.token}`;
};
export class RouteRequest {
static get = (url, query) =>
new Promise((resolve, reject) => {
request.get(buildRoute(url)).query(query).end(resultHandler(resolve, reject));
});
static post = (url, data, query) =>
new Promise((resolve, reject) => {
request.post(buildRoute(url)).query(query).send(data).end(resultHandler(resolve, reject));
});
static delete = (url, data, query) =>
new Promise((resolve, reject) => {
request.delete(buildRoute(url)).query(query).send(data).end(resultHandler(resolve, reject));
});
}