1 |
- import{d as te,af as c,r as P,x as se,a,e as $,M as R,B as le,K as ce,i as g,J as de,ai as G,v as pe,I as W,z as ae,at as ue,cf as ge,o as S,c as X,aL as me,A as fe,w as z,aE as Y,j as M,m as B,t as I,l as L,av as he,F as we,_ as ye,q as xe,f as be,a_ as ne,aw as oe,am as ve}from"./index-34852970.js";import{g as q,_ as Pe}from"./Form-c81cf084.js";import{E as Se}from"./index-d6d07698.js";import{_ as Ae}from"./_plugin-vue_export-helper-1b428a4d.js";import{u as ke}from"./useForm-fdf73238.js";import{d as ze}from"./download-20922b56.js";const Le=Ae(te({name:"Table",props:{pageSize:c.number.def(10),currentPage:c.number.def(1),selection:c.bool.def(!1),showOverflowTooltip:c.bool.def(!0),columns:{type:Array,default:()=>[]},expand:c.bool.def(!1),pagination:{type:Object,default:()=>{}},reserveSelection:c.bool.def(!1),loading:c.bool.def(!1),reserveIndex:c.bool.def(!1),align:c.string.validate(e=>["left","center","right"].includes(e)).def("center"),headerAlign:c.string.validate(e=>["left","center","right"].includes(e)).def("center"),data:{type:Array,default:()=>[]}},emits:["update:pageSize","update:currentPage","register"],setup(e,{attrs:o,slots:p,emit:m,expose:_}){const u=P();se(()=>{const t=a(u);m("register",t==null?void 0:t.$parent,u)});const x=P(e.pageSize),f=P(e.currentPage),n=P({}),i=P({}),r=$(()=>{const t={...e};return Object.assign(t,a(i)),t}),b=(t,O)=>{var A;const{columns:T}=a(r);for(const C of O||T)for(const j of t)C.field===j.field?pe(C,j.path,j.value):(A=C.children)!=null&&A.length&&b(t,C.children)},D=P([]),E=t=>{D.value=t};_({setProps:(t={})=>{i.value=Object.assign(a(i),t),n.value=t},setColumn:b,selections:D});const s=$(()=>Object.assign({small:!1,background:!0,pagerCount:document.body.clientWidth<992?5:7,layout:"total, sizes, prev, pager, next, jumper",pageSizes:[10,20,30,50,100],disabled:!1,hideOnSinglePage:!1,total:10},a(r).pagination));R(()=>a(r).pageSize,t=>{x.value=t}),R(()=>a(r).currentPage,t=>{f.value=t}),R(()=>x.value,t=>{m("update:pageSize",t)}),R(()=>f.value,t=>{m("update:currentPage",t)});const v=$(()=>{const t={...o,...e};return delete t.columns,delete t.data,t}),d=()=>{const{selection:t,reserveSelection:O,align:T,headerAlign:A}=a(r);return t?g(W,{type:"selection",reserveSelection:O,align:T,headerAlign:A,width:"50"},null):void 0},w=()=>{const{align:t,headerAlign:O,expand:T}=a(r);return T?g(W,{type:"expand",align:t,headerAlign:O},{default:A=>q(p,"expand",A)}):void 0},U=t=>{const{columns:O,reserveIndex:T,pageSize:A,currentPage:C,align:j,headerAlign:Z,showOverflowTooltip:ie}=a(r);return[w(),d()].concat((t||O).map(l=>{if(l.type==="index")return g(W,{type:"index",index:l.index?l.index:N=>((k,J,H,Q)=>{const K=J+1;return k?H*(Q-1)+K:K})(T,N,A,C),align:l.align||j,headerAlign:l.headerAlign||Z,label:l.label,width:"65px"},null);{const N={...l};return N.children&&delete N.children,g(W,G({showOverflowTooltip:ie,align:j,headerAlign:Z},N,{prop:l.field}),{default:k=>{var J;return l.children&&l.children.length?(H=>{const{align:Q,headerAlign:K,showOverflowTooltip:re}=a(r);return H.map(h=>{const V={...h};return V.children&&delete V.children,g(W,G({showOverflowTooltip:re,align:Q,headerAlign:K},V,{prop:h.field}),{default:F=>{var ee;return h.children&&h.children.length?U(h.children):q(p,h.field,F)||((ee=h==null?void 0:h.formatter)==null?void 0:ee.call(h,F.row,F.column,F.row[h.field],F.$index))||F.row[h.field]},header:q(p,`${h.field}-header`)})})})(l.children):q(p,l.field,k)||((J=l==null?void 0:l.formatter)==null?void 0:J.call(l,k.row,k.column,k.row[l.field],k.$index))||k.row[l.field]},header:()=>q(p,`${l.field}-header`)||l.label})}}))};return()=>le(g("div",null,[g(de,G({ref:u,data:a(r).data,"onSelection-change":E},a(v)),{default:()=>U(),append:()=>q(p,"append")}),a(r).pagination?g(Se,G({pageSize:x.value,"onUpdate:pageSize":t=>x.value=t,currentPage:f.value,"onUpdate:currentPage":t=>f.value=t,class:"float-right mb-15px mt-15px"},a(s)),null):void 0]),[[ce,a(r).loading]])}}),[["__scopeId","data-v-13b1dc86"]]),_e={key:0},Oe=te({name:"Search",__name:"Search",props:{schema:{type:Array,default:()=>[]},isCol:c.bool.def(!1),labelWidth:c.oneOfType([String,Number]).def("auto"),layout:c.string.validate(e=>["inline","bottom"].includes(e)).def("inline"),buttomPosition:c.string.validate(e=>["left","center","right"].includes(e)).def("center"),showSearch:c.bool.def(!0),showReset:c.bool.def(!0),expand:c.bool.def(!1),expandField:c.string.def(""),inline:c.bool.def(!0),model:{type:Object,default:()=>({})}},emits:["search","reset"],setup(e,{emit:o}){const{t:p}=ae(),m=e,_=o,u=P(!0),x=$(()=>{let s=ue(m.schema);if(m.expand&&m.expandField&&!a(u)){const v=ge(s,d=>d.field===m.expandField);if(v>-1){const d=s.length;s.splice(v+1,d)}}return m.layout==="inline"&&(s=s.concat([{field:"action",formItemProps:{labelWidth:"0px"}}])),s}),{register:f,elFormRef:n,methods:i}=ke({model:m.model||{}}),r=async()=>{var s;await((s=a(n))==null?void 0:s.validate(async v=>{if(v){const{getFormData:d}=i,w=await d();_("search",w)}}))},b=async()=>{var d;(d=a(n))==null||d.resetFields();const{getFormData:s}=i,v=await s();_("reset",v)},D=$(()=>({textAlign:m.buttomPosition})),E=()=>{var s;(s=a(n))==null||s.resetFields(),u.value=!a(u)};return(s,v)=>{const d=ye,w=xe,U=Pe;return S(),X(we,null,[g(U,{inline:e.inline,"is-col":e.isCol,"is-custom":!1,"label-width":e.labelWidth,schema:a(x),class:"-mb-15px","hide-required-asterisk":"",onRegister:a(f)},me({action:z(()=>[e.layout==="inline"?(S(),X("div",_e,[e.showSearch?(S(),M(w,{key:0,onClick:r},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:search"}),B(" "+I(a(p)("common.query")),1)]),_:1})):L("",!0),e.showReset?(S(),M(w,{key:1,onClick:b},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:refresh"}),B(" "+I(a(p)("common.reset")),1)]),_:1})):L("",!0),e.expand?(S(),M(w,{key:2,text:"",onClick:E},{default:z(()=>[B(I(a(p)(a(u)?"common.shrink":"common.expand"))+" ",1),g(d,{icon:a(u)?"ep:arrow-up":"ep:arrow-down"},null,8,["icon"])]),_:1})):L("",!0),Y(s.$slots,"actionMore")])):L("",!0)]),_:2},[fe(Object.keys(s.$slots),t=>({name:t,fn:z(()=>[Y(s.$slots,t)])}))]),1032,["inline","is-col","label-width","schema","onRegister"]),e.layout==="bottom"?(S(),X("div",{key:0,style:he(a(D))},[e.showSearch?(S(),M(w,{key:0,type:"primary",onClick:r},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:search"}),B(" "+I(a(p)("common.query")),1)]),_:1})):L("",!0),e.showReset?(S(),M(w,{key:1,onClick:b},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:refresh-right"}),B(" "+I(a(p)("common.reset")),1)]),_:1})):L("",!0),e.expand?(S(),M(w,{key:2,text:"",onClick:E},{default:z(()=>[B(I(a(p)(a(u)?"common.shrink":"common.expand"))+" ",1),g(d,{icon:a(u)?"ep:arrow-up":"ep:arrow-down"},null,8,["icon"])]),_:1})):L("",!0),Y(s.$slots,"actionMore")],4)):L("",!0)],64)}}}),{t:y}=ae(),Te=e=>{const o=be({pageSize:10,currentPage:1,total:10,tableList:[],params:{...(e==null?void 0:e.defaultParams)||{}},loading:!0,exportLoading:!1,currentRow:null}),p=$(()=>({...o.params,pageSize:o.pageSize,pageNo:o.currentPage}));R(()=>o.currentPage,()=>{f.getList()}),R(()=>o.pageSize,()=>{o.currentPage===1||(o.currentPage=1),f.getList()});const m=P(),_=P(),u=async()=>{await ve();const n=a(m);return n||console.error("The table is not registered. Please use the register method to register"),n},x=async n=>{let i=1;n instanceof Array?(i=n.length,await Promise.all(n.map(async r=>{await((e==null?void 0:e.delListApi)&&(e==null?void 0:e.delListApi(r)))}))):await((e==null?void 0:e.delListApi)&&(e==null?void 0:e.delListApi(n))),ne.success(y("common.delSuccess")),o.currentPage=(o.total%o.pageSize===i||o.pageSize===1)&&o.currentPage>1?o.currentPage-1:o.currentPage,await f.getList()},f={getList:async()=>{o.loading=!0;const n=await(e==null?void 0:e.getListApi(a(p)).finally(()=>{o.loading=!1}));n&&(o.tableList=n.list,o.total=n.total??0)},setProps:async(n={})=>{const i=await u();i==null||i.setProps(n)},setColumn:async n=>{const i=await u();i==null||i.setColumn(n)},getSelections:async()=>{const n=await u();return(n==null?void 0:n.selections)||[]},setSearchParams:n=>{o.params=Object.assign(o.params,{pageSize:o.pageSize,pageNo:1,...n}),o.currentPage!==1?o.currentPage=1:f.getList()},delList:async(n,i,r=!0)=>{const b=await u();!i||b!=null&&b.selections.length?r?oe.confirm(y("common.delMessage"),y("common.confirmTitle"),{confirmButtonText:y("common.ok"),cancelButtonText:y("common.cancel"),type:"warning"}).then(async()=>{await x(n)}):await x(n):ne.warning(y("common.delNoData"))},exportList:async n=>{o.exportLoading=!0,oe.confirm(y("common.exportMessage"),y("common.confirmTitle"),{confirmButtonText:y("common.ok"),cancelButtonText:y("common.cancel"),type:"warning"}).then(async()=>{var r;const i=await((r=e==null?void 0:e.exportListApi)==null?void 0:r.call(e,a(p)));i&&ze.excel(i,n)}).finally(()=>{o.exportLoading=!1})}};return e!=null&&e.props&&f.setProps(e.props),{register:(n,i)=>{m.value=n,_.value=i},elTableRef:_,tableObject:o,methods:f,tableMethods:f}};export{Oe as _,Le as a,Te as u};
|