From 7f8aeebb1ed5529d1026720eb6c022068b019109 Mon Sep 17 00:00:00 2001 From: sjl <1716605279@qq.com> Date: Tue, 5 Nov 2024 11:23:38 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=BE=AE=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/api/interface/index.ts | 6 +- .../api/system/dictionary/interface/index.ts | 12 +- frontend/src/api/user/login.ts | 4 +- frontend/src/stores/modules/dict.ts | 25 ++- .../dictionary/dictPq/components/pqPopup.vue | 162 +++++++++++------- .../views/system/dictionary/dictPq/index.vue | 10 ++ 6 files changed, 148 insertions(+), 71 deletions(-) diff --git a/frontend/src/api/interface/index.ts b/frontend/src/api/interface/index.ts index 0a0fef8..74389e2 100644 --- a/frontend/src/api/interface/index.ts +++ b/frontend/src/api/interface/index.ts @@ -1,3 +1,4 @@ +import { storeToRefs } from 'pinia'; /** * 该接口声明文件用来声明通用的接口定义,比如 请求参数Base、响应Base、分页等 */ @@ -44,8 +45,11 @@ export interface ResPage { */ export interface Dict { id: string; - label: string; + name: string; code: string; + value?: string; + sort?:number; + algoDescribe?: string; children?: Dict[]; } diff --git a/frontend/src/api/system/dictionary/interface/index.ts b/frontend/src/api/system/dictionary/interface/index.ts index e60fa6f..a2d96fd 100644 --- a/frontend/src/api/system/dictionary/interface/index.ts +++ b/frontend/src/api/system/dictionary/interface/index.ts @@ -108,23 +108,23 @@ export namespace Dict { harmStart?:number | null;//起始次数 harmEnd?:number | null;//结束次数 classId?: string | null;//数据表表名 - statMethod?:string | null;//数据统计类型(最大、最小、平均、CP95) + statMethod?:string;//数据统计类型(最大、最小、平均、CP95) systemType?:string | null;//系统类别(区分用能/电能) - tranFlag?:number | null;//数据是否上送(0:不上送 1:上送) + tranFlag?:number ;//数据是否上送(0:不上送 1:上送) tranRule?:string | null;//上送规则 变化:“change”周期 :“ period” eventType?:string | null;//evt的事件类别 "1"、"2"; - storeFlag?:string | null;//sts、di的是否存储 1:存储 0:不存 储; + storeFlag?:string ;//sts、di的是否存储 1:存储 0:不存 储; curSts?:number | null;//sts、do的当前值; - ctlSts?:number | null;//do的是否可远程控制 1:是 0:否; + ctlSts?:number;//do的是否可远程控制 1:是 0:否; maxNum?:number | null;//设置最大值 minNum?: number | null;//设置最小值 setValue?:string | null;//参数为enum可设置的所有值序列 strlen?:number | null;//参数string可设置字符串的长度上 限 defaultValue?:string | null; //参数缺省值、告警code值 - resourcesId?:string | null; //报表数据来源(统计表表名) + resourcesId?:string ; //报表数据来源(统计表表名) limitName?:string | null; //限值字段名称 limitTable?:string | null;//限值表名 - formula?:string | null;//超标判断方式 + formula?:string ;//超标判断方式 primaryFormula?:string | null;//二次值转一次值公式 state:number;//状态:0-删除 1-正常 createBy?:string | null;//创建用户 diff --git a/frontend/src/api/user/login.ts b/frontend/src/api/user/login.ts index 026d172..6111f98 100644 --- a/frontend/src/api/user/login.ts +++ b/frontend/src/api/user/login.ts @@ -26,7 +26,7 @@ export const logoutApi = () => { } //获取下拉框列表 -export const getDictList = (params:string) =>{ - return http.post('/dictData/dictDataCache',params) +export const getDictList = () =>{ + return http.get('/dictData/dictDataCache') } diff --git a/frontend/src/stores/modules/dict.ts b/frontend/src/stores/modules/dict.ts index c97c629..57cfd03 100644 --- a/frontend/src/stores/modules/dict.ts +++ b/frontend/src/stores/modules/dict.ts @@ -1,11 +1,25 @@ +import type { Dict } from './../../api/interface/index'; import { defineStore } from 'pinia' import piniaPersistConfig from '@/stores/helper/persist' import { DICT_STORE_KEY } from '@/stores/constant' // 模拟数据 -import dictData from '@/api/system/dictData' +//import dictData from '@/api/system/dictData' +import { getDictList } from '@/api/user/login.ts' -//import { getDictList } from '@/api/user/login.ts' -//const dictData = getDictList +// 初始值设为空数组 +let dictData: Dict[] = []; + +async function fetchDictData() { + try { + const response = await getDictList(); + dictData = response.data as unknown as Dict[]; + console.log('Fetched dictionary data:', dictData); + } catch (error) { + console.error('Failed to fetch dictionary data:', error); + } +} + +fetchDictData(); export const useDictStore = defineStore({ id: DICT_STORE_KEY, @@ -17,9 +31,12 @@ export const useDictStore = defineStore({ // 获取字典数据数组,如果为空则返回空数组 getDictData(code: string) { const dict = this.dictData.find(item => item.code === code ) - return dict?.children || [] + return dict?.children || []; }, // 初始化获取全部字典数据并缓存 + async initDictData() { + await fetchDictData(); + }, }, persist: piniaPersistConfig(DICT_STORE_KEY), }) diff --git a/frontend/src/views/system/dictionary/dictPq/components/pqPopup.vue b/frontend/src/views/system/dictionary/dictPq/components/pqPopup.vue index 0f9dede..e8d9858 100644 --- a/frontend/src/views/system/dictionary/dictPq/components/pqPopup.vue +++ b/frontend/src/views/system/dictionary/dictPq/components/pqPopup.vue @@ -1,135 +1,155 @@