PermissionResource-D8oXRE4V.js 10 KB

1
  1. import A from"./ContentContainer-gbGCV-Ag.js";import{_ as M,B as E}from"./Modal-Bso321h0.js";/* empty css *//* empty css */import{C as Q}from"./index-mAXw1lbe.js";import{u as U,c as k,o as I,a as V,D as r,A as l,s as g,$ as w,X as a,F as j,Z as z,J as T,j as y,w as G,q as O,m as J,Y as W,r as X,x as Y,a8 as Z,B as H,I as D}from"./vue-vendor-BdC0yijC.js";import{_ as L,u as q,aD as K,B as x}from"./index-BXFjXy9U.js";/* empty css */import"./index-DGmDr7Bn.js";import{T as ee}from"./TreeParts-JNkugB-P.js";import{a as oe,F as se}from"./index-C-cMefgr.js";import{S as re}from"./index-CXPh8ag9.js";import"./index-wO6pJ9oc.js";import{S as ne}from"./index-CzRpKIrM.js";import"./index-CA2q5uMI.js";/* empty css */import"./index-BVNoxOpZ.js";/* empty css *//* empty css */import{S as te}from"./index-CeYPIg5l.js";import{P as ae}from"./index-CIcyAJYV.js";import{S as le}from"./index-BQQAHnA5.js";import{I as ie}from"./index-Bc4thznF.js";import{I as ue}from"./index-1SjORde5.js";import{Q as me,D as ce,a as de,U as pe,C as Ie,b as _e}from"./resource-CPYomRTu.js";import{M as R}from"./index-CmJovvrp.js";import"./index-C_DrGE0O.js";import"./index-B_I0POCR.js";import"./index-CbOy1mVE.js";import"./render-function-CV4zhQl4.js";import"./index-DTIQvD6J.js";import"./use-merge-state-Db-kHu2v.js";/* empty css */import"./DeleteModal-D0CHvIxG.js";import"./index-927-iqvI.js";import"./index-B3z4cY-J.js";import"./responsive-observe-4ACH6YSC.js";import"./index.es-BMKnEbvs.js";const fe=["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"],ve={iconsList:fe},be={class:"icon-selector"},ge={class:"icon-box"},he={class:"icons-grid"},$e=["onClick"],ye={__name:"IconPicker",props:{modelValue:{type:String,default:""}},emits:["update:modelValue"],setup(h,{emit:v}){const d=h,{modelValue:m}=U(d),_=v,p=ve.iconsList||[],f=n=>{_("update:modelValue",n)};return(n,o)=>{const s=le,t=ae;return I(),k("div",be,[V("div",ge,[r(t,{trigger:"click",position:"right"},{content:l(()=>[r(s,{style:{height:"60vh",width:"45vw","overflow-y":"auto"}},{default:l(()=>[V("div",he,[(I(!0),k(j,null,z(a(p),(c,u)=>(I(),k("div",{key:u,onClick:C=>f(c),class:"icon-item"},[(I(),g(w(c))),V("span",null,T(c),1)],8,$e))),128))])]),_:1})]),default:l(()=>[(I(),g(w(a(m))))]),_:1})])])}}},Ve=L(ye,[["__scopeId","data-v-ebbc3b3d"]]),P={__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(h,{emit:v}){const d=v,{t:m,locale:_}=q(),p=h,f=y([{value:"3",label:m("permission.resource.page")},{value:"0",label:m("permission.resource.menu")},{value:"1",label:m("permission.resource.button")}]),{resource_form:n}=U(p),o=s=>{d("statusChange",s)};return G(()=>_.value,()=>{f.value=[{value:"3",label:m("permission.resource.page")},{value:"0",label:m("permission.resource.menu")},{value:"1",label:m("permission.resource.button")}]}),(s,t)=>{const c=ie,u=oe,C=te,$=ue,N=ne,F=re,i=se;return I(),g(i,{model:a(n),layout:"horizontal",ref:"resourceFormRef"},{default:l(()=>[r(u,{field:"parentName",label:s.$t("permission.resource.parent_org"),disabled:""},{default:l(()=>[r(c,{modelValue:a(n).parentName,"onUpdate:modelValue":t[0]||(t[0]=e=>a(n).parentName=e)},null,8,["modelValue"])]),_:1},8,["label"]),r(u,{field:"status",label:s.$t("permission.resource.status")},{default:l(()=>[r(C,{modelValue:a(n).status,"onUpdate:modelValue":t[1]||(t[1]=e=>a(n).status=e),onChange:t[2]||(t[2]=e=>o(a(n).status)),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue"])]),_:1},8,["label"]),r(u,{field:"menuName",label:s.$t("permission.resource.resource_name"),rules:[{required:!0,message:s.$t("permission.resource.resource_name_required")},{maxLength:30,message:s.$t("permission.max_length_30")}]},{default:l(()=>[r(c,{modelValue:a(n).menuName,"onUpdate:modelValue":t[3]||(t[3]=e=>a(n).menuName=e)},null,8,["modelValue"])]),_:1},8,["label","rules"]),a(n).menuType==="0"?(I(),g(u,{key:0,field:"orderNum",label:s.$t("permission.resource.order"),tooltip:s.$t("permission.resource.order_tips"),rules:[{required:!0,message:s.$t("permission.resource.resource_name_required")}]},{default:l(()=>[r($,{modelValue:a(n).orderNum,"onUpdate:modelValue":t[4]||(t[4]=e=>a(n).orderNum=e),min:1},null,8,["modelValue"])]),_:1},8,["label","tooltip","rules"])):O("",!0),r(u,{field:"path",label:s.$t("permission.resource.address"),rules:[{required:!0,message:s.$t("permission.resource.address_required")},{maxLength:30,message:s.$t("permission.max_length_30")}]},{default:l(()=>[r(c,{modelValue:a(n).path,"onUpdate:modelValue":t[5]||(t[5]=e=>a(n).path=e)},null,8,["modelValue"])]),_:1},8,["label","rules"]),r(u,{field:"icon",label:s.$t("permission.resource.icon")},{default:l(()=>[r(Ve,{modelValue:a(n).icon,"onUpdate:modelValue":t[6]||(t[6]=e=>a(n).icon=e)},null,8,["modelValue"])]),_:1},8,["label"]),r(u,{field:"menuType",label:s.$t("permission.resource.menu_type"),rules:[{required:!0,message:s.$t("permission.resource.menu_type_required")}]},{default:l(()=>[r(N,{modelValue:a(n).menuType,"onUpdate:modelValue":t[7]||(t[7]=e=>a(n).menuType=e),options:f.value,"field-names":s.fieldNames,style:{width:"320px"},placeholder:s.$t("permission.select_placeholder")},null,8,["modelValue","options","field-names","placeholder"])]),_:1},8,["label","rules"]),r(u,{field:"description",label:s.$t("permission.resource.description")},{default:l(()=>[r(c,{modelValue:a(n).description,"onUpdate:modelValue":t[8]||(t[8]=e=>a(n).description=e),placeholder:s.$t("permission.input_placeholder")},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),r(u,{field:"perms",label:s.$t("permission.resource.perms"),rules:[{required:!0,message:s.$t("permission.resource.perms_required")},{maxLength:30,message:s.$t("permission.max_length_30")}]},{default:l(()=>[r(c,{modelValue:a(n).perms,"onUpdate:modelValue":t[9]||(t[9]=e=>a(n).perms=e)},null,8,["modelValue"])]),_:1},8,["label","rules"]),r(u,{field:"component",label:s.$t("permission.resource.component"),style:{align:"start"},rules:[{required:!0,message:s.$t("permission.resource.component_required")},{maxLength:30,message:s.$t("permission.max_length_30")}]},{default:l(()=>[r(c,{modelValue:a(n).component,"onUpdate:modelValue":t[10]||(t[10]=e=>a(n).component=e)},null,8,["modelValue"])]),_:1},8,["label","rules"]),r(u,null,{default:l(()=>[r(F,null,{default:l(()=>[J(s.$slots,"actions")]),_:3})]),_:3})]),_:3},8,["model"])}}},Ce={class:"resourceanization-container"},Ne={class:"left"},ke={class:"right"},Fe={__name:"index",setup(h){const v=W(),{t:d}=q(),m=y(null),_=y(!1),p=y(!0),f=y([]),n={add_permission:"system:menu:add",delete_permission:"system:menu:delete"},o=X({parentName:"",status:0,menuName:"",path:"",icon:"",menuType:"0",description:"",perms:"",component:""}),s=async()=>{const{code:i,data:{rows:e}}=await me();i==200&&(f.value=e)},t=async i=>{const{data:{data:e}}=await de(i);o.resourceId=i,o.parentId=e.parentId,o.parentName=e.parentName,o.menuName=e.menuName,o.path=e.path,o.status=e.status,o.icon=e.icon,o.menuType=e.menuType,o.description=e.description,o.perms=e.perms,o.component=e.component,o.orderNum=Number(e.orderNum),p.value=!0},c=i=>{o.resourceId=null,o.parentId=i.menuId,o.parentName=i.menuName,o.menuName="",o.path="",o.status="0",o.icon="",o.menuType="0",o.description="",o.perms="",o.component="",o.orderNum=0,_.value=!0,p.value=!1},u=async({menuId:i})=>{const{code:e}=await ce(i);e===200&&R.success({content:d("permission.org.delete_success")}),s()},C=async i=>{const e={menuId:o.resourceId[0],status:i},{code:b}=await _e(e);b===200&&(R.success({content:d("permission.status_switch_success")}),s())},$=async()=>{m.value.$refs.resourceFormRef.validate&&m.value.$refs.resourceFormRef.validate(async i=>{if(!i){const e={...o,menuId:p.value&&o.resourceId?o.resourceId[0]:null},b=p.value?pe:Ie,{code:S}=await b(e);if(S===200){const B=p.value?d("permission.edit"):d("permission.add");R.success({content:`${B}${d("permission.success")}`}),s(),_.value=!1}}})},N=()=>{o.resourceId=null,o.parentName="",o.status=0,o.resourceName="",o.leader="",o.orderNum="",o.address=""},F=()=>{p.value=!0,_.value=!1};return Y(()=>{K("system:menu:list")?s():v.push("/denied")}),(i,e)=>{const b=x,S=Q,B=Z("hasPerm");return I(),k("div",Ce,[V("div",Ne,[r(ee,{treeData:f.value,title:i.$t("permission.resource.tree_title"),fieldNames:{key:"menuId",title:"menuName",children:"children"},permission:n,onNodeClick:t,onAddBtnClick:c,onDeleteBtnClick:u},null,8,["treeData","title"])]),V("div",ke,[r(S,{title:i.$t("permission.resource.details"),style:{height:"100%"}},{default:l(()=>[r(P,{resource_form:o,onStatusChange:C,onSave:$,onReset:N},{actions:l(()=>[H((I(),g(b,{onClick:$},{default:l(()=>[D(T(i.$t("permission.resource.save")),1)]),_:1})),[[B,"system:menu:edit"]]),r(b,{onClick:N},{default:l(()=>[D(T(i.$t("permission.resource.reset")),1)]),_:1})]),_:1},8,["resource_form"])]),_:1},8,["title"])]),r(M,{visible:_.value,onOk:$,onCancel:F,title:i.$t("permission.resource.add")},{default:l(()=>[r(P,{ref_key:"resourceForm",ref:m,resource_form:o},null,8,["resource_form"])]),_:1},8,["visible","title"])])}}},Se=L(Fe,[["__scopeId","data-v-360d224c"]]),Io={__name:"PermissionResource",setup(h){return(v,d)=>(I(),g(A,null,{default:l(()=>[r(E,{current_label:"资源"}),r(Se)]),_:1}))}};export{Io as default};