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{$ as e,A as t,C as n,Dt as r,G as i,J as a,O as o,Q as s,S as c,T as l,an as u,ct as d,k as f,lt as p,vt as m,w as h}from"./vue.runtime.esm-bundler-Dt_AyShc.js";import{g}from"./index-D9t8QC7c.js";import{t as _}from"./_plugin-vue_export-helper-CXTkFu_Z.js";import{o as v}from"./competitions-DiM5-jwj.js";import{t as y}from"./adminCompetition-Cq_orW7b.js";import{t as b}from"./datetimeShanghai-C-yEb-Ts.js";import{t as x}from"./competitionAdminLabels-BCpvTjRd.js";var S={class:`page-header`},C={key:0,class:`pager`},w={class:`total`},T=_(t({__name:`CompetitionListView`,setup(t){let _=m([]),T=y(),E=m(!1),D=m(1),O=m(1),k=m(0),A=m(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 i(()=>{j()}),(t,i)=>{let m=s(`el-button`),g=s(`RouterLink`),v=s(`el-table-column`),y=s(`el-tag`),b=s(`el-table`),j=s(`el-pagination`),P=s(`el-card`),F=e(`loading`);return a(),l(`div`,null,[c(`div`,S,[i[1]||=c(`h2`,{class:`page-title`},`赛事列表`,-1),f(g,{to:{name:`admin-competition-new`}},{default:d(()=>[f(m,{type:`danger`},{default:d(()=>[...i[0]||=[o(`新建赛事`,-1)]]),_:1})]),_:1})]),f(P,{shadow:`never`},{default:d(()=>[p((a(),n(b,{data:_.value,stripe:``,style:{width:`100%`}},{empty:d(()=>[...i[3]||=[c(`span`,{class:`text-muted`},`暂无数据`,-1)]]),default:d(()=>[f(v,{prop:`name`,label:`名称`,"min-width":`140`,"show-overflow-tooltip":``}),f(v,{prop:`slug`,label:`访问地址`,"min-width":`120`,"show-overflow-tooltip":``}),f(v,{label:`状态`,width:`120`},{default:d(({row:e})=>[o(u(r(x)(e.status)),1)]),_:1}),f(v,{label:`对外可见`,width:`100`},{default:d(({row:e})=>[f(y,{type:e.published?`success`:`info`,size:`small`},{default:d(()=>[o(u(e.published?`是`:`否`),1)]),_:2},1032,[`type`])]),_:1}),f(v,{label:`报名开始`,"min-width":`160`},{default:d(({row:e})=>[o(u(N(e.signup_open_at??null)),1)]),_:1}),f(v,{label:`报名截止`,"min-width":`160`},{default:d(({row:e})=>[o(u(N(e.signup_close_at??null)),1)]),_:1}),f(v,{label:`操作`,width:`140`,fixed:`right`},{default:d(({row:e})=>[f(g,{to:{name:`admin-competition-workspace`},onClick:t=>r(T).selectCompetition(e.id)},{default:d(()=>[f(m,{type:`danger`,link:``},{default:d(()=>[...i[2]||=[o(`进入赛事中心`,-1)]]),_:1})]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[F,E.value]]),O.value>1?(a(),l(`div`,C,[c(`span`,w,`共 `+u(k.value)+` 条`,1),f(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};