From 997835429a1d66643364091e8437ebbbeb8ff97a Mon Sep 17 00:00:00 2001
From: zenglf <18502938215@163.com>
Date: 星期四, 28 九月 2023 14:09:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into develop

---
 src/views/mdc/base/modules/deviceRepair/DeviceRepairModel.vue |  366 +++++++++++++++++++++++++++++++++++----------------
 1 files changed, 249 insertions(+), 117 deletions(-)

diff --git a/src/views/mdc/base/modules/deviceRepair/DeviceRepairModel.vue b/src/views/mdc/base/modules/deviceRepair/DeviceRepairModel.vue
index bad7281..77685af 100644
--- a/src/views/mdc/base/modules/deviceRepair/DeviceRepairModel.vue
+++ b/src/views/mdc/base/modules/deviceRepair/DeviceRepairModel.vue
@@ -6,16 +6,16 @@
         <a-row :gutter="24">
           <a-col :span="24">
             <!--<a-form-item label="璁惧缂栧彿" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
-              <!--<a-input-search :readOnly="true" v-decorator="['equipmentId', validatorRules.equipmentId]"-->
-                              <!--@search="deviceSearch" enter-button/>-->
-              <!--&lt;!&ndash;<a-input :disabled="disableSubmit" :readOnly="disableSubmit" allow-clear placeholder="璇疯緭鍏ヨ澶囩紪鍙�"&ndash;&gt;-->
-                       <!--&lt;!&ndash;v-decorator="['equipmentId',validatorRules.equipmentId]"/>&ndash;&gt;-->
+            <!--<a-input-search :readOnly="true" v-decorator="['equipmentId', validatorRules.equipmentId]"-->
+            <!--@search="deviceSearch" enter-button/>-->
+            <!--&lt;!&ndash;<a-input :disabled="disableSubmit" :readOnly="disableSubmit" allow-clear placeholder="璇疯緭鍏ヨ澶囩紪鍙�"&ndash;&gt;-->
+            <!--&lt;!&ndash;v-decorator="['equipmentId',validatorRules.equipmentId]"/>&ndash;&gt;-->
             <!--</a-form-item>-->
-          <!--</a-col>-->
-          <!--<a-col :span="12">-->
+            <!--</a-col>-->
+            <!--<a-col :span="12">-->
             <!--<a-form-item label="璁惧鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
-              <!--<a-input :disabled="disableSubmit" :readOnly="readOnly" allow-clear placeholder="璇疯緭鍏ヨ澶囧悕绉�"-->
-                       <!--v-decorator="['equipmentName',validatorRules.equipmentName]"/>-->
+            <!--<a-input :disabled="disableSubmit" :readOnly="readOnly" allow-clear placeholder="璇疯緭鍏ヨ澶囧悕绉�"-->
+            <!--v-decorator="['equipmentName',validatorRules.equipmentName]"/>-->
             <!--</a-form-item>-->
             <a-form-item label="璁惧缁�" :labelCol="labelColLong" :wrapperCol="wrapperColLong">
               <a-input-search :readOnly="true" v-decorator="['equipmentIds', validatorRules.equipmentIds]"
@@ -25,32 +25,58 @@
             </a-form-item>
           </a-col>
         </a-row>
+
+        <a-row :gutter="24">
+          <a-col :span="24">
+            <a-form-item label="缁翠慨绫诲瀷" :labelCol="labelColLong" :wrapperCol="wrapperColLong">
+              <a-radio-group v-decorator="['mdcRepairType', validatorRules.mdcRepairType]">
+                <a-radio :value="1">
+                  缁翠慨
+                </a-radio>
+                <a-radio :value="2">
+                  浼戠彮
+                </a-radio>
+              </a-radio-group>
+            </a-form-item>
+          </a-col>
+        </a-row>
+
         <a-row :gutter="24">
           <a-col :span="12">
             <a-form-item label="寮�濮嬫椂闂�" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <j-date :show-time="{defaultValue:moment('08:00:00','HH:mm:ss')}" date-format="YYYY-MM-DD HH:mm:ss" placeholder="璇烽�夋嫨寮�濮嬫椂闂�"
-                      :disabledDate="disabledDate" class="query-group-cust" v-decorator="['startTime', validatorRules.startTime]"></j-date>
+              <j-date :show-time="{defaultValue:moment('08:00:00','HH:mm:ss'),hideDisabledOptions:true}"
+                      date-format="YYYY-MM-DD HH:mm:ss"
+                      placeholder="璇烽�夋嫨寮�濮嬫椂闂�"
+                      :disabledDate="disabledDate" class="query-group-cust"
+                      v-decorator="['startTime', validatorRules.startTime]" :disabledTime="disabledDateTime"
+                      :showToday="false"></j-date>
             </a-form-item>
           </a-col>
           <a-col :span="12">
             <a-form-item label="缁撴潫鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <j-date :show-time="{defaultValue:moment('08:00:00','HH:mm:ss')}" date-format="YYYY-MM-DD HH:mm:ss" placeholder="璇烽�夋嫨缁撴潫鏃堕棿"
-                      :disabledDate="disabledDate"  class="query-group-cust" v-decorator="['endTime', validatorRules.endTime]"></j-date>
+              <j-date :show-time="{defaultValue:moment('08:00:00','HH:mm:ss'),hideDisabledOptions:true}"
+                      date-format="YYYY-MM-DD HH:mm:ss"
+                      placeholder="璇烽�夋嫨缁撴潫鏃堕棿"
+                      :disabledDate="disabledDate" class="query-group-cust"
+                      v-decorator="['endTime', validatorRules.endTime]" :disabledTime="disabledDateTime"
+                      :showToday="false"></j-date>
             </a-form-item>
           </a-col>
         </a-row>
-        <a-row :gutter="24">
-          <a-col :span="12">
-            <a-form-item v-show="this.mesag == 1" label="缁翠慨绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol">
-              <a-input :disabled="disableSubmit" :readOnly="readOnly" placeholder="璇烽�夋嫨璁惧绫诲瀷"
-                                 :triggerChange="true"
-                                 v-decorator="['mdcRepairType', validatorRules.mdcRepairType]"/>
-            </a-form-item>
-          </a-col>
-        </a-row>
+        <!--<a-row :gutter="24">-->
+        <!--<a-col :span="12">-->
+        <!--<a-form-item v-show="this.mesag == 1" label="缁翠慨绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
+        <!--<a-input :disabled="disableSubmit" :readOnly="readOnly" placeholder="璇烽�夋嫨璁惧绫诲瀷"-->
+        <!--:triggerChange="true"-->
+        <!--v-decorator="['mdcRepairType', validatorRules.mdcRepairType]"/>-->
+        <!--</a-form-item>-->
+        <!--</a-col>-->
+        <!--</a-row>-->
       </a-form>
     </a-spin>
-    <device-repair-list-model ref="deviceRepairListModel" @sendSelectionRows="getDeviceRows"></device-repair-list-model>
+    <device-repair-list-model ref="deviceRepairListModel" @sendSelectionRows="getDeviceRows"
+                              :selectedEquipmentIds="selectedEquipmentIds"
+    ></device-repair-list-model>
 
   </a-modal>
 </template>
@@ -68,22 +94,29 @@
   import {
     duplicateCheck
   } from '@/api/api'
+  import AFormItem from 'ant-design-vue/es/form/FormItem'
+  import Vue from 'vue'
 
   export default {
     name: 'DeviceRepairModel',
-    components: {DeviceRepairListModel,JDate},
-    props: {},
+    components: { AFormItem, DeviceRepairListModel, JDate },
+    props: {
+      equipmentId: {
+        type: String
+      }
+    },
+
     data() {
       return {
-        mesag:21,
-        readOnly:true,
+        mesag: 21,
+        readOnly: true,
         title: '',
         visible: false,
         show: false,
         model: {},
         checked: false,
-        startData:"",
-        endData:"",
+        startData: '',
+        endData: '',
         labelCol: {
           xs: {
             span: 24
@@ -119,30 +152,47 @@
         confirmLoading: false,
         form: this.$form.createForm(this),
         validatorRules: {
-          equipmentId:{
-            rules:[
+          equipmentIds: {
+            rules: [
               {
-                required:true,
-                message: ""
-              },
+                required: true,
+                message: '璇烽�夋嫨璁惧'
+              }
             ],
+            initialValue: ''
           },
-          equipmentName:{
-            rules:[
+          equipmentName: {
+            rules: [
               {
-                required:true,
-                message: ""
-              },
-            ],
+                required: true,
+                message: ''
+              }
+            ]
           },
-          mdcRepairType:{
-            rules:[
+          mdcRepairType: {
+            rules: [
               {
-                required:true,
-                message: ""
-              },
+                required: true,
+                message: ''
+              }
             ],
             initialValue: 1
+          },
+          startTime: {
+            rules: [
+              {
+                required: true,
+                message: '璇烽�夋嫨寮�濮嬫椂闂�'
+              }
+            ]
+          },
+          endTime: {
+            rules: [
+              {
+                required: true,
+                message: '璇烽�夋嫨缁撴潫鏃堕棿'
+              }
+            ]
           }
         },
 
@@ -153,17 +203,32 @@
 
         disableSubmit: true,
         partCategoryCascade: [],
-        cascadeDefaultValue: []
+        cascadeDefaultValue: [],
+        selectedEquipmentIds: ''
       }
+
     },
     created() {
     },
-
+    watch: {
+      // 鐩戞帶璁惧缂栧彿锛屽綋鏀瑰彉鏍戜腑閫夐」鏃跺皢鍊艰祴鍊肩粰鏂板寮圭獥鐨勮澶囩粍閫夐」
+      equipmentId: function(val) {
+        this.validatorRules.equipmentIds.initialValue = val
+      },
+      // 鐩戞帶寮圭獥鏄剧ず锛屽鏋滃叧闂垯娓呯┖宸查�夋嫨鐨勫閫夛紝濡傛灉寮�鍚垯灏嗘爲涓凡閫夋嫨椤硅祴鍊肩粰宸查�夋嫨澶氶��
+      visible: function(val) {
+        if (!val) {
+          this.selectedEquipmentIds = ''
+        } else {
+          this.selectedEquipmentIds = this.validatorRules.equipmentIds.initialValue
+        }
+      }
+    },
     methods: {
-      disabledDate(current){
+      disabledDate(current) {
         //Can not slect days before today and today
         // return current && current < moment().endOf("day");
-        return current < moment().subtract(+1, 'day')//浠婂ぉ涔嬪墠鐨勫勾鏈堟棩涓嶅彲閫夛紝涓嶅寘鎷粖澶�
+        return current < moment().subtract(+2, 'day').endOf('day')//鍓嶄竴澶╀箣鍓嶇殑骞存湀鏃ヤ笉鍙�夛紝涓嶅寘鎷墠涓�澶�
       },
       moment,
       // onChange(dates) {
@@ -175,31 +240,42 @@
       //   // this.endData = dateStrings[1];
       //   // console.log(this.startData,this.endData);
       // },
-      onChangeEnd(dates, dateStrings){
-        this.endTime = dateStrings[0];
+      onChangeEnd(dates, dateStrings) {
+        this.endTime = dateStrings[0]
       },
       getDeviceRows(val) {
-        var equipmentIds;
-        for(var i = 0;i<val.length;i++){
+        // var equipmentIds
+        // for (var i = 0; i < val.length; i++) {
+        //   if (i == 0) {
+        //     equipmentIds = val[i].equipmentId
+        //   } else {
+        //     equipmentIds = equipmentIds + ',' + val[i].equipmentId
+        //   }
+        // }
+        // // console.log("========",equipmentIds);
+        // this.form.setFieldsValue({
+        //   equipmentIds: equipmentIds
+        // })
+        for (var i = 0; i < val.length; i++) {
           if (i == 0) {
-            equipmentIds =  val[i].equipmentId;
+            this.selectedEquipmentIds = val[i].equipmentId
           } else {
-            equipmentIds = equipmentIds + "," + val[i].equipmentId;
+            this.selectedEquipmentIds = this.selectedEquipmentIds + ',' + val[i].equipmentId
           }
         }
         // console.log("========",equipmentIds);
         this.form.setFieldsValue({
-          equipmentIds: equipmentIds,
+          equipmentIds: this.selectedEquipmentIds
         })
-      //   this.form.setFieldsValue({
-      // equipmentId: val.equipmentId,
-      // equipmentName: val.equipmentName,
-      // equipmentModel: val.equipmentModel,
-      // equipmentIp: val.equipmentIp,
-      // dataPort: val.dataPort,
-      // driveType: val.driveType
-    // })
-  },
+        //   this.form.setFieldsValue({
+        // equipmentId: val.equipmentId,
+        // equipmentName: val.equipmentName,
+        // equipmentModel: val.equipmentModel,
+        // equipmentIp: val.equipmentIp,
+        // dataPort: val.dataPort,
+        // driveType: val.driveType
+        // })
+      },
       deviceSearch() {
         this.$refs.deviceRepairListModel.openPage()
         this.$refs.deviceRepairListModel.title = '閫夋嫨璁惧'
@@ -236,8 +312,8 @@
         this.model = Object.assign({}, record)
         this.visible = true
         this.$nextTick(() => {
-          this.form.setFieldsValue(pick(this.model, 'equipmentIds', 'equipmentName', 'mdcRepairType', 'startTime', 'endTime',
-           ))
+          this.form.setFieldsValue(pick(this.model, 'equipmentIds', 'equipmentName', 'mdcRepairType', 'startTime', 'endTime'
+          ))
         })
       },
       close() {
@@ -252,62 +328,100 @@
           if (!err) {
             that.confirmLoading = true
             let formData = Object.assign(this.model, values)
-            let start = moment(formData.startTime).format('YYYY-MM-DD HH:mm:ss');
-            let end = moment(formData.endTime).format('YYYY-MM-DD HH:mm:ss');
-            let startOne = start.replace(/:/g,'');
-            let endOne = end.replace(/:/g,'');
-            var data = new Date();
-            let stertDate = moment(data).format("YYYY-MM-DD HH:mm:ss");
-            let dataStart = stertDate.replace(/:/g,'');
-            if(startOne < dataStart){
-              // that.$message.warning("寮�濮嬫椂闂翠笉鑳藉皬浜庡綋鍓嶆椂闂�")
+            let start = moment(formData.startTime).format('YYYY-MM-DD HH:mm:ss')
+            let end = moment(formData.endTime).format('YYYY-MM-DD HH:mm:ss')
+            let startOne = start.replace(/:/g, '')
+            let endOne = end.replace(/:/g, '')
+            var data = new Date()
+            let stertDate = moment(data).format('YYYY-MM-DD HH:mm:ss')
+            let dataStart = stertDate.replace(/:/g, '')
+            // if (startOne < dataStart) {
+            //   // that.$message.warning("寮�濮嬫椂闂翠笉鑳藉皬浜庡綋鍓嶆椂闂�")
+            //   that.$notification.warning({
+            //     message: '娑堟伅',
+            //     description: '寮�濮嬫椂闂翠笉鑳藉皬浜庡綋鍓嶆椂闂�'
+            //   })
+            //   that.confirmLoading = false
+            // } else {
+            //   if (startOne >= endOne) {
+            //     // that.$message.warning("缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�");
+            //     that.$notification.warning({
+            //       message: '娑堟伅',
+            //       description: '缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�'
+            //     })
+            //     // console.log(this.model)
+            //     // this.endTime = ''
+            //     that.confirmLoading = false
+            //   } else {
+            //     let obj
+            //     if (!this.model.id) {
+            //       obj = postAction(this.url.add, formData)
+            //     } else {
+            //       obj = requestPut(this.url.edit, formData, {
+            //         id: this.model.id
+            //       })
+            //     }
+            //     obj.then((res) => {
+            //       if (res.success) {
+            //         // that.$message.success("娣诲姞鎴愬姛")
+            //         that.$notification.success({
+            //           message: '娑堟伅',
+            //           description: '娣诲姞鎴愬姛'
+            //         })
+            //         // that.$message.success(res.message)
+            //         that.$emit('ok', res.result)
+            //       } else {
+            //         // that.$message.warning(res.message)
+            //         that.$notification.warning({
+            //           message: '娑堟伅',
+            //           description: res.message
+            //         })
+            //       }
+            //     }).finally(() => {
+            //       that.confirmLoading = false
+            //       that.close()
+            //     })
+            //   }
+            // }
+            if (startOne >= endOne) {
+              // that.$message.warning("缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�");
               that.$notification.warning({
-                message:'娑堟伅',
-                description:"寮�濮嬫椂闂翠笉鑳藉皬浜庡綋鍓嶆椂闂�"
-              });
+                message: '娑堟伅',
+                description: '缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�'
+              })
+              // console.log(this.model)
+              // this.endTime = ''
               that.confirmLoading = false
-            }else{
-              if(startOne>=endOne){
-                // that.$message.warning("缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�");
-                that.$notification.warning({
-                  message:'娑堟伅',
-                  description:"缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�"
-                });
-                // console.log(this.model)
-                // this.endTime = ''
-                that.confirmLoading = false
-              }else{
-                let obj
-                if (!this.model.id) {
-                  obj = postAction(this.url.add, formData)
-                } else {
-                  obj = requestPut(this.url.edit, formData, {
-                    id: this.model.id
-                  })
-                }
-                obj.then((res) => {
-                  if (res.success) {
-                    // that.$message.success("娣诲姞鎴愬姛")
-                    that.$notification.warning({
-                      message:'娑堟伅',
-                      description:"娣诲姞鎴愬姛"
-                    });
-                    // that.$message.success(res.message)
-                    that.$emit('ok', res.result)
-                  } else {
-                    // that.$message.warning(res.message)
-                    that.$notification.warning({
-                      message:'娑堟伅',
-                      description:res.message
-                    });
-                  }
-                }).finally(() => {
-                  that.confirmLoading = false
-                  that.close()
+            } else {
+              let obj
+              if (!this.model.id) {
+                obj = postAction(this.url.add, formData)
+              } else {
+                obj = requestPut(this.url.edit, formData, {
+                  id: this.model.id
                 })
               }
+              obj.then((res) => {
+                if (res.success) {
+                  // that.$message.success("娣诲姞鎴愬姛")
+                  that.$notification.success({
+                    message: '娑堟伅',
+                    description: '娣诲姞鎴愬姛'
+                  })
+                  // that.$message.success(res.message)
+                  that.$emit('ok', res.result)
+                } else {
+                  // that.$message.warning(res.message)
+                  that.$notification.warning({
+                    message: '娑堟伅',
+                    description: res.message
+                  })
+                }
+              }).finally(() => {
+                that.confirmLoading = false
+                that.close()
+              })
             }
-
           }
         })
       },
@@ -347,6 +461,22 @@
       },
       checkboxChange(e) {
         this.checked = e.target.checked
+      },
+      range(start, end) {
+        const result = []
+        for (let i = start; i < end; i++) {
+          result.push(i)
+        }
+        return result
+      },
+      /**
+       * 绂佺敤鏃ユ湡閫夋嫨鍣ㄤ腑鐨勬椂闂撮�夋嫨
+       * @returns {{disabledSeconds: (function(): number[])}} 杩斿洖鍊间负涓�涓璞★紝鍙互绂佹灏忔椂銆佸垎閽熴�佺锛岀洰鍓嶄粎绂佹鎵�鏈夌鏁�,鏈�浣庝粠1寮�濮嬶紝浠�0寮�濮嬬‘瀹氭寜閽皢琚鐢�
+       */
+      disabledDateTime() {
+        return {
+          disabledSeconds: () => this.range(1, 60)
+        }
       }
     }
   }
@@ -371,4 +501,6 @@
   .ant-tabs-content .ant-form-item {
     margin-bottom: 0px;
   }
+
+
 </style>

--
Gitblit v1.9.3