Files
safePower/dist/assets/087AC4D233B64EB0menus.rC6Hg7HN.js
xiaozhiyong 9c5961efe9 更新
2026-04-29 09:15:49 +08:00

5 lines
4.1 KiB
JavaScript

/*!
Build based on gin-vue-admin
Time : 1776662816000 */
import{a as e,a1 as a,g as t,c as l,o,b as s,f as n,w as u,h as r,d,t as c,ay as i,K as m,b4 as p,b5 as h,H as y,E as f,b6 as v}from"./087AC4D233B64EB0index.D-00lXMX.js";import{u as w}from"./087AC4D233B64EB0authority.Cr6vBX_E.js";import{g as k,s as I}from"./087AC4D233B64EB0authorityBtn.DzNxd8yo.js";import{_ as b}from"./087AC4D233B64EB0_plugin-vue_export-helper.BCo6x5W8.js";const g={class:"sticky top-0.5 z-10"},_={class:"tree-content clear-both"},C={class:"custom-tree-node"},B={key:0},D={key:1},R={class:"dialog-footer"},x=b(Object.assign({name:"Menus"},{__name:"menus",props:{row:{default:function(){return{}},type:Object}},emits:["changeRow"],setup(b,{expose:x,emit:E}){const A=b,j=E,V=e(""),N=e([]),O=e([]),K=e(!1),S=e({children:"children",label:function(e){return e.meta.title},disabled:function(e){return A.row.defaultRouter===e.name}});(async()=>{const e=await p();N.value=e.data.menus;const a=(await h({authorityId:A.row.authorityId})).data.menus,t=[];a.forEach(e=>{a.some(a=>a.parentId===e.menuId)||t.push(Number(e.menuId))}),O.value=t})();const T=()=>{K.value=!0},U=e(null),W=async()=>{const e=U.value.getCheckedNodes(!1,!0);0===(await v({menus:e,authorityId:A.row.authorityId})).code&&f({type:"success",message:"菜单设置成功!"})};x({enterAndNext:()=>{W()},needConfirm:K});const z=e(!1),H=e([]),J=e([]),M=e();let q="";const F=e=>{J.value=e},G=e=>{z.value=!0,H.value=e.menuBtn},L=()=>{z.value=!1},P=async()=>{const e=J.value.map(e=>e.ID);0===(await I({menuID:q,selected:e,authorityId:A.row.authorityId})).code&&(f({type:"success",message:"设置成功"}),z.value=!1)},Q=(e,a)=>!e||-1!==a.meta.title.indexOf(e);return a(V,e=>{U.value.filter(e)}),(e,a)=>{const p=t("el-input"),h=t("el-button"),f=t("el-tree"),v=t("el-scrollbar"),I=t("el-table-column"),x=t("el-table"),E=t("el-dialog");return o(),l("div",null,[s("div",g,[n(p,{modelValue:V.value,"onUpdate:modelValue":a[0]||(a[0]=e=>V.value=e),class:"w-3/5",placeholder:"筛选"},null,8,["modelValue"]),n(h,{class:"float-right",type:"primary",onClick:W},{default:u(()=>[...a[2]||(a[2]=[r("确 定",-1)])]),_:1})]),s("div",_,[n(v,null,{default:u(()=>[n(f,{ref_key:"menuTree",ref:U,data:N.value,"default-checked-keys":O.value,props:S.value,"default-expand-all":"","highlight-current":"","node-key":"ID","show-checkbox":"","filter-node-method":Q,onCheck:T},{default:u(({node:e,data:t})=>{var p,f;return[s("span",C,[s("span",null,c(e.label),1),!e.checked||(null==(p=t.name)?void 0:p.startsWith("http://"))||(null==(f=t.name)?void 0:f.startsWith("https://"))?d("",!0):(o(),l("span",B,[n(h,{type:"primary",link:"",style:m({color:b.row.defaultRouter===t.name?"#E6A23C":"#85ce61"}),onClick:i(()=>(async e=>{const a=await w({authorityId:A.row.authorityId,AuthorityName:A.row.authorityName,parentId:A.row.parentId,defaultRouter:e.name});0===a.code&&(W(),j("changeRow","defaultRouter",a.data.authority.defaultRouter))})(t),["stop"])},{default:u(()=>[r(c(b.row.defaultRouter===t.name?"首页":"设为首页"),1)]),_:2},1032,["style","onClick"])])),t.menuBtn.length?(o(),l("span",D,[n(h,{type:"primary",link:"",onClick:i(()=>(async e=>{q=e.ID;const a=await k({menuID:q,authorityId:A.row.authorityId});0===a.code&&(G(e),await y(),a.data.selected&&a.data.selected.forEach(e=>{H.value.some(a=>{a.ID===e&&M.value.toggleRowSelection(a,!0)})}))})(t),["stop"])},{default:u(()=>[...a[3]||(a[3]=[r(" 分配按钮 ",-1)])]),_:1},8,["onClick"])])):d("",!0)])]}),_:1},8,["data","default-checked-keys","props"])]),_:1})]),n(E,{modelValue:z.value,"onUpdate:modelValue":a[1]||(a[1]=e=>z.value=e),title:"分配按钮","destroy-on-close":""},{footer:u(()=>[s("div",R,[n(h,{onClick:L},{default:u(()=>[...a[4]||(a[4]=[r("取 消",-1)])]),_:1}),n(h,{type:"primary",onClick:P},{default:u(()=>[...a[5]||(a[5]=[r("确 定",-1)])]),_:1})])]),default:u(()=>[n(x,{ref_key:"btnTableRef",ref:M,data:H.value,"row-key":"ID",onSelectionChange:F},{default:u(()=>[n(I,{type:"selection",width:"55"}),n(I,{label:"按钮名称",prop:"name"}),n(I,{label:"按钮备注",prop:"desc"})]),_:1},8,["data"])]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-8450bd73"]]);export{x as default};