Files
zcglxt/frontend/dist/assets/OrganizationManagement-B4ws7M4y.js

2 lines
8.9 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
var E=(p,v,c)=>new Promise((V,m)=>{var u=i=>{try{k(c.next(i))}catch(y){m(y)}},_=i=>{try{k(c.throw(i))}catch(y){m(y)}},k=i=>i.done?V(i.value):Promise.resolve(i.value).then(u,_);k((c=c.apply(p,v)).next())});import{_ as pe}from"./_plugin-vue_export-helper-DRcqrMy4.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{v as ce,j as me,y as x,B as ge,C as l,D as t,E as M,u as fe,Q as s,z as B,O as ve,R as j,Y as N,P as q,r as d,c as F,l as _e}from"./vue-vendor-81Zqb-7t.js";import{j as ye,z as be,D as Ce,M as Ve,c as ke,H as Te,I as Pe,k as ze,d as Ee,e as Ne,B as Ie,C as Oe,T as we,L as xe,U as G,V as Me,W as Ue,E as I}from"./element-plus-CSxUwlOP.js";import{r as O}from"./index-Dua4jQwX.js";const $e=()=>O.get("/organizations/tree"),De=p=>O.post("/organizations",p),he=(p,v)=>O.put(`/organizations/${p}`,v),Be=p=>O.delete(`/organizations/${p}`),Re=(p,v)=>O.put(`/organizations/${p}/move`,{target_parent_id:v}),Ae={class:"organization-management"},Le={class:"toolbar-actions"},Se={class:"tree-node"},je={class:"node-label"},qe={class:"node-actions"},Fe=ce({__name:"OrganizationManagement",setup(p){const v=d(!1),c=d([]),V=d(),m=d(!1),u=d(!1),_=d(!1),k=F(()=>_.value?"添加子机构":u.value?"编辑机构":"新建机构"),i=d(!1),y=d(),C=d(),a=_e({orgCode:"",orgName:"",orgType:"outlet",parentId:null,address:"",contactPerson:"",contactPhone:""}),H={orgCode:[{required:!0,message:"请输入机构编码",trigger:"blur"},{pattern:/^[A-Z0-9_]+$/,message:"机构编码只能包含大写字母、数字和下划线",trigger:"blur"}],orgName:[{required:!0,message:"请输入机构名称",trigger:"blur"}],orgType:[{required:!0,message:"请选择机构类型",trigger:"change"}],contactPhone:[{pattern:/^1[3-9]\d{9}$/,message:"请输入正确的手机号",trigger:"blur"}]},Q=F(()=>{var o;return((o=C.value)==null?void 0:o.orgName)||"-"}),T=d(!1),U=d(!1),P=d(),z=d(),$={children:"children",label:"orgName"},w=()=>E(this,null,function*(){v.value=!0;try{const{data:o}=yield $e();c.value=o}finally{v.value=!1}}),W=o=>({province:"省级",city:"市级",outlet:"网点"})[o]||o,Y=o=>({province:Ue,city:Me,outlet:G})[o]||G,Z=()=>{var e;const o=(e=V.value)==null?void 0:e.store.nodesMap;for(const r in o)o[r].expanded=!0},J=()=>{var e;const o=(e=V.value)==null?void 0:e.store.nodesMap;for(const r in o)o[r].expanded=!1},K=()=>{u.value=!1,_.value=!1,C.value=void 0,a.parentId=null,m.value=!0},X=o=>{u.value=!1,_.value=!0,C.value=o,a.parentId=o.id,o.orgType==="province"?a.orgType="city":o.orgType==="city"&&(a.orgType="outlet"),m.value=!0},ee=o=>{u.value=!0,_.value=!1,C.value=c.value.find(e=>e.id===o.parentId),Object.assign(a,{orgCode:o.orgCode,orgName:o.orgName,orgType:o.orgType,parentId:o.parentId||null,address:o.address||"",contactPerson:o.contactPerson||"",contactPhone:o.contactPhone||""}),m.value=!0},le=()=>E(this,null,function*(){var o;if(y.value){yield y.value.validate(),i.value=!0;try{if(u.value){const e={orgName:a.orgName,address:a.address,contactPerson:a.contactPerson,contactPhone:a.contactPhone};yield he(((o=C.value)==null?void 0:o.id)||0,e),I.success("更新成功")}else yield De(a),I.success("创建成功");m.value=!1,w()}finally{i.value=!1}}}),oe=()=>{var o;(o=y.value)==null||o.resetFields(),Object.assign(a,{orgCode:"",orgName:"",orgType:"outlet",parentId:null,address:"",contactPerson:"",contactPhone:""}),C.value=void 0},te=o=>E(this,null,function*(){try{yield Be(o.id),I.success("删除成功"),w()}catch(e){console.error("删除失败:",e)}}),ae=o=>{P.value=o,z.value=o.parentId||null,T.value=!0},ne=()=>E(this,null,function*(){if(P.value){if(z.value===P.value.id){I.warning("不能将机构移动到自身下");return}U.value=!0;try{yield Re(P.value.id,z.value),I.success("移动成功"),T.value=!1,w()}finally{U.value=!1}}});return me(()=>{w()}),(o,e)=>{const r=ye,R=Ce,re=ke,se=Te,de=Pe,ue=Ve,b=Ne,g=Ee,D=Oe,ie=Ie,A=we,L=ze,S=xe;return x(),ge("div",Ae,[l(R,{class:"toolbar"},{default:t(()=>[M("div",Le,[l(r,{type:"primary",icon:fe(be),onClick:K},{default:t(()=>[...e[13]||(e[13]=[s(" 新建机构 ",-1)])]),_:1},8,["icon"]),l(r,{onClick:Z},{default:t(()=>[...e[14]||(e[14]=[s(" 展开全部 ",-1)])]),_:1}),l(r,{onClick:J},{default:t(()=>[...e[15]||(e[15]=[s(" 折叠全部 ",-1)])]),_:1})])]),_:1}),l(R,{class:"tree-card"},{default:t(()=>[l(ue,{ref_key:"treeRef",ref:V,data:c.value,props:$,"expand-on-click-node":!1,"node-key":"id","default-expand-all":"","highlight-current":!0},{default:t(({node:n,data:f})=>[M("span",Se,[M("span",je,[l(re,{class:"node-icon"},{default:t(()=>[(x(),B(ve(Y(f.orgType))))]),_:2},1024),s(" "+j(f.orgName),1)]),M("span",qe,[l(se,{size:"small",type:"info"},{default:t(()=>[s(j(W(f.orgType)),1)]),_:2},1024),l(r,{link:"",type:"primary",size:"small",onClick:N(h=>X(f),["stop"])},{default:t(()=>[...e[16]||(e[16]=[s(" 添加子机构 ",-1)])]),_:1},8,["onClick"]),l(r,{link:"",type:"primary",size:"small",onClick:N(h=>ee(f),["stop"])},{default:t(()=>[...e[17]||(e[17]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"]),l(r,{link:"",type:"warning",size:"small",onClick:N(h=>ae(f),["stop"]),disabled:f.treeLevel===0},{default:t(()=>[...e[18]||(e[18]=[s(" 移动 ",-1)])]),_:1},8,["onClick","disabled"]),l(de,{title:"确定删除该机构吗?",onConfirm:N(h=>te(f),["stop"])},{reference:t(()=>[l(r,{link:"",type:"danger",size:"small",onClick:e[0]||(e[0]=N(()=>{},["stop"])),disabled:f.children&&f.children.length>0},{default:t(()=>[...e[19]||(e[19]=[s(" 删除 ",-1)])]),_:1},8,["disabled"])]),_:2},1032,["onConfirm"])])])]),_:1},8,["data"])]),_:1}),l(S,{modelValue:m.value,"onUpdate:modelValue":e[9]||(e[9]=n=>m.value=n),title:k.value,width:"600px",onClosed:oe},{footer:t(()=>[l(r,{onClick:e[8]||(e[8]=n=>m.value=!1)},{default:t(()=>[...e[20]||(e[20]=[s("取消",-1)])]),_:1}),l(r,{type:"primary",loading:i.value,onClick:le},{default:t(()=>[...e[21]||(e[21]=[s(" 确定 ",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(L,{ref_key:"formRef",ref:y,model:a,rules:H,"label-width":"100px"},{default:t(()=>[l(g,{label:"机构编码",prop:"orgCode"},{default:t(()=>[l(b,{modelValue:a.orgCode,"onUpdate:modelValue":e[1]||(e[1]=n=>a.orgCode=n),placeholder:"请输入机构编码ORG001",disabled:u.value},null,8,["modelValue","disabled"])]),_:1}),l(g,{label:"机构名称",prop:"orgName"},{default:t(()=>[l(b,{modelValue:a.orgName,"onUpdate:modelValue":e[2]||(e[2]=n=>a.orgName=n),placeholder:"请输入机构名称"},null,8,["modelValue"])]),_:1}),l(g,{label:"机构类型",prop:"orgType"},{default:t(()=>[l(ie,{modelValue:a.orgType,"onUpdate:modelValue":e[3]||(e[3]=n=>a.orgType=n),placeholder:"请选择机构类型",style:{width:"100%"},disabled:u.value},{default:t(()=>[l(D,{label:"省级",value:"province"}),l(D,{label:"市级",value:"city"}),l(D,{label:"网点",value:"outlet"})]),_:1},8,["modelValue","disabled"])]),_:1}),!_.value&&!u.value?(x(),B(g,{key:0,label:"父级机构",prop:"parentId"},{default:t(()=>[l(A,{modelValue:a.parentId,"onUpdate:modelValue":e[4]||(e[4]=n=>a.parentId=n),data:c.value,props:$,placeholder:"请选择父级机构",clearable:"","check-strictly":""},null,8,["modelValue","data"])]),_:1})):q("",!0),_.value||u.value?(x(),B(g,{key:1,label:"父级机构"},{default:t(()=>[l(b,{value:Q.value,disabled:""},null,8,["value"])]),_:1})):q("",!0),l(g,{label:"地址",prop:"address"},{default:t(()=>[l(b,{modelValue:a.address,"onUpdate:modelValue":e[5]||(e[5]=n=>a.address=n),placeholder:"请输入地址"},null,8,["modelValue"])]),_:1}),l(g,{label:"联系人",prop:"contactPerson"},{default:t(()=>[l(b,{modelValue:a.contactPerson,"onUpdate:modelValue":e[6]||(e[6]=n=>a.contactPerson=n),placeholder:"请输入联系人"},null,8,["modelValue"])]),_:1}),l(g,{label:"联系电话",prop:"contactPhone"},{default:t(()=>[l(b,{modelValue:a.contactPhone,"onUpdate:modelValue":e[7]||(e[7]=n=>a.contactPhone=n),placeholder:"请输入联系电话"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(S,{modelValue:T.value,"onUpdate:modelValue":e[12]||(e[12]=n=>T.value=n),title:"移动机构",width:"500px"},{footer:t(()=>[l(r,{onClick:e[11]||(e[11]=n=>T.value=!1)},{default:t(()=>[...e[22]||(e[22]=[s("取消",-1)])]),_:1}),l(r,{type:"primary",loading:U.value,onClick:ne},{default:t(()=>[...e[23]||(e[23]=[s(" 确定 ",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(L,{"label-width":"100px"},{default:t(()=>[l(g,{label:"当前机构"},{default:t(()=>{var n;return[l(b,{value:(n=P.value)==null?void 0:n.orgName,disabled:""},null,8,["value"])]}),_:1}),l(g,{label:"目标父级"},{default:t(()=>[l(A,{modelValue:z.value,"onUpdate:modelValue":e[10]||(e[10]=n=>z.value=n),data:c.value,props:$,placeholder:"请选择目标父级机构",clearable:"","check-strictly":""},null,8,["modelValue","data"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),dl=pe(Fe,[["__scopeId","data-v-762b1183"]]);export{dl as default};