1 |
- import{d as ae,af as c,r as S,x as re,a as t,e as $,M as R,B as se,K as ce,i as g,J as de,ai as G,v as pe,I as W,z as te,at as ue,cf as ge,o as P,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-03f5d926.js";import{g as q,_ as Se}from"./Form-16b1121e.js";import{E as Pe}from"./index-662200b7.js";import{_ as Ae}from"./_plugin-vue_export-helper-1b428a4d.js";import{u as ke}from"./useForm-6446c8a3.js";import{d as ze}from"./download-20922b56.js";const Le=Ae(ae({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=S();re(()=>{const a=t(u);m("register",a==null?void 0:a.$parent,u)});const x=S(e.pageSize),f=S(e.currentPage),n=S({}),i=S({}),l=$(()=>{const a={...e};return Object.assign(a,t(i)),a}),b=(a,O)=>{var A;const{columns:T}=t(l);for(const C of O||T)for(const j of a)C.field===j.field?pe(C,j.path,j.value):(A=C.children)!=null&&A.length&&b(a,C.children)},D=S([]),E=a=>{D.value=a};_({setProps:(a={})=>{i.value=Object.assign(t(i),a),n.value=a},setColumn:b,selections:D});const r=$(()=>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},t(l).pagination));R(()=>t(l).pageSize,a=>{x.value=a}),R(()=>t(l).currentPage,a=>{f.value=a}),R(()=>x.value,a=>{m("update:pageSize",a)}),R(()=>f.value,a=>{m("update:currentPage",a)});const v=$(()=>{const a={...o,...e};return delete a.columns,delete a.data,a}),d=()=>{const{selection:a,reserveSelection:O,align:T,headerAlign:A}=t(l);return a?g(W,{type:"selection",reserveSelection:O,align:T,headerAlign:A,width:"50"},null):void 0},w=()=>{const{align:a,headerAlign:O,expand:T}=t(l);return T?g(W,{type:"expand",align:a,headerAlign:O},{default:A=>q(p,"expand",A)}):void 0},U=a=>{const{columns:O,reserveIndex:T,pageSize:A,currentPage:C,align:j,headerAlign:Z,showOverflowTooltip:ie}=t(l);return[w(),d()].concat((a||O).map(s=>{if(s.type==="index")return g(W,{type:"index",index:s.index?s.index:N=>((k,J,H,Q)=>{const K=J+1;return k?H*(Q-1)+K:K})(T,N,A,C),align:s.align||j,headerAlign:s.headerAlign||Z,label:s.label,width:"65px"},null);{const N={...s};return N.children&&delete N.children,g(W,G({showOverflowTooltip:ie,align:j,headerAlign:Z},N,{prop:s.field}),{default:k=>{var J;return s.children&&s.children.length?(H=>{const{align:Q,headerAlign:K,showOverflowTooltip:le}=t(l);return H.map(h=>{const V={...h};return V.children&&delete V.children,g(W,G({showOverflowTooltip:le,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`)})})})(s.children):q(p,s.field,k)||((J=s==null?void 0:s.formatter)==null?void 0:J.call(s,k.row,k.column,k.row[s.field],k.$index))||k.row[s.field]},header:()=>q(p,`${s.field}-header`)||s.label})}}))};return()=>se(g("div",null,[g(de,G({ref:u,data:t(l).data,"onSelection-change":E},t(v)),{default:()=>U(),append:()=>q(p,"append")}),t(l).pagination?g(Pe,G({pageSize:x.value,"onUpdate:pageSize":a=>x.value=a,currentPage:f.value,"onUpdate:currentPage":a=>f.value=a,class:"float-right mb-15px mt-15px"},t(r)),null):void 0]),[[ce,t(l).loading]])}}),[["__scopeId","data-v-13b1dc86"]]),_e={key:0},Oe=ae({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}=te(),m=e,_=o,u=S(!0),x=$(()=>{let r=ue(m.schema);if(m.expand&&m.expandField&&!t(u)){const v=ge(r,d=>d.field===m.expandField);if(v>-1){const d=r.length;r.splice(v+1,d)}}return m.layout==="inline"&&(r=r.concat([{field:"action",formItemProps:{labelWidth:"0px"}}])),r}),{register:f,elFormRef:n,methods:i}=ke({model:m.model||{}}),l=async()=>{var r;await((r=t(n))==null?void 0:r.validate(async v=>{if(v){const{getFormData:d}=i,w=await d();_("search",w)}}))},b=async()=>{var d;(d=t(n))==null||d.resetFields();const{getFormData:r}=i,v=await r();_("reset",v)},D=$(()=>({textAlign:m.buttomPosition})),E=()=>{var r;(r=t(n))==null||r.resetFields(),u.value=!t(u)};return(r,v)=>{const d=ye,w=xe,U=Se;return P(),X(we,null,[g(U,{inline:e.inline,"is-col":e.isCol,"is-custom":!1,"label-width":e.labelWidth,schema:t(x),class:"-mb-15px","hide-required-asterisk":"",onRegister:t(f)},me({action:z(()=>[e.layout==="inline"?(P(),X("div",_e,[e.showSearch?(P(),M(w,{key:0,onClick:l},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:search"}),B(" "+I(t(p)("common.query")),1)]),_:1})):L("",!0),e.showReset?(P(),M(w,{key:1,onClick:b},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:refresh"}),B(" "+I(t(p)("common.reset")),1)]),_:1})):L("",!0),e.expand?(P(),M(w,{key:2,text:"",onClick:E},{default:z(()=>[B(I(t(p)(t(u)?"common.shrink":"common.expand"))+" ",1),g(d,{icon:t(u)?"ep:arrow-up":"ep:arrow-down"},null,8,["icon"])]),_:1})):L("",!0),Y(r.$slots,"actionMore")])):L("",!0)]),_:2},[fe(Object.keys(r.$slots),a=>({name:a,fn:z(()=>[Y(r.$slots,a)])}))]),1032,["inline","is-col","label-width","schema","onRegister"]),e.layout==="bottom"?(P(),X("div",{key:0,style:he(t(D))},[e.showSearch?(P(),M(w,{key:0,type:"primary",onClick:l},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:search"}),B(" "+I(t(p)("common.query")),1)]),_:1})):L("",!0),e.showReset?(P(),M(w,{key:1,onClick:b},{default:z(()=>[g(d,{class:"mr-5px",icon:"ep:refresh-right"}),B(" "+I(t(p)("common.reset")),1)]),_:1})):L("",!0),e.expand?(P(),M(w,{key:2,text:"",onClick:E},{default:z(()=>[B(I(t(p)(t(u)?"common.shrink":"common.expand"))+" ",1),g(d,{icon:t(u)?"ep:arrow-up":"ep:arrow-down"},null,8,["icon"])]),_:1})):L("",!0),Y(r.$slots,"actionMore")],4)):L("",!0)],64)}}}),{t:y}=te(),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=S(),_=S(),u=async()=>(await ve(),t(m)),x=async n=>{let i=1;n instanceof Array?(i=n.length,await Promise.all(n.map(async l=>{await((e==null?void 0:e.delListApi)&&(e==null?void 0:e.delListApi(l)))}))):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(t(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,l=!0)=>{const b=await u();!i||b!=null&&b.selections.length?l?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 l;const i=await((l=e==null?void 0:e.exportListApi)==null?void 0:l.call(e,t(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};
|