diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/views/device/standardEquipment/components/standardListAdd.vue b/src/views/device/standardEquipment/components/standardListAdd.vue new file mode 100644 index 0000000..e7c5f86 --- /dev/null +++ b/src/views/device/standardEquipment/components/standardListAdd.vue @@ -0,0 +1,679 @@ + + + + + diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/views/device/standardEquipment/components/standardListAdd.vue b/src/views/device/standardEquipment/components/standardListAdd.vue new file mode 100644 index 0000000..e7c5f86 --- /dev/null +++ b/src/views/device/standardEquipment/components/standardListAdd.vue @@ -0,0 +1,679 @@ + + + + + diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/views/device/standardEquipment/components/standardListAdd.vue b/src/views/device/standardEquipment/components/standardListAdd.vue new file mode 100644 index 0000000..e7c5f86 --- /dev/null +++ b/src/views/device/standardEquipment/components/standardListAdd.vue @@ -0,0 +1,679 @@ + + + + + diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/views/device/standardEquipment/components/standardListAdd.vue b/src/views/device/standardEquipment/components/standardListAdd.vue new file mode 100644 index 0000000..e7c5f86 --- /dev/null +++ b/src/views/device/standardEquipment/components/standardListAdd.vue @@ -0,0 +1,679 @@ + + + + + diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/views/device/standardEquipment/components/standardListAdd.vue b/src/views/device/standardEquipment/components/standardListAdd.vue new file mode 100644 index 0000000..e7c5f86 --- /dev/null +++ b/src/views/device/standardEquipment/components/standardListAdd.vue @@ -0,0 +1,679 @@ + + + + + diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/api/device/standard.ts b/src/api/device/standard.ts new file mode 100644 index 0000000..6a6d694 --- /dev/null +++ b/src/api/device/standard.ts @@ -0,0 +1,29 @@ +/** + * 溯源供方请求接口 + */ +import request from '../index' +const prefix = '/meter' +// 列表查询 +export function getStandardList(data: object) { + return request({ + url: `${prefix}/standard/listPage?offset=${data.offset}&limit=${data.limit}`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListAdd(data: object) { + return request({ + url: `${prefix}/standard/add`, + method: 'post', + data, + }) +} +// 列表新增 +export function getStandardListDelete(data: object) { + return request({ + url: `${prefix}/standard/delete`, + method: 'post', + data, + }) +} diff --git a/src/api/device/standingBook.ts b/src/api/device/standingBook.ts new file mode 100644 index 0000000..74e0af0 --- /dev/null +++ b/src/api/device/standingBook.ts @@ -0,0 +1,60 @@ +// 设备台账相关接口api +import request from '../index' +import type { fixedAssetsParams } from '@/views/device/standingBook/standingBook-interface' +// 固定资产列表(分页) +export function listPageApi(data: fixedAssetsParams) { + return request({ + url: `/meter/assets/listPage?limit=${data.limit}&offset=${data.offset}`, + method: 'post', + data, + }) +} +// 删除固定资产 +export function assetsDeleteApi(data: object) { + return request({ + url: '/meter/assets/delete', + method: 'post', + data, + }) +} +// 固定资产详情 +export function assetsDetailApi(data: object) { + return request({ + url: '/meter/assets/detail', + method: 'post', + data, + }) +} +// 固定资产导出到excel +export function listExportApi(data: object) { + return request({ + url: '/meter/assets/exportExcel', + method: 'post', + data, + responseType: 'blob', + }) +} +// 批量导入测量设备信息 +export function listImporttApi(data: FormData) { + return request({ + url: '/meter/assets/importMeterEquipment', + method: 'post', + data, + }) +} +// 更新固定资产 +export function assetsUpdateApi(data: object) { + return request({ + url: '/meter/assets/update', + method: 'post', + data, + }) +} +// 添加固定资产 +export function assetsAddApi(data: object) { + return request({ + url: '/meter/assets/add', + method: 'post', + data, + }) +} diff --git a/src/components.d.ts b/src/components.d.ts index 8b37b44..0bb0edd 100644 --- a/src/components.d.ts +++ b/src/components.d.ts @@ -18,6 +18,7 @@ CopyerDrawer: typeof import('./components/drawer/copyerDrawer.vue')['default'] Copyright: typeof import('./components/Copyright/index.vue')['default'] DeptSelect: typeof import('./components/DeptSelect/index.vue')['default'] + Echart: typeof import('./components/Echart/index.vue')['default'] Echarts: typeof import('./components/echarts/index.vue')['default'] Editor: typeof import('./components/Editor/index.vue')['default'] EmployeesDialog: typeof import('./components/dialog/employeesDialog.vue')['default'] diff --git a/src/views/device/standardEquipment/components/standardListAdd.vue b/src/views/device/standardEquipment/components/standardListAdd.vue new file mode 100644 index 0000000..e7c5f86 --- /dev/null +++ b/src/views/device/standardEquipment/components/standardListAdd.vue @@ -0,0 +1,679 @@ + + + + + diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - +import { ref } from 'vue' +import { ElMessage, ElMessageBox } from 'element-plus' +import type { FormInstance, UploadProps, UploadUserFile } from 'element-plus' +import { getStaffList } from '@/api/measure/person' +import { getTypeSelect } from '@/api/system/price' +import { getStandardListAdd } from '@/api/device/standard' +import { UploadFile } from '@/api/measure/file' +const props = defineProps({ + infoId: { + type: String, + default: '0', + }, + buttonType: { + type: String, + default: '', + }, +}) +const emit = defineEmits(['close']) // 关闭 +const ruleFormRef = ref() +// 逻辑代码 +const formInline = ref({ + assessDate: '', + assessmentUnit: '', + category: null, + categoryName: '', + constructionStandardProject: '', + constructionStandardUnitName: '', + contactInfo: '', + createTime: null, + createUser: null, + id: null, + isDel: null, + laboratoryOwner: null, + laboratoryOwnerContact: null, + laboratoryOwnerName: null, + managerState: null, + managerStateName: '', + measureMajor: null, + fileList: [], + measureMajorName: '', + mesureRange: '', + organizeNo: '', + preparationDate: '', + projectNo: '', + remark: '', + standardHumidity: null, + standardLaboratory: null, + standardLaboratoryName: '', + standardLevel: null, + standardLevelName: '', + standardName: '', + standardNo: '', + standardOwner: null, + standardOwnerName: '', + standardTemperature: null, + totalInvestment: null, + transmitRange: null, + transmitRangeName: '', + uncertainty: '', + updateTime: null, + version: null, +}) +const checkTypeOptions = ref([ + { name: '国家', id: 0, value: 0 }, + { name: '国防', id: 1, value: 1 }, + { name: '二级', id: 2, value: 2 }, + { name: '标准装置', id: 3, value: 3 }, +]) +const transmitRangeOptions = ref([ + { name: '国家级', id: 0, value: 0 }, + { name: '省级', id: 1, value: 1 }, + { name: '本所', id: 2, value: 2 }, +]) + +const standardOwnerOptions = ref([]) // 标准负责人 +const fileList = ref([]) // 文件对象数组 +const measureMajorList = ref([]) // 计量专业下拉框 +const standardManagerStateList = ref([]) // 管理状态下拉框 +const standardLevelList = ref([]) // 标准等级下拉框 +const transmitRangeList = ref([]) // 传递范围下拉框 +// 获取下拉框 +const getSelectList = (code: string) => { + getTypeSelect(code).then((res) => { + if (code === 'measureMajor') { + measureMajorList.value = res.data + } + else if (code === 'standardManagerState') { + standardManagerStateList.value = res.data + } + else if (code === 'standardLevel') { + standardLevelList.value = res.data + } + else if (code === 'transmitRange') { + transmitRangeList.value = res.data + } + }) +} +getSelectList('measureMajor') // 获取计量专业下拉框 +getSelectList('standardManagerState') // 获取管理状态下拉框 +getSelectList('standardLevel') // 获取标准等级下拉框 +getSelectList('transmitRange') // 获取传递范围下拉框 +// 获取到标准负责人数组 +const getStandardOwnerOptions = () => { + const params = { + staffNo: '', // 人员编号 + name: '', // 姓名 + deptId: '', // 工作部门 + major: '', // 计量专业 + verifierCertificateNo: '', // 证书号 + certificateStatus: '', // 证书状态 + limit: 100000, + offset: 1, + } + getStaffList(params).then((res) => { + standardOwnerOptions.value = res.data.records + }) +} +getStandardOwnerOptions() +// 关闭 +const close = () => { + emit('close') +} +const rules = ref({ + standardName: [{ required: true, message: '标准名称不能为空', trigger: 'blur' }], + projectNo: [{ required: true, message: '项目编号不能为空', trigger: 'blur' }], + constructionStandardProject: [{ required: true, message: '建标项目不能为空', trigger: 'blur' }], + organizeNo: [{ required: true, message: '组织机构代码不能为空', trigger: 'blur' }], + constructionStandardUnitName: [{ required: true, message: '建标单位名称不能为空', trigger: 'blur' }], + standardOwner: [{ required: true, message: '标准负责人不能为空', trigger: 'blur' }], + contactInfo: [{ required: true, message: '联系方式不能为空', trigger: 'blur' }], + category: [{ required: true, message: '类 别不能为空', trigger: 'blur' }], + standardLevel: [{ required: true, message: '标准等级不能为空', trigger: 'blur' }], + transmitRange: [{ required: true, message: '传递范围不能为空', trigger: 'blur' }], + preparationDate: [{ required: true, message: '筹建日期不能为空', trigger: 'blur' }], + managerState: [{ required: true, message: '管理状态不能为空', trigger: 'blur' }], + measureMajor: [{ required: true, message: '计量专业不能为空', trigger: 'blur' }], + assessmentUnit: [{ required: true, message: '考核单位不能为空', trigger: 'blur' }], + assessDate: [{ required: true, message: '考核日期不能为空', trigger: 'blur' }], + uncertainty: [{ required: true, message: '不确定度不能为空', trigger: 'blur' }], + mesureRange: [{ required: true, message: '测量范围不能为空', trigger: 'blur' }], + standardTemperature: [{ required: true, message: '标准温度不能为空', trigger: 'blur' }], + standardHumidity: [{ required: true, message: '标准湿度不能为空', trigger: 'blur' }], + abc: [{ required: true, message: '证书编号不能为空', trigger: 'blur' }], + // standardHumidity: [{ required: true, message: '标准湿度不能为空', trigger: 'blur' }], + +}) // 表单验证规则 +// 上传请求 +const uploadQuarterlyEvaluateFile = (file: File) => { + UploadFile(file).then((res) => { + if (res.code === 200) { + formInline.value.minioFileName = res.data.fileName + // fileList.value.push({ + // name: res.data.fileName, + // url: res.data.fileId, + // // type: file.file.type, + // }) + // 重置当前验证 + ElMessage.success('文件上传成功') + } + }) +} +const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => { + ElMessage.warning('只能上传一个文件') +} +// 移除时触发 +const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => { + return ElMessageBox.confirm( + `确认移除${uploadFile.name}文件吗 ?`, + ).then( + () => true, + () => false, + + ) +} +// 点击文件预览 +const uploadShow = (e: any) => { + const URL = window.URL || window.webkitURL + window.open(URL.createObjectURL(e.raw)) +} +const testForm = ref({ + fileList: [], + fileContent: '', +}) +const handleFileChange = (files: any, fileList: any) => { + testForm.value.fileList = fileList + const reader = new FileReader() + reader.readAsText(files.raw) + reader.onload = (e) => { + testForm.value.fileContent = e.target!.result?.replace( + /\n|\r\n/g, + '
', + ) + } +} +// 提交 +const submitForm = async (formEl: FormInstance | undefined) => { + if (!formEl) { return } + await formEl.validate((valid, fields) => { + if (valid) { + ElMessageBox.confirm( + '确认提交吗?', + '提示', + { + confirmButtonText: '确认', + cancelButtonText: '取消', + type: 'warning', + }, + ).then(() => { + props.buttonType === '' + ? getStandardListAdd(formInline.value).then((res) => { + if (res.code === 200) { + close() + } + }) + : '' + }) + } + }) +} + + + + + diff --git a/src/views/device/standardEquipment/standardList.vue b/src/views/device/standardEquipment/standardList.vue index 55e7402..99ed765 100644 --- a/src/views/device/standardEquipment/standardList.vue +++ b/src/views/device/standardEquipment/standardList.vue @@ -1,11 +1,301 @@ diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" > + + + + + diff --git a/src/views/device/standingBook/fixedAssets.vue b/src/views/device/standingBook/fixedAssets.vue index b9845d9..9f871d8 100644 --- a/src/views/device/standingBook/fixedAssets.vue +++ b/src/views/device/standingBook/fixedAssets.vue @@ -1,13 +1,339 @@ - + diff --git a/src/views/device/standingBook/standingBook-interface.ts b/src/views/device/standingBook/standingBook-interface.ts new file mode 100644 index 0000000..c405c98 --- /dev/null +++ b/src/views/device/standingBook/standingBook-interface.ts @@ -0,0 +1,41 @@ +// 固定资产查询参数 +export interface fixedAssetsParams { + abc?: string // ABC false + assetNo: string // 资产编号 false + assetType?: string // 资产类型 false + equipmentCategory: string // 设备类别 false + equipmentName: string // 设备名称 false + equipmentNo?: string // 设备编号 false + equipmentSpecifications: string // 设备规格 false + id?: string // + isCalibrationTestEquipment?: string // 是否是技术指标需要校准检定的设备 false + isFixedAssets?: string // 是否加入固定资产台账 true + isMeasureAccount?: string // 是否是测量工装台账 false + isStandardSupportEquipment?: string // 是否标准配套设备 false + managerState?: string // 管理状态 false + manufacturingNo?: string // 出厂编号 false + mesureType?: string // 检定方式 false + modelNo: string // 型号 false + useDept?: string // 使用部门 fals + validDate?: string // 有效日期 false + limit?: number + offset?: number +} +// 下拉框数据类型 +export interface selectType { + name: string + id: string + value: string +} +// 部门类型 +export interface deptType { + checked: boolean + code: string + id: string + name: string + open: boolean + pCodes: string + pid: string + value: string + +} diff --git a/src/views/measure/bench/bench.vue b/src/views/measure/bench/bench.vue index cb6d856..af9bb2b 100644 --- a/src/views/measure/bench/bench.vue +++ b/src/views/measure/bench/bench.vue @@ -18,17 +18,17 @@ const tableData = ref([]) const meterageTableData = ref([]) const columns = ref([ - { text: '培训名称', value: 'planName', width: '120' }, - { text: '负责人', value: 'director', width: '130' }, + { text: '培训名称', value: 'planName', width: '110' }, + { text: '负责人', value: 'director', width: '120' }, { text: '培训时间', value: 'trainTime' }, ]) const meterageColumns = ref([ - { text: '文件名称', value: 'fileName', width: '120' }, - { text: '类别', value: 'fileTypeName', width: '120' }, + { text: '文件名称', value: 'fileName', width: '110' }, + { text: '类别', value: 'fileTypeName', width: '110' }, { text: '发布时间', value: 'publishTime' }, ]) const CertificateColumns = ref([ - { text: '证书名称', value: 'certificateName', width: '120' }, + { text: '证书名称', value: 'certificateName', width: '110' }, { text: '到期时间', value: 'validDate' }, ]) const StatisticyAxis = ref([]) @@ -141,7 +141,9 @@
-
+
+ {{ CertificateObject.lastValidDate }}天 +
最近到期时间
{{ CertificateObject.validDate }} @@ -215,7 +217,7 @@ height: 90vh; .bench-center-top { - height: 45%; + height: 46.5%; background-color: #fff; border-radius: 10px; margin: 2%; @@ -241,7 +243,15 @@ width: 100px; height: 100px; margin-bottom: 30px; - background: url("../../../assets/images/bench/1671087276259.jpg") no-repeat center / cover; + background: url("../../../assets/images/bench/clock.png") no-repeat center / cover; + } + + .validDate-top span { + position: relative; + top: 40%; + right: 0; + font-size: 22px; + // transform: translateX(-50%); } .validDate-bottom { diff --git a/src/views/measure/price/list.vue b/src/views/measure/price/list.vue index 1d78fe2..fb82066 100644 --- a/src/views/measure/price/list.vue +++ b/src/views/measure/price/list.vue @@ -175,7 +175,7 @@ text: 'Loading', background: 'rgba(255, 255, 255, 0.8)', }) - if (checkoutList.value.length <= 0) { + if (checkoutList.value.length <= 0 && list.value.length > 0) { exportExcel({ json: list.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -183,7 +183,7 @@ sheetName: 'sheet1', }) } - else { + else if (checkoutList.value.length > 0) { exportExcel({ json: checkoutList.value.map((item: IlistType, index: number) => ({ index: index + 1, priceNo: item.priceNo, priceName: item.priceName, checkType: item.checkType, priceType: item.priceType, priceItem: item.priceItem, price: item.price, operatorDiscountPermission: item.operatorDiscountPermission, directorDiscountPermission: item.directorDiscountPermission, priceStandard: item.priceStandard, createTime: item.createTime })), name: '价格列表', @@ -191,6 +191,9 @@ sheetName: 'sheet1', }) } + else { + ElMessage.warning('暂无数据') + } loading.close() } // 上传文件/批量导入 @@ -244,18 +247,6 @@ popTitle: '溯源供方编号模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { console.log('正在加载预览窗口!') }, // 预览窗口打开之前的callback - previewOpenCallback() { console.log('已经加载完预览窗口,预览打开了!') }, // 预览窗口打开时的callback - beforeOpenCallback() { console.log('开始打印之前!') }, // 开始打印之前的callback - openCallback() { console.log('执行打印了!') }, // 调用打印时的callback - closeCallback() { console.log('关闭了打印工具!') }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { console.log('点击v-print绑定的按钮了!') }, - // url: 'http://localhost:8080/', // 打印指定的URL,确保同源策略相同 - // asyncUrl (reslove) { - // setTimeout(() => { - // reslove('http://localhost:8080/') - // }, 2000) - // }, standard: '', extarCss: '', }) @@ -289,13 +280,6 @@ clearable /> - { emit('close') } +// 获取详情信息 const getInfo = () => { getQueryPriceInfo({ id: props.infoId }).then((res) => { formInline.value = res.data }) } +// 获取下拉框数据 const getOptions = (code: string) => { getTypeSelect(code).then((res) => { if (code === 'checkType') { @@ -119,24 +121,6 @@ popTitle: '证书报告模板', // 打印配置页上方的标题 extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分割 preview: false, // 是否启动预览模式,默认是false - previewBeforeOpenCallback() { - console.log('正在加载预览窗口!') - }, // 预览窗口打开之前的callback - previewOpenCallback() { - console.log('已经加载完预览窗口,预览打开了!') - }, // 预览窗口打开时的callback - beforeOpenCallback() { - console.log('开始打印之前!') - }, // 开始打印之前的callback - openCallback() { - console.log('执行打印了!') - }, // 调用打印时的callback - closeCallback() { - console.log('关闭了打印工具!') - }, // 关闭打印的callback(无法区分确认or取消) - clickMounted() { - console.log('点击v-print绑定的按钮了!') - }, standard: '', extarCss: '', }) @@ -167,7 +151,7 @@ :inline="true" :model="formInline" class="demo-form-inline" - label-position="left" + label-position="right" >