2021-06-11 23:00:33 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* @author 陈劲松
|
|
|
|
|
|
* @date 2021/6/11
|
2021-06-22 21:19:04 +08:00
|
|
|
|
* @description 1.定义api;2.定义通用查询方法,函数名应为 获取详情getItem、获取列表getItemList。例如getUser、getUserList
|
2021-06-11 23:00:33 +08:00
|
|
|
|
*/
|
2021-06-22 21:19:04 +08:00
|
|
|
|
import { get, post } from '@/utils/http'
|
|
|
|
|
|
import { sortByOrderNum } from '@/permission'
|
2021-08-11 22:14:23 +08:00
|
|
|
|
import { storageKey } from '@/utils/constants'
|
2021-06-11 23:00:33 +08:00
|
|
|
|
|
2021-06-15 09:25:10 +08:00
|
|
|
|
export const api = {
|
2021-06-22 21:19:04 +08:00
|
|
|
|
// 系统相关
|
|
|
|
|
|
permission: '/sys/user/permissions',
|
|
|
|
|
|
i18n: '/sys/i18n/lang',
|
|
|
|
|
|
dict: '/sys/dict',
|
|
|
|
|
|
// 业务
|
2021-06-15 09:25:10 +08:00
|
|
|
|
panel: '/visual/panel',
|
2021-07-07 22:58:52 +08:00
|
|
|
|
chart: '/visual/chart',
|
2021-08-11 22:14:23 +08:00
|
|
|
|
entityList: '/interface/entity/list',
|
|
|
|
|
|
entityCount: '/interface/entity/total',
|
|
|
|
|
|
entityFilter: '/interface/entity/filter'
|
2021-06-15 09:25:10 +08:00
|
|
|
|
}
|
2021-06-20 13:31:55 +08:00
|
|
|
|
/* panel */
|
2021-06-11 23:00:33 +08:00
|
|
|
|
export async function getPanelList (params) {
|
2021-06-15 09:25:10 +08:00
|
|
|
|
return await getData(api.panel, params, true)
|
2021-06-11 23:00:33 +08:00
|
|
|
|
}
|
2021-06-20 13:31:55 +08:00
|
|
|
|
export async function getPanel (id) {
|
|
|
|
|
|
return await getData(`${api.chart}/${id}`)
|
|
|
|
|
|
}
|
|
|
|
|
|
/* chart */
|
|
|
|
|
|
export async function getChartList (params) {
|
|
|
|
|
|
return await getData(api.chart, params, true)
|
|
|
|
|
|
}
|
|
|
|
|
|
export async function getChart (id) {
|
|
|
|
|
|
return await getData(`${api.chart}/${id}`)
|
2021-06-11 23:00:33 +08:00
|
|
|
|
}
|
2021-08-11 22:14:23 +08:00
|
|
|
|
/* entity列表 */
|
|
|
|
|
|
export async function getEntityList (params) {
|
|
|
|
|
|
return await getData(api.entityList, params, true)
|
2021-07-07 22:58:52 +08:00
|
|
|
|
}
|
2021-08-11 22:14:23 +08:00
|
|
|
|
/* entity总数 */
|
|
|
|
|
|
export async function getEntityCount (params) {
|
|
|
|
|
|
return await getData(api.entityCount, params)
|
2021-07-09 10:10:06 +08:00
|
|
|
|
}
|
2021-08-11 22:14:23 +08:00
|
|
|
|
/* ip类型entity过滤器数据 */
|
|
|
|
|
|
export async function getEntityFilter (params) {
|
|
|
|
|
|
return await getData(api.entityFilter, params, true)
|
2021-07-09 10:10:06 +08:00
|
|
|
|
}
|
2021-06-22 21:19:04 +08:00
|
|
|
|
/* 字典 */
|
|
|
|
|
|
export async function getDictList (params) {
|
|
|
|
|
|
return await getData(api.dict, params, true)
|
|
|
|
|
|
}
|
2021-06-11 23:00:33 +08:00
|
|
|
|
|
2021-06-20 13:31:55 +08:00
|
|
|
|
export async function getData (url, params = {}, isQueryList) {
|
2021-08-11 22:14:23 +08:00
|
|
|
|
const request = new Promise((resolve, reject) => {
|
|
|
|
|
|
try {
|
|
|
|
|
|
get(url, params).then(response => {
|
|
|
|
|
|
if (response.code === 200) {
|
|
|
|
|
|
resolve(isQueryList ? response.data.list || response.data.result : response.data.result || response.data)
|
|
|
|
|
|
} else {
|
|
|
|
|
|
reject(response)
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
} catch (e) {
|
|
|
|
|
|
reject(e)
|
|
|
|
|
|
}
|
|
|
|
|
|
}).catch(response => {
|
|
|
|
|
|
console.error(response)
|
2021-06-11 23:00:33 +08:00
|
|
|
|
})
|
|
|
|
|
|
return await request
|
|
|
|
|
|
}
|
2021-06-22 21:19:04 +08:00
|
|
|
|
|
|
|
|
|
|
export async function getConfigJson () {
|
|
|
|
|
|
const request = new Promise(resolve => {
|
|
|
|
|
|
get(`${process.env.BASE_URL}config.json?Timestamp=${new Date().getTime()}`).then(config => {
|
|
|
|
|
|
resolve(config)
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
return await request
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export async function getPermission () {
|
|
|
|
|
|
const request = new Promise(resolve => {
|
|
|
|
|
|
post(api.permission, { token: sessionStorage.getItem('cn-token') }).then(response => {
|
|
|
|
|
|
resolve({
|
|
|
|
|
|
menuList: sortByOrderNum(response.data.menus),
|
|
|
|
|
|
buttonList: response.data.buttons,
|
|
|
|
|
|
roleList: response.data.roles
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
return await request
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export async function getI18n () {
|
|
|
|
|
|
const dictData = await getDictList()
|
|
|
|
|
|
const langs = dictData.map(d => d.value).join(',')
|
2021-07-23 11:19:10 +08:00
|
|
|
|
sessionStorage.setItem(storageKey.languages, langs)
|
2021-06-22 21:19:04 +08:00
|
|
|
|
const request = new Promise(resolve => {
|
|
|
|
|
|
get(api.i18n, { l: langs }).then(response => {
|
2021-07-21 16:02:44 +08:00
|
|
|
|
response.data.cn = response.data.zh
|
2021-06-22 21:19:04 +08:00
|
|
|
|
resolve(response.data)
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
return await request
|
|
|
|
|
|
}
|
2021-07-01 15:39:48 +08:00
|
|
|
|
|
2021-07-05 17:40:43 +08:00
|
|
|
|
/* 获得原始的3611-2 json字符串数据 */
|
|
|
|
|
|
export async function getIso36112JsonData (suffix) {
|
|
|
|
|
|
const request = new Promise(resolve => {
|
|
|
|
|
|
get(`${process.env.BASE_URL}geojson/${suffix}`).then(response => {
|
|
|
|
|
|
resolve(JSON.stringify(response))
|
|
|
|
|
|
})
|
2021-07-01 15:39:48 +08:00
|
|
|
|
})
|
2021-07-05 17:40:43 +08:00
|
|
|
|
return await request
|
2021-07-01 15:39:48 +08:00
|
|
|
|
}
|