Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
6eedf5826f
@ -327,7 +327,7 @@ import { useRoute, useRouter } from 'vue-router'
|
||||
import Overview from './overview.vue'
|
||||
import { TableInstance } from 'element-plus'
|
||||
import { dayjs, ElMessage, ElMessageBox } from 'element-plus'
|
||||
import { getRealTimeState, getCutDecimalsValue } from '/@/views/backend/equipment/airBlower/utils'
|
||||
import { getRealTimeState, getCutDecimalsValue, malFunctionKeys } from '/@/views/backend/equipment/airBlower/utils'
|
||||
import { sendCommandReq, sendManualCommandReq } from '/@/api/backend/control/request'
|
||||
import { getAlarmListReq } from '/@/api/backend/alarms/request'
|
||||
import { queryfaultCodeDict } from '/@/api/backend/theoreticalpowerCurve/request'
|
||||
@ -1037,7 +1037,7 @@ const createRealTimeData = async () => {
|
||||
val = enumStore.data[item.attributeCode][val]
|
||||
}
|
||||
if (malFunctionKeys.includes(item.attributeCode)) {
|
||||
val = malFunctionEnums?.[item.attributeCode] ?? val
|
||||
val = malFunctionEnums?.[val] ?? val
|
||||
}
|
||||
if (sigleDataKeys.includes(item.attributeCode.toLowerCase())) {
|
||||
realTimeDataForSingle.value[item.attributeCode.toLowerCase()] = val === '-' ? val : val
|
||||
@ -1345,29 +1345,16 @@ const getAlarmList = () => {
|
||||
})
|
||||
}
|
||||
|
||||
const malFunctionKeys = [
|
||||
'ActiveStatusCode01',
|
||||
'ActiveStatusCode02',
|
||||
'ActiveStatusCode03',
|
||||
'ActiveStatusCode04',
|
||||
'ActiveStatusCode05',
|
||||
'ActiveStatusCode06',
|
||||
'ActiveStatusCode07',
|
||||
'ActiveStatusCode08',
|
||||
'FirstTriggeredCode',
|
||||
]
|
||||
|
||||
const malFunctionEnums: any = {}
|
||||
let malFunctionEnums: any = {}
|
||||
const getMalfunctionEnums = () => {
|
||||
const curWindBlower = airBlowerList.value.find((item) => item.irn === route.query.irn)
|
||||
console.log(curWindBlower)
|
||||
|
||||
queryfaultCodeDict({ madeinfactory: curWindBlower!.madeinfactory, model: curWindBlower!.model }).then((res) => {
|
||||
if (res.code == 200) {
|
||||
const data: any = {}
|
||||
res.data.forEach((item: any) => {
|
||||
data[item.code] = item.description
|
||||
})
|
||||
malFunctionEnums = data
|
||||
}
|
||||
})
|
||||
}
|
||||
|
@ -35,4 +35,16 @@ export const getEnumToValue = (key: string, value: any) => {
|
||||
} else {
|
||||
return value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export const malFunctionKeys = [
|
||||
'ActiveStatusCode01',
|
||||
'ActiveStatusCode02',
|
||||
'ActiveStatusCode03',
|
||||
'ActiveStatusCode04',
|
||||
'ActiveStatusCode05',
|
||||
'ActiveStatusCode06',
|
||||
'ActiveStatusCode07',
|
||||
'ActiveStatusCode08',
|
||||
'FirstTriggeredCode',
|
||||
]
|
||||
|
@ -119,9 +119,9 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="生产厂家:">
|
||||
<el-input
|
||||
:disabled="hasShowSelect"
|
||||
:disabled="hasSetOfMachines"
|
||||
v-model="editDeviceData.madeinFactory"
|
||||
:placeholder="hasShowSelect ? '请选择规格型号' : '请输入生产厂家'"
|
||||
:placeholder="hasSetOfMachines ? '请选择规格型号' : '请输入生产厂家'"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
@ -129,7 +129,7 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="规格型号:">
|
||||
<el-select
|
||||
v-if="hasShowSelect"
|
||||
v-if="hasSetOfMachines"
|
||||
v-model="editDeviceData.model"
|
||||
placeholder="请选择规格型号"
|
||||
style="width: 200px"
|
||||
@ -226,11 +226,12 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item :label="editDeviceData.objectType == '风电场' ? '装机容量(MW):' : '额定容量(MW):'">
|
||||
<el-form-item :label="hasSetOfMachines ? '额定容量(MW):' : '装机容量(MW):'">
|
||||
<el-input-number
|
||||
:disabled="hasSetOfMachines"
|
||||
style="width: 200px"
|
||||
:controls="false"
|
||||
:placeholder="editDeviceData.objectType == '风电场' ? '请输入装机容量' : '请输入额定容量'"
|
||||
:placeholder="hasSetOfMachines ? '请输入额定容量' : '请输入装机容量'"
|
||||
v-model="editDeviceData.nominalCapacity"
|
||||
/>
|
||||
</el-form-item>
|
||||
@ -299,9 +300,9 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="生产厂家:">
|
||||
<el-input
|
||||
:disabled="hasShowSelect"
|
||||
:disabled="hasSetOfMachines"
|
||||
v-model="editAddDeviceData.madeinFactory"
|
||||
:placeholder="hasShowSelect ? '请选择规格型号' : '请输入生产厂家'"
|
||||
:placeholder="hasSetOfMachines ? '请选择规格型号' : '请输入生产厂家'"
|
||||
clearable
|
||||
/>
|
||||
</el-form-item>
|
||||
@ -309,7 +310,7 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="规格型号:">
|
||||
<el-select
|
||||
v-if="hasShowSelect"
|
||||
v-if="hasSetOfMachines"
|
||||
v-model="editAddDeviceData.model"
|
||||
placeholder="请选择规格型号"
|
||||
style="width: 200px"
|
||||
@ -411,11 +412,12 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item :label="editAddDeviceData.objectType == '风电场' ? '装机容量(MW):' : '额定容量(MW):'">
|
||||
<el-form-item :label="hasSetOfMachines ? '额定容量(MW):' : '装机容量(MW):'">
|
||||
<el-input-number
|
||||
:disabled="hasSetOfMachines"
|
||||
style="width: 200px"
|
||||
:controls="false"
|
||||
:placeholder="editAddDeviceData.objectType == '风电场' ? '请输入装机容量' : '请输入额定容量'"
|
||||
:placeholder="hasSetOfMachines ? '请输入额定容量' : '请输入装机容量'"
|
||||
v-model="editAddDeviceData.nominalCapacity"
|
||||
/>
|
||||
</el-form-item>
|
||||
@ -487,6 +489,8 @@
|
||||
:iotModelId="measureData.iotModelId"
|
||||
:autoUpdate="measureData.autoUpdate"
|
||||
:attributeType="measureData.measureType"
|
||||
:madein-factory="measureData.madeinFactory"
|
||||
:model="measureData.model"
|
||||
></MeasurementPage>
|
||||
</div>
|
||||
</el-dialog>
|
||||
@ -731,7 +735,7 @@ const addDeviceList = () => {
|
||||
editAddDeviceData.iotModelId = ''
|
||||
editAddDeviceData.belongLine = ''
|
||||
editAddDeviceData.standard = 0
|
||||
editAddDeviceData.nominalCapacity = null
|
||||
editAddDeviceData.nominalCapacity = ''
|
||||
}
|
||||
|
||||
// 查看设备详情
|
||||
@ -754,23 +758,22 @@ const editDeviceData = reactive({
|
||||
id: '',
|
||||
belongLine: '',
|
||||
standard: 0,
|
||||
nominalCapacity: null,
|
||||
nominalCapacity: '',
|
||||
})
|
||||
|
||||
const hasShowSelect = computed(() => {
|
||||
const hasSetOfMachines = computed(() => {
|
||||
return queryParameter.value.equipmentTypeId === 10002
|
||||
})
|
||||
const modelList = ref<{ model: string; madeinFactory: string }[]>([])
|
||||
const modelList = ref<{ model: string; madeinFactory: string; nominalCapacity: string }[]>([])
|
||||
|
||||
const getModelList = () => {
|
||||
theoreticalpowerCurveList().then((res) => {
|
||||
if (res.rows) {
|
||||
console.log(res)
|
||||
|
||||
modelList.value = (res.rows as any[]).map((item: any) => {
|
||||
return {
|
||||
model: item.model,
|
||||
madeinFactory: item.madeinfactory,
|
||||
nominalCapacity: item.nominalCapacity,
|
||||
}
|
||||
})
|
||||
}
|
||||
@ -778,9 +781,11 @@ const getModelList = () => {
|
||||
}
|
||||
const selectEditModel = (value: string) => {
|
||||
editDeviceData.madeinFactory = modelList.value.find((item) => item.model == value)?.madeinFactory || ''
|
||||
editDeviceData.nominalCapacity = modelList.value.find((item) => item.model == value)?.nominalCapacity || ''
|
||||
}
|
||||
const selectAddModel = (value: string) => {
|
||||
editAddDeviceData.madeinFactory = modelList.value.find((item) => item.model == value)?.madeinFactory || ''
|
||||
editAddDeviceData.nominalCapacity = modelList.value.find((item) => item.model == value)?.nominalCapacity || ''
|
||||
}
|
||||
const size = ref<'default' | 'large' | 'small'>('default')
|
||||
|
||||
@ -938,7 +943,7 @@ const editAddDeviceData = reactive({
|
||||
iotModelId: '',
|
||||
belongLine: '',
|
||||
standard: 0,
|
||||
nominalCapacity: null,
|
||||
nominalCapacity: '',
|
||||
})
|
||||
const addhandleSwitchChange = (value: any) => {
|
||||
editAddDeviceData.standard = value ? 1 : 0
|
||||
@ -1060,16 +1065,22 @@ const measureData = reactive<{
|
||||
iotModelId: string
|
||||
autoUpdate: boolean
|
||||
measureType: ModelAttributeType
|
||||
madeinFactory: string
|
||||
model: string
|
||||
}>({
|
||||
deviceId: '',
|
||||
iotModelId: '',
|
||||
autoUpdate: false,
|
||||
measureType: 138,
|
||||
madeinFactory: '',
|
||||
model: '',
|
||||
})
|
||||
const showMeasure = ref(false)
|
||||
const openMeasure = (data: any) => {
|
||||
measureData.deviceId = data.row.id
|
||||
measureData.iotModelId = data.row.iotModelId
|
||||
measureData.madeinFactory = data.row.madeinFactory
|
||||
measureData.model = data.row.model
|
||||
if (measureData.iotModelId) {
|
||||
showMeasure.value = true
|
||||
} else {
|
||||
|
@ -89,16 +89,21 @@ import { getModelAttributeListReq, getRealValueListReq } from '/@/api/backend/de
|
||||
import * as echarts from 'echarts'
|
||||
import { getRealValueRangeReq } from '/@/api/backend/deviceModel/request'
|
||||
import { useEnumStore } from '/@/stores/enums'
|
||||
import { queryfaultCodeDict } from '/@/api/backend/theoreticalpowerCurve/request'
|
||||
import { malFunctionKeys} from '/@/views/backend/equipment/airBlower/utils'
|
||||
|
||||
const enumStore = useEnumStore()
|
||||
|
||||
const props = withDefaults(
|
||||
defineProps<{ iotModelId: string; deviceId: string; show: boolean; autoUpdate: boolean; attributeType: ModelAttributeType }>(),
|
||||
defineProps<{ iotModelId: string; deviceId: string; show: boolean; autoUpdate: boolean; attributeType: ModelAttributeType;model:string;madeinFactory:string }>(),
|
||||
{
|
||||
iotModelId: '',
|
||||
deviceId: '',
|
||||
show: false,
|
||||
autoUpdate: false,
|
||||
attributeType: 138,
|
||||
model:'',
|
||||
madeinFactory:''
|
||||
}
|
||||
)
|
||||
|
||||
@ -204,6 +209,20 @@ const getRealValueList = (data: { deviceId: string; attributes: string[] }, list
|
||||
})
|
||||
}
|
||||
|
||||
let malFunctionEnums: any = {}
|
||||
const getMalfunctionEnums = () => {
|
||||
queryfaultCodeDict({ madeinfactory: props.madeinFactory, model: props.model }).then((res) => {
|
||||
if (res.code == 200) {
|
||||
const data: any = {}
|
||||
res.data.forEach((item: any) => {
|
||||
data[item.code] = item.description
|
||||
})
|
||||
malFunctionEnums = data
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
const getCompleteData = () => {
|
||||
getAttributeList()
|
||||
.then(({ data, codeList }: any) => {
|
||||
@ -217,6 +236,9 @@ const getCompleteData = () => {
|
||||
if (enumStore.keys.includes(item.attributeCode)) {
|
||||
realValItem = enumStore.data[item.attributeCode][realValItem]
|
||||
}
|
||||
if(malFunctionKeys.includes(item.attributeCode)){
|
||||
realValItem = malFunctionEnums?.[realValItem] ?? realValItem
|
||||
}
|
||||
return {
|
||||
...item,
|
||||
realTimeValue: realValItem
|
||||
@ -505,6 +527,7 @@ watch(
|
||||
(newVal) => {
|
||||
if (newVal) {
|
||||
getCompleteData()
|
||||
getMalfunctionEnums()
|
||||
searchOptions.datePickerValue = shortcuts[0].value()
|
||||
} else {
|
||||
autoUpdateTimer.value && clearInterval(autoUpdateTimer.value)
|
||||
|
@ -613,6 +613,7 @@ const handleCurrentChange = (val: any) => {
|
||||
getpowerCurve()
|
||||
getFaultRecording()
|
||||
getRunLog()
|
||||
getfaultCodeDict()
|
||||
}
|
||||
const getpowerCurve = () => {
|
||||
currentRow.value = currentRow.value ?? theoreticalTableData.value[0]
|
||||
|
Loading…
Reference in New Issue
Block a user