departEdit.18016ca8.js 6.7 KB

12345678910111213141516171819202122232425262728
  1. import{e as D,r as H,G as J,a0 as i,g as u,h as f,A as o,q as a,j as w,y as _,z as g,p as y,x as c,F as K,Q as O}from"./vue.e266cb73.js";import{D as p}from"./department.24b55d3d.js";import{r as P}from"./ruleReg.82229ae1.js";import{ad as n}from"./index.dcc65bf7.js";import{_ as W}from"./_plugin-vue_export-helper.c27b6911.js";import"./Urls.a85bb052.js";import"./request.1f3df8c8.js";import"./storage.acfc8920.js";import"./config.3668004a.js";import"./index.4f91577e.js";import"./index.f84209b0.js";const X={key:0},Y={class:"dialog-footer"},Z=D({name:"underlyingDeptDialog"}),$=D({...Z,emits:["refresh"],setup(ee,{expose:V,emit:k}){const C=H(),e=J({id:0,ruleForm:{parent_id:0,name:"",admin_ids:[],valid:1},dialog:{isShowDialog:!1,type:"",title:"",submitTxt:""},departmentList:[],roleList:[],adminList:[],isLoad:!0}),E=l=>{console.log("e",l),e.ruleForm.parent_id=l[l.length-1],console.log("state.ruleForm.department_id",e.ruleForm.parent_id)},S=async()=>{let l=await p.detail(e.id);if(l.code!=0)return n.error(l.msg);let t=[];l.data.mainAdmin.forEach(d=>{t.push(d.id)}),e.ruleForm={parent_id:l.data.parent_id,name:l.data.name,admin_ids:t,valid:l.data.valid}},U=(l,t)=>{e.dialog.type=l,l==="edit"?(e.id=t.id,e.dialog.title="部门编辑038",e.dialog.submitTxt="修 改",S()):(e.id=0,e.ruleForm={parent_id:0,name:"",admin_ids:[],valid:1},e.dialog.title="部门添加037",e.dialog.submitTxt="保 存"),e.departmentList=[],e.roleList=[],e.dialog.isShowDialog=!0,B()},b=()=>{e.dialog.isShowDialog=!1},T=()=>{b()},q=async()=>{if(console.log("state.ruleForm.parent_id",e.ruleForm.parent_id),!P.emptyReg(e.ruleForm.name))return n.warning("请输入部门名称");if(e.ruleForm.admin_ids.length<=0)return n.warning("请选择负责人");let l=null;if(e.dialog.type=="edit"){if(e.ruleForm.id=e.id,l=await p.edit(e.ruleForm),l.code!=0)return n.error(l.msg)}else if(l=await p.add(e.ruleForm),l.code!=0)return n.error(l.msg);n.success(l.msg),b(),k("refresh")},h=l=>{l.forEach((t,d)=>{t.parent_id==0&&t.id==e.id&&(console.log("indexDel1",d),l.splice(d,1)),t.children&&t.children.length>0&&(t.children.forEach((m,s)=>{m.id==e.id&&(console.log("indexDel2",d,s),t.children.splice(s,1))}),h(t.children))})},F=l=>{l.forEach(t=>{t.valid!=1&&(t.disabled=!0),t.children&&F(t.children)})},z=async()=>{console.log("初始化下拉列表");let l=await p.initAdmin();if(l.code!=0)return n.error(l.msg);h(l.data.departmentList),F(l.data.departmentList),e.departmentList=l.data.departmentList,e.roleList=l.data.roleList},A=async()=>{console.log("初始化人员列表"),e.isLoad=!1;let l=await p.init();if(l.code!=0)return n.error(l.msg);e.adminList=l.data.adminList,await z(),e.isLoad=!0},B=()=>{A()};return V({openDialog:U}),(l,t)=>{const d=i("el-cascader"),m=i("el-form-item"),s=i("el-col"),N=i("el-input"),R=i("el-option"),M=i("el-select"),v=i("el-radio"),j=i("el-radio-group"),G=i("el-row"),I=i("el-form"),x=i("el-button"),Q=i("el-dialog");return u(),f("div",null,[o(Q,{title:e.dialog.title,modelValue:e.dialog.isShowDialog,"onUpdate:modelValue":t[4]||(t[4]=r=>e.dialog.isShowDialog=r),width:"769px"},{footer:a(()=>[w("span",Y,[o(x,{onClick:T,size:"default"},{default:a(()=>[_("取 消")]),_:1}),o(x,{type:"primary",onClick:q,size:"default"},{default:a(()=>[_(g(e.dialog.submitTxt),1)]),_:1})])]),default:a(()=>[e.isLoad?(u(),y(I,{key:0,ref_key:"deptDialogFormRef",ref:C,model:e.ruleForm,size:"default","label-width":"90px"},{default:a(()=>[o(G,{gutter:35},{default:a(()=>[c(` <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
  2. <el-form-item label="上级部门">
  3. <el-select v-model="state.ruleForm.department_id" placeholder="请选择上级部门">
  4. <el-option
  5. v-for="item in state.options"
  6. :key="item.value"
  7. :label="item.label"
  8. :value="item.value"
  9. :disabled="item.disabled"
  10. />
  11. </el-select>
  12. </el-form-item>
  13. </el-col> `),c(` :rules="[{ required: true, message: '上级部门不能为空' }]"
  14. clearable `),o(s,{xs:24,sm:12,md:12,lg:12,xl:12,class:"mb20"},{default:a(()=>[o(m,{label:"上级部门"},{default:a(()=>[o(d,{options:e.departmentList,props:{checkStrictly:!0,value:"id",label:"name"},placeholder:"请选择上级部门",class:"w100",modelValue:e.ruleForm.parent_id,"onUpdate:modelValue":t[0]||(t[0]=r=>e.ruleForm.parent_id=r),onChange:E},{default:a(({node:r,data:L})=>[w("span",null,g(L.name),1),r.isLeaf?c("v-if",!0):(u(),f("span",X," ("+g(L.children.length)+") ",1))]),_:1},8,["options","modelValue"])]),_:1})]),_:1}),o(s,{xs:24,sm:12,md:12,lg:12,xl:12,class:"mb20"},{default:a(()=>[o(m,{label:"部门名称",rules:[{required:!0,message:"部门名称不能为空"}]},{default:a(()=>[o(N,{modelValue:e.ruleForm.name,"onUpdate:modelValue":t[1]||(t[1]=r=>e.ruleForm.name=r),placeholder:"请输入部门名称",clearable:""},null,8,["modelValue"])]),_:1})]),_:1}),c(` <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
  15. <el-form-item label="负责人">
  16. <el-select v-model="state.ruleForm.leader_id" placeholder="请选择负责人">
  17. <el-option
  18. v-for="item in state.options"
  19. :key="item.value"
  20. :label="item.label"
  21. :value="item.value"
  22. :disabled="item.disabled"
  23. />
  24. </el-select>
  25. </el-form-item>
  26. </el-col> `),o(s,{xs:24,sm:12,md:12,lg:12,xl:12,class:"mb20"},{default:a(()=>[o(m,{label:"负 责 人",rules:[{required:!0,message:"负责人不能为空"}]},{default:a(()=>[o(M,{modelValue:e.ruleForm.admin_ids,"onUpdate:modelValue":t[2]||(t[2]=r=>e.ruleForm.admin_ids=r),placeholder:"请选择负责人",multiple:""},{default:a(()=>[(u(!0),f(K,null,O(e.adminList,r=>(u(),y(R,{key:r.id,label:r.name,value:r.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),o(s,{xs:24,sm:12,md:12,lg:12,xl:12,class:"mb20"},{default:a(()=>[o(m,{label:"状  态"},{default:a(()=>[o(j,{modelValue:e.ruleForm.valid,"onUpdate:modelValue":t[3]||(t[3]=r=>e.ruleForm.valid=r)},{default:a(()=>[o(v,{label:1},{default:a(()=>[_("启用")]),_:1}),o(v,{label:0},{default:a(()=>[_("禁用")]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])):c("v-if",!0)]),_:1},8,["title","modelValue"])])}}}),ce=W($,[["__file","C:/Users/89282/Desktop/lechang_storage/lechang_storage/vue-next-admin/src/views/underlying/department/departEdit.vue"]]);export{ce as default};
  27. //# sourceMappingURL=departEdit.18016ca8.js.map