import A from"./ContentContainer-DZH2G_N8.js";import{_ as Q,B as E}from"./Modal-DJXiYQEw.js";/* empty css */import"./index-9EIOH_gv.js";import{C as G}from"./index-BP4K8nzG.js";import{l as W,o as B,p as U,y as i,B as a,W as u,k as H,V as J,r as D,f as K,u as X,a4 as Y,a as Z,e as R,z as x,F as P,G as O}from"./vue-vendor-B3m6NcsA.js";import{M as k}from"./index-Co4Lln-R.js";import"./index-AcuTc0YO.js";import{T as ee}from"./TreeParts-Dvl6J4Gf.js";import{F as te,a as se}from"./index-CBvztdK2.js";import{S as ae}from"./index-V7OV2Hni.js";import{S as oe}from"./index-CHk-K1i_.js";import{I as re}from"./index-0iFXgJZm.js";import{a as N,ab as ne,B as le}from"./index-Ccm7NuMR.js";import{a as de}from"./common-BsZfpITH.js";import{_ as ie}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./index-BgrMGZa1.js";import"./index-D-raAVa5.js";import"./index-DdNQNsnJ.js";import"./index-BrkjCBgL.js";import"./render-function-DSOTYBbG.js";/* empty css */import"./DeleteModal-COyyXgjt.js";import"./index-DD5zBLku.js";const T={__name:"OrgForm",props:{org_form:{type:Object,required:!0,default:()=>({parentName:"",status:0,deptName:"",leader:"",phone:"",address:""})}},emits:["statusChange"],setup(d,{emit:b}){const v=b,$=d,{org_form:o}=W($),V=n=>{v("statusChange",n)};return(n,e)=>{const m=re,p=te,F=oe,w=ae,S=se;return B(),U(S,{model:u(o),layout:"horizontal",ref:"orgFormRef"},{default:i(()=>[a(p,{field:"parentName",label:n.$t("permission.org.parent_org"),disabled:""},{default:i(()=>[a(m,{modelValue:u(o).parentName,"onUpdate:modelValue":e[0]||(e[0]=l=>u(o).parentName=l)},null,8,["modelValue"])]),_:1},8,["label"]),a(p,{field:"status",label:n.$t("permission.org.status")},{default:i(()=>[a(F,{modelValue:u(o).status,"onUpdate:modelValue":e[1]||(e[1]=l=>u(o).status=l),onChange:e[2]||(e[2]=l=>V(u(o).status)),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue"])]),_:1},8,["label"]),a(p,{field:"deptName",label:n.$t("permission.org.org_name"),rules:[{required:!0,message:n.$t("permission.org.org_name_required")},{maxLength:30,message:n.$t("permission.max_length_30")}]},{default:i(()=>[a(m,{modelValue:u(o).deptName,"onUpdate:modelValue":e[3]||(e[3]=l=>u(o).deptName=l)},null,8,["modelValue"])]),_:1},8,["label","rules"]),a(p,{field:"leader",label:n.$t("permission.org.leader"),rules:[{required:!0,message:n.$t("permission.org.leader_required")},{maxLength:30,message:n.$t("permission.max_length_30")}]},{default:i(()=>[a(m,{modelValue:u(o).leader,"onUpdate:modelValue":e[4]||(e[4]=l=>u(o).leader=l)},null,8,["modelValue"])]),_:1},8,["label","rules"]),a(p,{field:"phone",label:n.$t("permission.org.phone"),rules:[{required:!0,message:n.$t("permission.org.phone_required")},{maxLength:20}]},{default:i(()=>[a(m,{modelValue:u(o).phone,"onUpdate:modelValue":e[5]||(e[5]=l=>u(o).phone=l)},null,8,["modelValue"])]),_:1},8,["label","rules"]),a(p,{field:"address",label:n.$t("permission.org.address")},{default:i(()=>[a(m,{modelValue:u(o).address,"onUpdate:modelValue":e[6]||(e[6]=l=>u(o).address=l)},null,8,["modelValue"])]),_:1},8,["label"]),a(p,null,{default:i(()=>[a(w,null,{default:i(()=>[H(n.$slots,"actions")]),_:3})]),_:3})]),_:3},8,["model"])}}},I="/api/dept";function ue(d){return N({url:`${I}/${d}`,method:"get"})}function me(d){return N({url:`${I}/status`,method:"put",data:d})}function pe(d){return N({url:`${I}/edit_dept`,method:"put",data:d})}function ce(d){return N({url:`${I}/dept_parent`,method:"put",data:d})}function fe(d){return N({url:`${I}/add_dept`,method:"post",data:d})}function _e(d){return N({url:`${I}/${d}`,method:"delete"})}const ge={class:"organization-container"},he={class:"left"},ve={class:"right"},$e={__name:"index",setup(d){const b=J(),v=D(null),$=D(!1),o=D(!0),V=D([]),n={add_permission:"system:dept:add",delete_permission:"system:dept:delete"},e=K({parentName:"",status:0,deptName:"",leader:"",phone:"",address:"",orderNum:0}),m=async()=>{const{code:s,data:{rows:r}}=await de();s==200&&(V.value=r)},p=async s=>{const{data:{data:r}}=await ue(s);e.deptId=s,e.parentName=r.parentName,e.status=r.status,e.deptName=r.deptName,e.leader=r.leader,e.phone=r.phone,e.address=r.address,o.value=!0},F=s=>{e.deptId="",e.parentName=s.deptName,e.parentId=s.deptId,e.status=0,e.deptName="",e.leader="",e.phone="",e.address="",$.value=!0,o.value=!1},w=async({deptId:s})=>{const{code:r}=await _e(s);r===200&&k.success({content:t("permission.org.delete_success")}),m()},S=async s=>{const r={deptId:e.deptId[0],status:s},{code:c,msg:f}=await me(r);c===200?(k.success({content:t("permission.status_switch_success")}),m()):(k.error({content:f}),e.status="1")},l=async()=>{v.value.$refs.orgFormRef.validate&&v.value.$refs.orgFormRef.validate(async s=>{if(!s){const r={...e,deptId:o.value&&e.deptId?e.deptId[0]:null},c=o.value?pe:fe,{code:f}=await c(r);if(f===200){const _=o.value?t("permission.edit"):t("permission.add");k.success({content:`${_}${t("permission.success")}`}),m(),$.value=!1}}})},q=()=>{e.deptId=null,e.parentName="",e.status=0,e.deptName="",e.leader="",e.phone="",e.address=""},z=()=>{o.value=!0,$.value=!1},L=async({dropNode:s,dragNode:r,dropPosition:c})=>{const f=V.value;ce({orderNum:"0",parentId:s.deptId,deptId:r.deptId});const _=(g,h,C)=>{g.some((y,M,j)=>y.deptId===h?(C(y,M,j),!0):y.children?_(y.children,h,C):!1)};_(f,r.deptId,(g,h,C)=>{C.splice(h,1)}),c===0?_(f,s.deptId,g=>{g.children=g.children||[],g.children.push(r)}):_(f,s.deptId,(g,h,C)=>{C.splice(c<0?h:h+1,0,r)})};return X(()=>{ne("system:dept:list")?m():b.push("/denied")}),(s,r)=>{const c=le,f=G,_=Y("hasPerm");return B(),Z("div",ge,[R("div",he,[a(ee,{treeData:V.value,title:s.$t("permission.org.tree_title"),showLock:!0,fieldNames:{key:"deptId",title:"deptName",children:"children"},permission:n,onNodeClick:p,onAddBtnClick:F,onDeleteBtnClick:w,onDrop:L},null,8,["treeData","title"])]),R("div",ve,[a(f,{title:s.$t("permission.org.details"),style:{height:"100%"}},{default:i(()=>[a(T,{org_form:e,onStatusChange:S,onSave:l,onReset:q},{actions:i(()=>[x((B(),U(c,{onClick:l},{default:i(()=>[P(O(s.$t("permission.org.save")),1)]),_:1})),[[_,"system:dept:edit"]]),a(c,{onClick:q},{default:i(()=>[P(O(s.$t("permission.org.reset")),1)]),_:1})]),_:1},8,["org_form"])]),_:1},8,["title"])]),a(Q,{visible:$.value,onOk:l,onCancel:z,title:s.$t("permission.add")},{default:i(()=>[a(T,{ref_key:"orgForm",ref:v,org_form:e},null,8,["org_form"])]),_:1},8,["visible","title"])])}}},Ce=ie($e,[["__scopeId","data-v-bc6f1112"]]),Ge={__name:"PermissionOrganization",setup(d){return(b,v)=>(B(),U(A,null,{default:i(()=>[a(E,{current_label:"机构"}),a(Ce)]),_:1}))}};export{Ge as default};