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