mirror of
https://github.com/dataease/dataease.git
synced 2026-05-15 21:42:32 +08:00
fix(仪表板): 仪表板计算字段没有进行加密
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import request from '@/config/axios'
|
||||
|
||||
import { originNameHandleWithArr, originNameHandleBackWithArr } from '@/utils/CalculateFields'
|
||||
import { cloneDeep } from 'lodash-es'
|
||||
export interface Field {
|
||||
id: number | string
|
||||
datasourceId: number | string
|
||||
@@ -28,6 +29,7 @@ export interface ComponentInfo {
|
||||
|
||||
export const getFieldByDQ = async (id, chartId, data): Promise<IResponse> => {
|
||||
return request.post({ url: `/chart/listByDQ/${id}/${chartId}`, data: data }).then(res => {
|
||||
originNameHandleBackWithArr(res?.data, ['dimensionList', 'quotaList'])
|
||||
return res?.data
|
||||
})
|
||||
}
|
||||
@@ -53,10 +55,27 @@ export const deleteChartFieldByChartId = async (chartId): Promise<IResponse> =>
|
||||
// 通过图表对象获取数据
|
||||
export const getData = async (data): Promise<IResponse> => {
|
||||
delete data.data
|
||||
return request.post({ url: '/chartData/getData', data }).then(res => {
|
||||
const copyData = cloneDeep(data)
|
||||
const fields = [
|
||||
'xAxis',
|
||||
'xAxisExt',
|
||||
'yAxis',
|
||||
'yAxisExt',
|
||||
'extBubble',
|
||||
'extLabel',
|
||||
'extStack',
|
||||
'extTooltip'
|
||||
]
|
||||
const dataFields = ['fields', 'sourceFields']
|
||||
originNameHandleWithArr(copyData, fields)
|
||||
return request.post({ url: '/chartData/getData', data: copyData }).then(res => {
|
||||
if (res.code === 0) {
|
||||
originNameHandleBackWithArr(res?.data, fields)
|
||||
originNameHandleBackWithArr(res?.data?.data, dataFields)
|
||||
return res?.data
|
||||
} else {
|
||||
originNameHandleBackWithArr(res, fields)
|
||||
originNameHandleBackWithArr(res?.data, dataFields)
|
||||
return res
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
import request from '@/config/axios'
|
||||
import { Base64 } from 'js-base64'
|
||||
import {
|
||||
originNameHandle,
|
||||
originNameHandleBack,
|
||||
originNameHandleBackWithArr
|
||||
} from '@/utils/CalculateFields'
|
||||
import { type Field } from '@/api/chart'
|
||||
import { cloneDeep } from 'lodash-es'
|
||||
import type { BusiTreeRequest } from '@/models/tree/TreeNode'
|
||||
@@ -70,22 +74,6 @@ export interface Table {
|
||||
type: string
|
||||
unableCheck?: boolean
|
||||
}
|
||||
|
||||
const originNameHandle = (arr = []) => {
|
||||
arr.forEach(ele => {
|
||||
if (ele.extField === 2) {
|
||||
ele.originName = Base64.encodeURI(ele.originName)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const originNameHandleBack = (arr = []) => {
|
||||
arr.forEach(ele => {
|
||||
if (ele.extField === 2) {
|
||||
ele.originName = Base64.decode(ele.originName)
|
||||
}
|
||||
})
|
||||
}
|
||||
// 获取权限路
|
||||
// edit
|
||||
export const saveDatasetTree = async (data: DatasetOrFolder): Promise<IResponse> => {
|
||||
@@ -256,6 +244,9 @@ export const getDsDetails = async (data): Promise<DatasetDetail[]> => {
|
||||
}
|
||||
export const getDsDetailsWithPerm = async (data): Promise<DatasetDetail[]> => {
|
||||
return request.post({ url: '/datasetTree/detailWithPerm', data }).then(res => {
|
||||
;(res?.data || []).forEach(ele => {
|
||||
originNameHandleBackWithArr(ele, ['dimensionList', 'quotaList'])
|
||||
})
|
||||
return res?.data
|
||||
})
|
||||
}
|
||||
@@ -273,15 +264,22 @@ export const columnPermissionList = (page: number, limit: number, datasetId: num
|
||||
export const rowPermissionTargetObjList = (datasetId: number, type: string) =>
|
||||
request.get({ url: '/dataset/rowPermissions/authObjs/' + datasetId + '/' + type })
|
||||
|
||||
export const listFieldByDatasetGroup = (datasetId: number) =>
|
||||
request.post({ url: '/datasetField/listByDatasetGroup/' + datasetId })
|
||||
export const listFieldByDatasetGroup = (datasetId: number) => {
|
||||
return request.post({ url: '/datasetField/listByDatasetGroup/' + datasetId }).then(res => {
|
||||
originNameHandleBack(res?.data)
|
||||
return res
|
||||
})
|
||||
}
|
||||
|
||||
export const multFieldValuesForPermissions = (data = {}) => {
|
||||
return request.post({ url: '/datasetField/multFieldValuesForPermissions', data })
|
||||
}
|
||||
|
||||
export const listFieldsWithPermissions = (datasetId: number) => {
|
||||
return request.get({ url: '/datasetField/listWithPermissions/' + datasetId })
|
||||
return request.get({ url: '/datasetField/listWithPermissions/' + datasetId }).then(res => {
|
||||
originNameHandleBack(res?.data)
|
||||
return res
|
||||
})
|
||||
}
|
||||
|
||||
export const copilotFields = (datasetId: number) => {
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import request from '@/config/axios'
|
||||
import type { BusiTreeRequest } from '@/models/tree/TreeNode'
|
||||
import { originNameHandleWithArr } from '@/utils/CalculateFields'
|
||||
import { cloneDeep } from 'lodash-es'
|
||||
export interface ResourceOrFolder {
|
||||
name: string
|
||||
id?: number | string
|
||||
@@ -73,8 +75,24 @@ export const appCanvasNameCheck = async data =>
|
||||
|
||||
export const updateBase = data => request.post({ url: '/dataVisualization/updateBase', data })
|
||||
|
||||
export const updateCanvas = data =>
|
||||
request.post({ url: '/dataVisualization/updateCanvas', data, loading: true })
|
||||
export const updateCanvas = data => {
|
||||
const copyData = cloneDeep(data)
|
||||
const fields = [
|
||||
'xAxis',
|
||||
'xAxisExt',
|
||||
'yAxis',
|
||||
'yAxisExt',
|
||||
'extBubble',
|
||||
'extLabel',
|
||||
'extStack',
|
||||
'extTooltip'
|
||||
]
|
||||
|
||||
for (const key in copyData.canvasViewInfo) {
|
||||
originNameHandleWithArr(copyData.canvasViewInfo[key], fields)
|
||||
}
|
||||
return request.post({ url: '/dataVisualization/updateCanvas', data: copyData, loading: true })
|
||||
}
|
||||
|
||||
export const moveResource = data => request.post({ url: '/dataVisualization/move', data })
|
||||
|
||||
|
||||
36
core/core-frontend/src/utils/CalculateFields.ts
Normal file
36
core/core-frontend/src/utils/CalculateFields.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import { Base64 } from 'js-base64'
|
||||
|
||||
const originNameHandle = (arr = []) => {
|
||||
arr.forEach(ele => {
|
||||
if (ele.extField === 2) {
|
||||
ele.originName = Base64.encodeURI(ele.originName)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const originNameHandleBack = (arr = []) => {
|
||||
arr.forEach(ele => {
|
||||
if (ele.extField === 2) {
|
||||
ele.originName = Base64.decode(ele.originName)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const originNameHandleWithArr = (obj = {}, fields) => {
|
||||
fields.forEach(ele => {
|
||||
originNameHandle(obj[ele])
|
||||
})
|
||||
}
|
||||
|
||||
const originNameHandleBackWithArr = (obj = {}, fields) => {
|
||||
fields.forEach(ele => {
|
||||
originNameHandleBack(obj[ele])
|
||||
})
|
||||
}
|
||||
|
||||
export {
|
||||
originNameHandle,
|
||||
originNameHandleBack,
|
||||
originNameHandleWithArr,
|
||||
originNameHandleBackWithArr
|
||||
}
|
||||
Reference in New Issue
Block a user