dataAnonymization.ts 9.89 KB
/** 
 * 匿名化管理的接口api文件
 */
import request from "@/utils/request";

/** 获取标签列表。 */
export const getDataLabelList = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/label/page-list`,
  method: 'post',
  data: params
})

/** 修改标签启用禁用状态 */
export const updateLabelState = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/label/update-state`,
  method: 'put',
  params
})

export const saveLabel = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/label/save`,
  method: 'post',
  data
})

export const deleteLabel = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/label/delete`,
  method: 'delete',
  data
})

export const updateLabel = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/label/update`,
  method: 'put',
  data
})

/** 获取标签详情 */
export const getLabelDetail = (guid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/label/detail?guid=${guid}`,
  method: 'get'
})

/** 获取数据字典配置 */
export const getParamsList = (params) => request({
  url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType`,
  method: 'get',
  params
})

/** 字段类型 */
export const fieldTypeList = [{
  value: '1',
  label: '日期'
}, {
  value: '2',
  label: '字符串'
}, {
  value: '3',
  label: '数值'
}]

/** 获取泛化文件列表 */
export const getGeneralizeFileList =  (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/page-list`,
  method: 'post',
  data: params
})

/** 获取泛化文件列表,包括名称和guid */
export const getGeneralizeFileNameList =  () => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/name-list`,
  method: 'post'
})

export const saveGeneralizeFile = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/save`,
  method: 'post',
  data
})

/** 删除泛化文件 */
export const deleteGeneralizeFile = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/delete`,
  method: 'delete',
  data
})

/** 获取泛化文件详情 */
export const getGeneralizeFileDetail = (guid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/detail?guid=${guid}`,
  method: 'get'
})

export const updateGeneralizeFile = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/update`,
  method: 'put',
  data
})

/** 获取泛化文件解析结果 */
export const parseGeneralizeFileData = (data) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/generalize-file/parse-file`,
  method: 'post',
  data
})


/** --------- 敏感数据识别接口 ------------------- */

/** 获取敏感数据识别任务列表 */
export const getSensitiveDataTaskList = (params) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/page-list`,
  method: 'post',
  data: params
})

/** 新增敏感数据识别任务 */
export const saveSensitiveDataTask = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/save`,
  method: 'post',
  data: params
})

/** 编辑修改敏感数据识别任务 */
export const updateSensitiveDataTask = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/update`,
  method: 'put',
  data: params
})

/** 删除敏感数据识别任务 */
export const deleteSensitiveDataTask = (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/delete`,
  method: 'delete',
  data
})

/** 手动执行敏感任务 */
export const execSensitiveDataTask = (guid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/exec-task?taskGuid=${guid}`,
  method: 'get'
})

/** 数据来源类型 */
export const dataSourceTypeList = [{
  value: 1,
  label: '数据库'
}, {
  value: 2,
  label: '文件导入'
}];

/** 获取数据库选择列表 */
export const getDatabase = (params) => request({
  url: `${import.meta.env.VITE_APP_DATA_SOURCE_URL}/data-source/get-source-list`,
  method: 'post',
  data: params
})

/** 获取敏感数据任务执行的数据表列表 */
export const getExecSensitiveTable = (execGuid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/get-exec-sensitive-table?execGuid=${execGuid}`,
  method: 'get'
})

/** 根据数据源或表获取敏感数据任务执行的字段列表 */
export const getExecSensitiveFieldTable = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/get-exec-sensitive-field`,
  method: 'post',
  data: params
})

/** 获取当前数据表下的执行字段 */
export const getExecSensitiveFieldColumnListByCondition = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/column-list-by-condition`,
  method: 'post',
  data: params
})

/** 获取敏感数据识别任务执行后的统计结果 */
export const getStatisticsNum = (params) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/statistics-num`,
  method: 'get',
  params
})

/** 修改敏感数据识别字段标签 */
export const updateSensitiveDataTaskFieldLabel = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/batch-update-label`,
  method: 'put',
  data: params
})

/** 批量修改确认状态 */
export const batchUpdateSensitiveDataTaskFieldStatus = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/batch-change-status`,
  method: 'post',
  data: params
})

/** 修改任务状态 */
export const confirmTaskStatus = (guid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/confirm-task?execGuid=${guid}`,
  method: 'get'
})

/** 获取敏感数据识别任务执行日志 */
export const getSensitiveDataTaskExecLog = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/get-exec-sensitive-exec-log`,
  method: 'post',
  data: params
})

/** ---------- 匿名化处理 ------------------ */

/** 获取匿名化任务列表 */
export const getAnonTaskList = (params) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/page-list`,
  method: 'post',
  data: params
})

/** 删除匿名化任务 */
export const deleteAnonTask =  (data) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/delete`,
  method: 'delete',
  data
})

/** 保存匿名化任务 */
export const saveAnonTask = (params) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/save`,
  method: 'post',
  data: params
})

/** 更新匿名化任务 */
export const updateAnonTask = (params) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/update`,
  method: 'put',
  data: params
})

/** 获取匿名化任务详情 */
export const getAnonTaskDetail = (guid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/detail?guid=${guid}`,
  method: 'get'
})

/** 执行匿名化任务 */
export const execAnonTask = (taskGuid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/exec-task?taskGuid=${taskGuid}`,
  method: 'post'
})

/** 匿名化任务检验接口 */
export const anonTaskCheck  = (params) =>  request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/check`,
  method: 'post',
  data: params
})

/** 获取匿名化任务分析结果数据 */
export const getAnonAnalyzeResult = (execGuid) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/get-anon-analyze?taskExecGuid=${execGuid}`,
  method: 'get'
})

/** 获取匿名化任务分析结果统计分页数据 */
export const getAnonAnalyzePageData = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/page-anon-analyze-data`,
  method: 'post',
  data: params
})

/** 获取匿名化任务结果数据 */
export const getAnonPageData = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/page-anon-data`,
  method: 'post',
  data: params
})

/** 字段中文转英文 */
export const chTransformEn =(params)=> request({
  url: `${import.meta.env.VITE_APP_COMMON_URL}/common/convert-field-ch-name`,
  method: "post",
  data: params,
});

/** 根据选择的连接池获取表列表 */
export const getDsTableByDs = (params) => request({
  url: `${import.meta.env.VITE_APP_DATA_SOURCE_URL}/data-source/schema-table-page-list`,
  method: 'post',
  data: params
})

/** 根据数据表获取表字段结构 */
export const  getDsTableFieldColumn = (params) => request({
  url: `${import.meta.env.VITE_APP_DATA_SOURCE_URL}/data-source/table-column-list`,
  method: 'post',
  data: params
});

/** 根据数据表获取表数据 */
export const  getDsTableSampleData = (params) => request({
  url: `${import.meta.env.VITE_APP_DATA_SOURCE_URL}/data-source/table-data-preview-page`,
  method: 'post',
  data: params
});

/** 根据字段名称获取敏感数据识别标签 */
export const getLableByFieldName = (fieldName) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/sensitive-data-task/get-label-by-field-name?fieldName=${fieldName}`,
  method: 'get'
});

/** 验证样本数据 */
export const validateAnonRule = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/check`,
  method: 'post',
  data: params
})

/** 导出匿名化结果数据 */
export const exportAnonExecData = (params) => request({
  url: `${import.meta.env.VITE_APP_ANONYMIZATION_BASEURL}/anon-task/export-anon-data?taskGuid=${params.taskGuid}&taskExecGuid=${params.execGuid}`,
  method: 'get',
  responseType: 'blob'
})