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