From f96b425b531a70c541b63b66f7b18c1d1b87fb1d Mon Sep 17 00:00:00 2001 From: 祖安之光 <11848914+light-of-zuan@user.noreply.gitee.com> Date: 星期三, 16 七月 2025 10:18:05 +0800 Subject: [PATCH] 修改新增 --- src/views/build/conpanyFunctionConsult/orgStructure/departManage/components/departDialog.vue | 111 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 76 insertions(+), 35 deletions(-) diff --git a/src/views/build/conpanyFunctionConsult/orgStructure/departManage/components/departDialog.vue b/src/views/build/conpanyFunctionConsult/orgStructure/departManage/components/departDialog.vue index 7a53bdf..622b664 100644 --- a/src/views/build/conpanyFunctionConsult/orgStructure/departManage/components/departDialog.vue +++ b/src/views/build/conpanyFunctionConsult/orgStructure/departManage/components/departDialog.vue @@ -9,16 +9,41 @@ :close-on-click-modal="false" > <el-form :model="state.form" size="default" ref="superRef" :rules="state.formRules" label-width="150px"> + <el-form-item label="企业:" prop="companyId" v-if="state.isAdmin"> + <el-select v-model="state.form.companyId" placeholder="请选择" clearable @change="getDeptList()"> + <el-option + v-for="item in state.companyList" + :key="item.id" + :label="item.name" + :value="item.id"> + </el-option> + </el-select> + </el-form-item> <el-row> - <el-col :span="12" v-if="state.isAdmin" > - <el-form-item label="企业:" prop="companyId"> - <el-select v-model="state.form.companyId" placeholder="请选择" clearable @change="getDeptList()"> + <el-col :span="12" v-if="state.title == '新增'"> + <el-form-item label="上级部门" prop="parentId"> +<!-- <el-tree-select--> +<!-- v-model="state.form.parentId"--> +<!-- :data="state.departList"--> +<!-- :props="{ value: 'deptId', label: 'deptName', children: 'children' }"--> +<!-- value-key="deptId"--> +<!-- placeholder="选择上级部门"--> +<!-- check-strictly--> +<!-- />--> + <el-select + clearable + v-model="state.form.parentId" + :disabled="state.title =='查看'" + filterable + placeholder="选择上级部门" + style="width: 100%" + > <el-option - v-for="item in state.companyList" - :key="item.id" - :label="item.name" - :value="item.id"> - </el-option> + v-for="item in state.departList" + :key="item.deptId" + :label="item.deptName" + :value="item.deptId" + /> </el-select> </el-form-item> </el-col> @@ -31,34 +56,40 @@ <el-form-item label="部门名称:" prop="deptName"> <el-input v-model.trim="state.form.deptName" :disabled="state.title =='查看'" placeholder="部门名称"></el-input> </el-form-item> + <el-form-item label="是否是管理层:" prop="deptType" v-if="state.title !== '修改密码'"> + <el-radio-group v-model="state.form.deptType" :disabled="disabled"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> <el-form-item label="负责人:" prop="leaderUserId"> <el-select clearable v-model="state.form.leaderUserId" :disabled="state.title =='查看'" filterable placeholder="负责人" style="width: 100%"> <el-option v-for="item in state.userList" :key="item.id" - :label="item.username" + :label="item.name" :value="item.id" /> </el-select> </el-form-item> - <el-form-item label="主要负责部门:" prop="childDeptIds"> - <el-select - clearable - v-model="state.form.childDeptIds" - :disabled="state.title =='查看'" - filterable - multiple - placeholder="主要负责部门" - style="width: 100%" - > - <el-option - v-for="item in state.departList" - :key="item.deptId" - :label="item.deptName" - :value="item.deptId" - /> - </el-select> - </el-form-item> +<!-- <el-form-item label="主要负责部门:" prop="childDeptIds">--> +<!-- <el-select--> +<!-- clearable--> +<!-- v-model="state.form.childDeptIds"--> +<!-- :disabled="state.title =='查看'"--> +<!-- filterable--> +<!-- multiple--> +<!-- placeholder="主要负责部门"--> +<!-- style="width: 100%"--> +<!-- >--> +<!-- <el-option--> +<!-- v-for="item in state.departList"--> +<!-- :key="item.deptId"--> +<!-- :label="item.deptName"--> +<!-- :value="item.deptId"--> +<!-- />--> +<!-- </el-select>--> +<!-- </el-form-item>--> <el-form-item label="部门涉及条款:" prop="caluseVO1List"> <el-select clearable @@ -115,7 +146,8 @@ companyId: null, responsType: 1, childDeptIds: [], - orderNum: 0 + orderNum: 0, + deptType: 0 }, isAdmin: false, companyList: [], @@ -143,7 +175,7 @@ if(isAdmin){ state.companyList = companyList } - await getUserList() + await getUserList(companyId) await getDepartList(companyId) await getSysClauseList() state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '查看'; @@ -157,14 +189,20 @@ state.oldClauseList = value.caluseVO1List state.form.childDeptIds = value.sysDeptManageVoList?.map(i=>i.subDeptId) state.form.responsType = Number(value.responsType) + state.form.deptType = Number(value.deptType) }else{ - state.form.companyId = companyId + if(value.deptId && value.companyId){ + state.form.parentId = value.deptId + state.form.companyId = value.companyId + }else{ + state.form.companyId = companyId + } } dialogVisible.value = true } -const getUserList = async ()=> { - const res = await listUser({pageIndex: 1,pageSize: 999}) +const getUserList = async (companyId)=> { + const res = await listUser({pageIndex: 1,pageSize: 999, companyId: companyId}) if(res.code == 200){ state.userList = res.data.list?res.data.list:[] }else{ @@ -174,12 +212,11 @@ const getDeptList = async ()=>{ await getDepartList(state.form.companyId) + await getUserList(state.form.companyId) } const getDepartList = async (companyId)=> { const params = { - pageNum: 1, - pageSize: 999, companyId: companyId } const res = await getDepart(params) @@ -216,6 +253,9 @@ } }) state.form.delCaluseIds = state.oldClauseList.filter(oldItem => !state.form.caluseVO1List.some(newItem => newItem.id === oldItem.id)).map(item => item.id) + if(!state.form.parentId){ + state.form.parentId = 0 + } const res = await saveDepart(state.form) if(res.code == 200){ ElMessage.success(res.message) @@ -239,7 +279,8 @@ companyId: null, responsType: 1, childDeptIds: [], - orderNum: 0 + orderNum: 0, + deptType: 0 } superRef.value.clearValidate(); -- Gitblit v1.9.2