diff --git a/ui/dasadmin/src/views/backend/home/home.vue b/ui/dasadmin/src/views/backend/home/home.vue index cca5aa53..18a64530 100644 --- a/ui/dasadmin/src/views/backend/home/home.vue +++ b/ui/dasadmin/src/views/backend/home/home.vue @@ -9,7 +9,7 @@
风机矩阵
- 全部 + 全部 一期 二期 @@ -69,7 +69,7 @@ let timer: any = null let myTable = ref() const windList=ref([]) -const overviewSlotData= ref('一期') +const overviewSlotData= ref('') const realData = ref({ windFarmId: '', @@ -205,8 +205,7 @@ const StatusListData = () => { getWindTurbineMatrixData( { objectType: 10002, - /* belongProject: overviewSlotData.value,*/ - belongProject: '', + belongProject: overviewSlotData.value, attributesList: [ 'iwindspeed', 'iturbineoperationmode', @@ -239,10 +238,10 @@ const StatusListData = () => { if (enumStore.keys.includes('FirstTriggeredCode')) { firsttriggeredcode = enumStore.data['FirstTriggeredCode'][firsttriggeredcode] } - if (malFunctionKeys.includes('FirstTriggeredCode')) { + /*if (malFunctionKeys.includes('FirstTriggeredCode')) { firsttriggeredcode = malFunctionEnums?.[firsttriggeredcode] ?? firsttriggeredcode } - +*/ paramColorData.value.forEach((item, index) => { if (item.state == state) { color = item.color @@ -360,7 +359,7 @@ const StatusListData = () => { }) } let malFunctionEnums: any = {} -const getMalfunctionEnums = () => { +/*const getMalfunctionEnums = () => { windList.value.forEach((item)=> { console.log({madeinfactory: item.madeinfactory, model: item.model }) queryfaultCodeDict({madeinfactory: item.madeinfactory, model: item.model }).then((res) => { @@ -376,7 +375,38 @@ const getMalfunctionEnums = () => { }) }) -} +}*/ + +/*const requestedParams = new Set(); + +const fetchData = async (item: any) => { + // 创建一个唯一的键来标识参数组合 + const key = `${item.madeinFactory}-${item.model}`; + + // 检查这个键是否已经在 Set 中 + if (requestedParams.has(key)) { + console.log('Duplicate request detected, skipping...'); + return; + } + // 将键添加到 Set 中 + requestedParams.add(key); + + try { + console.log({ madeinfactory: item.madeinFactory, model: item.model }) + const response = await queryfaultCodeDict({ madeinfactory: item.madeinFactory, model: item.model }); + if (response.code === 200) { + const data: any = {}; + response.data.forEach((item: any) => { + data[item.code] = item.description; + }); + malFunctionEnums = data; + } else { + console.warn('查询故障代码字典失败:', response.message); + } + } catch (error) { + console.error('请求出错:', error); + } +};*/ let autoUpdateForSecondTimer: any = null @@ -416,12 +446,13 @@ onMounted(() => { deviceCode.value.push(item.code) }) windList.value=res.data.map((item: any) => { + //fetchData(item) return { madeinfactory:item.madeinFactory, model: item.model ?? '-', } }) - getMalfunctionEnums() + //getMalfunctionEnums() }) overviewList() diff --git a/ui/dasadmin/src/views/backend/home/windMatrixpage.vue b/ui/dasadmin/src/views/backend/home/windMatrixpage.vue index cfada403..c4480203 100644 --- a/ui/dasadmin/src/views/backend/home/windMatrixpage.vue +++ b/ui/dasadmin/src/views/backend/home/windMatrixpage.vue @@ -69,12 +69,12 @@
- - {{ item.attributeMap.firsttriggeredcode }} - + + {{ getFaultDescription(item) }} + 已锁定
@@ -411,8 +411,9 @@ const getSafeImagePath = (item, type) => { return imagePath; }; -/*const getFaultDescription=(item)=>{ - getMalfunctionEnums(item) +const getFaultDescription=(item)=>{ + //getMalfunctionEnums(item) + fetchData(item) let firsttriggeredcode=item.attributeMap.firsttriggeredcode if (malFunctionKeys.includes('FirstTriggeredCode')) { firsttriggeredcode = malFunctionEnums?.[firsttriggeredcode] ?? firsttriggeredcode @@ -421,7 +422,7 @@ const getSafeImagePath = (item, type) => { } let malFunctionEnums: any = {} -const getMalfunctionEnums = (item) => { +/*const getMalfunctionEnums = (item) => { /!*queryfaultCodeDict({ madeinfactory: item!.madeinFactory, model: item!.model }).then((res) => {*!/ queryfaultCodeDict({ madeinfactory: '广东明阳风电', model: 'MY1.5/89' }).then((res) => { if (res.code == 200) { @@ -435,6 +436,34 @@ const getMalfunctionEnums = (item) => { } }) }*/ + +const requestedParams = new Set(); + +const fetchData = async (item: any) => { + const key = `${item.madeinFactory}-${item.model}`; + + if (requestedParams.has(key)) { + console.log('Duplicate request detected, skipping...'); + return; + } + requestedParams.add(key); + + try { + malFunctionEnums={} + const response = await queryfaultCodeDict({ madeinfactory: item.madeinFactory, model: item.model }); + if (response.code === 200) { + const data: any = {}; + response.data.forEach((item: any) => { + data[item.code] = item.description; + }); + malFunctionEnums = data; + } else { + console.warn('查询故障代码字典失败:', response.message); + } + } catch (error) { + console.error('请求出错:', error); + } +};