From 2fc58e0ac834227b03668a510c13d9dec42257d2 Mon Sep 17 00:00:00 2001 From: zhangxiaodi1 Date: Mon, 4 Nov 2024 09:28:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=95=B0=E6=8D=AE=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B=E6=A8=A1=E5=9D=97=E4=BB=A3=E7=A0=81=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=8C=87=E6=A0=87=E5=AE=9A=E4=B9=89=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E5=90=8D=E7=A7=B0=E5=92=8C=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/dataset/CodeRepItem/types.ts | 40 ++- src/api/dataset/RepDataModel/index.ts | 60 ++++ src/api/dataset/RepDataModel/types.ts | 36 +++ src/router/index.ts | 12 + src/views/dataset/CodeRepItem/CodeRepItem.vue | 40 ++- .../dataset/CodeRepItem/components/Detail.vue | 32 +- .../dataset/CodeRepItem/components/Write.vue | 57 +++- .../dataset/RepDataModel/RepDataModel.vue | 292 ++++++++++++++++++ .../RepDataModel/components/Detail.vue | 43 +++ .../dataset/RepDataModel/components/Write.vue | 112 +++++++ src/views/dataset/RepDataModel/constants.ts | 0 11 files changed, 697 insertions(+), 27 deletions(-) create mode 100644 src/api/dataset/RepDataModel/index.ts create mode 100644 src/api/dataset/RepDataModel/types.ts create mode 100644 src/views/dataset/RepDataModel/RepDataModel.vue create mode 100644 src/views/dataset/RepDataModel/components/Detail.vue create mode 100644 src/views/dataset/RepDataModel/components/Write.vue create mode 100644 src/views/dataset/RepDataModel/constants.ts diff --git a/src/api/dataset/CodeRepItem/types.ts b/src/api/dataset/CodeRepItem/types.ts index 0685433..243ec26 100644 --- a/src/api/dataset/CodeRepItem/types.ts +++ b/src/api/dataset/CodeRepItem/types.ts @@ -21,18 +21,28 @@ export type TableData = { status?: string /** 对照指标编码 */ conCode?: string - /** */ + /** 业务类型1 */ itemType1?: string - /** */ + /** 业务类型2 */ itemType2?: string - /** */ + /** 业务类型3 */ itemType3?: string - /** */ + /** 业务类型4 */ itemType4?: string - /** */ + /** 业务类型5 */ itemType5?: string /** 主键 */ criid?: string + /** 指标类型 */ + indexType?: string + /** 指标计算类型 */ + indexcalType?: string + /** 指标数据类型 */ + indexdataType?: string + /** 指标数据精度 */ + indexdataPrecision?: string + /** 指标数据项单位 */ + indexdataUnit?: string } export interface DictItem { @@ -61,16 +71,26 @@ export type FormModel = { status?: string /** 对照指标编码 */ conCode?: string - /** */ + /** 业务类型1 */ itemType1?: string - /** */ + /** 业务类型2 */ itemType2?: string - /** */ + /** 业务类型3 */ itemType3?: string - /** */ + /** 业务类型4 */ itemType4?: string - /** */ + /** 业务类型5 */ itemType5?: string /** 主键 */ criid?: string + /** 指标类型 */ + indexType?: string + /** 指标计算类型 */ + indexcalType?: string + /** 指标数据类型 */ + indexdataType?: string + /** 指标数据精度 */ + indexdataPrecision?: string + /** 指标数据项单位 */ + indexdataUnit?: string } diff --git a/src/api/dataset/RepDataModel/index.ts b/src/api/dataset/RepDataModel/index.ts new file mode 100644 index 0000000..7c09970 --- /dev/null +++ b/src/api/dataset/RepDataModel/index.ts @@ -0,0 +1,60 @@ +import request from '@/config/axios'; +import type { TableData } from './types'; + +/** 获取表格数据 */ +export const getRepDataModelListApi = (data: any) => { + return request.postJson({ url: '/RepDataModel/spi/dataset/RepDataModel/RepDataModelQueryPage', data }); +}; + +/** 批量删除 */ +export const delRepDataModelListApi = (list: string[] | number[]): Promise => { + const _list = list.map(v => { + return { + modelCode: v.modelCode, + }; + }); + return request.postJson({ + url: '/RepDataModel/spi/dataset/RepDataModel/RepDataModelBatchDelete', + data: { + list: _list, + }, + }); +}; + +/** 删除 */ +export const delRepDataModelApi = (modelCode?: string): Promise => { + return request.postJson({ url: '/RepDataModel/spi/dataset/RepDataModel/RepDataModelDelete', data: { modelCode } }); +}; + +/** 保存 */ +export const saveRepDataModelApi = (data: Partial): Promise => { + return request.postJson({ url: '/RepDataModel/spi/dataset/RepDataModel/RepDataModelSave', data }); +}; + +/** 查询单条数据 */ +export const queryRepDataModelApi = (modelCode?: string): Promise => { + return request.postJson({ url: '/RepDataModel/spi/dataset/RepDataModel/RepDataModelQueryOne', data: { modelCode } }); +}; + +/** 同步导入 */ +export const importExcelApiUrl = '/RepDataModel/sui/dataset/RepDataModel/RepDataModelImportExcel'; + +/** 异步导入 */ +export const importExcelAsyncApiUrl = '/RepDataModel/sui/dataset/RepDataModel/RepDataModelImportAsyncExcel'; + +/** 导出 */ +export const exportExcelApi = (params: any) => { + return request.doExport({ url: '/RepDataModel/sdi/RepDataModel/RepDataModel/RepDataModelExportXls', 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/RepDataModel/types.ts b/src/api/dataset/RepDataModel/types.ts new file mode 100644 index 0000000..d104f1e --- /dev/null +++ b/src/api/dataset/RepDataModel/types.ts @@ -0,0 +1,36 @@ +/* eslint-disable lines-around-comment */ + +export type TableData = { + /** 模型编码 */ + modelCode?: string + /** 模型名称 */ + modelName?: string + /** 描述 */ + description?: string + /** 用户所属机构 */ + organCode?: string + /** 登录用户 */ + createUser?: string + /** 创建日期 */ + createDate?: string +} + +export interface DictItem { + dictId: string; + dictName: string; +} + +export type FormModel = { + /** 模型编码 */ + modelCode?: string + /** 模型名称 */ + modelName?: string + /** 描述 */ + description?: string + /** 用户所属机构 */ + organCode?: string + /** 登录用户 */ + createUser?: string + /** 创建日期 */ + createDate?: string +} diff --git a/src/router/index.ts b/src/router/index.ts index 33c8873..290d8d4 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -1891,6 +1891,18 @@ export const asyncRouterMap: AppRouteRecordRaw[] = [ type:"ybt", sort:8, } + }, + { + path: 'repDataModel', + component: () => import('@/views/dataset/RepDataModel/RepDataModel.vue'), + name: 'repDataModel', + menuId: 'repDataModel', + meta: { + title: '数据模型', + alwaysShow: true, + type:"ybt", + sort:9, + } } ] }, diff --git a/src/views/dataset/CodeRepItem/CodeRepItem.vue b/src/views/dataset/CodeRepItem/CodeRepItem.vue index 8d93347..641db5c 100644 --- a/src/views/dataset/CodeRepItem/CodeRepItem.vue +++ b/src/views/dataset/CodeRepItem/CodeRepItem.vue @@ -95,6 +95,26 @@ const tableColumns = reactive([ field: 'conCode', label: '对照指标编码' }, + { + field: 'indexType', + label: '指标类型' + }, + { + field: 'indexcalType', + label: '指标计算类型' + }, + { + field: 'indexdataType', + label: '指标数据类型' + }, + { + field: 'indexdataPrecision', + label: '指标数据精度' + }, + { + field: 'indexdataUnit', + label: '指标数据项单位' + }, { field: 'action', label: t('tableDemo.action'), @@ -134,6 +154,18 @@ const tableColumns = reactive([ ].map(item => ({ minWidth: item.label ? getWidth(item.label) : 120, ...item }) as TableColumn)) const searchSchema = reactive([ + { + field: 'indexsetCode', + label: '指标集编码', + componentProps: {}, + component: 'Input' + }, + { + field: 'code', + label: '科目编码', + componentProps: {}, + component: 'Input' + }, { field: 'itemName', label: '科目名称', @@ -147,14 +179,14 @@ const searchSchema = reactive([ component: 'Select' }, { - field: 'isOrgCollect', - label: '是否机构汇总', + field: 'status', + label: '状态', componentProps: {}, component: 'Select' }, { - field: 'status', - label: '状态', + field: 'indexType', + label: '指标类型', componentProps: {}, component: 'Select' } diff --git a/src/views/dataset/CodeRepItem/components/Detail.vue b/src/views/dataset/CodeRepItem/components/Detail.vue index 74f08d0..b61f862 100644 --- a/src/views/dataset/CodeRepItem/components/Detail.vue +++ b/src/views/dataset/CodeRepItem/components/Detail.vue @@ -1,6 +1,6 @@ + + \ No newline at end of file diff --git a/src/views/dataset/RepDataModel/components/Detail.vue b/src/views/dataset/RepDataModel/components/Detail.vue new file mode 100644 index 0000000..30cda57 --- /dev/null +++ b/src/views/dataset/RepDataModel/components/Detail.vue @@ -0,0 +1,43 @@ + + + diff --git a/src/views/dataset/RepDataModel/components/Write.vue b/src/views/dataset/RepDataModel/components/Write.vue new file mode 100644 index 0000000..34f188b --- /dev/null +++ b/src/views/dataset/RepDataModel/components/Write.vue @@ -0,0 +1,112 @@ + + + + diff --git a/src/views/dataset/RepDataModel/constants.ts b/src/views/dataset/RepDataModel/constants.ts new file mode 100644 index 0000000..e69de29