PermissionOrganization-CATvuMOT.js 5.6 KB

1
  1. import j from"./ContentContainer-DsTwScxa.js";import{_ as A,B as M}from"./Modal-DTV72hsC.js";import{T as Q}from"./TreeParts-D0cUCcQa.js";import{ab as E,c as $,o as w,g as P,w as l,f as a,j as i,q as x,z as b,_ as G,r as U,b as H,m as J,ac as K,a1 as W,d as X,e as q,s as Y,i as z,t as F,A as S}from"./index-B0B44rbN.js";import{a as Z}from"./common-o3y4dQ3D.js";const O={__name:"OrgForm",props:{org_form:{type:Object,required:!0,default:()=>({parentName:"",status:0,deptName:"",leader:"",phone:"",address:""})}},emits:["statusChange"],setup(r,{emit:_}){const p=_,I=r,{org_form:o}=E(I),e=d=>{p("statusChange",d)};return(d,n)=>{const g=$("a-input"),m=$("a-form-item"),B=$("a-switch"),D=$("a-space"),y=$("a-form");return w(),P(y,{model:i(o),layout:"horizontal",ref:"formRef"},{default:l(()=>[a(m,{field:"parentName",label:d.$t("permission.org.parent_org"),disabled:""},{default:l(()=>[a(g,{modelValue:i(o).parentName,"onUpdate:modelValue":n[0]||(n[0]=u=>i(o).parentName=u)},null,8,["modelValue"])]),_:1},8,["label"]),a(m,{field:"status",label:d.$t("permission.org.status")},{default:l(()=>[a(B,{modelValue:i(o).status,"onUpdate:modelValue":n[1]||(n[1]=u=>i(o).status=u),onChange:n[2]||(n[2]=u=>e(i(o).status)),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue"])]),_:1},8,["label"]),a(m,{field:"deptName",label:d.$t("permission.org.org_name"),rules:[{required:!0,message:"机构名称必填"},{maxLength:50,message:"长度不超过50"}]},{default:l(()=>[a(g,{modelValue:i(o).deptName,"onUpdate:modelValue":n[3]||(n[3]=u=>i(o).deptName=u)},null,8,["modelValue"])]),_:1},8,["label"]),a(m,{field:"leader",label:d.$t("permission.org.leader"),rules:[{required:!0,message:"联系人必填"},{maxLength:50,message:"长度不超过50"}]},{default:l(()=>[a(g,{modelValue:i(o).leader,"onUpdate:modelValue":n[4]||(n[4]=u=>i(o).leader=u)},null,8,["modelValue"])]),_:1},8,["label"]),a(m,{field:"phone",label:d.$t("permission.org.phone"),rules:[{required:!0,message:"联系电话必填"},{maxLength:50,message:"长度不超过50"}]},{default:l(()=>[a(g,{modelValue:i(o).phone,"onUpdate:modelValue":n[5]||(n[5]=u=>i(o).phone=u)},null,8,["modelValue"])]),_:1},8,["label"]),a(m,{field:"address",label:d.$t("permission.org.address")},{default:l(()=>[a(g,{modelValue:i(o).address,"onUpdate:modelValue":n[6]||(n[6]=u=>i(o).address=u)},null,8,["modelValue"])]),_:1},8,["label"]),a(m,null,{default:l(()=>[a(D,null,{default:l(()=>[x(d.$slots,"actions")]),_:3})]),_:3})]),_:3},8,["model"])}}},V="/api/dept";function ee(r){return b({url:`${V}/${r}`,method:"get"})}function te(r){return b({url:`${V}/status`,method:"put",data:r})}function ae(r){return b({url:`${V}/edit_dept`,method:"put",data:r})}function se(r){return b({url:`${V}/dept_parent`,method:"put",data:r})}function oe(r){return b({url:`${V}/add_dept`,method:"post",data:r})}function ne(r){return b({url:`${V}/${r}`,method:"delete"})}const re={class:"organization-container"},le={class:"left"},de={class:"right"},ue={__name:"index",setup(r){const _=U(!1),p=U(!0),I=U([]),o={add_permission:"system:dept:add",delete_permission:"system:dept:delete"},e=H({parentName:"",status:0,deptName:"",leader:"",phone:"",address:"",orderNum:0}),d=async()=>{const{code:t,data:{rows:s}}=await Z();t==200&&(I.value=s)},n=async t=>{const{data:{data:s}}=await ee(t);e.deptId=t,e.parentName=s.parentName,e.status=s.status,e.deptName=s.deptName,e.leader=s.leader,e.phone=s.phone,e.address=s.address,p.value=!0},g=t=>{e.deptId="",e.parentName=t.deptName,e.parentId=t.deptId,e.status=0,e.deptName="",e.leader="",e.phone="",e.address="",_.value=!0,p.value=!1},m=async({deptId:t})=>{const{code:s}=await ne(t);s===200&&S.success({title:"删除",content:"删除成功"}),d()},B=async t=>{const s={deptId:e.deptId[0],status:t},{code:c}=await te(s);c===200&&(S.success({title:"状态更新",content:"状态更新成功"}),d())},D=async()=>{const t={...e,deptId:p.value&&e.deptId?e.deptId[0]:null},s=p.value?ae:oe,{code:c}=await s(t);if(c===200){const f=p.value?"编辑":"新增";S.success({title:`${f}用户`,content:`${f}成功`}),d(),_.value=!1}},y=()=>{e.deptId=null,e.parentName="",e.status=0,e.deptName="",e.leader="",e.phone="",e.address=""},u=()=>{p.value=!0,_.value=!1},T=async({dropNode:t,dragNode:s,dropPosition:c})=>{const f=I.value;se({orderNum:"0",parentId:t.deptId,deptId:s.deptId});const N=(h,v,C)=>{h.some((k,L,R)=>k.deptId===v?(C(k,L,R),!0):k.children?N(k.children,v,C):!1)};N(f,s.deptId,(h,v,C)=>{C.splice(v,1)}),c===0?N(f,t.deptId,h=>{h.children=h.children||[],h.children.push(s)}):N(f,t.deptId,(h,v,C)=>{C.splice(c<0?v:v+1,0,s)})};return J(()=>{K("system:dept:list")&&d()}),(t,s)=>{const c=$("a-button"),f=$("a-card"),N=W("hasPerm");return w(),X("div",re,[q("div",le,[a(Q,{treeData:I.value,title:t.$t("permission.org.organization"),showLock:!0,fieldNames:{key:"deptId",title:"deptName",children:"children"},permission:o,onNodeClick:n,onAddBtnClick:g,onDeleteBtnClick:m,onDrop:T},null,8,["treeData","title"])]),q("div",de,[a(f,{title:t.$t("permission.org.details"),style:{height:"100%"}},{default:l(()=>[a(O,{org_form:e,onStatusChange:B,onSave:D,onReset:y},{actions:l(()=>[Y((w(),P(c,{onClick:D},{default:l(()=>[z(F(t.$t("permission.org.save")),1)]),_:1})),[[N,"system:dept:edit"]]),a(c,{onClick:y},{default:l(()=>[z(F(t.$t("permission.org.reset")),1)]),_:1})]),_:1},8,["org_form"])]),_:1},8,["title"])]),a(A,{visible:_.value,onOk:D,onCancel:u,title:t.$t("permission.org.add")},{default:l(()=>[a(O,{org_form:e},null,8,["org_form"])]),_:1},8,["visible","title"])])}}},ie=G(ue,[["__scopeId","data-v-027eef95"]]),ge={__name:"PermissionOrganization",setup(r){return(_,p)=>(w(),P(j,null,{default:l(()=>[a(M,{current_label:"机构"}),a(ie)]),_:1}))}};export{ge as default};