From 05170ec3d816960d4f8a38ec8d202cefe73b4179 Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期二, 17 十月 2023 17:40:17 +0800
Subject: [PATCH] 保养问题项处理

---
 src/views/system/modules/DepartList/DepartModal.vue |  429 ++++++++++++++++++++++++++++++-----------------------
 1 files changed, 240 insertions(+), 189 deletions(-)

diff --git a/src/views/system/modules/DepartList/DepartModal.vue b/src/views/system/modules/DepartList/DepartModal.vue
index 697ec7c..67a1d0e 100644
--- a/src/views/system/modules/DepartList/DepartModal.vue
+++ b/src/views/system/modules/DepartList/DepartModal.vue
@@ -8,81 +8,131 @@
     :okButtonProps="{ props: {disabled: disableSubmit} }"
     @ok="handleOk"
     @cancel="handleCancel"
-    cancelText="鍏抽棴">
+    cancelText="鍏抽棴"
+  >
 
     <a-spin :spinning="confirmLoading">
-      <a-form-model ref="form" :model="model" :rules="validatorRules">
+      <a-form-model
+        ref="form"
+        :model="model"
+        :rules="validatorRules"
+      >
         <a-form-model-item
           :labelCol="labelCol"
           :wrapperCol="wrapperCol"
           label="鏈烘瀯鍚嶇О"
           prop="departName"
           :hidden="false"
-          hasFeedback >
-          <a-input id="departName" placeholder="璇疯緭鍏ユ満鏋�/閮ㄩ棬鍚嶇О" v-model="model.departName"/>
-        </a-form-model-item>
-        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" :hidden="seen" label="涓婄骇閮ㄩ棬" hasFeedback>
-        <a-tree-select
-          style="width:100%"
-          :dropdownStyle="{maxHeight:'200px',overflow:'auto'}"
-          :treeData="departTree"
-          v-model="model.parentId"
-          placeholder="璇烽�夋嫨涓婄骇閮ㄩ棬"
-          :disabled="condition">
-        </a-tree-select>
-        </a-form-model-item>
-        <!--<a-form-model-item-->
-          <!--:labelCol="labelCol"-->
-          <!--:wrapperCol="wrapperCol"-->
-          <!--label="鏈烘瀯绫诲瀷">-->
-         <!--<template v-if="seen">-->
-            <!--<a-radio-group v-model="model.orgCategory" placeholder="璇烽�夋嫨鏈烘瀯绫诲瀷">-->
-              <!--<a-radio value="1">-->
-                <!--鍏徃-->
-              <!--</a-radio>-->
-            <!--</a-radio-group>-->
-          <!--</template>-->
-          <!--<template v-else>-->
-            <!--<a-radio-group v-model="model.orgCategory" placeholder="璇烽�夋嫨鏈烘瀯绫诲瀷">-->
-              <!--<a-radio value="2">-->
-                <!--閮ㄩ棬-->
-              <!--</a-radio>-->
-              <!--<a-radio value="3">-->
-                <!--宀椾綅-->
-              <!--</a-radio>-->
-            <!--</a-radio-group>-->
-       <!--</template>-->
-        <!--</a-form-model-item>-->
-        <!--<a-form-model-item-->
-          <!--:labelCol="labelCol"-->
-          <!--:wrapperCol="wrapperCol"-->
-          <!--prop="mobile"-->
-          <!--label="鐢佃瘽">-->
-          <!--<a-input placeholder="璇疯緭鍏ョ數璇�" v-model="model.mobile"/>-->
-        <!--</a-form-model-item>-->
-        <!--<a-form-model-item-->
-          <!--:labelCol="labelCol"-->
-          <!--:wrapperCol="wrapperCol"-->
-          <!--label="浼犵湡">-->
-          <!--<a-input placeholder="璇疯緭鍏ヤ紶鐪�" v-model="model.fax"/>-->
-        <!--</a-form-model-item>-->
-        <!--<a-form-model-item-->
-          <!--:labelCol="labelCol"-->
-          <!--:wrapperCol="wrapperCol"-->
-          <!--label="鍦板潃">-->
-          <!--<a-input placeholder="璇疯緭鍏ュ湴鍧�" v-model="model.address"/>-->
-        <!--</a-form-model-item>-->
-        <a-form-model-item
-          :labelCol="labelCol"
-          :wrapperCol="wrapperCol"
-          label="鎺掑簭">
-          <a-input-number v-model="model.departOrder"/>
+          hasFeedback
+        >
+          <a-input
+            id="departName"
+            placeholder="璇疯緭鍏ユ満鏋�/閮ㄩ棬鍚嶇О"
+            v-model="model.departName"
+          />
         </a-form-model-item>
         <a-form-model-item
           :labelCol="labelCol"
           :wrapperCol="wrapperCol"
-          label="澶囨敞">
-          <a-textarea placeholder="璇疯緭鍏ュ娉�" v-model="model.memo"/>
+          label="浣跨敤閮ㄩ棬缂栫爜"
+          prop="useDepartNum"
+          :hidden="false"
+          hasFeedback
+        >
+          <a-input
+            id="useDepartNum"
+            placeholder="璇疯緭鍏ヤ娇鐢ㄩ儴闂ㄧ紪鐮�"
+            v-model="model.useDepartNum"
+          />
+        </a-form-model-item>
+        <a-form-model-item
+          :labelCol="labelCol"
+          :wrapperCol="wrapperCol"
+          label="缁翠慨閮ㄩ棬缂栫爜"
+          prop="repairDepartNum"
+          :hidden="false"
+          hasFeedback
+        >
+          <a-input
+            id="repairDepartNum"
+            placeholder="璇疯緭鍏ョ淮淇儴闂ㄧ紪鐮�"
+            v-model="model.repairDepartNum"
+          />
+        </a-form-model-item>
+        <a-form-model-item
+          :labelCol="labelCol"
+          :wrapperCol="wrapperCol"
+          :hidden="seen"
+          label="涓婄骇閮ㄩ棬"
+          hasFeedback
+        >
+          <a-tree-select
+            style="width:100%"
+            :dropdownStyle="{maxHeight:'200px',overflow:'auto'}"
+            :treeData="departTree"
+            v-model="model.parentId"
+            placeholder="璇烽�夋嫨涓婄骇閮ㄩ棬"
+            :disabled="condition"
+          >
+          </a-tree-select>
+        </a-form-model-item>
+        <!--<a-form-model-item-->
+        <!--:labelCol="labelCol"-->
+        <!--:wrapperCol="wrapperCol"-->
+        <!--label="鏈烘瀯绫诲瀷">-->
+        <!--<template v-if="seen">-->
+        <!--<a-radio-group v-model="model.orgCategory" placeholder="璇烽�夋嫨鏈烘瀯绫诲瀷">-->
+        <!--<a-radio value="1">-->
+        <!--鍏徃-->
+        <!--</a-radio>-->
+        <!--</a-radio-group>-->
+        <!--</template>-->
+        <!--<template v-else>-->
+        <!--<a-radio-group v-model="model.orgCategory" placeholder="璇烽�夋嫨鏈烘瀯绫诲瀷">-->
+        <!--<a-radio value="2">-->
+        <!--閮ㄩ棬-->
+        <!--</a-radio>-->
+        <!--<a-radio value="3">-->
+        <!--宀椾綅-->
+        <!--</a-radio>-->
+        <!--</a-radio-group>-->
+        <!--</template>-->
+        <!--</a-form-model-item>-->
+        <!--<a-form-model-item-->
+        <!--:labelCol="labelCol"-->
+        <!--:wrapperCol="wrapperCol"-->
+        <!--prop="mobile"-->
+        <!--label="鐢佃瘽">-->
+        <!--<a-input placeholder="璇疯緭鍏ョ數璇�" v-model="model.mobile"/>-->
+        <!--</a-form-model-item>-->
+        <!--<a-form-model-item-->
+        <!--:labelCol="labelCol"-->
+        <!--:wrapperCol="wrapperCol"-->
+        <!--label="浼犵湡">-->
+        <!--<a-input placeholder="璇疯緭鍏ヤ紶鐪�" v-model="model.fax"/>-->
+        <!--</a-form-model-item>-->
+        <!--<a-form-model-item-->
+        <!--:labelCol="labelCol"-->
+        <!--:wrapperCol="wrapperCol"-->
+        <!--label="鍦板潃">-->
+        <!--<a-input placeholder="璇疯緭鍏ュ湴鍧�" v-model="model.address"/>-->
+        <!--</a-form-model-item>-->
+        <a-form-model-item
+          :labelCol="labelCol"
+          :wrapperCol="wrapperCol"
+          label="鎺掑簭"
+        >
+          <a-input-number v-model="model.departOrder" />
+        </a-form-model-item>
+        <a-form-model-item
+          :labelCol="labelCol"
+          :wrapperCol="wrapperCol"
+          label="澶囨敞"
+        >
+          <a-textarea
+            placeholder="璇疯緭鍏ュ娉�"
+            v-model="model.memo"
+          />
         </a-form-model-item>
 
       </a-form-model>
@@ -91,143 +141,144 @@
 </template>
 
 <script>
-  import { httpAction } from '@/api/manage'
-  import { queryIdTree } from '@/api/api'
-  import pick from 'lodash.pick'
-  import ATextarea from 'ant-design-vue/es/input/TextArea'
-  export default {
-    name: "SysDepartModal",
-    components: { ATextarea },
-    data () {
-      return {
-        departTree:[],
-        orgTypeData:[],
-        phoneWarning:'',
-        departName:"",
-        title:"鎿嶄綔",
-        seen:false,
-        visible: false,
-        condition:true,
-        disableSubmit:false,
-        model: {},
-        defaultModel:{
-          departOrder:0,
-          orgCategory:'1'
-        },
-        menuhidden:false,
-        menuusing:true,
-        labelCol: {
-          xs: { span: 24 },
-          sm: { span: 5 },
-        },
-        wrapperCol: {
-          xs: { span: 24 },
-          sm: { span: 16 },
-        },
+import { httpAction } from '@/api/manage'
+import { queryIdTree } from '@/api/api'
+import pick from 'lodash.pick'
+import ATextarea from 'ant-design-vue/es/input/TextArea'
+export default {
+  name: "SysDepartModal",
+  components: { ATextarea },
+  data() {
+    return {
+      departTree: [],
+      orgTypeData: [],
+      phoneWarning: '',
+      departName: "",
+      title: "鎿嶄綔",
+      seen: false,
+      visible: false,
+      condition: true,
+      disableSubmit: false,
+      model: {},
+      defaultModel: {
+        departOrder: 0,
+        orgCategory: '1'
+      },
+      menuhidden: false,
+      menuusing: true,
+      labelCol: {
+        xs: { span: 24 },
+        sm: { span: 5 },
+      },
+      wrapperCol: {
+        xs: { span: 24 },
+        sm: { span: 16 },
+      },
 
-        confirmLoading: false,
-        validatorRules:{
-          departName:[{ required: true, message: '璇疯緭鍏ユ満鏋�/閮ㄩ棬鍚嶇О!' }],
-          // orgCode:[{ required: true, message: '璇疯緭鍏ユ満鏋勭紪鐮�!' }],
-          // mobile: [{validator:this.validateMobile}],
-          // orgCategory:[{required: true, message: '璇疯緭鍏ユ満鏋勭被鍨�!'}]
-        },
-        url: {
-          add: "/sys/sysDepart/add",
-        },
-        dictDisabled:true,
+      confirmLoading: false,
+      validatorRules: {
+        departName: [{ required: true, message: '璇疯緭鍏ユ満鏋�/閮ㄩ棬鍚嶇О!' }],
+        useDepartNum: [{ required: false, message: '璇疯緭鍏ヤ娇鐢ㄩ儴闂ㄧ紪鐮�!' }],
+        repairDepartNum: [{ required: false, message: '璇疯緭鍏ョ淮淇儴闂ㄧ紪鐮�!' }],
+        // orgCode:[{ required: true, message: '璇疯緭鍏ユ満鏋勭紪鐮�!' }],
+        // mobile: [{validator:this.validateMobile}],
+        // orgCategory:[{required: true, message: '璇疯緭鍏ユ満鏋勭被鍨�!'}]
+      },
+      url: {
+        add: "/sys/sysDepart/add",
+      },
+      dictDisabled: true,
+    }
+  },
+  created() {
+  },
+  methods: {
+    loadTreeData() {
+      var that = this;
+      queryIdTree().then((res) => {
+        if (res.success) {
+          that.departTree = [];
+          for (let i = 0; i < res.result.length; i++) {
+            let temp = res.result[i];
+            that.departTree.push(temp);
+          }
+        }
+
+      })
+    },
+    add(depart) {
+      if (depart) {
+        this.seen = false;
+        this.dictDisabled = false;
+      } else {
+        this.seen = true;
+        this.dictDisabled = true;
+      }
+      this.edit(depart);
+    },
+    edit(record) {
+      this.visible = true;
+      this.model = Object.assign({}, this.defaultModel, record)
+      this.loadTreeData();
+      this.model.parentId = record != null ? record.toString() : null;
+      if (this.seen) {
+        this.model.orgCategory = '1';
+      } else {
+        this.model.orgCategory = '2';
       }
     },
-    created () {
+    close() {
+      this.$emit('close');
+      this.disableSubmit = false;
+      this.visible = false;
+      this.$refs.form.resetFields();
     },
-    methods: {
-      loadTreeData(){
-        var that = this;
-        queryIdTree().then((res)=>{
-          if(res.success){
-            that.departTree = [];
-            for (let i = 0; i < res.result.length; i++) {
-              let temp = res.result[i];
-              that.departTree.push(temp);
+    handleOk() {
+      const that = this;
+      // 瑙﹀彂琛ㄥ崟楠岃瘉
+      this.$refs.form.validate(valid => {
+        if (valid) {
+          that.confirmLoading = true;
+          httpAction(this.url.add, this.model, "post").then((res) => {
+            if (res.success) {
+              // that.$message.success(res.message);
+              that.$notification.success({
+                message: '娑堟伅',
+                description: res.message
+              });
+              that.loadTreeData();
+              that.$emit('ok');
+            } else {
+              // that.$message.warning(res.message);
+              that.$notification.warning({
+                message: '娑堟伅',
+                description: res.message
+              });
             }
-          }
+          }).finally(() => {
+            that.confirmLoading = false;
+            that.close();
+          })
 
-        })
-      },
-      add (depart) {
-        if(depart){
-          this.seen = false;
-          this.dictDisabled = false;
-        }else{
-          this.seen = true;
-          this.dictDisabled = true;
+        } else {
+          return false;
         }
-        this.edit(depart);
-      },
-      edit (record) {
-          this.visible = true;
-          this.model = Object.assign({}, this.defaultModel, record)
-          this.loadTreeData();
-          this.model.parentId = record!=null?record.toString():null;
-           if(this.seen){
-             this.model.orgCategory = '1';
-           }else{
-             this.model.orgCategory = '2';
-           }
-      },
-      close () {
-        this.$emit('close');
-        this.disableSubmit = false;
-        this.visible = false;
-        this.$refs.form.resetFields();
-      },
-      handleOk () {
-        const that = this;
-        // 瑙﹀彂琛ㄥ崟楠岃瘉
-        this.$refs.form.validate(valid => {
-          if (valid) {
-            that.confirmLoading = true;
-            httpAction(this.url.add,this.model,"post").then((res)=>{
-              if(res.success){
-                // that.$message.success(res.message);
-                that.$notification.success({
-                  message:'娑堟伅',
-                  description:res.message
-                });
-                that.loadTreeData();
-                that.$emit('ok');
-              }else{
-                // that.$message.warning(res.message);
-                that.$notification.warning({
-                  message:'娑堟伅',
-                  description:res.message
-                });
-              }
-            }).finally(() => {
-              that.confirmLoading = false;
-              that.close();
-            })
-
-          }else{
-            return false;
-          }
-        })
-      },
-      handleCancel () {
-        this.close()
-      },
-      validateMobile(rule,value,callback){
-        if (!value || new RegExp(/^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$/).test(value)){
-          callback();
-        }else{
-          callback("鎮ㄧ殑鎵嬫満鍙风爜鏍煎紡涓嶆纭�!");
-        }
-
+      })
+    },
+    handleCancel() {
+      this.close()
+    },
+    validateMobile(rule, value, callback) {
+      if (!value || new RegExp(/^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$/).test(value)) {
+        callback();
+      } else {
+        callback("鎮ㄧ殑鎵嬫満鍙风爜鏍煎紡涓嶆纭�!");
       }
+
     }
   }
+}
 </script>
 
 <style scoped>
-
 </style>
\ No newline at end of file

--
Gitblit v1.9.3