From 43fca2cb16964496caafdbc34e969d2a7cde7cc0 Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期四, 30 三月 2023 15:32:56 +0800 Subject: [PATCH] 用户接口 --- src/views/system/department/component/deptDialog.vue | 76 +++++++++++++++++++++++--------------- 1 files changed, 46 insertions(+), 30 deletions(-) diff --git a/src/views/system/department/component/deptDialog.vue b/src/views/system/department/component/deptDialog.vue index 1579bc6..6aa7fe5 100644 --- a/src/views/system/department/component/deptDialog.vue +++ b/src/views/system/department/component/deptDialog.vue @@ -1,7 +1,7 @@ <template> <div class="system-add-dept-container"> <el-dialog :title="title" v-model="isShowDialog" width="600px"> - <el-form :model="departmentForm" size="default" label-width="90px"> + <el-form :model="departmentForm" size="default" ref="depRef" :rules="depFormRules" label-width="90px"> <el-row :gutter="35"> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="上级部门"> @@ -9,7 +9,7 @@ </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> - <el-form-item label="部门名称"> + <el-form-item label="部门名称" prop="depName"> <el-input v-model="departmentForm.depName" class="input-add" placeholder="请输入部门名称" clearable></el-input> </el-form-item> </el-col> @@ -23,7 +23,7 @@ <template #footer> <span class="dialog-footer"> <el-button @click="onCancel" size="default">取 消</el-button> - <el-button type="primary" v-throttle @click="onSubmit" size="default">确 定</el-button> + <el-button type="primary" v-throttle @click="onSubmit(depRef)" size="default">确 定</el-button> </span> </template> </el-dialog> @@ -32,7 +32,7 @@ <script lang="ts"> import { ElMessage } from 'element-plus'; -import { reactive, toRefs, onMounted, defineComponent } from 'vue'; +import {reactive, toRefs, onMounted, defineComponent, ref} from 'vue'; import { departmentApi } from '/@/api/systemManage/department'; // 定义接口来定义对象的类型 @@ -54,6 +54,9 @@ }; deptData: Array<TableDataRow>; depLevelList: Array<Type>; + depFormRules:{ + + } } interface Type{ id:number; @@ -79,9 +82,12 @@ {id:2,name:'事业部'}, {id:3,name:'车间'}, {id:4,name:'班组'} - ] // 部门数据 + ], // 部门数据 + depFormRules:{ + depName: [{ required: true, message: '请填写部门名称', trigger: 'blur' }], + }, }); - + const depRef = ref() const findParentById=(tree:Array<any>,id:number|null,depName:string)=>{ const parent = tree.find(i=>i.id == id) if(parent){ @@ -131,39 +137,48 @@ }; // 新增 const onSubmit = async () => { - if (state.title === '新增部门') { + depRef.value.validate(async (valid:Boolean) => { + if(valid){ + if (state.title === '新增部门') { let res = await departmentApi().addDepartment(state.departmentForm); if (res.data.code === 100) { - ElMessage({ - type: 'success', - message: '部门新增成功', - duration: 2000 - }); - closeDialog(); - context.emit('getDepartmentList'); + ElMessage({ + type: 'success', + message: '部门新增成功', + duration: 2000 + }); + closeDialog(); + context.emit('getDepartmentList'); } else { - ElMessage({ - type: 'warning', - message: res.data.msg - }); + ElMessage({ + type: 'warning', + message: res.data.msg + }); } - } else { + } else { let res = await departmentApi().modDepartment(state.departmentForm); if (res.data.code === 100) { - ElMessage({ - type: 'success', - message: '部门修改成功', - duration: 2000 - }); - closeDialog(); - context.emit('getDepartmentList'); + ElMessage({ + type: 'success', + message: '部门修改成功', + duration: 2000 + }); + closeDialog(); + context.emit('getDepartmentList'); } else { - ElMessage({ - type: 'warning', - message: res.data.msg - }); + ElMessage({ + type: 'warning', + message: res.data.msg + }); } + } + }else{ + ElMessage({ + type:'warning', + message:'请完善基本信息' + }) } + }) }; // 初始化部门数据 const initTableData = () => {}; @@ -172,6 +187,7 @@ initTableData(); }); return { + depRef, findParentById, openDialog, closeDialog, -- Gitblit v1.9.2