import{M as l,K as N,q as E,z as R,B as T,C as V,a0 as q,ax as A}from"./index.17037962789732.js";import"./index.1703796278973300.js";import"./index.170379627897315.js";import"./index.170379627897317.js";import"./index.1703796278973301.js";import"./index.1703796278973302.js";import"./index.170379627897332.js";import"./index.1703796278973303.js";import"./index.170379627897339.js";import"./index.170379627897316.js";import"./index.170379627897314.js";import"./index.1703796278973304.js";import"./index.1703796278973305.js";import"./index.1703796278973306.js";import"./index.170379627897336.js";import{_ as J}from"./index.vue_vue_type_script_setup_true_lang.17037962789733.js";import"./index.170379627897329.js";import"./index.170379627897330.js";import{_ as u}from"./index.vue_vue_type_script_setup_true_name_PermissionButton_lang.1703796278973.js";import F from"./EditDialog.17037962789733.js";import{g as L,a as b,e as M,d as U}from"./permission.17037962789732.js";import{a as K}from"./utils.1703796278973.js";import{u as G}from"./permission.1703796278973.js";import{d as H,k as x,v as Q,r as _,o as k,c as C,a as t,z as W,b as e,u as p,t as f,B as X}from"./vue.1703796278973.js";import{_ as Y}from"./_plugin-vue_export-helper.1703796278973.js";import"./index.17037962789733.js";import"./dayjs.min.1703796278973.js";import"./isArray.1703796278973.js";import"./editor.api.1703796278973.js";import"./preload-helper.1703796278973.js";import"./monaco.contribution.1703796278973.js";import"./index.170379627897333.js";import"./index.170379627897320.js";import"./index.170379627897321.js";import"./index.170379627897337.js";import"./index.170379627897318.js";import"./index.170379627897319.js";import"./default.1703796278973.js";import"./index.1703796278973299.js";import"./system.1703796278973.js";import"./comm.1703796278973.js";import"./index.170379627897334.js";import"./consts.1703796278973.js";import"./404.1703796278973.js";import"./moment.1703796278973.js";const Z={class:"permission-container"},ee=H({__name:"index",setup(te){const n="system/Permission",P=G().hasPermission,y=[{title:"标识",dataIndex:"id",key:"id",ellipsis:!0,fixed:"left",search:{type:"string"}},{title:"名称",dataIndex:"name",key:"name",ellipsis:!0,search:{type:"string",first:!0}},{title:"状态",dataIndex:"status",key:"status",scopedSlots:!0,search:{type:"select",options:[{label:"启用",value:1},{label:"禁用",value:0}],handleValue:s=>s}},{title:"操作",dataIndex:"action",key:"action",width:"200px",fixed:"right",scopedSlots:!0}],h=x({}),S=s=>{h.value=s},d=x({}),a={openDialog:(s={})=>{m.selectItem={...s},m.visible=!0},clickImport:s=>{if(s.type==="application/json"){const o=new FileReader;o.readAsText(s),o.onload=c=>{try{const r=JSON.parse(c.target.result);b(r).then(g=>{g.status===200&&(l.success("导入成功"),a.refresh())})}catch{l.error("导入失败,请重试!")}}}else l.error("请上传json格式");return!1},clickExport:()=>{const s={paging:!1,...h.value};M(s).then(o=>{o.status===200?(K(o.result,"权限数据"),l.success("导出成功")):l.error("导出错误")})},changeStatus:s=>{const o={...s,status:s.status?0:1};b(o).then(()=>{l.success("操作成功"),d.value.reload()})},clickDel:s=>{U(s.id).then(o=>{var c;o.status===200&&((c=d.value)==null||c.reload(),l.success("操作成功!"))})},refresh:()=>{d.value.reload()}},m=Q({selectItem:{},visible:!1});return(s,o)=>{const c=_("pro-search"),r=_("AIcon"),g=N,I=E,v=R,$=T,j=V,B=J,D=q,O=A,w=_("FullPage"),z=_("page-container");return k(),C(z,null,{default:t(()=>[W("div",Z,[e(c,{columns:y,target:"system-permission",onSearch:S}),e(w,null,{default:t(()=>[e(O,{ref_key:"tableRef",ref:d,columns:y,request:p(L),model:"TABLE",params:p(h),defaultParams:{pageSize:10,sorts:[{name:"id",order:"asc"}]},pagination:{showSizeChanger:!0,pageSizeOptions:["10","20","50","100"]}},{headerTitle:t(()=>[e(u,{type:"primary",hasPermission:`${n}:add`,onClick:o[0]||(o[0]=i=>a.openDialog(void 0))},{default:t(()=>[e(r,{type:"PlusOutlined"}),f("新增 ")]),_:1},8,["hasPermission"]),e(j,{trigger:"hover"},{overlay:t(()=>[e($,null,{default:t(()=>[e(v,null,{default:t(()=>[e(I,{name:"file",action:"#",accept:".json",showUploadList:!1,"before-upload":a.clickImport,disabled:!p(P)(`${n}:import`)},{default:t(()=>[e(u,{hasPermission:`${n}:import`},{default:t(()=>[f(" 导入 ")]),_:1},8,["hasPermission"])]),_:1},8,["before-upload","disabled"])]),_:1}),e(v,null,{default:t(()=>[e(u,{hasPermission:`${n}:export`,popConfirm:{title:"确认导出?",onConfirm:()=>a.clickExport()}},{default:t(()=>[f(" 导出 ")]),_:1},8,["hasPermission","popConfirm"])]),_:1})]),_:1})]),default:t(()=>[e(g,null,{default:t(()=>[f("批量操作")]),_:1})]),_:1})]),status:t(i=>[e(B,{status:i.status,text:i.status?"启用":"禁用",statusNames:{1:"success",0:"error"}},null,8,["status","text"])]),action:t(i=>[e(D,{size:16},{default:t(()=>[e(u,{hasPermission:`${n}:update`,type:"link",tooltip:{title:"编辑"},onClick:se=>a.openDialog(i)},{default:t(()=>[e(r,{type:"EditOutlined"})]),_:2},1032,["hasPermission","onClick"]),e(u,{hasPermission:`${n}:action`,type:"link",popConfirm:{title:`确定要${i.status?"禁用":"启用"}吗?`,onConfirm:()=>a.changeStatus(i)},tooltip:{title:i.status?"禁用":"启用"}},{default:t(()=>[e(r,{type:i.status?"StopOutlined":"PlayCircleOutlined"},null,8,["type"])]),_:2},1032,["hasPermission","popConfirm","tooltip"]),e(u,{hasPermission:`${n}:delete`,type:"link",tooltip:{title:i.status?"请先禁用,再删除":"删除"},popConfirm:{title:"确认删除",onConfirm:()=>a.clickDel(i)},disabled:i.status},{default:t(()=>[e(r,{type:"DeleteOutlined"})]),_:2},1032,["hasPermission","tooltip","popConfirm","disabled"])]),_:2},1024)]),_:1},8,["request","params"])]),_:1}),p(m).visible?(k(),C(F,{key:0,visible:p(m).visible,"onUpdate:visible":o[1]||(o[1]=i=>p(m).visible=i),data:p(m).selectItem,onRefresh:a.refresh},null,8,["visible","data","onRefresh"])):X("",!0)])]),_:1})}}});const He=Y(ee,[["__scopeId","data-v-62be9f7d"]]);export{He as default};