From ba77fdc6a30c9ad0941e40319f8c4f6fe6fdf9f1 Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期四, 07 八月 2025 10:30:42 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/mdc/base/modules/deviceRepair/DeviceRepairModelEdit.vue |  485 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 485 insertions(+), 0 deletions(-)

diff --git a/src/views/mdc/base/modules/deviceRepair/DeviceRepairModelEdit.vue b/src/views/mdc/base/modules/deviceRepair/DeviceRepairModelEdit.vue
new file mode 100644
index 0000000..adac88d
--- /dev/null
+++ b/src/views/mdc/base/modules/deviceRepair/DeviceRepairModelEdit.vue
@@ -0,0 +1,485 @@
+<template>
+  <a-modal :title="title" :width="800" :visible="visible" :confirmLoading="confirmLoading"
+           :okButtonProps="{ props: {disabled: disableSubmit} }" @ok="handleOk" @cancel="handleCancel" cancelText="鍏抽棴">
+    <a-spin :spinning="confirmLoading">
+      <a-form :form="form">
+        <a-row :gutter="24">
+          <a-col :span="12">
+            <a-form-item label="寮�濮嬫椂闂�" :labelCol="labelCol" :wrapperCol="wrapperCol">
+              <j-date :show-time="{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">
+              <a-input :disabled="disableSubmit" :readOnly="readOnly" allow-clear placeholder="璇疯緭鍏ヨ澶囧悕绉�"
+                       v-decorator="['equipmentName',validatorRules.equipmentName]"/>
+            </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="{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-col :span="12">
+
+            <a-form-item label="璁惧缂栧彿" :labelCol="labelCol" :wrapperCol="wrapperCol">
+              <a-input :disabled="disableSubmit" :readOnly="readOnly" allow-clear placeholder="璇疯緭鍏ヨ澶囩紪鍙�"
+                       v-decorator="['equipmentId',validatorRules.equipmentId]"/>
+            </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-edit-list-model ref="deviceRepairListModel"
+                                   @sendSelectionRows="getDeviceRows"></device-repair-edit-list-model>
+  </a-modal>
+</template>
+
+<script>
+  import moment from 'moment'
+  import pick from 'lodash.pick'
+  import DeviceRepairListModel from './DeviceRepairListModel'
+  import DeviceRepairEditListModel from './DeviceRepairEditListModel'
+  import JDate from './JDate'
+  import {
+    getAction,
+    postAction,
+    requestPut
+  } from '@/api/manage'
+  import {
+    duplicateCheck
+  } from '@/api/api'
+
+  export default {
+    name: 'DeviceRepairModelEdit',
+    components: { DeviceRepairListModel, JDate, DeviceRepairEditListModel },
+    props: {},
+    data() {
+      return {
+        readOnly: true,
+        title: '',
+        visible: false,
+        show: false,
+        model: {},
+        checked: false,
+        startData: '',
+        endData: '',
+        labelCol: {
+          xs: {
+            span: 24
+          },
+          sm: {
+            span: 6
+          }
+        },
+        wrapperCol: {
+          xs: {
+            span: 24
+          },
+          sm: {
+            span: 18
+          }
+        },
+        labelColLong: {
+          xs: {
+            span: 24
+          },
+          sm: {
+            span: 3
+          }
+        },
+        wrapperColLong: {
+          xs: {
+            span: 24
+          },
+          sm: {
+            span: 21
+          }
+        },
+        confirmLoading: false,
+        form: this.$form.createForm(this),
+        validatorRules: {
+          equipmentId: {
+            rules: [
+              {
+                required: true,
+                message: ''
+              }
+            ]
+          },
+          equipmentName: {
+            rules: [
+              {
+                required: true,
+                message: ''
+              }
+            ]
+          },
+          startTime: {
+            rules: [
+              {
+                required: true,
+                message: '璇烽�夋嫨寮�濮嬫椂闂�'
+              }
+            ]
+          },
+          endTime: {
+            rules: [
+              {
+                required: true,
+                message: '璇烽�夋嫨缁撴潫鏃堕棿'
+              }
+            ]
+          }
+          // mdcRepairType:{
+          //   rules:[
+          //     {
+          //       required:true,
+          //       message: ""
+          //     },
+          //   ],
+          //   initialValue: '浼戠彮'
+          // }
+        },
+
+        url: {
+          add: '/mdc/mdcEquipmentRepair/add',
+          edit: '/mdc/mdcEquipmentRepair/edit'
+        },
+
+        disableSubmit: true,
+        partCategoryCascade: [],
+        cascadeDefaultValue: [],
+        editStart: ''
+      }
+    },
+    created() {
+    },
+
+    methods: {
+      disabledDate(current) {
+        //Can not slect days before today and today
+        // return current && current < moment().endOf("day");
+        return current < moment().subtract(+2, 'day').endOf('day')//鍓嶄竴澶╀箣鍓嶇殑骞存湀鏃ヤ笉鍙�夛紝涓嶅寘鎷墠涓�澶�
+      },
+      moment,
+      // onChange(dates) {
+      //   console.log(111)
+      //   console.log(dates,dateStrings)
+      //   // console.log('From: ', dates[0], ', to: ', dates[1]);
+      //   // console.log('From: ', dateStrings[0], ', to: ', dateStrings[1]);
+      //   // this.startTime = dateStrings[0];
+      //   // this.endData = dateStrings[1];
+      //   // console.log(this.startData,this.endData);
+      // },
+      onChangeEnd(dates, dateStrings) {
+        this.endTime = dateStrings[0]
+      },
+      getDeviceRows(val) {
+        this.form.setFieldsValue({
+          equipmentId: val.equipmentId,
+          equipmentName: val.equipmentName
+          //   // equipmentModel: val.equipmentModel,
+          //   // equipmentIp: val.equipmentIp,
+          //   // dataPort: val.dataPort,
+          //   // driveType: val.driveType
+        })
+        // 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({
+        //   equipmentId: equipmentIds,
+        // })
+      },
+      deviceSearch() {
+        this.$refs.deviceRepairListModel.openPage()
+        this.$refs.deviceRepairListModel.title = '閫夋嫨璁惧'
+        this.$refs.deviceRepairListModel.disableSubmit = false
+      },
+      //绾ц仈妗唎nChange浜嬩欢
+      // onChange(value) {
+      //
+      // },
+      getParentIdsById(id) {
+        let that = this
+        getAction(this.url.getParentIdsById, {
+          id: id
+        }).then((res) => {
+          if (res.success) {
+            that.form.setFieldsValue({
+              partCategoryId: res.result
+            })
+          }
+        })
+      },
+      add(node) {
+        let _this = this
+        this.visible = true
+        this.form.resetFields()
+        this.model = {}
+        this.$nextTick(() => {
+          // _this.form.setFieldsValue({ 'tierType': node.entity.tierType + 1, 'parentName': node.title })
+          // _this.model.parentId = node.key
+        })
+      },
+      edit(record) {
+        this.form.resetFields()
+        this.model = Object.assign({}, record)
+        this.editStart = (this.model.startTime).replace(/:/g, '')
+        this.visible = true
+        this.$nextTick(() => {
+          this.form.setFieldsValue(pick(this.model, 'tierType', 'parentName', 'equipmentId', 'equipmentName', 'startTime', 'endTime'
+          ))
+        })
+      },
+      close() {
+        this.$emit('close')
+        this.visible = false
+        this.show = false
+      },
+      handleOk() {
+        const that = this
+        // 瑙﹀彂琛ㄥ崟楠岃瘉
+        this.form.validateFields((err, values) => {
+          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 (this.editStart != startOne) {
+            //   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
+            //         })
+            //         let shijian = startOne
+            //       }
+            //       obj.then((res) => {
+            //         if (res.success) {
+            //           // that.$message.success("淇敼鎴愬姛")
+            //           // that.$message.success(res.message)
+            //           that.$notification.success({
+            //             message: '娑堟伅',
+            //             description: 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 {
+            //   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
+            //       })
+            //       let shijian = startOne
+            //     }
+            //     obj.then((res) => {
+            //       if (res.success) {
+            //         // that.$message.success("淇敼鎴愬姛")
+            //         // that.$message.success(res.message)
+            //         that.$notification.success({
+            //           message: '娑堟伅',
+            //           description: 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: '缁撴潫鏃堕棿涓嶈兘灏忎簬寮�濮嬫椂闂�'
+              })
+              // 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()
+              })
+            }
+          }
+        })
+      },
+      handleCancel() {
+        this.close()
+      },
+      loadCascade() {
+        getAction(this.url.loadCascadeData).then((res) => {
+          if (res.success) {
+            this.partCategoryCascade = res.result
+          }
+        })
+      },
+      onCascadeChange(value, selectedOptions) {
+        this.cascadeDefaultValue = [...value]
+      },
+      filter(inputValue, path) {
+        return path.some(option => option.label.toLowerCase().indexOf(inputValue.toLowerCase()) > -1)
+      },
+      //楠岃瘉 缂栫爜
+      validateNum(rule, value, callback) {
+        var params = {
+          tableName: 'lxmes_base_part',
+          fieldName: 'num',
+          fieldVal: value,
+          dataId: this.model.id,
+          //鏁版嵁搴撲腑瀛樺湪瀛楁del_flag骞朵娇鐢ㄨ瀛楁浣滀负鏈垹闄ょ瓥鐣ワ紝鐪熷垹闄わ細false 鍋囧垹闄わ細true
+          delFlag: 'true'
+        }
+        duplicateCheck(params).then((res) => {
+          if (res.success) {
+            callback()
+          } else {
+            callback('瀛樿揣缂栫爜宸插瓨鍦�!')
+          }
+        })
+      },
+      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)
+        }
+      }
+    }
+  }
+</script>
+
+<style scoped>
+  .ant-btn {
+    padding: 0 10px;
+    margin-left: 3px;
+  }
+
+  .ant-form-item-control {
+    line-height: 0px;
+  }
+
+  /** 涓昏〃鍗曡闂磋窛 */
+  .ant-form .ant-form-item {
+    margin-bottom: 10px;
+  }
+
+  /** Tab椤甸潰琛岄棿璺� */
+  .ant-tabs-content .ant-form-item {
+    margin-bottom: 0px;
+  }
+</style>

--
Gitblit v1.9.3