|
|
import{C as e,Ct as t,D as n,E as r,G as i,S as ee,T as a,X as te,Xt as ne,Y as o,at as s,b as c,d as re,ht as l,m as u,ot as ie,q as d,tn as f,x as p}from"./vue.runtime.esm-bundler-DUiYyeqQ.js";import{c as m,o as ae,s as h}from"./index-Uu8_HU3i.js";import{t as oe}from"./vue-quill.snow-CU-IQtel.js";import{t as g}from"./usePageLoad-DFTLo_Lv.js";import{a as _,c as v,d as y,f as b,i as se,l as x,n as S,o as C,p as ce,r as le,s as ue,t as w,u as T}from"./activities-BviVWoor.js";import{a as de,i as fe,o as pe,s as me}from"./admin-list-DjncsyJC.js";import{a as he}from"./dict-Bj1WluQZ.js";import{a as ge,i as _e,n as E,r as D,t as ve}from"./csv-export-DK5y1Ug7.js";function ye(e,t){return E([`姓名`,`手机`,`公司`,`报名时间`],e.map(e=>[e.name,e.mobile,e.company??`—`,t(e.signed_up_at)]))}function be(e,t,n){return E([`姓名`,`手机`,`公司`,`签到状态`,`签到时间`],e.map(e=>[e.name,e.mobile,e.company??`—`,t?e.session_checked_in_at?`已签到`:`未签到`:``,t?n(e.session_checked_in_at):``]))}var xe={class:`list-page`},Se={class:`page-header`},Ce={class:`list-filter-bar`},we={class:`table-row-actions`},Te={class:`list-pager`},Ee={class:`date-range`},De={class:`date-range`},Oe={class:`session-label-row`},ke={class:`sessions-block`},Ae={class:`quill-wrap`},je={class:`dialog-footer-inner`},Me={class:`signup-head`},Ne={class:`signup-head-row`},Pe={key:0,class:`session-tabs`},Fe={key:1,class:`text-mute`},Ie={class:`sub-toolbar signup-filter-bar`},Le={class:`list-pager`},O=ae(n({__name:`index`,setup(n){let ae=[[`bold`,`italic`,`underline`],[{header:[2,3,!1]}],[{list:`ordered`},{list:`bullet`}],[`link`],[`clean`]],E=l(!1),O=l(!1),Re=l([]),k=l({current_page:1,per_page:20,total:0}),A=l(1),j=l(``),M=l(``),N=l(``),P=l(``),F=l([]),I=l(!1),L=l(null),R=l({title:``,activity_type_dict_item_id:void 0,event_start_date:``,event_end_date:``,signup_start_date:``,signup_end_date:``,location:``,intro_html:``}),z=l([]),B=l(!1),V=l(null),H=l([]),ze=l([]),U=l({current_page:1,per_page:20,total:0}),W=l(1),G=l(``),K=l(``),q=l(``),J=l(!1),Be=l(!1),Ve=l([]),He=l(!1),Ue=l(null),We=l(``);async function Ge(){try{F.value=(await he(`activity_type`)).items}catch{m.warning(`活动类型字典加载失败,请执行 ActivityDictionarySeeder 或在字典中维护 activity_type`)}}async function Y(){E.value=!0;try{let e={page:A.value,page_size:k.value.per_page};j.value&&(e.keyword=j.value),M.value!==``&&(e.activity_type_dict_item_id=M.value),N.value!==``&&(e.progress_status=N.value),P.value!==``&&(e.published=P.value);let t=await ue(e);Re.value=t.items,k.value=t.meta}finally{E.value=!1}}function Ke(){A.value=1,Y()}function qe(){j.value=``,M.value=``,N.value=``,P.value=``,A.value=1,Y()}function Je(){z.value.push({title:``,starts_at:``,ends_at:``,venue:``,capacity:void 0})}function Ye(e){z.value.splice(e,1)}function Xe(){L.value=null,R.value={title:``,activity_type_dict_item_id:F.value[0]?.id,event_start_date:``,event_end_date:``,signup_start_date:``,signup_end_date:``,location:``,intro_html:``},z.value=[],I.value=!0}async function Ze(e){L.value=e;let t=await v(e.id);R.value={title:t.title,activity_type_dict_item_id:t.activity_type_dict_item_id??void 0,event_start_date:t.event_start_date||``,event_end_date:t.event_end_date||``,signup_start_date:t.signup_start_date||``,signup_end_date:t.signup_end_date||``,location:t.location||``,intro_html:t.intro_html||``},z.value=(await x(e.id)).map(e=>({id:e.id,title:e.title||``,starts_at:e.starts_at?e.starts_at.slice(0,16).replace(`T`,` `):``,ends_at:e.ends_at?e.ends_at.slice(0,16).replace(`T`,` `):``,venue:e.venue||``,capacity:e.capacity??void 0})),I.value=!0}function Qe(){return R.value.title?.trim()?R.value.activity_type_dict_item_id?!R.value.event_start_date||!R.value.event_end_date?(m.warning(`请填写活动日期`),!1):R.value.event_start_date>R.value.event_end_date?(m.warning(`活动结束日期不能早于开始日期`),!1):!R.value.signup_start_date||!R.value.signup_end_date?(m.warning(`请填写报名起止日期`),!1):R.value.signup_start_date>R.value.signup_end_date?(m.warning(`报名结束日期不能早于开始日期`),!1):!0:(m.warning(`请选择活动类型`),!1):(m.warning(`请填写活动名称`),!1)}function $e(e){return e.slice(0,10)}function et(e){let t=R.value.event_start_date,n=R.value.event_end_date;return!t||!n?!0:e.starts_at&&$e(e.starts_at)<t?(m.warning(`场次「${e.title}」开始时间不能早于活动开始日期`),!1):e.ends_at&&$e(e.ends_at)>n?(m.warning(`场次「${e.title}」结束时间不能晚于活动结束日期`),!1):!0}function tt(e){let t=R.value.event_start_date,n=R.value.event_end_date;if(!t||!n)return!1;let r=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`;return r<t||r>n}function nt(){let e=z.value.filter(e=>e.title?.trim()||e.starts_at||e.ends_at||e.venue||e.capacity);for(let t of e){if(!t.title?.trim()||!t.starts_at||!t.ends_at||!(t.capacity&&t.capacity>0))return m.warning(`场次信息不完整:标题、开始时间、结束时间、名额均为必填,且名额须大于 0`),!1;if(t.starts_at>t.ends_at)return m.warning(`场次「${t.title}」结束时间不能早于开始时间`),!1;if(!et(t))return!1}return z.value.filter(e=>e.title?.trim()&&e.starts_at&&e.ends_at&&(e.capacity??0)>0).length?!0:(m.warning(`保存并发布前须至少添加一个完整场次(标题、开始/结束时间、名额均必填且名额大于 0)`),!1)}async function rt(e){let t=L.value?await x(e):[],n=new Set;for(let t of z.value){if(!t.title?.trim()||!t.starts_at||!t.ends_at||!(t.capacity&&t.capacity>0))continue;if(!et(t))throw Error(`session_range_invalid`);let r={title:t.title.trim(),starts_at:`${t.starts_at}:00`,ends_at:`${t.ends_at}:00`,venue:t.venue||null,capacity:t.capacity};if(t.id)await ce(e,t.id,r),n.add(t.id);else{let t=await le(e,r);n.add(t.id)}}for(let r of t)n.has(r.id)||await _(e,r.id)}async function it(e){if(!Qe()||e===1&&!nt())return;let t=z.value.filter(e=>e.title?.trim()||e.starts_at||e.ends_at||e.venue||e.capacity);for(let e of t)if((e.starts_at||e.ends_at)&&!et(e))return;let n={title:R.value.title.trim(),activity_type_dict_item_id:R.value.activity_type_dict_item_id,event_start_date:R.value.event_start_date,event_end_date:R.value.event_end_date,signup_start_date:R.value.signup_start_date,signup_end_date:R.value.signup_end_date,location:R.value.location||null,intro_html:R.value.intro_html||null,published:e};O.value=!0;try{let t;L.value?(await b(L.value.id,n),t=L.value.id):t=(await S(n)).id,await rt(t),m.success(e===1?`已保存并发布`:`已暂存草稿`),I.value=!1,await Y()}catch(e){if(e instanceof Error&&e.message===`session_range_invalid`)return;throw e}finally{O.value=!1}}async function at(e){await h.confirm(`确定删除活动「${e.title}」?`,`提示`,{type:`warning`}),await se(e.id),m.success(`已删除`),await Y()}function X(e){if(!e)return`—`;let t=new Date(e);if(Number.isNaN(t.getTime()))return`—`;let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}function Z(e){return e.title?e.title:e.starts_at?e.starts_at.slice(0,10).replace(/-/g,`.`):`场次 #${e.id}`}function ot(e){return e?.starts_at?new Date(e.starts_at)<=new Date:!0}let st=()=>H.value.find(e=>e.id===q.value),Q=()=>ot(st());async function $(){if(!V.value)return;let e={page:W.value,page_size:U.value.per_page};G.value.trim()&&(e.keyword=G.value.trim()),q.value!==``&&(e.activity_session_id=q.value),K.value!==``&&(e.checkin_status=K.value);let t=await T(V.value.id,e);ze.value=t.items,U.value=t.meta}async function ct(e){V.value=e,B.value=!0,W.value=1,G.value=``,K.value=``,H.value=await x(e.id),q.value=H.value[0]?.id??``,await $()}async function lt(e){q.value=e,W.value=1,await $()}function ut(){W.value=1,$()}function dt(){G.value=``,K.value=``,W.value=1,$()}async function ft(e){V.value&&(await h.confirm(`确定删除该报名记录?`,`提示`,{type:`warning`}),await C(V.value.id,e.id),await $(),await Y())}async function pt(e){!V.value||q.value===``||(await w(V.value.id,e.id,{activity_session_id:q.value}),m.success(`已完成手动补签`),await $())}function mt(e){Ue.value=e,We.value=ge(e),He.value=!0}async function ht(){if(V.value){J.value=!0,Be.value=!0,Ve.value=[];try{let e=V.value.id,t=await y(e);Ve.value=await Promise.all(H.value.map(async n=>{let r=await y(e,{activity_session_id:n.id}),i=ot(n)?r.filter(e=>e.session_checked_in_at).length:0;return{session:n,signup_count:t.length,checked_in_count:i,signupRows:t,signinRows:r}}))}catch{m.error(`导出数据加载失败`)}finally{Be.value=!1}}}function gt(e){if(!V.value)return;let t=D(V.value.title||`活动`),n=D(Z(e.session)),r=ye(e.signupRows,X);ve(`${t}_${n}_报名.csv`,r)}function _t(e){if(!V.value)return;let t=D(V.value.title||`活动`),n=D(Z(e.session)),r=be(e.signinRows,ot(e.session),X);ve(`${t}_${n}_签到.csv`,r)}return g(async()=>{await Ge(),await Y()}),(n,l)=>{let m=o(`el-button`),h=o(`el-input`),g=o(`el-option`),_=o(`el-select`),v=o(`el-table-column`),y=o(`el-table`),b=o(`el-pagination`),se=o(`el-card`),x=o(`el-form-item`),S=o(`el-col`),C=o(`el-date-picker`),ce=o(`el-input-number`),le=o(`el-row`),ue=o(`el-form`),w=o(`el-dialog`),T=o(`el-tag`),he=te(`loading`);return i(),e(u,null,[c(`div`,xe,[c(`div`,Se,[l[25]||=c(`h1`,{class:`page-title`},`活动管理`,-1),r(m,{type:`primary`,size:`small`,class:`btn-create`,onClick:Xe},{default:s(()=>[...l[24]||=[a(`新建活动`,-1)]]),_:1})]),r(se,{shadow:`never`,class:`admin-list-card`},{default:s(()=>[c(`div`,Ce,[r(h,{modelValue:j.value,"onUpdate:modelValue":l[0]||=e=>j.value=e,placeholder:`搜索活动名称`,clearable:``,class:`filter-search`,onKeyup:re(Ke,[`enter`])},null,8,[`modelValue`]),r(_,{modelValue:M.value,"onUpdate:modelValue":l[1]||=e=>M.value=e,clearable:``,placeholder:`活动类型`,class:`filter-select`,filterable:``},{default:s(()=>[(i(!0),e(u,null,d(F.value,e=>(i(),p(g,{key:e.id,label:e.label,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),r(_,{modelValue:N.value,"onUpdate:modelValue":l[2]||=e=>N.value=e,clearable:``,placeholder:`活动状态`,class:`filter-select`},{default:s(()=>[r(g,{label:`未开始`,value:1}),r(g,{label:`进行中`,value:2}),r(g,{label:`已结束`,value:3})]),_:1},8,[`modelValue`]),r(_,{modelValue:P.value,"onUpdate:modelValue":l[3]||=e=>P.value=e,clearable:``,placeholder:`发布状态`,class:`filter-select`},{default:s(()=>[r(g,{label:`已发布`,value:1}),r(g,{label:`未发布`,value:0})]),_:1},8,[`modelValue`]),r(m,{type:`primary`,onClick:Ke},{default:s(()=>[...l[26]||=[a(`搜索`,-1)]]),_:1}),r(m,{onClick:qe},{default:s(()=>[...l[27]||=[a(`重置`,-1)]]),_:1})]),ie((i(),p(y,{data:Re.value,"row-key":`id`},{default:s(()=>[r(v,{prop:`title`,label:`活动名称`,"min-width":`160`,"show-overflow-tooltip":``}),r(v,{label:`活动类型`,width:`100`},{default:s(({row:e})=>[a(f(e.activity_type_item?.label??`—`),1)]),_:1}),r(v,{label:`场次`,width:`72`,align:`center`},{default:s(({row:e})=>[a(f(e.sessions_count??0),1)]),_:1}),r(v,{label:`活动日期`,"min-width":`150`},{default:s(({row:e})=>[a(f(t(fe)(e.event_start_date,e.event_end_date)),1)]),_:1}),r(v,{label:`报名起止日期`,"min-width":`150`},{default:s(({row:e})=>[a(f(t(fe)(e.signup_start_date,e.signup_end_date)),1)]),_:1}),r(v,{prop:`location`,label:`活动地点`,"min-width":`120`,"show-overflow-tooltip":``}),r(v,{label:`活动状态`,width:`90`,align:`center`},{default:s(({row:e})=>[c(`span`,{class:ne([`status-badge`,t(pe)(e.progress_status)])},f(t(de)(e.progress_status)),3)]),_:1}),r(v,{label:`发布状态`,width:`90`,align:`center`},{default:s(({row:e})=>[c(`span`,{class:ne([`status-badge`,t(me)(e.published)])},f(e.published===1?`已发布`:`未发布`),3)]),_:1}),r(v,{label:`操作`,width:`280`,fixed:`right`},{default:s(({row:e})=>[c(`div`,we,[r(m,{class:`btn-action-brand`,onClick:t=>ct(e)},{default:s(()=>[...l[28]||=[a(`报名与签到`,-1)]]),_:1},8,[`onClick`]),r(m,{class:`btn-action-primary`,onClick:t=>mt(e)},{default:s(()=>[...l[29]||=[a(`签到码`,-1)]]),_:1},8,[`onClick`]),r(m,{class:`btn-action-secondary`,onClick:t=>Ze(e)},{default:s(()=>[...l[30]||=[a(`编辑`,-1)]]),_:1},8,[`onClick`]),r(m,{class:`btn-action-secondary`,onClick:t=>at(e)},{default:s(()=>[...l[31]||=[a(`删除`,-1)]]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`data`])),[[he,E.value]]),c(`div`,Te,[r(b,{"current-page":A.value,"onUpdate:currentPage":l[4]||=e=>A.value=e,layout:`total, prev, pager, next`,total:k.value.total,"page-size":k.value.per_page,onCurrentChange:Y},null,8,[`current-page`,`total`,`page-size`])])]),_:1})]),r(w,{modelValue:I.value,"onUpdate:modelValue":l[16]||=e=>I.value=e,title:L.value?`编辑活动`:`新建活动`,width:`1200px`,top:`4vh`,"destroy-on-close":``,class:`activity-dialog`},{footer:s(()=>[c(`div`,je,[r(m,{onClick:l[13]||=e=>I.value=!1},{default:s(()=>[...l[37]||=[a(`取消`,-1)]]),_:1}),r(m,{loading:O.value,onClick:l[14]||=e=>it(0)},{default:s(()=>[...l[38]||=[a(`暂存草稿`,-1)]]),_:1},8,[`loading`]),r(m,{type:`primary`,loading:O.value,onClick:l[15]||=e=>it(1)},{default:s(()=>[...l[39]||=[a(`保存并发布`,-1)]]),_:1},8,[`loading`])])]),default:s(()=>[r(ue,{"label-position":`top`,class:`activity-form`},{default:s(()=>[r(le,{gutter:16},{default:s(()=>[r(S,{span:8},{default:s(()=>[r(x,{label:`活动名称`,required:``},{default:s(()=>[r(h,{modelValue:R.value.title,"onUpdate:modelValue":l[5]||=e=>R.value.title=e,placeholder:`请输入活动名称`},null,8,[`modelValue`])]),_:1})]),_:1}),r(S,{span:8},{default:s(()=>[r(x,{label:`活动类型`,required:``},{default:s(()=>[r(_,{modelValue:R.value.activity_type_dict_item_id,"onUpdate:modelValue":l[6]||=e=>R.value.activity_type_dict_item_id=e,placeholder:`请选择`,filterable:``,style:{width:`100%`}},{default:s(()=>[(i(!0),e(u,null,d(F.value,e=>(i(),p(g,{key:e.id,label:e.label,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1})]),_:1}),r(S,{span:8},{default:s(()=>[r(x,{label:`活动日期`,required:``},{default:s(()=>[c(`div`,Ee,[r(C,{modelValue:R.value.event_start_date,"onUpdate:modelValue":l[7]||=e=>R.value.event_start_date=e,type:`date`,"value-format":`YYYY-MM-DD`,placeholder:`开始`,style:{width:`100%`}},null,8,[`modelValue`]),l[32]||=c(`span`,{class:`range-sep`},`至`,-1),r(C,{modelValue:R.value.event_end_date,"onUpdate:modelValue":l[8]||=e=>R.value.event_end_date=e,type:`date`,"value-format":`YYYY-MM-DD`,placeholder:`结束`,style:{width:`100%`}},null,8,[`modelValue`])])]),_:1})]),_:1}),r(S,{span:8},{default:s(()=>[r(x,{label:`报名起止日期`,required:``},{default:s(()=>[c(`div`,De,[r(C,{modelValue:R.value.signup_start_date,"onUpdate:modelValue":l[9]||=e=>R.value.signup_start_date=e,type:`date`,"value-format":`YYYY-MM-DD`,placeholder:`开始`,style:{width:`100%`}},null,8,[`modelValue`]),l[33]||=c(`span`,{class:`range-sep`},`至`,-1),r(C,{modelValue:R.value.signup_end_date,"onUpdate:modelValue":l[10]||=e=>R.value.signup_end_date=e,type:`date`,"value-format":`YYYY-MM-DD`,placeholder:`结束`,style:{width:`100%`}},null,8,[`modelValue`])])]),_:1})]),_:1}),r(S,{span:8},{default:s(()=>[r(x,{label:`活动地点`},{default:s(()=>[r(h,{modelValue:R.value.location,"onUpdate:modelValue":l[11]||=e=>R.value.location=e,placeholder:`请输入活动地点`},null,8,[`modelValue`])]),_:1})]),_:1}),r(S,{span:24},{default:s(()=>[r(x,{class:`session-form-item`},{label:s(()=>[c(`div`,Oe,[l[35]||=c(`span`,null,`活动场次`,-1),r(m,{type:`primary`,size:`small`,class:`btn-create btn-label-action`,onClick:Je},{default:s(()=>[...l[34]||=[a(` 添加场次 `,-1)]]),_:1})])]),default:s(()=>[c(`div`,ke,[(i(!0),e(u,null,d(z.value,(t,n)=>(i(),e(`div`,{key:n,class:`session-row`},[r(h,{modelValue:t.title,"onUpdate:modelValue":e=>t.title=e,placeholder:`场次标题,如:上午场`},null,8,[`modelValue`,`onUpdate:modelValue`]),r(C,{modelValue:t.starts_at,"onUpdate:modelValue":e=>t.starts_at=e,type:`datetime`,"value-format":`YYYY-MM-DD HH:mm`,format:`YYYY-MM-DD HH:mm`,placeholder:`开始时间`,"disabled-date":tt,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`]),r(C,{modelValue:t.ends_at,"onUpdate:modelValue":e=>t.ends_at=e,type:`datetime`,"value-format":`YYYY-MM-DD HH:mm`,format:`YYYY-MM-DD HH:mm`,placeholder:`结束时间`,"disabled-date":tt,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`]),r(h,{modelValue:t.venue,"onUpdate:modelValue":e=>t.venue=e,placeholder:`地点(可选)`},null,8,[`modelValue`,`onUpdate:modelValue`]),r(ce,{modelValue:t.capacity,"onUpdate:modelValue":e=>t.capacity=e,min:1,placeholder:`名额`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`]),r(m,{type:`danger`,plain:``,size:`small`,class:`session-row-delete`,onClick:e=>Ye(n)},{default:s(()=>[...l[36]||=[a(` 删除 `,-1)]]),_:1},8,[`onClick`])]))),128))])]),_:1})]),_:1}),r(S,{span:24},{default:s(()=>[r(x,{label:`活动简介`,class:`intro-form-item`},{default:s(()=>[c(`div`,Ae,[r(t(oe),{content:R.value.intro_html,"onUpdate:content":l[12]||=e=>R.value.intro_html=e,"content-type":`html`,theme:`snow`,toolbar:ae},null,8,[`content`])])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,[`modelValue`,`title`]),r(_e,{modelValue:He.value,"onUpdate:modelValue":l[17]||=e=>He.value=e,"course-name":Ue.value?.title||``,"signin-code":We.value},null,8,[`modelValue`,`course-name`,`signin-code`]),r(w,{modelValue:B.value,"onUpdate:modelValue":l[21]||=e=>B.value=e,title:`活动报名与签到:${V.value?.title||``}`,width:`960px`,top:`5vh`,class:`signup-dialog`},{default:s(()=>[c(`div`,Me,[c(`div`,Ne,[H.value.length?(i(),e(`div`,Pe,[(i(!0),e(u,null,d(H.value,e=>(i(),p(m,{key:e.id,size:`small`,type:q.value===e.id?`primary`:`default`,onClick:t=>lt(e.id)},{default:s(()=>[a(f(Z(e)),1)]),_:2},1032,[`type`,`onClick`]))),128))])):(i(),e(`div`,Fe,`暂无场次,请先在活动中添加场次`)),r(m,{disabled:!H.value.length,onClick:ht},{default:s(()=>[...l[40]||=[a(`导出`,-1)]]),_:1},8,[`disabled`])])]),c(`div`,Ie,[r(h,{modelValue:G.value,"onUpdate:modelValue":l[18]||=e=>G.value=e,clearable:``,placeholder:`搜索姓名、手机、公司…`,style:{width:`220px`},onKeyup:re(ut,[`enter`])},null,8,[`modelValue`]),r(_,{modelValue:K.value,"onUpdate:modelValue":l[19]||=e=>K.value=e,clearable:``,placeholder:`签到状态`,style:{width:`120px`}},{default:s(()=>[r(g,{label:`已签到`,value:1}),r(g,{label:`未签到`,value:0})]),_:1},8,[`modelValue`]),r(m,{type:`primary`,onClick:ut},{default:s(()=>[...l[41]||=[a(`搜索`,-1)]]),_:1}),r(m,{onClick:dt},{default:s(()=>[...l[42]||=[a(`重置`,-1)]]),_:1})]),r(y,{data:ze.value,size:`small`,style:{"margin-top":`12px`}},{default:s(()=>[r(v,{prop:`name`,label:`姓名`,width:`100`}),r(v,{prop:`mobile`,label:`手机`,width:`130`}),r(v,{prop:`company`,label:`公司`,"min-width":`120`,"show-overflow-tooltip":``}),r(v,{label:`报名时间`,width:`170`},{default:s(({row:e})=>[a(f(X(e.signed_up_at)),1)]),_:1}),r(v,{label:`签到状态`,width:`100`},{default:s(({row:t})=>[Q()?(i(),e(u,{key:0},[t.session_checked_in_at?(i(),p(T,{key:0,type:`success`,size:`small`},{default:s(()=>[...l[43]||=[a(`已签到`,-1)]]),_:1})):(i(),p(T,{key:1,type:`info`,size:`small`},{default:s(()=>[...l[44]||=[a(`未签到`,-1)]]),_:1}))],64)):ee(``,!0)]),_:1}),r(v,{label:`签到时间`,width:`170`},{default:s(({row:e})=>[a(f(Q()?X(e.session_checked_in_at):``),1)]),_:1}),r(v,{label:`操作`,width:`120`,fixed:`right`},{default:s(({row:e})=>[Q()&&!e.session_checked_in_at?(i(),p(m,{key:0,type:`primary`,link:``,onClick:t=>pt(e)},{default:s(()=>[...l[45]||=[a(` 手动补签 `,-1)]]),_:1},8,[`onClick`])):Q()&&e.session_checked_in_at?(i(),p(m,{key:1,type:`info`,link:``,disabled:``},{default:s(()=>[...l[46]||=[a(` 已完成 `,-1)]]),_:1})):ee(``,!0),r(m,{type:`danger`,link:``,onClick:t=>ft(e)},{default:s(()=>[...l[47]||=[a(`删除`,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`]),c(`div`,Le,[r(b,{"current-page":W.value,"onUpdate:currentPage":l[20]||=e=>W.value=e,layout:`total, prev, pager, next`,total:U.value.total,"page-size":U.value.per_page,onCurrentChange:$},null,8,[`current-page`,`total`,`page-size`])])]),_:1},8,[`modelValue`,`title`]),r(w,{modelValue:J.value,"onUpdate:modelValue":l[23]||=e=>J.value=e,title:`${V.value?.title||``}报名表导出`,width:`720px`,"append-to-body":``},{footer:s(()=>[r(m,{onClick:l[22]||=e=>J.value=!1},{default:s(()=>[...l[50]||=[a(`关闭`,-1)]]),_:1})]),default:s(()=>[ie((i(),p(y,{data:Ve.value,size:`small`},{default:s(()=>[r(v,{label:`场次`,"min-width":`140`},{default:s(({row:e})=>[a(f(Z(e.session)),1)]),_:1}),r(v,{prop:`signup_count`,label:`报名人数`,width:`100`}),r(v,{prop:`checked_in_count`,label:`已签到`,width:`90`}),r(v,{label:`报名导出`,width:`100`},{default:s(({row:e})=>[r(m,{type:`primary`,link:``,onClick:t=>gt(e)},{default:s(()=>[...l[48]||=[a(`导出报名`,-1)]]),_:1},8,[`onClick`])]),_:1}),r(v,{label:`签到导出`,width:`100`},{default:s(({row:e})=>[r(m,{type:`primary`,link:``,onClick:t=>_t(e)},{default:s(()=>[...l[49]||=[a(`导出签到`,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[he,Be.value]])]),_:1},8,[`modelValue`,`title`])],64)}}}),[[`__scopeId`,`data-v-8fc38e7a`]]);export{O as default}; |