From 67000bf11ea45f2f29177e203e91d42f524faa59 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期一, 31 三月 2025 16:33:48 +0800
Subject: [PATCH] art: 设备管理-保养标准-编辑功能

---
 src/views/eam/base/modules/EamMaintenanceStandardModal.vue |   46 +++++++++++++++++++++++++++++++++-------------
 1 files changed, 33 insertions(+), 13 deletions(-)

diff --git a/src/views/eam/base/modules/EamMaintenanceStandardModal.vue b/src/views/eam/base/modules/EamMaintenanceStandardModal.vue
index 45e4c74..ce008f1 100644
--- a/src/views/eam/base/modules/EamMaintenanceStandardModal.vue
+++ b/src/views/eam/base/modules/EamMaintenanceStandardModal.vue
@@ -24,7 +24,7 @@
           </a-col>
           <a-col :span="8">
             <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="maintenanceCategory" label="淇濆吇鍒嗙被">
-              <j-dict-select-tag dict-code="maintenance_category" placeholder="璇烽�夋嫨淇濆吇鍒嗙被" v-model="model.maintenanceCategory" />
+              <j-dict-select-tag dict-code="maintenance_category" placeholder="璇烽�夋嫨淇濆吇鍒嗙被" v-model="model.maintenanceCategory" :disabled="editable" />
             </a-form-model-item>
           </a-col>
         </a-row>
@@ -36,7 +36,7 @@
           </a-col>
           <a-col :span="8">
             <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="initialDate" label="鍒濆鏃ユ湡">
-              <a-date-picker placeholder="璇烽�夋嫨鍒濆鏃ユ湡" v-model="model.initialDate" format="yyyy-MM-dd" style="width: 100%"/>
+              <a-date-picker placeholder="璇烽�夋嫨鍒濆鏃ユ湡" v-model="model.initialDate" format="YYYY-MM-DD" style="width: 100%" :disabled="editable"/>
             </a-form-model-item>
           </a-col>
           <a-col :span="8">
@@ -48,7 +48,7 @@
         <a-row :gutter="24">
           <a-col :span="8">
             <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧缂栧彿">
-              <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="model.equipmentId"></lx-search-equipment-select>
+              <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="model.equipmentId" :disabled="editable"></lx-search-equipment-select>
             </a-form-model-item>
           </a-col>
           <a-col :span="8">
@@ -70,7 +70,7 @@
               :wrapperCol="wrapperCol"
               prop="fileList">
               <lx-upload :returnUrl="false"
-                         :isMultiple="false"
+                         :multiple="false"
                          v-model="model.fileList"
                          biz="EamMaintenanceStandard">
               </lx-upload>
@@ -99,7 +99,7 @@
 </template>
 
 <script>
-  import { httpAction } from '@/api/manage'
+import { getAction, httpAction } from '@/api/manage'
   import { JVxeTableModelMixin } from '@/mixins/JVxeTableModelMixin.js'
   import { JVXETypes } from '@/components/jeecg/JVxeTable'
   import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect'
@@ -115,6 +115,7 @@
         title:"鎿嶄綔",
         visible: false,
         model: {},
+        editable: false,
         labelCol: {
           xs: { span: 24 },
           sm: { span: 5 },
@@ -123,7 +124,6 @@
           xs: { span: 24 },
           sm: { span: 16 },
         },
-
         confirmLoading: false,
         validatorRules: {
           standardName: [
@@ -145,6 +145,7 @@
         url: {
           add: "/eam/maintenanceStandard/add",
           edit: "/eam/maintenanceStandard/edit",
+          detail: "/eam/eamMaintenanceStandardDetail/queryList",
         },
         detail: {
           loading: false,
@@ -177,7 +178,7 @@
               width: '20%',
               align:"center",
               validateRules: [
-                {required : true}
+                {required : true, message: '淇濆吇椤逛笉鑳戒负绌猴紒'}
               ]
             },
             {
@@ -194,7 +195,7 @@
               width: '30%',
               align:"center",
               validateRules: [
-                {required : true}
+                {required : true, message: "淇濆吇瑕佹眰涓嶈兘涓虹┖锛�"}
               ]
             },
           ],
@@ -211,12 +212,21 @@
     },
     methods: {
       add () {
-        //鍒濆鍖栭粯璁ゅ��
-        this.edit({});
+        this.model = {};
+        this.visible = true;
+        this.editable = false;
       },
       edit (record) {
         this.model = Object.assign({}, record);
         this.visible = true;
+        this.editable = true;
+        if(record && record.referenceFile) {
+          let obj = JSON.parse(record.referenceFile);
+          this.model.fileList = [obj];
+        }else {
+          this.model.fieldList = [];
+        }
+        this.loadDetail(record.id);
       },
       close () {
         this.$emit('close');
@@ -233,10 +243,10 @@
         // 瑙﹀彂琛ㄥ崟楠岃瘉
          this.$refs.form.validate(valid => {
           if (valid) {
-            debugger;
             let tableData = that.$refs.editableDetailTable.getTableData();
-            let newData = that.$refs.editableDetailTable.getNewData();
             let removeData = that.$refs.editableDetailTable.getDeleteData();
+            that.model.tableDetailList = [...tableData];
+            that.model.removeDetailList = [...removeData];
 
             that.confirmLoading = true;
             let httpurl = '';
@@ -267,7 +277,17 @@
       handleCancel () {
         this.close()
       },
-
+      //鍔犺浇璇︽儏鏁版嵁
+      loadDetail(standardId) {
+        this.detail.dataSource = [];
+        if (standardId) {
+          getAction(this.url.detail, { standardId: standardId }).then(res => {
+            if (res.success) {
+              this.detail.dataSource = [...res.result];
+            }
+          })
+        }
+      }
 
     }
   }

--
Gitblit v1.9.3