From bf2e77248f05798c3f2904fe24416bb75c9e6476 Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期四, 03 七月 2025 17:33:48 +0800
Subject: [PATCH] 设备台账维修班组字段使用后台数据

---
 src/views/eam/base/modules/EamRepairDepartModal.vue |  172 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 172 insertions(+), 0 deletions(-)

diff --git a/src/views/eam/base/modules/EamRepairDepartModal.vue b/src/views/eam/base/modules/EamRepairDepartModal.vue
new file mode 100644
index 0000000..dfbb9b7
--- /dev/null
+++ b/src/views/eam/base/modules/EamRepairDepartModal.vue
@@ -0,0 +1,172 @@
+<template>
+  <a-modal
+    :title="title"
+    :width="800"
+    :ok=false
+    :visible="visible"
+    :confirmLoading="confirmLoading"
+    :okButtonProps="{ props: {disabled: disableSubmit} }"
+    @ok="handleOk"
+    @cancel="handleCancel"
+    cancelText="鍏抽棴">
+
+    <a-spin :spinning="confirmLoading">
+      <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="鎺掑簭">
+          <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>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+  import { httpAction } from '@/api/manage'
+  import { queryRepDepIdTree } from '@/api/api'
+  import pick from 'lodash.pick'
+  import ATextarea from 'ant-design-vue/es/input/TextArea'
+  export default {
+    name: "EamRepairDepartModal",
+    components: { ATextarea },
+    data () {
+      return {
+        departTree:[],
+        orgTypeData:[],
+        phoneWarning:'',
+        departName:"",
+        title:"鎿嶄綔",
+        seen:false,
+        visible: false,
+        condition:true,
+        disableSubmit:false,
+        model: {},
+        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: '璇疯緭鍏ョ淮淇儴闂�/鐝粍鍚嶇О!' }],
+        },
+        url: {
+          add: "/eam/eamBaseRepairDepart/add",
+        },
+        dictDisabled:true,
+      }
+    },
+    created () {
+    },
+    methods: {
+      loadTreeData(){
+        var that = this;
+        queryRepDepIdTree().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;
+      },
+      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.warning({
+                  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()
+      },
+    }
+  }
+</script>
+
+<style scoped>
+
+</style>
\ No newline at end of file

--
Gitblit v1.9.3