You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
2.8 KiB

import{C as e,D as t,Et as n,O as r,Q as i,S as a,T as o,W as s,Z as c,_t as l,ct as u,in as d,k as f,q as p,st as m,w as h}from"./vue.runtime.esm-bundler-CACvpnko.js";import{h as g}from"./index-D5exsJys.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{o as v}from"./competitions-Cv_Vb4Fy.js";import{t as y}from"./adminCompetition-D_kJwSx5.js";import{t as b}from"./datetimeShanghai-F85iiY-2.js";import{t as x}from"./competitionAdminLabels-D3a4EIIe.js";var S={class:`page-header`},C={key:0,class:`pager`},w={class:`total`},T=_(f({__name:`CompetitionListView`,setup(f){let _=l([]),T=y(),E=l(!1),D=l(1),O=l(1),k=l(0),A=l(15);async function j(){E.value=!0;try{let e=await v({page:D.value,per_page:A.value});_.value=e.data,O.value=e.meta.last_page,k.value=e.meta.total,A.value=e.meta.per_page}catch(e){_.value=[],g.error(e instanceof Error?e.message:`加载失败`)}finally{E.value=!1}}function M(e){e<1||e>O.value||(D.value=e,j())}function N(e){return b(e)}return s(()=>{j()}),(s,l)=>{let f=c(`el-button`),g=c(`RouterLink`),v=c(`el-table-column`),y=c(`el-tag`),b=c(`el-table`),j=c(`el-pagination`),P=c(`el-card`),F=i(`loading`);return p(),o(`div`,null,[a(`div`,S,[l[1]||=a(`h2`,{class:`page-title`},`赛事列表`,-1),r(g,{to:{name:`admin-competition-new`}},{default:m(()=>[r(f,{type:`danger`},{default:m(()=>[...l[0]||=[t(`新建赛事`,-1)]]),_:1})]),_:1})]),r(P,{shadow:`never`},{default:m(()=>[u((p(),e(b,{data:_.value,stripe:``,style:{width:`100%`}},{empty:m(()=>[...l[3]||=[a(`span`,{class:`text-muted`},`暂无数据`,-1)]]),default:m(()=>[r(v,{prop:`name`,label:`名称`,"min-width":`140`,"show-overflow-tooltip":``}),r(v,{prop:`slug`,label:`访问地址`,"min-width":`120`,"show-overflow-tooltip":``}),r(v,{label:`状态`,width:`120`},{default:m(({row:e})=>[t(d(n(x)(e.status)),1)]),_:1}),r(v,{label:`对外可见`,width:`100`},{default:m(({row:e})=>[r(y,{type:e.published?`success`:`info`,size:`small`},{default:m(()=>[t(d(e.published?`是`:`否`),1)]),_:2},1032,[`type`])]),_:1}),r(v,{label:`报名开始`,"min-width":`160`},{default:m(({row:e})=>[t(d(N(e.signup_open_at??null)),1)]),_:1}),r(v,{label:`报名截止`,"min-width":`160`},{default:m(({row:e})=>[t(d(N(e.signup_close_at??null)),1)]),_:1}),r(v,{label:`操作`,width:`140`,fixed:`right`},{default:m(({row:e})=>[r(g,{to:{name:`admin-competition-workspace`},onClick:t=>n(T).selectCompetition(e.id)},{default:m(()=>[r(f,{type:`danger`,link:``},{default:m(()=>[...l[2]||=[t(`进入赛事中心`,-1)]]),_:1})]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[F,E.value]]),O.value>1?(p(),o(`div`,C,[a(`span`,w,`共 `+d(k.value)+` 条`,1),r(j,{background:``,layout:`prev, pager, next`,"current-page":D.value,"page-size":A.value,total:k.value,onCurrentChange:M},null,8,[`current-page`,`page-size`,`total`])])):h(``,!0)]),_:1})])}}}),[[`__scopeId`,`data-v-0694ed3e`]]);export{T as default};