Kaynağa Gözat

页面调整

lipenghui 3 ay önce
ebeveyn
işleme
ff299f47f6

+ 1 - 1
src/views/pms/device/DeviceInfo.vue

@@ -53,7 +53,7 @@
             </el-col>
             <el-col :span="8">
               <el-form-item label="规格型号:" prop="model">
-                {{formData.modelName?formData.modelName:'-'}}
+                {{formData.model?formData.model:'-'}}
               </el-form-item>
             </el-col>
           </el-row>

+ 34 - 19
src/views/pms/device/IotDeviceForm.vue

@@ -26,11 +26,11 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="品牌" prop="brand">
+            <el-form-item label="品牌" prop="brandName">
               <el-select
                 clearable
-                v-model="formData.brand"
-                :model-value="brandLabel"
+                v-model="formData.brandName"
+                @clear="brandClear"
                 placeholder="请输入品牌"
                 @click="openForm"
               />
@@ -90,7 +90,7 @@
           </el-col>
           <el-col :span="8" >
             <div style="display: flex;flex-direction: row">
-              <el-form-item label="规格型号" prop="model" style="width: 85%">
+              <el-form-item label="规格型号" prop="model" style="width: 86%">
                 <el-input
                   clearable
                   v-model="formData.model"
@@ -129,8 +129,9 @@
           <el-col :span="8">
             <el-form-item label="制造商" prop="manufacturerId">
               <el-select
-                v-model="formData.manufacturerId"
-                :model-value="zzLabel"
+                clearable
+                @clear="zzClear"
+                v-model="formData.manufacturerName"
                 placeholder="请输入制造商"
                 @click="openCustomerZz"
               />
@@ -150,9 +151,10 @@
           <el-col :span="8">
             <el-form-item label="供应商" prop="supplierId">
               <el-select
-                v-model="formData.supplierId"
+                clearable
+                @clear="supplierClear"
+                v-model="formData.supplierName"
                 placeholder="请输入供应商"
-                :model-value="supplierLabel"
                 @click="openCustomerSupplier"
               />
             </el-form-item>
@@ -379,6 +381,7 @@ const formData = ref({
   deviceCode: undefined,
   deviceName: undefined,
   brand: undefined,
+  brandName: undefined,
   model: undefined,
   deptId: undefined,
   deviceStatus: undefined,
@@ -386,7 +389,9 @@ const formData = ref({
   picUrl: undefined,
   remark: undefined,
   manufacturerId: undefined,
+  manufacturerName: undefined,
   supplierId: undefined,
+  supplierName: undefined,
   manDate: undefined,
   nameplate: undefined,
   expires: undefined,
@@ -421,7 +426,6 @@ const list = ref([])
 
 const assetclasschange = () => {
   const assetClass = formData.value.assetClass
-  debugger
   DeviceAttrModelApi.getDeviceAttrModelListByDeviceCategoryId(assetClass).then(res => {
     if (res){
       res.forEach((item) => {
@@ -432,7 +436,6 @@ const assetclasschange = () => {
         }
       })
       list.value = res
-      debugger
     } else {
       list.value = []
     }
@@ -441,19 +444,33 @@ const assetclasschange = () => {
 
 const brandChoose = (row) => {
   formData.value.brand = row.id
-  brandLabel.value = row.value
-
+  // brandLabel.value = row.value
+  formData.value.brandName = row.label
+}
+const brandClear = () =>{
+  formData.value.brand = undefined
+  formData.value.brandName = undefined
 }
 const modelChoose = (row) => {
   formData.value.model = row.name
 }
 const customerSupplierChoose = (row) => {
   formData.value.supplierId = row.id
-  supplierLabel.value = row.name
+  formData.value.supplierName = row.name
+  // supplierLabel.value = row.name
+}
+const supplierClear = (row) => {
+  formData.value.supplierId = undefined
+  formData.value.supplierName = undefined
 }
 const customerZzChoose = (row) => {
   formData.value.manufacturerId = row.id
-  zzLabel.value = row.name
+  // zzLabel.value = row.name
+  formData.value.manufacturerName = row.name
+}
+const zzClear = () =>{
+  formData.value.manufacturerId = undefined
+  formData.value.manufacturerName = undefined
 }
 /** 添加/修改操作 */
 const brandFormRef = ref()
@@ -545,10 +562,8 @@ const submitForm = async () => {
         ...item,
         value: formData.value[item.code] // 自定义属性生成逻辑
       }))
-      debugger
       formData.value.templateJson = JSON.stringify(list.value)
     }
-    debugger
     const data = formData.value as unknown as IotDeviceVO
     if (formType.value === 'create') {
       await IotDeviceApi.createIotDevice(data)
@@ -584,9 +599,9 @@ onMounted(async () => {
     try {
       const iotDevice = await IotDeviceApi.getIotDevice(id);
       formData.value = iotDevice
-      brandLabel.value = iotDevice.brandName;
-      zzLabel.value = iotDevice.zzName;
-      supplierLabel.value = iotDevice.supplierName;
+      formData.value.brandName = iotDevice.brandName;
+      formData.value.manufacturerName = iotDevice.zzName;
+      formData.value.supplierName = iotDevice.supplierName;
       list.value = JSON.parse(iotDevice.templateJson);
       list.value.forEach((item) => {
         formData.value[item.code] = item.value;

+ 25 - 16
src/views/pms/failure/IotFailureReportForm.vue

@@ -11,16 +11,18 @@
       <el-col :span="12">
       <el-form-item label="设备" prop="deviceName">
         <el-select
+          :disabled="disabled"
           v-model="formData.deviceName"
-          :model-value="deviceLabel"
           placeholder="请选择设备"
           @click="openForm"
+          clearable
+          @clear="handleClear"
         />
       </el-form-item>
         </el-col>
         <el-col :span="12">
           <el-form-item label="是否解决" prop="ifDeal">
-            <el-select v-model="formData.ifDeal" placeholder="请选择" @change="dealChange" clearable>
+            <el-select v-model="formData.ifDeal" placeholder="请选择" @change="dealChange" clearable :disabled="disabled">
               <el-option
                 v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
                 :key="dict.label"
@@ -31,8 +33,8 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="是否协助" prop="needHelp">
-            <el-select v-model="formData.needHelp" placeholder="请选择" @change="helpChange" clearable>
+          <el-form-item label="是否协助" prop="needHelp" >
+            <el-select v-model="formData.needHelp" placeholder="请选择" @change="helpChange" clearable :disabled="disabled">
               <el-option
                 v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
                 :key="dict.label"
@@ -43,8 +45,9 @@
           </el-form-item>
         </el-col>
       <el-col :span="12">
-      <el-form-item label="故障时间" prop="failureTime">
+      <el-form-item label="故障时间" prop="failureTime" :disabled="disabled">
         <el-date-picker
+          :disabled="disabled"
           style="width: 150%"
           v-model="formData.failureTime"
           type="datetime"
@@ -54,13 +57,13 @@
       </el-form-item>
         </el-col>
       <el-col :span="12">
-      <el-form-item label="故障系统" prop="failureSystem">
-        <el-input v-model="formData.failureSystem" placeholder="请输入故障系统" />
+      <el-form-item label="故障系统" prop="failureSystem" :disabled="disabled">
+        <el-input v-model="formData.failureSystem" placeholder="请输入故障系统" :disabled="disabled" />
       </el-form-item>
         </el-col>
         <el-col :span="12">
           <el-form-item label="是否停机" prop="ifStop">
-            <el-select v-model="formData.ifStop" placeholder="请选择" clearable>
+            <el-select v-model="formData.ifStop" placeholder="请选择" clearable :disabled="disabled">
               <el-option
                 v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
                 :key="dict.label"
@@ -72,27 +75,27 @@
         </el-col>
         <el-col :span="12">
           <el-form-item label="图片" prop="pic">
-            <UploadImg v-model="formData.pic" height="60px" />
+            <UploadImg v-model="formData.pic" height="60px" :disabled="disabled" />
           </el-form-item>
         </el-col>
         <el-col :span="24">
           <el-form-item label="故障影响" prop="failureInfluence">
-            <el-input type="textarea" v-model="formData.failureInfluence" placeholder="请输入故障影响" />
+            <el-input type="textarea" v-model="formData.failureInfluence" placeholder="请输入故障影响" :disabled="disabled" />
           </el-form-item>
         </el-col>
       <el-col :span="24">
       <el-form-item label="解决办法" prop="solution" :rules="formData.ifDeal?solutionRule:[]">
-        <el-input v-model="formData.solution" type="textarea" placeholder="请输入解决办法" />
+        <el-input v-model="formData.solution" type="textarea" placeholder="请输入解决办法" :disabled="disabled" />
       </el-form-item>
         </el-col>
         <el-col :span="24">
           <el-form-item label="故障描述" prop="description">
-            <el-input type="textarea" v-model="formData.description" />
+            <el-input type="textarea" v-model="formData.description" :disabled="disabled" />
           </el-form-item>
         </el-col>
         <el-col :span="24">
       <el-form-item label="备注" prop="remark">
-        <el-input v-model="formData.remark" type="textarea" placeholder="请输入备注" />
+        <el-input v-model="formData.remark" type="textarea" placeholder="请输入备注" :disabled="disabled" />
       </el-form-item>
           </el-col>
       </el-row>
@@ -150,7 +153,12 @@ const deviceChoose = (row) => {
   formData.value.deviceId = row.id
   formData.value.deviceName = row.deviceName
   formData.value.deptId = row.deptId;
-  deviceLabel.value = row.deviceName
+  // deviceLabel.value = row.deviceName
+}
+const handleClear = () =>{
+  formData.value.deviceId = undefined
+  formData.value.deviceName = undefined
+  formData.value.deptId = undefined
 }
 /** 添加/修改操作 */
 const deviceFormRef = ref()
@@ -169,9 +177,10 @@ const solutionRule = [
   { required: true, message: '解决办法不能为空', trigger: 'blur' }
 ];
 const formRef = ref() // 表单 Ref
-
+const disabled = ref(false)
 /** 打开弹窗 */
-const open = async (type: string, id?: number) => {
+const open = async (type: string, id?: number, disable?:boolean) => {
+  disabled.value = disable
   dialogVisible.value = true
   dialogTitle.value = t('action.' + type)
   formType.value = type

+ 26 - 19
src/views/pms/failure/index.vue

@@ -123,7 +123,7 @@
           <el-button
             type="primary"
             plain
-            @click="openForm('create')"
+            @click="openForm('create', undefined, false)"
 
           >
             <Icon icon="ep:plus" class="mr-5px" /> 新增
@@ -167,11 +167,11 @@
             <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.ifDeal" />
           </template>
         </el-table-column>
-        <el-table-column label="需要协助" align="center" prop="needHelp" >
-          <template #default="scope">
-            <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.needHelp" />
-          </template>
-        </el-table-column>
+<!--        <el-table-column label="需要协助" align="center" prop="needHelp" >-->
+<!--          <template #default="scope">-->
+<!--            <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.needHelp" />-->
+<!--          </template>-->
+<!--        </el-table-column>-->
 <!--        <el-table-column label="是否停机" align="center" prop="ifStop" >-->
 <!--          <template #default="scope">-->
 <!--            <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.ifStop" />-->
@@ -194,22 +194,29 @@
         </el-table-column>
   <!--      <el-table-column label="解决办法" align="center" prop="solution" />-->
   <!--      <el-table-column label="备注" align="center" prop="remark" />-->
-<!--        <el-table-column-->
-<!--          label="创建时间"-->
-<!--          align="center"-->
-<!--          prop="createTime"-->
-<!--          :formatter="dateFormatter"-->
-<!--          width="180px"-->
-<!--        />-->
+        <el-table-column
+          label="创建时间"
+          align="center"
+          prop="createTime"
+          :formatter="dateFormatter"
+          width="180px"
+        />
         <el-table-column label="操作" align="center" min-width="120px">
           <template #default="scope">
-
+            <el-button
+              link
+              type="primary"
+              @click="openForm('detail', scope.row.id, true)"
+              v-hasPermi="['rq:iot-failure-report:query']"
+            >
+              查看
+            </el-button>
             <el-button
               link
               v-if="scope.row.auditStatus==='30'"
               type="primary"
-              @click="openForm('update', scope.row.id)"
-              v-hasPermi="['rq:iot-device:update']"
+              @click="openForm('update', scope.row.id, false)"
+              v-hasPermi="['rq:iot-failure-report:update']"
             >
               编辑
             </el-button>
@@ -218,7 +225,7 @@
               v-if="scope.row.auditStatus==='30'"
               type="danger"
               @click="handleDelete(scope.row.id)"
-              v-hasPermi="['rq:iot-device:delete']"
+              v-hasPermi="['rq:iot-failure-report:delete']"
             >
               删除
             </el-button>
@@ -330,8 +337,8 @@ const resetQuery = () => {
 
 /** 添加/修改操作 */
 const formRef = ref()
-const openForm = (type: string, id?: number) => {
-  formRef.value.open(type, id)
+const openForm = (type: string, id?: number,disable?:boolean) => {
+  formRef.value.open(type, id, disable)
 }
 
 /** 删除按钮操作 */

+ 3 - 2
src/views/pms/inspect/route/InspectItemList.vue

@@ -1,5 +1,5 @@
 <template>
-  <Dialog v-model="dialogVisible" title="选择巡检项" style="width: 1300px; min-height: 80%">
+  <Dialog v-model="dialogVisible" title="选择巡检项" style="width: 1300px; min-height: 50%">
     <ContentWrap>
       <el-form
         class="-mb-15px"
@@ -156,10 +156,11 @@ const open = async (classify, id) => {
   queryParams.createTime = undefined
   queryParams.item = undefined
   queryParams.pageNo = 1;
+  queryParams.deviceId = undefined
+  debugger
   if (id) {
     queryParams.deviceId = id
     await getList()
-    debugger
     if (list.value.length === 0) {
       queryParams.deviceId = undefined
       queryParams.deviceClassify = classify

+ 15 - 9
src/views/pms/inspect/route/IotInspectRoute.vue

@@ -30,12 +30,13 @@
               </el-form-item>
             </el-col>
             <el-col :span="8">
-              <el-form-item label="设备" prop="deviceId">
-                <el-select
-                  v-model="formData.deviceId"
-                  :model-value="deviceLabel"
-                  placeholder="请输入设备"
+              <el-form-item label="设备" prop="deviceName">
+                <el-input
+                  v-model="formData.deviceName"
+                  @clear="handleClear"
+                  placeholder="请选择设备"
                   @click="openDevice"
+                  clearable
                 />
               </el-form-item>
             </el-col>
@@ -105,8 +106,6 @@
     </ContentWrap>
     <InspectItemList
       ref="inspectItemFormRef"
-      :classify="formData.deviceClassify"
-      :deviceId="formData.deviceId"
       @choose="inspectItemChoose"
     />
     <DeviceList ref="deviceFormRef" @choose="deviceChoose" />
@@ -156,6 +155,12 @@ const formData = ref({
   deptId: undefined,
   deviceCode: undefined
 })
+const handleClear = () => {
+  formData.value.deviceId = undefined
+  formData.value.deviceName = undefined
+  formData.value.deptId = undefined
+  formData.value.deviceCode = undefined
+}
 // 拖动状态管理
 const dragStart = () => {
   document.body.style.cursor = 'grabbing'
@@ -178,7 +183,7 @@ const deviceChoose = (row) => {
   formData.value.deviceName = row.deviceName
   formData.value.deptId = row.deptId
   formData.value.deviceCode = row.deviceCode
-  deviceLabel.value = row.deviceName
+  //deviceLabel.value = row.deviceName
 }
 const formRules = reactive({
   routeName: [{ required: true, message: '路线名称不能为空', trigger: 'blur' }],
@@ -200,9 +205,10 @@ const inspectItemChoose = (rows) => {
 const inspectItemFormRef = ref()
 const openForm = () => {
   if (formData.value.deviceClassify === undefined) {
-    message.error('请选择设备类别或设备')
+    message.error('请选择设备类别')
     return
   }
+  debugger
   inspectItemFormRef.value.open(formData.value.deviceClassify, formData.value.deviceId)
 }
 const deviceFormRef = ref()