| 1 |
- import D from"./ContentContainer-Dch0KPws.js";import{_ as P,B as A}from"./Modal-CHQODjMk.js";import{T as M}from"./TreeParts-CN_tSL7X.js";import{_ as S,ac as U,c as m,o as I,d as $,e as C,f as n,w as r,F as q,p as E,j as s,g as V,ae as B,t as F,r as y,s as Q,b as z,n as j,ad as G,a2 as O,v as W,i as L,B as T}from"./index-CywOiDoM.js";import{Q as x,a as H,D as J,U as K,b as X,C as Y}from"./resource-D_3nHu1b.js";const Z=["iconVoice","IconSunFill","IconApps","IconArchive","IconBarChart","IconBook","IconBookmark","IconBranch","IconBug","IconBulb","IconCalendar","IconCamera","IconCloud","IconCommand","IconCommon","IconCompass","IconComputer","IconCopyright","IconDashboard","IconDesktop","IconDice","IconDriveFile","IconEar","IconEmail","IconEmpty","IconExperiment","IconFileAudio","IconFileImage","IconFilePdf","IconFileVideo","IconFile","IconFire","IconFolderAdd","IconFolderDelete","IconFolder","IconGift","IconIdcard","IconImageClose","IconImage","IconInteraction","IconLanguage","IconLayers","IconLayout","IconLocation","IconLock","IconLoop","IconMan","IconMenu","IconMobile","IconMoon","IconMosaic","IconNav","IconPalette","IconPen","IconPhone","IconPrinter","IconPublic","IconPushpin","IconQrcode","IconRelation","IconRobotAdd","IconRobot","IconSafe","IconSchedule","IconShake","IconSkin","IconStamp","IconStorage","IconSun","IconTag","IconTags","IconThunderbolt","IconTool","IconTrophy","IconUnlock","IconUserAdd","IconUserGroup","IconUser","IconVideoCamera","IconWifi"],ee={iconsList:Z},oe={class:"icon-selector"},ne={class:"icon-box"},te={class:"icons-grid"},se=["onClick"],ae={__name:"IconPicker",props:{modelValue:{type:String,default:""}},emits:["update:modelValue"],setup(b,{emit:d}){const i=b,{modelValue:f}=U(i),h=d,e=ee.iconsList,_=l=>{h("update:modelValue",l)};return(l,t)=>{const u=m("a-scrollbar"),c=m("a-popover");return I(),$("div",oe,[C("div",ne,[n(c,{trigger:"click",position:"right"},{content:r(()=>[n(u,{style:{height:"60vh",width:"45vw","overflow-y":"auto"}},{default:r(()=>[C("div",te,[(I(!0),$(q,null,E(s(e),(p,g)=>(I(),$("div",{key:g,onClick:N=>_(p),class:"icon-item"},[(I(),V(B(p))),C("span",null,F(p),1)],8,se))),128))])]),_:1})]),default:r(()=>[(I(),V(B(s(f))))]),_:1})])])}}},re=S(ae,[["__scopeId","data-v-9b05c37a"]]),R={__name:"ResourceForm",props:{resource_form:{type:Object,required:!0,default:()=>({parentName:"",status:"0",menuName:"",icon:"",menuType:"0",description:"",perms:"",component:"",orderNum:0,path:""})}},emits:["statusChange"],setup(b,{emit:d}){y([]),y([]);const i=d,f=b,h=[{value:"3",label:"页面"},{value:"0",label:"菜单"},{value:"1",label:"按钮"}],{resource_form:e}=U(f),_=l=>{i("statusChange",l)};return(l,t)=>{const u=m("a-input"),c=m("a-form-item"),p=m("a-switch"),g=m("a-select"),N=m("a-space"),a=m("a-form");return I(),V(a,{model:s(e),layout:"horizontal"},{default:r(()=>[n(c,{field:"parentName",label:l.$t("permission.resource.parent_org"),disabled:""},{default:r(()=>[n(u,{modelValue:s(e).parentName,"onUpdate:modelValue":t[0]||(t[0]=o=>s(e).parentName=o)},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"status",label:l.$t("permission.resource.status")},{default:r(()=>[n(p,{modelValue:s(e).status,"onUpdate:modelValue":t[1]||(t[1]=o=>s(e).status=o),onChange:t[2]||(t[2]=o=>_(s(e).status)),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"menuName",label:l.$t("permission.resource.org_name"),rules:[{required:!0,message:"资源名称必填"},{maxLength:50,message:"长度不超过50"}]},{default:r(()=>[n(u,{modelValue:s(e).menuName,"onUpdate:modelValue":t[3]||(t[3]=o=>s(e).menuName=o)},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"path",label:l.$t("permission.resource.address"),rules:[{required:!0,message:"资源地址必填"},{maxLength:50,message:"长度不超过50"}]},{default:r(()=>[n(u,{modelValue:s(e).path,"onUpdate:modelValue":t[4]||(t[4]=o=>s(e).path=o)},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"icon",label:l.$t("permission.resource.icon")},{default:r(()=>[n(re,{modelValue:s(e).icon,"onUpdate:modelValue":t[5]||(t[5]=o=>s(e).icon=o)},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"menuType",label:l.$t("permission.resource.menuType"),rules:[{required:!0,message:"资源类型必填"}]},{default:r(()=>[n(g,{modelValue:s(e).menuType,"onUpdate:modelValue":t[6]||(t[6]=o=>s(e).menuType=o),options:h,"field-names":l.fieldNames,style:{width:"320px"},placeholder:"请选择"},null,8,["modelValue","field-names"])]),_:1},8,["label"]),n(c,{field:"description",label:l.$t("permission.resource.description")},{default:r(()=>[n(u,{modelValue:s(e).description,"onUpdate:modelValue":t[7]||(t[7]=o=>s(e).description=o),placeholder:"请输入提示词"},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"perms",label:l.$t("permission.resource.perms"),rules:[{required:!0,message:"资源控制权限字符必填"},{maxLength:50,message:"长度不超过50"}]},{default:r(()=>[n(u,{modelValue:s(e).perms,"onUpdate:modelValue":t[8]||(t[8]=o=>s(e).perms=o)},null,8,["modelValue"])]),_:1},8,["label"]),n(c,{field:"component",label:l.$t("permission.resource.component"),style:{align:"start"},rules:[{required:!0,message:"组件地址必填"},{maxLength:50,message:"长度不超过50"}]},{default:r(()=>[n(u,{modelValue:s(e).component,"onUpdate:modelValue":t[9]||(t[9]=o=>s(e).component=o)},null,8,["modelValue"])]),_:1},8,["label"]),n(c,null,{default:r(()=>[n(N,null,{default:r(()=>[Q(l.$slots,"actions")]),_:3})]),_:3})]),_:3},8,["model"])}}},le={class:"organization-container"},ce={class:"left"},ie={class:"right"},ue={__name:"index",setup(b){const d=y(!1),i=y(!0),f=y([]),h={add_permission:"system:resource:add",delete_permission:"system:resource:delete"},e=z({parentName:"",status:0,menuName:"",path:"",icon:"",menuType:"0",description:"",perms:"",component:""}),_=async()=>{const{code:a,data:{rows:o}}=await x();a==200&&(f.value=o)},l=async a=>{const{data:{data:o}}=await H(a);e.resourceId=a,e.parentId=o.parentId,e.parentName=o.parentName,e.menuName=o.menuName,e.path=o.path,e.status=o.status,e.icon=o.icon,e.menuType=o.menuType,e.description=o.description,e.perms=o.perms,e.component=o.component,i.value=!0,e.orderNum=0},t=a=>{e.resourceId=null,e.parentId=a.menuId,e.parentName=a.menuName,e.menuName="",e.path="",e.status="0",e.icon="",e.menuType="0",e.description="",e.perms="",e.component="",e.orderNum=0,d.value=!0,i.value=!1},u=async({menuId:a})=>{const{code:o}=await J(a);o===200&&T.success({title:"删除",content:"删除成功"}),_()},c=async a=>{const o={menuId:e.resourceId[0],status:a},{code:v}=await K(o);v===200&&(T.success({title:"状态更新",content:"状态更新成功"}),_())},p=async()=>{const a={...e,menuId:i.value&&e.resourceId?e.resourceId[0]:null},o=i.value?X:Y,{code:v}=await o(a);if(v===200){const k=i.value?"编辑":"新增";T.success({title:`${k}用户`,content:`${k}成功`}),_(),d.value=!1}},g=()=>{e.resourceId=null,e.parentName="",e.status=0,e.resourceName="",e.leader="",e.orderNum="",e.address=""},N=()=>{i.value=!0,d.value=!1};return j(()=>{G("system:resource:list")&&_()}),(a,o)=>{const v=m("a-button"),k=m("a-card"),w=O("hasPerm");return I(),$("div",le,[C("div",ce,[n(M,{treeData:f.value,title:a.$t("permission.resource.organization"),fieldNames:{key:"menuId",title:"menuName",children:"children"},permission:h,onNodeClick:l,onAddBtnClick:t,onDeleteBtnClick:u},null,8,["treeData","title"])]),C("div",ie,[n(k,{title:a.$t("permission.resource.details"),style:{height:"100%"}},{default:r(()=>[n(R,{resource_form:e,onStatusChange:c,onSave:p,onReset:g},{actions:r(()=>[W((I(),V(v,{onClick:p},{default:r(()=>[L(F(a.$t("permission.resource.save")),1)]),_:1})),[[w,"system:resource:edit"]]),n(v,{onClick:g},{default:r(()=>[L(F(a.$t("permission.resource.reset")),1)]),_:1})]),_:1},8,["resource_form"])]),_:1},8,["title"])]),n(P,{visible:d.value,onOk:p,onCancel:N,title:a.$t("permission.resource.add")},{default:r(()=>[n(R,{resource_form:e},null,8,["resource_form"])]),_:1},8,["visible","title"])])}}},me=S(ue,[["__scopeId","data-v-a93abcd1"]]),ge={__name:"PermissionResource",setup(b){return(d,i)=>(I(),V(D,null,{default:r(()=>[n(A,{current_label:"资源"}),n(me)]),_:1}))}};export{ge as default};
|