diff --git a/src/api/dataset/RepStore/index.ts b/src/api/dataset/RepStore/index.ts new file mode 100644 index 0000000..33984df --- /dev/null +++ b/src/api/dataset/RepStore/index.ts @@ -0,0 +1,63 @@ +import request from '@/config/axios'; +import type { TableData } from './types'; + +/** 获取表格数据 */ +export const getRepStoreListApi = (data: any) => { + return request.postJson({ url: '/RepStore/spi/dataset/RepStore/RepStoreQueryPage', data }); +}; + +/** 批量删除 */ +export const delRepStoreListApi = (list: string[] | number[]): Promise => { + const _list = list.map(v => { + return { + modelCode: v.modelCode, + beginDate: v.beginDate, + endDate: v.endDate, + ruleId: v.ruleId, + }; + }); + return request.postJson({ + url: '/RepStore/spi/dataset/RepStore/RepStoreBatchDelete', + data: { + list: _list, + }, + }); +}; + +/** 删除 */ +export const delRepStoreApi = (modelCode?: string, beginDate?: string, endDate?: string, ruleId?: string): Promise => { + return request.postJson({ url: '/RepStore/spi/dataset/RepStore/RepStoreDelete', data: { modelCode, beginDate, endDate, ruleId } }); +}; + +/** 保存 */ +export const saveRepStoreApi = (data: Partial): Promise => { + return request.postJson({ url: '/RepStore/spi/dataset/RepStore/RepStoreSave', data }); +}; + +/** 查询单条数据 */ +export const queryRepStoreApi = (modelCode?: string, beginDate?: string, endDate?: string, ruleId?: string): Promise => { + return request.postJson({ url: '/RepStore/spi/dataset/RepStore/RepStoreQueryOne', data: { modelCode, beginDate, endDate, ruleId } }); +}; + +/** 同步导入 */ +export const importExcelApiUrl = '/RepStore/sui/dataset/RepStore/RepStoreImportExcel'; + +/** 异步导入 */ +export const importExcelAsyncApiUrl = '/RepStore/sui/dataset/RepStore/RepStoreImportAsyncExcel'; + +/** 导出 */ +export const exportExcelApi = (params: any) => { + return request.doExport({ url: '/RepStore/sdi/dataset/RepStore/RepStoreExportXls', params }); +}; + +/** 获取某个字典 */ +export const getCsckCheckType = ({ paramName, systemCode }): Promise => { + return request.postJson({ + url: '/param/spi/param/systemparam', + data: { + paramName: paramName, + systemCode: systemCode, + }, + }); +}; + diff --git a/src/api/dataset/RepStore/types.ts b/src/api/dataset/RepStore/types.ts new file mode 100644 index 0000000..61f9309 --- /dev/null +++ b/src/api/dataset/RepStore/types.ts @@ -0,0 +1,64 @@ +/* eslint-disable lines-around-comment */ + +export type TableData = { + /** 模型编码 */ + modelCode?: string + /** 开始日期 */ + beginDate?: string + /** 结束日期 */ + endDate?: string + /** 数据源 */ + dscode?: string + /** 规则类型 */ + storeType?: string + /** 规则内容 */ + storeContent?: string + /** 操作类型 */ + storeOperateType?: string + /** 存储规则id */ + ruleId?: string + /** 数据库用户 */ + scheme?: string + /** 表名 */ + tableName?: string + /** 校验结果表的表名 */ + validateResultTable?: string + /** 数据规则 */ + dataRule?: string + /** 备份数据源 */ + redscode?: string +} + +export interface DictItem { + dictId: string; + dictName: string; +} + +export type FormModel = { + /** 模型编码 */ + modelCode?: string + /** 开始日期 */ + beginDate?: string + /** 结束日期 */ + endDate?: string + /** 数据源 */ + dscode?: string + /** 规则类型 */ + storeType?: string + /** 规则内容 */ + storeContent?: string + /** 操作类型 */ + storeOperateType?: string + /** 存储规则id */ + ruleId?: string + /** 数据库用户 */ + scheme?: string + /** 表名 */ + tableName?: string + /** 校验结果表的表名 */ + validateResultTable?: string + /** 数据规则 */ + dataRule?: string + /** 备份数据源 */ + redscode?: string +} diff --git a/src/router/index.ts b/src/router/index.ts index 1b03abd..b96db87 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -1939,7 +1939,19 @@ export const asyncRouterMap: AppRouteRecordRaw[] = [ type:"ybt", sort:12, } - } + }, + { + path: 'repStore', + component: () => import('@/views/dataset/RepStore/RepStore.vue'), + name: 'repStore', + menuId: 'repStore', + meta: { + title: '模型规则', + alwaysShow: true, + type:"ybt", + sort:13, + } + }, ] }, { diff --git a/src/views/dataset/RepDataModel/RepDataModel.vue b/src/views/dataset/RepDataModel/RepDataModel.vue index 317df36..82d6a40 100644 --- a/src/views/dataset/RepDataModel/RepDataModel.vue +++ b/src/views/dataset/RepDataModel/RepDataModel.vue @@ -183,7 +183,7 @@ const action = async (row: TableData, type: string) => { const getModelParam = (data)=>{ console.log(data); router.push({ - name:'repStoreParameter', + name:'repStore', query:{ modelCode:data.modelCode, } diff --git a/src/views/dataset/RepStore/RepStore.vue b/src/views/dataset/RepStore/RepStore.vue new file mode 100644 index 0000000..504bc0c --- /dev/null +++ b/src/views/dataset/RepStore/RepStore.vue @@ -0,0 +1,298 @@ + + + \ No newline at end of file diff --git a/src/views/dataset/RepStore/components/Detail.vue b/src/views/dataset/RepStore/components/Detail.vue new file mode 100644 index 0000000..3ffb295 --- /dev/null +++ b/src/views/dataset/RepStore/components/Detail.vue @@ -0,0 +1,71 @@ + + + diff --git a/src/views/dataset/RepStore/components/Write.vue b/src/views/dataset/RepStore/components/Write.vue new file mode 100644 index 0000000..e040b11 --- /dev/null +++ b/src/views/dataset/RepStore/components/Write.vue @@ -0,0 +1,171 @@ + + + + diff --git a/src/views/dataset/RepStore/constants.ts b/src/views/dataset/RepStore/constants.ts new file mode 100644 index 0000000..a4cf51e --- /dev/null +++ b/src/views/dataset/RepStore/constants.ts @@ -0,0 +1,21 @@ +export const OPERATION_TYPE_LIST = [//操作类型,1表,2sql + { + value:"1", + label:"表" + }, + { + value:"2", + label:"sql" + } +] + +export const RULE_TYPE_LIST = [//规则类型 1只读,2读写) + { + value:"1", + label:"只读" + }, + { + value:"2", + label:"读写" + } +] \ No newline at end of file diff --git a/src/views/dataset/RepStoreParameter/RepStoreParameter.vue b/src/views/dataset/RepStoreParameter/RepStoreParameter.vue index 34a2423..4b013a9 100644 --- a/src/views/dataset/RepStoreParameter/RepStoreParameter.vue +++ b/src/views/dataset/RepStoreParameter/RepStoreParameter.vue @@ -22,12 +22,9 @@ import { Dialog } from '@/components/Dialog' import { getWidth } from '@/utils'; import Detail from './components/Detail.vue' import { Upload } from '@/components/Upload' -import {useRoute} from "vue-router" -const route = useRoute(); const { t } = useI18n() const pageQuery = ref(route || null); -const modelCode = pageQuery.value?.query?.modelCode; -const ids = ref([]) + const { tableRegister, tableState, tableMethods } = useTable({ fetchDataApi: async () => { @@ -125,8 +122,7 @@ const searchSchema = reactive([ field: 'modelCode', label: '模型编码', componentProps: {}, - component: 'Input', - value:modelCode + component: 'Input' }, { field: 'name', @@ -141,7 +137,7 @@ const setSearchParams = (data: any) => { searchParams.value = data getList() } -setSearchParams({modelCode:modelCode}) + const dialogVisible = ref(false) const dialogTitle = ref('')