设备类型接口
This commit is contained in:
@@ -263,7 +263,7 @@ import { useAuthStore } from "@/stores/modules/auth";
|
||||
import { useDownload } from '@/hooks/useDownload'
|
||||
import {downloadDevData} from '@/api/plan/plan.ts'
|
||||
import {documentedPqDev} from "@/api/device/device";
|
||||
|
||||
import { getPqDev } from '@/api/device/device/index.ts'
|
||||
const dictStore = useDictStore()
|
||||
const checkStore = useCheckStore()
|
||||
const webMsgSend = ref();//webSocket推送的数据
|
||||
@@ -331,6 +331,18 @@ isTimeCheck: {
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
// 存储设备类型选项
|
||||
const devTypeOptions = ref<{
|
||||
id: string;
|
||||
name: string ,
|
||||
icd:string ,
|
||||
power:string,
|
||||
devVolt:number,
|
||||
devCurr:number,
|
||||
devChns:number,
|
||||
}[]>([])
|
||||
|
||||
//下拉框数据
|
||||
interface Dict {
|
||||
id: string;
|
||||
@@ -454,8 +466,11 @@ const columns = reactive<ColumnProps<Device.ResPqDev>[]>([
|
||||
prop: 'devType',
|
||||
label: '设备类型',
|
||||
minWidth: 100,
|
||||
enum: dictStore.getDictData('Dev_Type'),
|
||||
fieldNames: { label: 'name', value: 'id' },
|
||||
render: (scope) => {
|
||||
// 查找设备类型名称
|
||||
const name = devTypeOptions.value.find(option => option.id === scope.row.devType);
|
||||
return <span>{name?.name}</span>
|
||||
},
|
||||
},
|
||||
{
|
||||
prop: 'devChns',
|
||||
@@ -952,6 +967,7 @@ const handleTest = async (val:string) => {
|
||||
webMsgSend.value = res
|
||||
}
|
||||
});
|
||||
|
||||
channelsTest.value?.open(channelsSelection.value,props.plan);
|
||||
return;
|
||||
}
|
||||
@@ -1059,7 +1075,18 @@ watch(
|
||||
{ immediate: true } // 立即执行一次
|
||||
);
|
||||
|
||||
|
||||
onBeforeMount(async () => {
|
||||
const response = await getPqDev()
|
||||
devTypeOptions.value = response.data.map(item => ({
|
||||
id: item.id,
|
||||
name: item.name,
|
||||
icd: item.icd,
|
||||
power: item.power,
|
||||
devVolt: item.devVolt,
|
||||
devCurr: item.devCurr,
|
||||
devChns: item.devChns
|
||||
}))
|
||||
})
|
||||
defineExpose({ changeActiveTabs });
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -5,8 +5,11 @@
|
||||
<div >
|
||||
<el-form :model='formContent' ref='dialogFormRef' :rules='rules' :disabled="false" label-width="auto" class="form-three">
|
||||
<el-divider >设备信息</el-divider>
|
||||
<el-form-item label="设备名称" prop="name" v-if="scene != '1'">
|
||||
<el-input v-model='formContent.name' placeholder="请输入设备名称"/>
|
||||
<el-form-item label="设备序列号" prop="createId" >
|
||||
<el-input v-model="formContent.createId" placeholder="请输入设备序列号" @input="handleInput" />
|
||||
</el-form-item>
|
||||
<el-form-item label="设备名称" prop="name" >
|
||||
<el-input v-model='formContent.name' placeholder="请输入设备名称" :disabled="scene === '1'"/>
|
||||
</el-form-item>
|
||||
<el-form-item label='设备类型' prop='devType' >
|
||||
<el-select v-model="formContent.devType" filterable clearable placeholder="请选择设备类型" @change="handleDevTypeChange">
|
||||
@@ -45,9 +48,7 @@
|
||||
:disabled-date="disabledDate"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="设备序列号" prop="createId" >
|
||||
<el-input v-model="formContent.createId" placeholder="请输入设备序列号"/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="固件版本" prop="hardwareVersion" v-if="scene === '0'">
|
||||
<el-input v-model="formContent.hardwareVersion" placeholder="请输入固件版本"/>
|
||||
</el-form-item>
|
||||
@@ -343,6 +344,7 @@ const rules = computed(() => {
|
||||
}
|
||||
if (valid) {
|
||||
formContent.value.createDate = dayjs(formContent.value.createDate).format('YYYY-MM-DD');
|
||||
formContent.value.name = formContent.value.createId
|
||||
if (formContent.value.arrivedDate)
|
||||
{
|
||||
formContent.value.arrivedDate = dayjs(formContent.value.arrivedDate).format('YYYY-MM-DD');
|
||||
@@ -365,6 +367,7 @@ const rules = computed(() => {
|
||||
ElMessage.success({ message: `${dialogTitle.value}成功!` })
|
||||
|
||||
}
|
||||
|
||||
close()
|
||||
// 刷新表格
|
||||
await props.refreshTable!()
|
||||
@@ -449,6 +452,15 @@ const handleDevTypeChange = (value: string) => {
|
||||
}
|
||||
|
||||
|
||||
const handleInput = (value: string) => {
|
||||
// 在这里处理选中事件的逻辑
|
||||
formContent.value.name = value
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// 对外映射
|
||||
defineExpose({ open })
|
||||
const props = defineProps<{
|
||||
|
||||
@@ -39,10 +39,11 @@ import { type ProTableInstance, type ColumnProps } from '@/components/ProTable/i
|
||||
import DevicePopup from '@/views/machine/device/components/devicePopup.vue'
|
||||
import { CirclePlus, Delete, EditPen, Download, Upload } from '@element-plus/icons-vue'
|
||||
import { useDictStore } from '@/stores/modules/dict'
|
||||
import { getPqDevList, deletePqDev, exportPqDev, downloadTemplate, importPqDev } from '@/api/device/device/index.ts'
|
||||
import { getPqDevList, deletePqDev, exportPqDev, downloadTemplate, importPqDev,getPqDev } from '@/api/device/device/index.ts'
|
||||
import { ElMessageBox } from 'element-plus'
|
||||
import { computed, reactive, ref } from 'vue'
|
||||
import { computed, onBeforeMount, onMounted, reactive, ref } from 'vue'
|
||||
import { useModeStore , useAppSceneStore} from '@/stores/modules/mode'; // 引入模式 store
|
||||
import { forEach } from 'lodash'
|
||||
|
||||
const modeStore = useModeStore();
|
||||
const dictStore = useDictStore()
|
||||
@@ -53,6 +54,16 @@ const devicePopup = ref()
|
||||
const ConditionsIsShow = ref(false)
|
||||
|
||||
const boundPqDevList=ref<Device.ReqPqDevParams[]>([])//根据检测计划id查询出所有已绑定的设备
|
||||
// 存储设备类型选项
|
||||
const devTypeOptions = ref<{
|
||||
id: string;
|
||||
name: string ,
|
||||
icd:string ,
|
||||
power:string,
|
||||
devVolt:number,
|
||||
devCurr:number,
|
||||
devChns:number,
|
||||
}[]>([])
|
||||
|
||||
const getTableList = async (params: any) => {
|
||||
let newParams = JSON.parse(JSON.stringify(params))
|
||||
@@ -75,15 +86,17 @@ const columns = reactive<ColumnProps<Device.ResPqDev>[]>([
|
||||
...(appSceneStore.currentScene != '1' ? {
|
||||
search: { el: 'input' },
|
||||
} : {}),
|
||||
|
||||
minWidth: 200,
|
||||
},
|
||||
{
|
||||
prop: 'devType',
|
||||
label: '设备类型',
|
||||
minWidth: 200,
|
||||
enum: dictStore.getDictData('Dev_Type'),
|
||||
fieldNames: { label: 'name', value: 'id' },
|
||||
render: (scope) => {
|
||||
// 查找设备类型名称
|
||||
const name = devTypeOptions.value.find(option => option.id === scope.row.devType);
|
||||
return <span>{name?.name}</span>
|
||||
},
|
||||
},
|
||||
{
|
||||
prop: 'createDate',
|
||||
@@ -194,6 +207,17 @@ const importFile = async () => {
|
||||
deviceImportExcel.value?.acceptParams(params)
|
||||
}
|
||||
|
||||
|
||||
onBeforeMount(async () => {
|
||||
const response = await getPqDev()
|
||||
devTypeOptions.value = response.data.map(item => ({
|
||||
id: item.id,
|
||||
name: item.name,
|
||||
icd: item.icd,
|
||||
power: item.power,
|
||||
devVolt: item.devVolt,
|
||||
devCurr: item.devCurr,
|
||||
devChns: item.devChns
|
||||
}))
|
||||
})
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user