|
|
import{at as e,n as t,st as n}from"./axios-CiYFffbI.js";import{I as r,N as i,O as a,P as o,V as s,X as ee,Y as c,_ as l,d as u,f as d,h as f,i as p,it as m,kt as h,l as g,nt as _,p as v,q as y,u as b,ut as te,v as x,y as ne,z as S}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as C}from"./http-LCi9aT1G.js";import{l as w,s as re,u as T}from"./index-U-G_jNCB.js";import{t as ie}from"./RichEditorField-Tk1rsbvR.js";import{a as ae}from"./h5Http-2MvWKf2X.js";import{t as oe}from"./listTableRowIndex-Bl-nc9Qt.js";function se(e,t){return function(){return e()?window.confirm(t):!0}}function ce(e,t=`当前有未保存改动,确定要离开吗?`){function n(t){e()&&(t.preventDefault(),t.returnValue=``)}w((n,r,i)=>{if(!e()){i();return}i(window.confirm(t))}),i(()=>{window.addEventListener(`beforeunload`,n)}),o(()=>{window.removeEventListener(`beforeunload`,n)})}var le={key:0,style:{width:`100%`}},ue={key:0,style:{"margin-bottom":`12px`,color:`var(--color-text-2)`,"font-size":`13px`}},de={class:`activity-verify-inline-line`},fe={key:1,class:`activity-audit-readonly`},pe={class:`activity-audit-inline`},me={class:`activity-audit-inline-row`},he={class:`activity-audit-inline-value`},ge={class:`activity-audit-inline-row`},_e={class:`activity-audit-inline-value`},ve={class:`activity-audit-inline-row`},ye={class:`activity-audit-inline-value`},be={class:`activity-audit-inline-row`},xe={class:`activity-audit-inline-value`},Se={class:`activity-audit-inline-row`},Ce={class:`activity-audit-inline-value`},we={class:`activity-audit-inline-row`},Te={class:`activity-audit-inline-value`},Ee={class:`activity-audit-inline-row`},De={class:`activity-audit-inline-value`},Oe={class:`activity-audit-inline-row`},ke={class:`activity-audit-inline-value`},Ae={key:0,class:`activity-audit-inline-row`},je={class:`activity-audit-inline-value`},Me={key:1,class:`activity-audit-inline-row`},Ne={class:`activity-audit-inline-value activity-audit-break`},Pe={class:`activity-audit-inline-row activity-audit-inline-row--tags`},Fe={class:`activity-audit-inline-value`},Ie={class:`activity-form-tags__chips activity-form-tags__chips--readonly activity-form-tags__chips--inline`},Le={key:0,class:`activity-form-tags__empty`},Re={class:`activity-audit-inline-row`},ze={class:`activity-audit-inline-value`},Be={class:`activity-audit-inline-row`},Ve={class:`activity-audit-inline-value`},He={class:`activity-audit-inline-row activity-audit-inline-row--images`},Ue={class:`activity-audit-image-col`},We={class:`activity-audit-image-value`},Ge=[`src`],Ke={key:1},qe={class:`activity-audit-image-col`},Je={class:`activity-audit-image-value`},Ye={key:0,class:`activity-gallery-grid`},Xe=[`src`,`onClick`],Ze=[`src`,`onClick`],Qe={key:1},$e={class:`activity-audit-stack`},et={class:`activity-audit-stack__body`},tt=[`innerHTML`],nt={key:1,class:`activity-audit-muted`},rt={key:0,class:`activity-audit-stack`},it={class:`activity-audit-stack__label`},at={class:`activity-audit-stack__body`},ot={key:1,class:`activity-audit-muted`},st={key:1,class:`activity-audit-stack`},ct={class:`activity-audit-stack__body`},lt={class:`activity-verify-inline-line activity-verify-inline-line--wrap`},ut={class:`activity-audit-stack`},dt={class:`activity-audit-stack__body`},ft={class:`activity-audit-inline-row`,style:{"margin-bottom":`12px`}},pt={class:`activity-audit-inline-value`},mt={key:0,style:{"margin-left":`8px`,color:`var(--color-text-3)`}},ht={key:0,class:`activity-audit-static-text`},gt={key:0,style:{"margin-left":`8px`,color:`var(--color-text-2)`}},_t={key:0,class:`activity-audit-static-text`,style:{"margin-top":`6px`}},vt={key:1,class:`activity-audit-muted`},yt={key:0,class:`bts-preview-grid`},bt=[`src`,`onClick`],xt={class:`bts-preview-actions`},St={style:{color:`#f53f3f`}},Ct={style:{color:`#f53f3f`}},wt={style:{color:`#f53f3f`}},Tt={style:{color:`#f53f3f`}},Et={style:{color:`#f53f3f`}},Dt={style:{color:`#f53f3f`}},Ot={style:{color:`#f53f3f`}},kt={class:`activity-form-tags`},At={class:`activity-form-tags__line`},jt={class:`activity-form-tags__chips`},Mt={key:0,class:`activity-form-tags__empty`},Nt={class:`activity-address-coord-row activity-address-coord-row--hide-lnglat`},Pt={style:{color:`#f53f3f`}},Ft={class:`activity-cover-carousel-wrap`},It={class:`activity-cover-carousel-row__col`},Lt=[`src`],Rt={class:`activity-cover-carousel-row__col`},zt={style:{display:`flex`,"flex-direction":`column`,"align-items":`flex-start`,width:`100%`}},Bt={style:{width:`100%`,"margin-bottom":`8px`}},Vt={class:`activity-gallery-grid`},Ht=[`src`,`onClick`],Ut=[`src`,`onClick`],Wt=[`src`],Gt=[`src`],Kt={style:{display:`flex`,gap:`12px`}},qt={style:{width:`280px`,height:`520px`,overflow:`auto`,border:`1px solid #e5e6eb`,padding:`8px`}},Jt=T(ne({__name:`ActivityList`,setup(o){let ne=m([]),w=m([]),T=m(null),Jt=m(!1),Yt=m(!1),E=m(!1),D=_({current:1,pageSize:10,total:0}),O=_({keyword:``,venue_id:void 0,reservation_type:void 0,is_active:void 0,schedule_status:void 0,audit_status:void 0}),k=m(!1),A=m(null),Xt=m(`view`),Zt=m(!1),Qt=m([]),$t=m(``),en=m([]),tn=m(``),nn=m(``),rn=m(!1),an=m(``),on=m(``),sn=m(``),cn=m(null),j=m(!1),M=m(``),N=m(``);y(k,e=>{e||(j.value=!1)});let ln=m(!1),un=m(null),dn=m(`上传花絮`),P=m([]),fn=m(!1),pn=m(!1),mn=m(null),F=m(``),hn=m(``),gn=m(``),_n=m(``),vn=m(null);function yn(){navigator.clipboard.writeText(M.value),t.success(`核销入口链接已复制`)}function bn(){navigator.clipboard.writeText(N.value),t.success(`核销密码已复制`)}async function I(e){let{data:t}=await C.get(`/activities/${e}/verify-portal`);gn.value=ae(),_n.value=String(t?.verify_portal_pin??``).trim()}function xn(){navigator.clipboard.writeText(gn.value),t.success(`核销入口链接已复制`)}function Sn(){navigator.clipboard.writeText(_n.value),t.success(`核销密码已复制`)}let L=m(!0),R=m(null),Cn=m(``),wn={maxHeight:`70vh`,overflow:`auto`},Tn={maxHeight:`72vh`,overflow:`auto`},En={height:`520px`,overflowY:`auto`,overflowX:`hidden`,boxSizing:`border-box`},Dn=m(0),On=m(!1),kn=m(`image`),An=m(``),jn=m(!1),Mn=m(!1),Nn=m(``),Pn=m([]),Fn=m(null),z=null,B=null,V=m(null),In={lat:31.299379,lng:120.585315},Ln=re();function H(e){if(!e)return``;let t=new Date(String(e));return Number.isNaN(t.getTime())?String(e).slice(0,10):new Intl.DateTimeFormat(`en-CA`,{timeZone:`Asia/Shanghai`,year:`numeric`,month:`2-digit`,day:`2-digit`}).format(t)}function Rn(e){let t=e.start_at?H(String(e.start_at)):``,n=e.end_at?H(String(e.end_at)):``;return!t&&!n?`-`:t&&n?t===n?t:`${t} 至 ${n}`:t||n||`-`}let zn=g(()=>`本次活动日期 ${Rn({id:R.value??0,venue_id:Number(U.venue_id)||0,title:U.title,start_at:U.start_at||void 0,end_at:U.end_at||void 0,is_active:!!U.is_active})},具体时间 ${U.specific_time.trim()?U.specific_time.trim():`—`},请配置预约场次,保存时将一并提交活动信息与场次。`);function Bn(e){return e?e.submitter?.name?.trim()||(e.submitted_by!=null&&e.submitted_by!==void 0?`未知用户`:`平台录入`):`—`}function Vn(e,t,n){let r=String(e||``).trim(),i=Number.isFinite(t)?Math.max(1,Math.floor(t)):1,a=Number.isFinite(n)?Math.max(i,Math.floor(n)):i;a<i&&(a=i);let o=`${i}–${a} 人`;return r===`individual`?`个人`:r===`group`?`团体(每单 ${o})`:r===`both`?`个人+团体(每单 ${o})`:r?`${r}(每单 ${o})`:`—`}let U=_({venue_id:void 0,reservation_type:`none`,is_hot:!1,ticket_note:`free`,fee_note:``,location:``,check_in_meeting_point:``,lat:void 0,lng:void 0,specific_time:``,offline_reservation_method:``,external_url:``,title:``,contact_name:``,contact_phone:``,start_at:``,end_at:``,detail_html:``,cover_image:``,gallery_media:[],tags:[],sort:0,summary:``,is_active:!0,display_schedule_status:void 0}),Hn=m(``),W=_({title:``,venue_id:``,start_at:``,end_at:``,reservation_type:``,ticket_note:``,offline_reservation_method:``,external_url:``,location:``,cover_image:``,gallery_media:``,detail_html:``,contact_name:``,contact_phone:``}),Un=g({get(){if(U.start_at&&U.end_at)return[U.start_at,U.end_at]},set(e){Array.isArray(e)&&e.length>=2&&e[0]&&e[1]?(U.start_at=String(e[0]),U.end_at=String(e[1])):(U.start_at=``,U.end_at=``)}}),Wn=g(()=>U.display_schedule_status==null?Or(U.start_at||``,U.end_at||``):U.display_schedule_status),G=_({booking_audience:`both`,min_people_per_order:1,max_people_per_order:10,days:[]}),K=m(0),Gn=m(!1),Kn=g(()=>String(U.reservation_type||``).trim()===`online`),qn=g(()=>Kn.value&&Wn.value!==`ended`),Jn=g(()=>{let e=L.value?`新增活动`:`编辑活动`;return K.value===1?`${e} · 场次设置`:e});function Yn(){return!U.start_at&&!U.end_at?null:{id:R.value??0,venue_id:Number(U.venue_id)||0,title:U.title,start_at:U.start_at,end_at:U.end_at,reservation_type:U.reservation_type,is_active:!!U.is_active,schedule_status:U.display_schedule_status}}function Xn(e){let t=e?.start_at?H(String(e.start_at)):new Intl.DateTimeFormat(`en-CA`,{timeZone:`Asia/Shanghai`,year:`numeric`,month:`2-digit`,day:`2-digit`}).format(new Date);return{start:`${t} 09:00:00`,end:`${t} 11:00:00`,deadline:`${t} 08:30:00`}}function Zn(){let{start:e,end:t,deadline:n}=Xn(Yn());G.days.push({session_name:`场次 ${G.days.length+1}`,session_start_at:e,session_end_at:t,booking_opens_at:``,booking_deadline_at:n,day_quota:30,quota_note:``,booked_count:0})}function Qn(e){let n=G.days[e];if(n?.booked_count&&n.booked_count>0){t.warning(`该场次已有预约,无法删除`);return}G.days.splice(e,1)}function q(e){let t=String(e??``).trim().replace(`T`,` `);return t?t.length>=19?t.slice(0,19):t:``}async function $n(e){Gn.value=!0;try{let{data:t}=await C.get(`/activities/${e}/booking-settings`);G.booking_audience=t?.booking_audience||`both`,G.min_people_per_order=Math.max(1,Number(t?.min_people_per_order)||1),G.max_people_per_order=Math.max(G.min_people_per_order,Number(t?.max_people_per_order)||Math.max(10,G.min_people_per_order)),G.days=(Array.isArray(t?.days)?t.days:[]).map(e=>{let t=Number(e.id);return{id:Number.isFinite(t)&&t>0?t:void 0,session_name:String(e.session_name??``),session_start_at:q(e.session_start_at),session_end_at:q(e.session_end_at),booking_opens_at:q(e.booking_opens_at),booking_deadline_at:q(e.booking_deadline_at),day_quota:Math.max(0,Number(e.day_quota)||0),quota_note:String(e.quota_note??``),booked_count:Math.max(0,Number(e.booked_count)||0)}}),G.days.length===0&&Zn()}catch(e){throw t.error(e?.response?.data?.message??`加载场次失败`),e}finally{Gn.value=!1}}function er(){if(G.days.length===0)return t.warning(`请至少添加一个场次`),!1;for(let e=0;e<G.days.length;e++){let n=G.days[e];if(!n.session_name.trim())return t.warning(`第 ${e+1} 行请填写场次名称`),!1;if(!n.session_start_at||!n.session_end_at||!n.booking_deadline_at)return t.warning(`第 ${e+1} 行请填写场次开始、结束与预约截止时间`),!1;if(!n.day_quota||n.day_quota<1)return t.warning(`第 ${e+1} 行预约名额须≥1`),!1}return G.booking_audience!==`individual`&&G.max_people_per_order<G.min_people_per_order?(t.warning(`每单最多人数必须大于等于每单最少人数`),!1):G.booking_audience!==`individual`&&G.max_people_per_order===1?(t.warning(`团体或个人+团体时,每单最多人数不可为 1,且须大于等于每单最少人数`),!1):!0}function tr(){let e={booking_audience:G.booking_audience,days:G.days.map(e=>{let t={session_name:e.session_name.trim(),session_start_at:e.session_start_at,session_end_at:e.session_end_at,booking_deadline_at:e.booking_deadline_at,day_quota:e.day_quota,quota_note:(e.quota_note||``).trim()||null};return t.booking_opens_at=(e.booking_opens_at||``).trim()||null,e.id&&e.id>0&&(t.id=e.id),t})};return G.booking_audience!==`individual`&&(e.min_people_per_order=G.min_people_per_order,e.max_people_per_order=G.max_people_per_order),e}function nr(e,t){let n=String(e||``).trim();if(n)return/^https?:\/\//i.test(n)?n:n.startsWith(`/`)?`${window.location.origin}${n}`:`${window.location.origin}/${n}`;let r=String(t||``).trim();if(!r)return``;let i=r.replace(/^\/+/,``);return`${window.location.origin}/storage/${i}`}async function rr(e){let t=new FormData;t.append(`file`,e);let{data:n}=await C.post(`/upload`,t);return nr(n?.url,n?.path)}function ir(){Dn.value+=1}function J(e,t){t&&(kn.value=e,An.value=t,On.value=!0)}function ar(){let e=this.quill,n=document.createElement(`input`);n.type=`file`,n.accept=`image/*`,n.onchange=async()=>{let r=n.files?.[0];if(r)try{let t=await rr(r),n=e.getSelection(!0)?.index??Math.max(0,e.getLength()-1);e.insertEmbed(n,`image`,t,`user`),e.setSelection(n+1,0)}catch(e){t.error(e?.response?.data?.message??`图片上传失败`)}},n.click()}function or(){let e=this.quill,n=document.createElement(`input`);n.type=`file`,n.accept=`video/*`,n.onchange=async()=>{let r=n.files?.[0];if(r)try{let t=await rr(r),n=e.getSelection(!0)?.index??Math.max(0,e.getLength()-1);e.insertEmbed(n,`video`,t,`user`),e.setSelection(n+1,0)}catch(e){t.error(e?.response?.data?.message??`视频上传失败`)}},n.click()}let sr={modules:{toolbar:{container:[[{header:[1,2,3,!1]}],[`bold`,`italic`,`underline`,`strike`],[{color:[]},{background:[]}],[{list:`ordered`},{list:`bullet`}],[{align:[]}],[`link`,`image`,`video`],[`clean`]],handlers:{image:ar,video:or}}},placeholder:`请输入活动详情内容`};function cr(){return JSON.stringify(U)}function lr(){return JSON.stringify({form:cr(),step:K.value,bookingAudience:G.booking_audience,minP:G.min_people_per_order,maxP:G.max_people_per_order,days:G.days.map(e=>({...e}))})}function ur(){Cn.value=lr()}function dr(){return E.value&&lr()!==Cn.value}let fr=se(dr,`活动表单有未保存改动,确认关闭吗?`);function Y(){return T.value?.role===`venue_admin`}function X(){return T.value?.full_admin_access===!0}let pr=g(()=>{let e=1098;return Y()||(e+=180),X()&&(e+=160),e});function Z(e){let t=e.submitted_by;return t!=null&&Number(t)===Number(T.value?.id)}function mr(e){if((e.approve_audit_logs_count??0)>0)return!1;let t=e.audit_status;return t!==`pending`&&t!==`rejected`?!1:X()?!0:Z(e)}function hr(e){return e.submitted_by==null}function gr(e){return e.schedule_status===`ended`?!1:e.audit_status===`pending`?Z(e)||X()&&hr(e):!!(Z(e)||X()&&hr(e))}function _r(e){return e.audit_status===`rejected`&&Z(e)?`编辑并提交`:`编辑`}function vr(e){return Z(e)||X()&&hr(e)?!0:(t.warning(hr(e)?`该平台代录的活动仅超级管理员可编辑`:`仅活动创建人可编辑`),!1)}function yr(e){if(!Y())return!1;let t=e.venue_id;return t==null?!1:(T.value?.venues??[]).some(e=>Number(e.id)===Number(t))}function br(e){return X()||Z(e)||yr(e)}function xr(e){return br(e)?!0:(Y()?t.warning(`仅可管理已绑定场馆举办的活动花絮`):t.warning(e.submitted_by==null?`该平台代录的活动仅超级管理员可管理花絮`:`只能管理本人提交的活动花絮`),!1)}function Sr(e){return X()||Z(e)?!0:yr(e)}function Cr(e,n){if(mr(e))return!0;if((e.approve_audit_logs_count??0)>0)return t.warning(`该活动曾审核通过,无法删除`),!1;let r=e.audit_status;return r!==`pending`&&r!==`rejected`?(t.warning(`只有待审核或已退回、且从未审核通过的活动可以删除`),!1):(t.warning(e.submitted_by==null?`该平台代录的活动仅超级管理员可删除`:`仅活动创建人可删除该活动(待审核或首次退回)`),!1)}function wr(e){return e===`pending`?`待审核`:e===`rejected`?`已退回`:e===`approved`?`已通过`:`-`}function Tr(e){return e===`pending`?`orangered`:e===`rejected`?`red`:e===`approved`?`green`:`gray`}function Er(){return new Intl.DateTimeFormat(`en-CA`,{timeZone:`Asia/Shanghai`,year:`numeric`,month:`2-digit`,day:`2-digit`}).format(new Date)}function Dr(e,t){return!e||!t?0:e<t?-1:e>t?1:0}function Or(e,t){let n=Er();return!e&&!t?null:e&&!t?Dr(n,e)<0?`not_started`:`ongoing`:!e&&t?Dr(n,t)>0?`ended`:`ongoing`:Dr(n,e)<0?`not_started`:Dr(n,t)>0?`ended`:`ongoing`}function kr(e){return e==null?``:e===`not_started`?`未开始`:e===`ended`?`已结束`:`进行中`}function Ar(e){return e==null?`gray`:e===`not_started`?`arcoblue`:e===`ended`?`gray`:`green`}function jr(e){return X()?!0:Z(e)||yr(e)}let Mr=g(()=>{if(j.value){let e=F.value||A.value?.title||``;return e?`审核通过 · 核销管理 · ${e}`:`审核通过 · 核销管理`}return Xt.value===`audit`?`审核活动`:`查看活动与审核记录`});function Nr(e){return e===`approve`?`通过`:e===`reject`?`退回`:e===`edit_submit`?`编辑并提交`:e}async function Pr(e,n){A.value=e,Xt.value=n===`audit`&&e.audit_status===`pending`&&X()?`audit`:`view`,tn.value=``,nn.value=``,j.value=!1,M.value=``,N.value=``,k.value=!0,Zt.value=!0,Qt.value=[],$t.value=``,en.value=[];try{let t=C.get(`/activities/${e.id}/activity-audit-logs`),n=e.reservation_type===`online`?C.get(`/activities/${e.id}/booking-settings`):Promise.resolve(null),r=e.reservation_type===`online`&&e.audit_status===`approved`&&Sr(e)?C.get(`/activities/${e.id}/verify-portal`):Promise.resolve(null),[i,a,o]=await Promise.all([t,n,r]);if(en.value=i.data.data??[],a){let e=a.data,t=Math.max(1,Number(e?.min_people_per_order)||1),n=Math.max(t,Number(e?.max_people_per_order)||t);$t.value=Vn(String(e?.booking_audience??``),t,n),Qt.value=(Array.isArray(e?.days)?e.days:[]).map(e=>{let t=Number(e.id);return{id:Number.isFinite(t)&&t>0?t:void 0,session_name:String(e.session_name??``),session_start_at:q(e.session_start_at),session_end_at:q(e.session_end_at),booking_opens_at:q(e.booking_opens_at),booking_deadline_at:q(e.booking_deadline_at),day_quota:Math.max(0,Number(e.day_quota)||0),quota_note:String(e.quota_note??``),booked_count:Math.max(0,Number(e.booked_count)||0)}})}if(o){let e=o.data;M.value=ae(),N.value=String(e?.verify_portal_pin??``).trim()}}catch(e){t.error(e?.response?.data?.message??`加载审核详情失败`),k.value=!1}finally{Zt.value=!1}}function Fr(){j.value=!1,k.value=!1,$()}function Ir(e){cn.value=e,sn.value=``,e===`approve`?(an.value=`通过审核`,on.value=`请输入审核说明(选填)`):e===`approve_hot`?(an.value=`通过并设为热门活动`,on.value=`请输入审核说明(选填)`):(an.value=`退回活动`,on.value=`请输入退回说明(选填)`),rn.value=!0}async function Lr(){let e=cn.value;if(!e)return;let n=A.value;if(n?.id)if(rn.value=!1,e===`reject`)try{await C.post(`/activities/${n.id}/audit/reject`,{remark:sn.value.trim()||void 0}),t.success(`已退回`),k.value=!1,await $()}catch(e){t.error(e?.response?.data?.message??`操作失败`)}else{let r=e===`approve_hot`,i=n.id,a=X()&&n.reservation_type===`online`;try{if(await C.post(`/activities/${n.id}/audit/approve`,{mark_hot:r,remark:sn.value.trim()||void 0}),t.success(`审核已通过`),!a){k.value=!1,await $();return}Zt.value=!0;try{await $();let e=ne.value.find(e=>e.id===i);e&&(A.value=e),j.value=!0,mn.value=i,F.value=e?.title||n.title||``,hn.value=e?.venue?.name||n.venue?.name||``,await I(i)}catch(e){t.error(e?.response?.data?.message??`加载核销配置失败`),j.value=!1,k.value=!1}finally{Zt.value=!1}}catch(e){t.error(e?.response?.data?.message??`操作失败`)}}}async function Rr(e,n){if(typeof n==`boolean`)try{await C.post(`/activities/${e.id}/hot-flag`,{is_hot:n}),t.success(`已更新热门状态`),e.is_hot=n}catch(e){t.error(e?.response?.data?.message??`操作失败`)}}async function zr(e,n){if(typeof n==`boolean`)try{await C.post(`/activities/${e.id}/toggle`),t.success(n?`已上架`:`已下架`),e.is_active=n}catch(e){t.error(e?.response?.data?.message??`操作失败`)}}function Br(e){let t=e.behind_scenes_media;return Array.isArray(t)?t.some(e=>e&&e.type===`image`&&String(e.url||``).trim().length>0):!1}function Vr(e){xr(e)&&(un.value=e.id,dn.value=Br(e)?`查看花絮`:`上传花絮`,P.value=(Array.isArray(e.behind_scenes_media)?e.behind_scenes_media:[]).filter(e=>e&&e.type===`image`&&String(e.url||``).trim()).map(e=>({type:`image`,url:String(e.url)})),ln.value=!0)}async function Hr(e){try{let n=e instanceof File?e:fi(e);if(!n)return!1;let r=await rr(n);P.value=[...P.value,{type:`image`,url:r}],t.success(`已添加图片`)}catch(e){t.error(e?.response?.data?.message??`上传失败`)}return!1}function Ur(e){let t=[...P.value];t.splice(e,1),P.value=t}function Wr(e,t){let n=e+t;if(n<0||n>=P.value.length)return;let r=[...P.value],i=r[e];r[e]=r[n],r[n]=i,P.value=r}async function Gr(){if(!un.value)return!1;fn.value=!0;try{return await C.put(`/activities/${un.value}/behind-scenes`,{behind_scenes_media:P.value}),t.success(`花絮已保存`),ln.value=!1,await $(),!0}catch(e){return t.error(e?.response?.data?.message??`保存失败`),!1}finally{fn.value=!1}}function Kr(e){let t=String(e.offline_reservation_method||``);return t===`paid`?`收费`:t===`free`?`免费`:t||`—`}function qr(e){return(e.reservation_type||``)===`other`||!!String(e.external_url||``).trim()}function Q(e){if(e==null||e===``)return;let t=typeof e==`number`?e:parseFloat(String(e).trim());return Number.isFinite(t)?t:void 0}function Jr(){return`CRFBZ-NTART-YU4XX-LCDGK-3J456-VKBK2`}function Yr(){let e=U.venue_id;if(!e){t.warning(`请先选择场馆`);return}let n=w.value.find(t=>t.id===e);if(!n)return;n.address?.trim()&&(U.location=n.address.trim());let r=Q(n.lat),i=Q(n.lng);r!==void 0&&i!==void 0?(U.lat=r,U.lng=i,t.success(`已填入本馆地址与坐标`)):n.address?.trim()?t.success(`已填入本馆地址,该馆尚未保存经纬度`):t.warning(`该场馆未设置地址与经纬度`)}async function Xr(){if(window.TMap)return;let e=Jr();if(!e)throw Error(`请先配置 VITE_TENCENT_MAP_KEY`);await new Promise((t,n)=>{let r=document.createElement(`script`);r.src=`https://map.qq.com/api/gljs?v=1.exp&key=${e}`,r.async=!0,r.onload=()=>t(),r.onerror=()=>n(Error(`腾讯地图SDK加载失败`)),document.head.appendChild(r)})}function Zr(e,t){let n=window.TMap;z&&(B&&B.setMap(null),B=new n.MultiMarker({map:z,styles:{marker:new n.MarkerStyle({width:24,height:35})},geometries:[{id:`picked`,styleId:`marker`,position:new n.LatLng(e,t)}]}),z.setCenter(new n.LatLng(e,t)))}function Qr(e,t){let n=window.TMap;if(!z||!n)return;let r=new n.LatLng(e,t);z.resize?.(),z.setCenter(r),z.setZoom(13),setTimeout(()=>{z.resize?.(),z.setCenter(r)},120)}async function $r(e,t){let{data:n}=await C.get(`/map/reverse-geocode`,{params:{lat:e,lng:t}});V.value={lat:e,lng:t,address:n.address||``}}async function ei(){await Xr();let e=window.TMap,n=Q(U.lat)??In.lat,r=Q(U.lng)??In.lng,i=new e.LatLng(n,r);if(z?z.setCenter(i):(z=new e.Map(Fn.value,{center:i,zoom:13}),z.on(`click`,async e=>{let n=Number(e.latLng.getLat().toFixed(6)),r=Number(e.latLng.getLng().toFixed(6));Zr(n,r);try{await $r(n,r)}catch(e){t.error(e?.response?.data?.message??`逆地理编码失败`)}})),Qr(n,r),Q(U.lat)!=null&&Q(U.lng)!=null){let e=Q(U.lat),t=Q(U.lng);Zr(e,t),V.value={lat:e,lng:t,address:(U.location||``).trim()}}else B&&=(B.setMap(null),null),V.value=null}async function ti(){jn.value=!0,Nn.value=``,Pn.value=[],Mn.value=!0;try{await a(),setTimeout(async()=>{try{await ei()}catch(e){t.error(e?.message??`地图初始化失败`)}finally{Mn.value=!1}},250)}catch{Mn.value=!1}}async function ni(){if(!Nn.value.trim()){Pn.value=[];return}Mn.value=!0;try{let{data:e}=await C.get(`/map/search`,{params:{keyword:Nn.value,region:`苏州`}});Pn.value=e}catch(e){t.error(e?.response?.data?.message??`地图搜索失败`)}finally{Mn.value=!1}}async function ri(e){Zr(e.lat,e.lng),V.value={lat:e.lat,lng:e.lng,address:e.address||``};try{await $r(e.lat,e.lng)}catch{}}function ii(){return V.value?(U.lat=V.value.lat,U.lng=V.value.lng,V.value.address?.trim()&&(U.location=V.value.address.trim()),jn.value=!1,!0):(t.warning(`请先点击地图或选择搜索结果`),!1)}function ai(e){let t=String(e||``).trim();return t===`online`?`需要报名`:t===`none`?`无需报名`:t===`phone`?`电话预约`:t===`wechat_mp`?`公众号预约`:t===`offline_visit`||t===`offline`?`线下预约`:t===`other`?`外链跳转`:t||`—`}function oi(e){let t=Number(e);return Number.isFinite(t)?String(t):`0`}function si(e){return`浏览 `+oi(e.view_count)}async function $(){Jt.value=!0;try{let[e,t]=await Promise.all([C.get(`/activities`,{params:{page:D.current,page_size:D.pageSize,keyword:O.keyword||void 0,venue_id:O.venue_id||void 0,reservation_type:O.reservation_type,is_active:O.is_active,schedule_status:O.schedule_status,audit_status:O.audit_status}}),C.get(`/venues`)]);ne.value=e.data.data,D.total=e.data.total,w.value=t.data}catch(e){t.error(e?.response?.data?.message??`加载活动失败`)}finally{Jt.value=!1}}async function ci(){let{data:e}=await C.get(`/me`);if(T.value=e,e?.role===`venue_admin`){let t=e.venues?.[0]?.id;O.venue_id=t,U.venue_id=t}}function li(){L.value=!0,R.value=null,Object.keys(W).forEach(e=>{W[e]=``}),U.venue_id=Y()?T.value?.venues?.[0]?.id:w.value[0]?.id,U.reservation_type=`none`,U.ticket_note=`free`,U.fee_note=``,U.location=``,U.check_in_meeting_point=``,U.lat=void 0,U.lng=void 0,U.specific_time=``,U.offline_reservation_method=``,U.external_url=``,U.title=``,U.contact_name=``,U.contact_phone=``,U.start_at=``,U.end_at=``,U.detail_html=``,U.cover_image=``,U.gallery_media=[],U.tags=[],U.summary=``,U.is_hot=!1,U.sort=0,U.is_active=!0,U.display_schedule_status=void 0,K.value=0,G.booking_audience=`both`,G.min_people_per_order=1,G.max_people_per_order=10,G.days=[],vn.value=null,ir(),ur(),E.value=!0}function ui(e){vr(e)&&(L.value=!1,R.value=e.id,K.value=0,G.booking_audience=`both`,G.min_people_per_order=1,G.max_people_per_order=10,G.days=[],vn.value=e,Object.keys(W).forEach(e=>{W[e]=``}),U.venue_id=e.venue_id,U.reservation_type=String(e.reservation_type??`online`).trim()||`online`,U.ticket_note=String(e.offline_reservation_method||``)===`paid`?`paid`:`free`,U.fee_note=e.ticket_fee_note||``,U.location=e.location||``,U.check_in_meeting_point=e.check_in_meeting_point||``,U.lat=Q(e.lat),U.lng=Q(e.lng),U.specific_time=e.specific_time||``,U.offline_reservation_method=``,U.external_url=``,U.title=e.title,U.contact_name=e.contact_name??``,U.contact_phone=e.contact_phone??``,U.start_at=e.start_at?H(e.start_at):``,U.end_at=e.end_at?H(e.end_at):``,U.detail_html=e.detail_html||``,U.cover_image=e.cover_image||``,U.gallery_media=Array.isArray(e.gallery_media)?[...e.gallery_media]:[],U.tags=Array.isArray(e.tags)?[...e.tags]:[],U.sort=e.sort??0,U.summary=e.summary||``,U.is_active=e.is_active,U.is_hot=X()?e.is_hot===!0:!1,U.display_schedule_status=e.schedule_status,ir(),ur(),E.value=!0)}function di(){D.current=1,$()}function fi(e){let t=new Set,n=[e];for(;n.length;){let e=n.shift();if(!(!e||t.has(e))){if(t.add(e),e instanceof File)return e;if(e?.target?.files?.[0]instanceof File)return e.target.files[0];if(Array.isArray(e)){n.push(...e);continue}if(typeof e==`object`){for(let t of[`file`,`raw`,`originFile`,`originFileObj`,`fileItem`,`item`,`data`])e[t]&&n.push(e[t]);for(let t of Object.values(e))t&&typeof t==`object`&&n.push(t)}}}return null}async function pi(e){try{let n=fi(e);if(!n)return!1;U.cover_image=await rr(n),t.success(`封面上传成功`)}catch(e){t.error(e?.response?.data?.message??`封面上传失败`)}return!1}async function mi(e){try{let n=fi(e);if(!n)return!1;let r=await rr(n),i=n.type.startsWith(`video/`);U.gallery_media.push({type:i?`video`:`image`,url:r}),t.success(`轮播资源上传成功`)}catch(e){t.error(e?.response?.data?.message??`轮播资源上传失败`)}return!1}function hi(...e){pi(e)}function gi(...e){mi(e)}function _i(){U.cover_image=``}function vi(e){U.gallery_media.splice(e,1)}function yi(){let e=Hn.value.trim();if(!e){t.warning(`请输入标签内容`);return}if(U.tags.includes(e)){t.warning(`标签已存在`);return}U.tags=[...U.tags,e],Hn.value=``}function bi(e){let t=[...U.tags];t.splice(e,1),U.tags=t}function xi(){Object.keys(W).forEach(e=>{W[e]=``});let e=!0;if(U.venue_id||(W.venue_id=`请选择场馆`,e=!1),U.title.trim()||(W.title=`请填写活动名称`,e=!1),U.contact_name.trim()||(W.contact_name=`请填写联系人`,e=!1),U.contact_phone.trim()||(W.contact_phone=`请填写联系电话`,e=!1),U.start_at||(W.start_at=`请选择开始日期`,e=!1),U.end_at||(W.end_at=`请选择结束日期`,e=!1),!U.location.trim())W.location=`请填写活动地点`,e=!1;else{let t=Q(U.lat),n=Q(U.lng);(t===void 0||n===void 0)&&(W.location=`请地图选点或使用本馆地址完善活动地点定位`,e=!1)}let t=String(U.reservation_type||``).trim();return t?t.length>32&&(W.reservation_type=`报名方式最长 32 个字符`,e=!1):(W.reservation_type=`请选择或填写报名方式`,e=!1),U.ticket_note||(W.ticket_note=`请选择门票说明`,e=!1),e}async function Si(){if(!xi()){t.warning(`请填写所有必填项`);return}if(!qn.value){await wi();return}try{!L.value&&R.value?await $n(R.value):(G.booking_audience=`both`,G.min_people_per_order=1,G.max_people_per_order=10,G.days=[],Zn()),K.value=1}catch{}}function Ci(){fr()&&(E.value=!1,K.value=0,vn.value=null)}async function wi(){Yt.value=!0;try{if(!xi())return t.warning(`请填写所有必填项`),!1;let e=Kn.value&&qn.value;if(e&&K.value!==1)return t.warning(`请先填写场次设置后再提交`),!1;if(e&&!er())return!1;let n={venue_id:U.venue_id,reservation_type:String(U.reservation_type||``).trim(),location:U.location.trim(),check_in_meeting_point:U.check_in_meeting_point.trim()||null,specific_time:U.specific_time.trim()||null,offline_reservation_method:U.ticket_note===`paid`?`paid`:`free`,ticket_fee_note:U.ticket_note===`paid`&&U.fee_note.trim()||null,external_url:null,title:U.title.trim(),summary:U.summary.trim()||null,quota:0,category:null,start_at:U.start_at||null,end_at:U.end_at||null,address:null,contact_name:U.contact_name.trim()||null,contact_phone:U.contact_phone.trim()||null,lat:Q(U.lat)??null,lng:Q(U.lng)??null,detail_html:U.detail_html||null,cover_image:U.cover_image||null,gallery_media:U.gallery_media,tags:U.tags,reservation_notice:null,open_time:null},r=null,i=R.value;if(L.value){let{data:e}=await C.post(`/activities`,n);r=e,i=e?.id??null}else{let{data:e}=await C.put(`/activities/${R.value}`,n);r=e??{audit_status:void 0},i=R.value}return e&&i&&await C.put(`/activities/${i}/booking-settings`,tr()),!X()&&r?.audit_status===`pending`?t.success(`信息已保存,请等待管理员审核`):t.success(L.value?`创建活动成功`:`更新活动成功`),ur(),E.value=!1,K.value=0,vn.value=null,await $(),!0}catch(e){return t.error(e?.response?.data?.message??`保存失败`),!1}finally{Yt.value=!1}}ce(dr,`活动表单有未保存改动,确定要离开吗?`),i(async()=>{await ci().catch(()=>void 0);let e=Ln.query.audit_status,t=Array.isArray(e)?e[0]:e;(t===`pending`||t===`approved`||t===`rejected`)&&(O.audit_status=t),await $()});function Ti(e){D.current=e,$()}async function Ei(e){if(Cr(e,`删除`))try{await C.delete(`/activities/${e.id}`),t.success(`删除成功`),await $()}catch(e){let n=e?.response?.data;if(n?.message&&n?.reservation_count!==void 0){t.error(`${n.message}(关联报名数:${n.reservation_count})`);return}t.error(n?.message??`删除失败`)}}return(t,i)=>{let a=s(`a-input`),o=s(`a-option`),m=s(`a-select`),g=s(`a-button`),_=s(`a-space`),y=s(`a-table-column`),C=s(`a-tag`),re=s(`a-switch`),T=s(`a-tooltip`),ae=s(`a-popconfirm`),se=s(`a-table`),ce=s(`a-card`),tn=s(`a-typography-paragraph`),nn=s(`a-spin`),cn=s(`a-timeline-item`),un=s(`a-timeline`),F=s(`a-modal`),vn=s(`a-textarea`),I=s(`a-form-item`),L=s(`a-form`),R=s(`a-upload`),Cn=s(`a-range-picker`),z=s(`a-col`),B=s(`a-row`),In=s(`a-typography-text`),Ln=s(`a-input-number`),H=s(`a-date-picker`),Vn=s(`a-list-item`),Wn=s(`a-list`),Kn=s(`a-alert`);return r(),v(p,null,[x(ce,{title:`活动管理 / 活动列表`},{default:c(()=>[x(_,{style:{"margin-bottom":`12px`},wrap:``},{default:c(()=>[x(a,{modelValue:O.keyword,"onUpdate:modelValue":i[0]||=e=>O.keyword=e,placeholder:`搜索活动名称`,style:{width:`220px`}},null,8,[`modelValue`]),Y()?d(``,!0):(r(),u(m,{key:0,modelValue:O.venue_id,"onUpdate:modelValue":i[1]||=e=>O.venue_id=e,"allow-clear":``,"allow-search":``,placeholder:`筛选场馆`,style:{width:`220px`}},{default:c(()=>[(r(!0),v(p,null,S(w.value,e=>(r(),u(o,{key:e.id,value:e.id},{default:c(()=>[l(h(e.name),1)]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`])),x(m,{modelValue:O.reservation_type,"onUpdate:modelValue":i[2]||=e=>O.reservation_type=e,"allow-clear":``,"allow-create":``,"allow-search":``,placeholder:`报名方式`,style:{width:`200px`}},{default:c(()=>[x(o,{value:`online`},{default:c(()=>[...i[38]||=[l(`需要报名`,-1)]]),_:1}),x(o,{value:`none`},{default:c(()=>[...i[39]||=[l(`无需报名`,-1)]]),_:1})]),_:1},8,[`modelValue`]),x(m,{modelValue:O.is_active,"onUpdate:modelValue":i[3]||=e=>O.is_active=e,"allow-clear":``,placeholder:`上架状态`,style:{width:`130px`}},{default:c(()=>[x(o,{value:`1`},{default:c(()=>[...i[40]||=[l(`上架`,-1)]]),_:1}),x(o,{value:`0`},{default:c(()=>[...i[41]||=[l(`下架`,-1)]]),_:1})]),_:1},8,[`modelValue`]),x(m,{modelValue:O.schedule_status,"onUpdate:modelValue":i[4]||=e=>O.schedule_status=e,"allow-clear":``,placeholder:`活动状态`,style:{width:`130px`}},{default:c(()=>[x(o,{value:`not_started`},{default:c(()=>[...i[42]||=[l(`未开始`,-1)]]),_:1}),x(o,{value:`ongoing`},{default:c(()=>[...i[43]||=[l(`进行中`,-1)]]),_:1}),x(o,{value:`ended`},{default:c(()=>[...i[44]||=[l(`已结束`,-1)]]),_:1})]),_:1},8,[`modelValue`]),x(m,{modelValue:O.audit_status,"onUpdate:modelValue":i[5]||=e=>O.audit_status=e,"allow-clear":``,placeholder:`审核状态`,style:{width:`130px`}},{default:c(()=>[x(o,{value:`approved`},{default:c(()=>[...i[45]||=[l(`已通过`,-1)]]),_:1}),x(o,{value:`pending`},{default:c(()=>[...i[46]||=[l(`待审核`,-1)]]),_:1}),x(o,{value:`rejected`},{default:c(()=>[...i[47]||=[l(`已退回`,-1)]]),_:1})]),_:1},8,[`modelValue`]),x(g,{type:`primary`,onClick:di},{default:c(()=>[...i[48]||=[l(`查询`,-1)]]),_:1}),x(g,{type:`primary`,onClick:li},{default:c(()=>[...i[49]||=[l(`新增活动`,-1)]]),_:1})]),_:1}),x(se,{class:`list-data-table`,scroll:{x:pr.value},data:ne.value,loading:Jt.value,"row-key":`id`,pagination:{current:D.current,pageSize:D.pageSize,total:D.total,showTotal:!0},onPageChange:Ti},{columns:c(()=>[x(y,{title:``,width:50,ellipsis:!0,tooltip:!0},{cell:c(({rowIndex:e})=>[l(h(te(oe)(e,D.current,D.pageSize)),1)]),_:1}),x(y,{title:`活动名称`,"data-index":`title`,width:220,"min-width":160,ellipsis:!0,tooltip:!0}),x(y,{title:`活动日期`,width:200,"min-width":150,ellipsis:!0,tooltip:!0},{cell:c(({record:e})=>[l(h(Rn(e)),1)]),_:1}),Y()?d(``,!0):(r(),u(y,{key:0,title:`场馆`,width:180,"min-width":120,ellipsis:!0,tooltip:!0},{cell:c(({record:e})=>[l(h(e.venue?.name||`-`),1)]),_:1})),x(y,{title:`报名方式`,width:130},{cell:c(({record:e})=>[l(h(ai(e.reservation_type)),1)]),_:1}),x(y,{title:`浏览量`,width:100},{cell:c(({record:e})=>[l(h(si(e)),1)]),_:1}),x(y,{title:`活动状态`,width:80},{cell:c(({record:e})=>[x(C,{color:Ar(e.schedule_status)},{default:c(()=>[l(h(kr(e.schedule_status)),1)]),_:2},1032,[`color`])]),_:1}),X()?(r(),u(y,{key:1,title:`上架`,width:80},{cell:c(({record:e})=>[x(re,{"model-value":e.is_active===!0,size:`small`,onChange:t=>zr(e,t)},null,8,[`model-value`,`onChange`])]),_:1})):d(``,!0),x(y,{title:`审核状态`,width:88},{cell:c(({record:e})=>[e.audit_status===`rejected`&&e.audit_remark?(r(),u(T,{key:0,content:e.audit_remark},{default:c(()=>[x(C,{color:Tr(e.audit_status)},{default:c(()=>[l(h(wr(e.audit_status)),1)]),_:2},1032,[`color`])]),_:2},1032,[`content`])):(r(),u(C,{key:1,color:Tr(e.audit_status)},{default:c(()=>[l(h(wr(e.audit_status)),1)]),_:2},1032,[`color`]))]),_:1}),X()?(r(),u(y,{key:2,title:`热门`,width:80},{cell:c(({record:e})=>[x(re,{"model-value":e.is_hot===!0,size:`small`,onChange:t=>Rr(e,t)},null,8,[`model-value`,`onChange`])]),_:1})):d(``,!0),x(y,{title:`操作`,width:230,"min-width":210,fixed:`right`,align:`left`},{cell:c(({record:e})=>[x(_,{wrap:``,size:4,justify:`start`},{default:c(()=>[gr(e)?(r(),u(g,{key:0,type:`text`,onClick:t=>ui(e)},{default:c(()=>[l(h(_r(e)),1)]),_:2},1032,[`onClick`])):d(``,!0),X()&&e.audit_status===`pending`?(r(),u(g,{key:1,type:`text`,onClick:t=>Pr(e,`audit`)},{default:c(()=>[...i[50]||=[l(`审核`,-1)]]),_:1},8,[`onClick`])):jr(e)?(r(),u(g,{key:2,type:`text`,onClick:t=>Pr(e,`view`)},{default:c(()=>[...i[51]||=[l(`查看`,-1)]]),_:1},8,[`onClick`])):d(``,!0),br(e)&&e.schedule_status===`ended`?(r(),u(g,{key:3,type:`text`,onClick:t=>Vr(e)},{default:c(()=>[l(h(Br(e)?`查看花絮`:`上传花絮`),1)]),_:2},1032,[`onClick`])):d(``,!0),mr(e)?(r(),u(ae,{key:4,content:`确认删除该活动?`,onOk:t=>Ei(e)},{default:c(()=>[x(g,{type:`text`,status:`danger`},{default:c(()=>[...i[52]||=[l(`删除`,-1)]]),_:1})]),_:1},8,[`onOk`])):d(``,!0)]),_:2},1024)]),_:1})]),_:1},8,[`scroll`,`data`,`loading`,`pagination`])]),_:1}),x(F,{visible:k.value,"onUpdate:visible":i[12]||=e=>k.value=e,title:Mr.value,width:`72%`,"body-style":Tn},{footer:c(()=>[j.value?(r(),u(g,{key:0,type:`primary`,onClick:Fr},{default:c(()=>[...i[53]||=[l(`完成`,-1)]]),_:1})):Xt.value===`audit`?(r(),u(_,{key:1,wrap:``},{default:c(()=>[x(g,{type:`primary`,status:`success`,onClick:i[6]||=e=>Ir(`approve`)},{default:c(()=>[...i[54]||=[l(`通过`,-1)]]),_:1}),x(g,{type:`primary`,onClick:i[7]||=e=>Ir(`approve_hot`)},{default:c(()=>[...i[55]||=[l(`通过且为热门活动`,-1)]]),_:1}),x(g,{status:`danger`,onClick:i[8]||=e=>Ir(`reject`)},{default:c(()=>[...i[56]||=[l(`退回`,-1)]]),_:1}),x(g,{onClick:i[9]||=e=>k.value=!1},{default:c(()=>[...i[57]||=[l(`取消`,-1)]]),_:1})]),_:1})):(r(),u(g,{key:2,onClick:i[10]||=e=>k.value=!1},{default:c(()=>[...i[58]||=[l(`关闭`,-1)]]),_:1}))]),default:c(()=>[x(nn,{style:{width:`100%`},loading:Zt.value},{default:c(()=>[j.value&&mn.value?(r(),v(`div`,le,[x(nn,{loading:pn.value,style:{width:`100%`}},{default:c(()=>[x(tn,{type:`secondary`,style:{"margin-bottom":`12px`}},{default:c(()=>[...i[59]||=[l(` 所有活动共用`,-1),b(`strong`,null,`同一核销入口`,-1),l(`;每个活动有独立的 `,-1),b(`strong`,null,`6 位数字密码`,-1),l(`,无需用户名,支持多人同时登录核销;`,-1),b(`strong`,null,`场馆后台账号不可`,-1),l(`登录核销页。 `,-1)]]),_:1}),hn.value?(r(),v(`div`,ue,` 举办场馆:`+h(hn.value),1)):d(``,!0),b(`div`,de,[i[62]||=b(`span`,{class:`activity-verify-inline-line__label`},`核销入口链接`,-1),x(a,{"model-value":gn.value,readonly:``,class:`activity-verify-inline-line__input activity-verify-inline-line__input--url`},null,8,[`model-value`]),x(g,{type:`primary`,onClick:xn},{default:c(()=>[...i[60]||=[l(`复制链接`,-1)]]),_:1}),i[63]||=b(`span`,{class:`activity-verify-inline-line__label`},`本活动核销密码`,-1),x(a,{"model-value":_n.value,readonly:``,class:`activity-verify-inline-line__input activity-verify-inline-line__input--pin`,style:{"font-variant-numeric":`tabular-nums`}},null,8,[`model-value`]),x(g,{type:`primary`,onClick:Sn},{default:c(()=>[...i[61]||=[l(`复制密码`,-1)]]),_:1})])]),_:1},8,[`loading`])])):A.value?(r(),v(`div`,fe,[b(`div`,pe,[b(`div`,me,[i[64]||=b(`span`,{class:`activity-audit-inline-label`},`活动名称`,-1),b(`div`,he,h(A.value.title||`—`),1)]),b(`div`,ge,[i[65]||=b(`span`,{class:`activity-audit-inline-label`},`举办场馆`,-1),b(`div`,_e,h(A.value.venue?.name||`—`),1)]),b(`div`,ve,[i[66]||=b(`span`,{class:`activity-audit-inline-label`},`联系人`,-1),b(`div`,ye,h(A.value.contact_name||`—`),1)]),b(`div`,be,[i[67]||=b(`span`,{class:`activity-audit-inline-label`},`联系电话`,-1),b(`div`,xe,h(A.value.contact_phone||`—`),1)]),b(`div`,Se,[i[68]||=b(`span`,{class:`activity-audit-inline-label`},`活动日期`,-1),b(`div`,Ce,h(Rn(A.value)),1)]),b(`div`,we,[i[69]||=b(`span`,{class:`activity-audit-inline-label`},`具体时间`,-1),b(`div`,Te,h(A.value.specific_time?.trim()?A.value.specific_time:`—`),1)]),b(`div`,Ee,[i[70]||=b(`span`,{class:`activity-audit-inline-label`},`报名方式`,-1),b(`div`,De,h(ai(A.value.reservation_type)),1)]),b(`div`,Oe,[i[71]||=b(`span`,{class:`activity-audit-inline-label`},`门票说明`,-1),b(`div`,ke,h(Kr(A.value)),1)]),A.value.offline_reservation_method===`paid`&&A.value.ticket_fee_note?(r(),v(`div`,Ae,[i[72]||=b(`span`,{class:`activity-audit-inline-label`},`收费说明`,-1),b(`div`,je,h(A.value.ticket_fee_note),1)])):d(``,!0),qr(A.value)?(r(),v(`div`,Me,[i[73]||=b(`span`,{class:`activity-audit-inline-label`},`外链地址`,-1),b(`div`,Ne,h(A.value.external_url||`—`),1)])):d(``,!0),b(`div`,Pe,[i[74]||=b(`span`,{class:`activity-audit-inline-label`},`标签`,-1),b(`div`,Fe,[b(`div`,Ie,[(r(!0),v(p,null,S(A.value.tags||[],(e,t)=>(r(),u(C,{key:`${e}-${t}`,style:{"margin-bottom":`0`}},{default:c(()=>[l(h(e),1)]),_:2},1024))),128)),A.value.tags?.length?d(``,!0):(r(),v(`span`,Le,`暂无标签`))])])]),b(`div`,Re,[i[75]||=b(`span`,{class:`activity-audit-inline-label`},`活动地点`,-1),b(`div`,ze,h(A.value.location?.trim()?A.value.location:A.value.address||`—`),1)]),b(`div`,Be,[i[76]||=b(`span`,{class:`activity-audit-inline-label`},`活动报到集合地点`,-1),b(`div`,Ve,h(A.value.check_in_meeting_point?.trim()?A.value.check_in_meeting_point:`—`),1)]),b(`div`,He,[b(`div`,Ue,[i[77]||=b(`span`,{class:`activity-audit-inline-label`},`活动封面图`,-1),b(`div`,We,[A.value.cover_image?(r(),v(`img`,{key:0,src:A.value.cover_image,class:`activity-cover-thumb`,alt:``,onClick:i[11]||=e=>J(`image`,A.value.cover_image)},null,8,Ge)):(r(),v(`span`,Ke,`—`))])]),b(`div`,qe,[i[78]||=b(`span`,{class:`activity-audit-inline-label`},`活动展示图片`,-1),b(`div`,Je,[A.value.gallery_media?.length?(r(),v(`div`,Ye,[(r(!0),v(p,null,S(A.value.gallery_media,(e,t)=>(r(),v(`div`,{key:e.url+t,class:`activity-gallery-item`},[e.type===`image`?(r(),v(`img`,{key:0,src:e.url,class:`activity-gallery-thumb`,alt:``,onClick:t=>J(`image`,e.url)},null,8,Xe)):(r(),v(`video`,{key:1,src:e.url,controls:``,class:`activity-gallery-thumb activity-gallery-thumb--video`,onClick:n(t=>J(`video`,e.url),[`stop`])},null,8,Ze))]))),128))])):(r(),v(`span`,Qe,`—`))])])])]),b(`div`,$e,[i[79]||=b(`div`,{class:`activity-audit-stack__label`},`活动详情`,-1),b(`div`,et,[A.value.detail_html?.trim()?(r(),v(`div`,{key:0,class:`activity-audit-rich`,innerHTML:A.value.detail_html},null,8,tt)):(r(),v(`span`,nt,`—`))])]),A.value.reservation_type===`online`?(r(),v(`div`,rt,[b(`div`,it,`场次设置(`+h($t.value||`—`)+`)`,1),b(`div`,at,[Qt.value.length?(r(),u(se,{key:0,data:Qt.value,pagination:!1,size:`small`,bordered:{cell:!0}},{columns:c(()=>[x(y,{title:`场次名称`,"data-index":`session_name`}),x(y,{title:`场次开始`,"data-index":`session_start_at`}),x(y,{title:`场次结束`,"data-index":`session_end_at`}),x(y,{title:`预约截止`,"data-index":`booking_deadline_at`}),x(y,{title:`名额`,"data-index":`day_quota`}),x(y,{title:`说明`,ellipsis:!0,tooltip:!0},{cell:c(({record:e})=>[b(`span`,null,h((e.quota_note||``).trim()||`—`),1)]),_:1}),x(y,{title:`已约`,"data-index":`booked_count`})]),_:1},8,[`data`])):(r(),v(`span`,ot,`暂无场次`))])])):d(``,!0),A.value.reservation_type===`online`&&A.value.audit_status===`approved`&&(M.value||N.value)?(r(),v(`div`,st,[i[84]||=b(`div`,{class:`activity-audit-stack__label`},`核销信息`,-1),b(`div`,ct,[b(`div`,lt,[i[82]||=b(`span`,{class:`activity-verify-inline-line__label`},`核销入口链接`,-1),x(a,{"model-value":M.value,readonly:``,class:`activity-verify-inline-line__input activity-verify-inline-line__input--url`,disabled:!M.value},null,8,[`model-value`,`disabled`]),x(g,{type:`primary`,disabled:!M.value,onClick:yn},{default:c(()=>[...i[80]||=[l(`复制链接`,-1)]]),_:1},8,[`disabled`]),i[83]||=b(`span`,{class:`activity-verify-inline-line__label`},`本活动核销密码`,-1),x(a,{"model-value":N.value,readonly:``,class:`activity-verify-inline-line__input activity-verify-inline-line__input--pin`,style:{"font-variant-numeric":`tabular-nums`},disabled:!N.value},null,8,[`model-value`,`disabled`]),x(g,{type:`primary`,disabled:!N.value,onClick:bn},{default:c(()=>[...i[81]||=[l(`复制密码`,-1)]]),_:1},8,[`disabled`])])])])):d(``,!0),b(`div`,ut,[i[86]||=b(`div`,{class:`activity-audit-stack__label`},`审核记录`,-1),b(`div`,dt,[b(`div`,ft,[i[85]||=b(`span`,{class:`activity-audit-inline-label`,style:{flex:`none`,"text-align":`left`,"margin-right":`8px`}},`提交人`,-1),b(`div`,pt,[b(`span`,null,h(Bn(A.value)),1),A.value.created_at?(r(),v(`span`,mt,h(String(A.value.created_at).replace(`T`,` `).slice(0,19)),1)):d(``,!0)])]),en.value.length?(r(),u(un,{key:0,mode:`left`},{default:c(()=>[(r(!0),v(p,null,S(en.value,e=>(r(),u(cn,{key:e.id,label:e.created_at?String(e.created_at).replace(`T`,` `).slice(0,19):`—`},{default:c(()=>[b(`div`,null,[e.action===`edit_submit`?(r(),v(`span`,ht,`用户 `+h(e.admin_user?.name||`—`)+` 编辑并提交`,1)):(r(),v(p,{key:1},[x(C,{color:e.action===`approve`?`green`:`red`},{default:c(()=>[l(h(Nr(e.action)),1)]),_:2},1032,[`color`]),e.admin_user?.name?(r(),v(`span`,gt,h(e.admin_user.name),1)):d(``,!0)],64))]),e.remark?(r(),v(`div`,_t,h(e.remark),1)):d(``,!0)]),_:2},1032,[`label`]))),128))]),_:1})):(r(),v(`span`,vt,`暂无平台审核记录(不含本次待提交的说明)`))])])])):d(``,!0)]),_:1},8,[`loading`])]),_:1},8,[`visible`,`title`]),x(F,{visible:rn.value,"onUpdate:visible":i[14]||=e=>rn.value=e,title:an.value,width:`500px`,"on-before-ok":Lr},{default:c(()=>[x(L,{layout:`vertical`},{default:c(()=>[x(I,null,{default:c(()=>[x(vn,{modelValue:sn.value,"onUpdate:modelValue":i[13]||=e=>sn.value=e,placeholder:on.value,"max-length":2e3,"allow-clear":``,"show-word-limit":``,"auto-size":{minRows:3,maxRows:6}},null,8,[`modelValue`,`placeholder`])]),_:1})]),_:1})]),_:1},8,[`visible`,`title`]),x(F,{visible:ln.value,"onUpdate:visible":i[15]||=e=>ln.value=e,title:dn.value,width:`1000px`,"body-style":En,"confirm-loading":fn.value,"on-before-ok":Gr},{default:c(()=>[x(_,{direction:`vertical`,fill:``,style:{width:`100%`}},{default:c(()=>[x(R,{"auto-upload":!1,"show-file-list":!1,accept:`image/*`,multiple:``,"on-before-upload":Hr},{"upload-button":c(()=>[x(g,{type:`outline`},{default:c(()=>[...i[87]||=[l(`添加图片`,-1)]]),_:1})]),_:1}),P.value.length?(r(),v(`div`,yt,[(r(!0),v(p,null,S(P.value,(e,t)=>(r(),v(`div`,{key:t+`-`+e.url,class:`bts-preview-item`},[b(`img`,{class:`bts-preview-img`,src:e.url,onClick:t=>J(`image`,e.url)},null,8,bt),b(`div`,xt,[x(g,{size:`mini`,class:`bts-act-btn`,disabled:t===0,onClick:e=>Wr(t,-1)},{default:c(()=>[...i[88]||=[l(`上移`,-1)]]),_:1},8,[`disabled`,`onClick`]),x(g,{size:`mini`,class:`bts-act-btn`,disabled:t===P.value.length-1,onClick:e=>Wr(t,1)},{default:c(()=>[...i[89]||=[l(`下移`,-1)]]),_:1},8,[`disabled`,`onClick`]),x(g,{size:`mini`,class:`bts-act-btn`,status:`danger`,onClick:e=>Ur(t)},{default:c(()=>[...i[90]||=[l(`删除`,-1)]]),_:1},8,[`onClick`])])]))),128))])):d(``,!0)]),_:1})]),_:1},8,[`visible`,`title`,`confirm-loading`]),x(F,{visible:E.value,"onUpdate:visible":i[34]||=e=>E.value=e,title:Jn.value,width:`70%`,"body-style":wn,"on-before-cancel":te(fr)},{footer:c(()=>[x(g,{onClick:Ci},{default:c(()=>[...i[114]||=[l(`取消`,-1)]]),_:1}),K.value===1?(r(),u(g,{key:0,onClick:i[33]||=e=>K.value=0},{default:c(()=>[...i[115]||=[l(`上一步`,-1)]]),_:1})):d(``,!0),K.value===0&&qn.value?(r(),u(g,{key:1,type:`primary`,loading:Yt.value,onClick:Si},{default:c(()=>[...i[116]||=[l(`下一步:场次设置`,-1)]]),_:1},8,[`loading`])):d(``,!0),K.value===0&&!qn.value?(r(),u(g,{key:2,type:`primary`,loading:Yt.value,onClick:wi},{default:c(()=>[...i[117]||=[l(`提交`,-1)]]),_:1},8,[`loading`])):d(``,!0),K.value===1?(r(),u(g,{key:3,type:`primary`,loading:Yt.value,onClick:wi},{default:c(()=>[...i[118]||=[l(`提交`,-1)]]),_:1},8,[`loading`])):d(``,!0)]),default:c(()=>[x(nn,{class:`activity-edit-spin`,style:{width:`100%`},loading:Gn.value},{default:c(()=>[ee(b(`div`,null,[x(L,{model:U,layout:`vertical`,class:`admin-modal-form`},{default:c(()=>[x(I,{label:`活动名称`,required:``,help:W.title},f({default:c(()=>[x(a,{modelValue:U.title,"onUpdate:modelValue":i[16]||=e=>U.title=e},null,8,[`modelValue`])]),_:2},[W.title?{name:`help`,fn:c(()=>[b(`span`,St,h(W.title),1)]),key:`0`}:void 0]),1032,[`help`]),Y()?d(``,!0):(r(),u(I,{key:0,label:`举办场馆`,required:``,help:W.venue_id},f({default:c(()=>[x(m,{modelValue:U.venue_id,"onUpdate:modelValue":i[17]||=e=>U.venue_id=e,"allow-search":``},{default:c(()=>[(r(!0),v(p,null,S(w.value,e=>(r(),u(o,{key:e.id,value:e.id},{default:c(()=>[l(h(e.name),1)]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`])]),_:2},[W.venue_id?{name:`help`,fn:c(()=>[b(`span`,Ct,h(W.venue_id),1)]),key:`0`}:void 0]),1032,[`help`])),x(I,{label:`联系人`,required:``,help:W.contact_name},f({default:c(()=>[x(a,{modelValue:U.contact_name,"onUpdate:modelValue":i[18]||=e=>U.contact_name=e,placeholder:`请输入联系人`,"allow-clear":``},null,8,[`modelValue`])]),_:2},[W.contact_name?{name:`help`,fn:c(()=>[b(`span`,wt,h(W.contact_name),1)]),key:`0`}:void 0]),1032,[`help`]),x(I,{label:`联系电话`,required:``,help:W.contact_phone},f({default:c(()=>[x(a,{modelValue:U.contact_phone,"onUpdate:modelValue":i[19]||=e=>U.contact_phone=e,placeholder:`请输入联系电话`,"allow-clear":``},null,8,[`modelValue`])]),_:2},[W.contact_phone?{name:`help`,fn:c(()=>[b(`span`,Tt,h(W.contact_phone),1)]),key:`0`}:void 0]),1032,[`help`]),x(I,{label:`活动日期`,required:``,help:W.start_at||W.end_at},f({default:c(()=>[x(Cn,{modelValue:Un.value,"onUpdate:modelValue":i[20]||=e=>Un.value=e,format:`YYYY-MM-DD`,"value-format":`YYYY-MM-DD`,"exchange-time":!1,style:{width:`100%`}},null,8,[`modelValue`])]),_:2},[W.start_at||W.end_at?{name:`help`,fn:c(()=>[b(`span`,Et,h(W.start_at||W.end_at),1)]),key:`0`}:void 0]),1032,[`help`]),x(I,{label:`具体时间`},{default:c(()=>[x(a,{modelValue:U.specific_time,"onUpdate:modelValue":i[21]||=e=>U.specific_time=e,placeholder:`如9:00-10:00,13:00-14:00`,"allow-clear":``},null,8,[`modelValue`])]),_:1}),x(I,{label:`报名方式`,required:``},f({default:c(()=>[x(m,{modelValue:U.reservation_type,"onUpdate:modelValue":i[22]||=e=>U.reservation_type=e,"allow-create":``,"allow-search":``,placeholder:`可选「需要报名」「无需报名」,或输入自定义文案(仅前端展示,最长 32 字)`},{default:c(()=>[x(o,{value:`online`},{default:c(()=>[...i[91]||=[l(`需要报名`,-1)]]),_:1}),x(o,{value:`none`},{default:c(()=>[...i[92]||=[l(`无需报名`,-1)]]),_:1})]),_:1},8,[`modelValue`])]),_:2},[W.reservation_type?{name:`help`,fn:c(()=>[b(`span`,Dt,h(W.reservation_type),1)]),key:`0`}:void 0]),1024),x(I,{label:`门票说明`,required:``,help:W.ticket_note},f({default:c(()=>[x(m,{modelValue:U.ticket_note,"onUpdate:modelValue":i[23]||=e=>U.ticket_note=e,style:{width:`100%`}},{default:c(()=>[x(o,{value:`free`},{default:c(()=>[...i[93]||=[l(`免费`,-1)]]),_:1}),x(o,{value:`paid`},{default:c(()=>[...i[94]||=[l(`收费`,-1)]]),_:1})]),_:1},8,[`modelValue`])]),_:2},[W.ticket_note?{name:`help`,fn:c(()=>[b(`span`,Ot,h(W.ticket_note),1)]),key:`0`}:void 0]),1032,[`help`]),U.ticket_note===`paid`?(r(),u(I,{key:1,label:`收费说明`},{default:c(()=>[x(a,{modelValue:U.fee_note,"onUpdate:modelValue":i[24]||=e=>U.fee_note=e,placeholder:`请输入收费说明`,style:{width:`100%`},"max-length":1e3,"allow-clear":``},null,8,[`modelValue`])]),_:1})):d(``,!0),x(I,{label:`标签`},{default:c(()=>[b(`div`,kt,[b(`div`,At,[x(a,{modelValue:Hn.value,"onUpdate:modelValue":i[25]||=e=>Hn.value=e,class:`activity-form-tags__input`,placeholder:`请输入标签内容`},null,8,[`modelValue`]),x(g,{type:`primary`,class:`activity-form-tags__save`,onClick:yi},{default:c(()=>[...i[95]||=[l(`保存标签`,-1)]]),_:1})]),b(`div`,jt,[(r(!0),v(p,null,S(U.tags,(e,t)=>(r(),u(C,{key:`${e}-${t}`,closable:``,style:{"margin-bottom":`0`},onClose:e=>bi(t)},{default:c(()=>[l(h(e),1)]),_:2},1032,[`onClose`]))),128)),U.tags.length?d(``,!0):(r(),v(`span`,Mt,`暂无标签`))])])]),_:1}),x(B,{class:`admin-modal-form__full`,gutter:16},{default:c(()=>[x(z,{xs:24,md:12},{default:c(()=>[x(I,{label:`活动地点`,required:``,help:W.location},f({default:c(()=>[b(`div`,Nt,[x(a,{modelValue:U.location,"onUpdate:modelValue":i[26]||=e=>U.location=e,class:`activity-address-coord-row__address`,placeholder:`请输入活动地点`,"allow-clear":``},null,8,[`modelValue`]),x(g,{type:`primary`,class:`activity-address-coord-row__map`,onClick:ti},{default:c(()=>[...i[96]||=[l(`地图选点`,-1)]]),_:1}),x(g,{onClick:Yr},{default:c(()=>[...i[97]||=[l(`使用本馆地址`,-1)]]),_:1})])]),_:2},[W.location?{name:`help`,fn:c(()=>[b(`span`,Pt,h(W.location),1)]),key:`0`}:void 0]),1032,[`help`])]),_:1}),x(z,{xs:24,md:12},{default:c(()=>[x(I,{label:`活动报到集合地点`},{default:c(()=>[x(a,{modelValue:U.check_in_meeting_point,"onUpdate:modelValue":i[27]||=e=>U.check_in_meeting_point=e,placeholder:`请输入活动报到集合地点`,"allow-clear":``},null,8,[`modelValue`])]),_:1})]),_:1})]),_:1}),x(I,{label:`活动图片`,class:`admin-modal-form__full`},{default:c(()=>[b(`div`,Ft,[b(`div`,It,[i[101]||=b(`div`,{class:`activity-cover-carousel-row__sub`},`活动封面图`,-1),x(_,{direction:`vertical`,fill:``,style:{width:`100%`}},{default:c(()=>[x(R,{"auto-upload":!1,"show-file-list":!1,accept:`image/*`,"before-upload":pi,onChange:hi},{"upload-button":c(()=>[x(g,null,{default:c(()=>[...i[98]||=[l(`上传封面`,-1)]]),_:1})]),_:1}),x(In,{type:`secondary`},{default:c(()=>[...i[99]||=[l(`图片尺寸推荐 1200×600`,-1)]]),_:1}),U.cover_image?(r(),u(_,{key:0,direction:`vertical`,align:`start`},{default:c(()=>[b(`img`,{src:U.cover_image,class:`activity-cover-thumb`,onClick:i[28]||=e=>J(`image`,U.cover_image)},null,8,Lt),x(g,{size:`mini`,status:`danger`,onClick:_i},{default:c(()=>[...i[100]||=[l(`删除封面`,-1)]]),_:1})]),_:1})):d(``,!0)]),_:1})]),b(`div`,Rt,[i[105]||=b(`div`,{class:`activity-cover-carousel-row__sub`},`活动展示图片`,-1),b(`div`,zt,[b(`div`,Bt,[x(R,{"auto-upload":!1,"show-file-list":!1,multiple:``,accept:`image/*,video/*`,"before-upload":mi,onChange:gi},{"upload-button":c(()=>[x(g,{type:`primary`},{default:c(()=>[...i[102]||=[l(`新增展示资源`,-1)]]),_:1})]),_:1}),x(In,{type:`secondary`,style:{"margin-top":`12px`,display:`block`}},{default:c(()=>[...i[103]||=[l(`图片尺寸推荐 1200×600`,-1)]]),_:1})]),b(`div`,Vt,[(r(!0),v(p,null,S(U.gallery_media,(e,t)=>(r(),v(`div`,{key:e.url+t,class:`activity-gallery-item`},[e.type===`image`?(r(),v(`img`,{key:0,src:e.url,class:`activity-gallery-thumb`,onClick:t=>J(`image`,e.url)},null,8,Ht)):(r(),v(`video`,{key:1,src:e.url,controls:``,class:`activity-gallery-thumb activity-gallery-thumb--video`,onClick:n(t=>J(`video`,e.url),[`stop`])},null,8,Ut)),x(g,{size:`mini`,status:`danger`,onClick:e=>vi(t)},{default:c(()=>[...i[104]||=[l(`删除`,-1)]]),_:1},8,[`onClick`])]))),128))])])])])]),_:1}),x(I,{label:`活动详情`,class:`admin-modal-form__full`},{default:c(()=>[(r(),u(ie,{modelValue:U.detail_html,"onUpdate:modelValue":i[29]||=e=>U.detail_html=e,"editor-options":sr,"field-key":`activity-detail`,"min-height":280,key:`activity-detail-${Dn.value}`},null,8,[`modelValue`]))]),_:1})]),_:1},8,[`model`])],512),[[e,K.value===0]]),ee(b(`div`,null,[qn.value?(r(),u(In,{key:0,type:`secondary`,style:{display:`block`,"margin-bottom":`12px`}},{default:c(()=>[l(h(zn.value),1)]),_:1})):d(``,!0),x(L,{layout:`vertical`},{default:c(()=>[x(B,{gutter:16},{default:c(()=>[x(z,{span:8},{default:c(()=>[x(I,{label:`预约对象`},{default:c(()=>[x(m,{modelValue:G.booking_audience,"onUpdate:modelValue":i[30]||=e=>G.booking_audience=e},{default:c(()=>[x(o,{value:`individual`},{default:c(()=>[...i[106]||=[l(`个人`,-1)]]),_:1}),x(o,{value:`group`},{default:c(()=>[...i[107]||=[l(`团体`,-1)]]),_:1}),x(o,{value:`both`},{default:c(()=>[...i[108]||=[l(`个人+团体`,-1)]]),_:1})]),_:1},8,[`modelValue`])]),_:1})]),_:1}),G.booking_audience===`individual`?d(``,!0):(r(),u(z,{key:0,span:8},{default:c(()=>[x(I,{label:`每单最少人数`},{default:c(()=>[x(Ln,{modelValue:G.min_people_per_order,"onUpdate:modelValue":i[31]||=e=>G.min_people_per_order=e,min:1,style:{width:`100%`}},null,8,[`modelValue`])]),_:1})]),_:1})),G.booking_audience===`individual`?d(``,!0):(r(),u(z,{key:1,span:8},{default:c(()=>[x(I,{label:`每单最多人数`},{default:c(()=>[x(Ln,{modelValue:G.max_people_per_order,"onUpdate:modelValue":i[32]||=e=>G.max_people_per_order=e,min:2,style:{width:`100%`}},null,8,[`modelValue`])]),_:1})]),_:1}))]),_:1})]),_:1}),i[113]||=b(`div`,{style:{"margin-bottom":`8px`,color:`var(--color-text-3)`,"font-size":`12px`}},` 每场次的开始时间与结束时间须为同一天内;预约截止时间须早于场次开始时间;预约开始时间可不填写(空=截止前任意时刻均可约,有值则仅在「开始~截止」内可约)。更改名额不可低于已约人数。如对人数限制有特殊要求,可填写「说明」项,例如:人数限制——4组亲子家庭;可将名额填入4,同时在说明中填入「4组亲子家庭」。 `,-1),x(g,{long:``,type:`outline`,style:{"margin-bottom":`12px`},onClick:Zn},{default:c(()=>[...i[109]||=[l(`添加场次`,-1)]]),_:1}),x(se,{data:G.days,pagination:!1,bordered:{cell:!0},size:`small`,scroll:{x:1380}},{columns:c(()=>[x(y,{title:`场次名称`,width:112},{cell:c(({rowIndex:e})=>[x(a,{modelValue:G.days[e].session_name,"onUpdate:modelValue":t=>G.days[e].session_name=t,placeholder:`名称`},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`场次开始`,width:160},{cell:c(({rowIndex:e})=>[x(H,{modelValue:G.days[e].session_start_at,"onUpdate:modelValue":t=>G.days[e].session_start_at=t,"show-time":``,format:`YYYY-MM-DD HH:mm`,"value-format":`YYYY-MM-DD HH:mm:ss`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`场次结束`,width:160},{cell:c(({rowIndex:e})=>[x(H,{modelValue:G.days[e].session_end_at,"onUpdate:modelValue":t=>G.days[e].session_end_at=t,"show-time":``,format:`YYYY-MM-DD HH:mm`,"value-format":`YYYY-MM-DD HH:mm:ss`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`预约开始`,width:164},{title:c(()=>[...i[110]||=[b(`span`,null,`预约开始`,-1),b(`span`,{style:{color:`var(--color-text-3)`,"font-weight":`normal`,"font-size":`12px`}},`(可空)`,-1)]]),cell:c(({rowIndex:e})=>[x(H,{modelValue:G.days[e].booking_opens_at,"onUpdate:modelValue":t=>G.days[e].booking_opens_at=t,"show-time":``,format:`YYYY-MM-DD HH:mm`,"value-format":`YYYY-MM-DD HH:mm:ss`,"allow-clear":``,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`预约截止`,width:160},{cell:c(({rowIndex:e})=>[x(H,{modelValue:G.days[e].booking_deadline_at,"onUpdate:modelValue":t=>G.days[e].booking_deadline_at=t,"show-time":``,format:`YYYY-MM-DD HH:mm`,"value-format":`YYYY-MM-DD HH:mm:ss`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`名额`,width:80},{cell:c(({rowIndex:e})=>[x(Ln,{modelValue:G.days[e].day_quota,"onUpdate:modelValue":t=>G.days[e].day_quota=t,min:1,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`说明`,width:140},{title:c(()=>[...i[111]||=[b(`span`,null,`说明`,-1),b(`span`,{style:{color:`var(--color-text-3)`,"font-weight":`normal`,"font-size":`12px`}},`(可选)`,-1)]]),cell:c(({rowIndex:e})=>[x(a,{modelValue:G.days[e].quota_note,"onUpdate:modelValue":t=>G.days[e].quota_note=t,placeholder:`例:4组亲子家庭(可与名额数配合填写)`,"allow-clear":``},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1}),x(y,{title:`已约`,width:56},{cell:c(({rowIndex:e})=>[l(h(G.days[e].booked_count??0),1)]),_:1}),x(y,{title:``,width:68,fixed:`right`},{cell:c(({rowIndex:e})=>[x(g,{type:`text`,status:`danger`,onClick:t=>Qn(e)},{default:c(()=>[...i[112]||=[l(`删除`,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])],512),[[e,K.value===1]])]),_:1},8,[`loading`])]),_:1},8,[`visible`,`title`,`on-before-cancel`]),x(F,{visible:On.value,"onUpdate:visible":i[35]||=e=>On.value=e,title:`媒体预览`,width:`72%`,footer:!1},{default:c(()=>[kn.value===`image`&&An.value?(r(),v(`img`,{key:0,src:An.value,style:{display:`block`,"max-width":`100%`,"max-height":`72vh`,margin:`0 auto`}},null,8,Wt)):kn.value===`video`&&An.value?(r(),v(`video`,{key:1,src:An.value,controls:``,autoplay:``,style:{display:`block`,width:`100%`,"max-height":`72vh`}},null,8,Gt)):d(``,!0)]),_:1},8,[`visible`]),x(F,{visible:jn.value,"onUpdate:visible":i[37]||=e=>jn.value=e,title:`地图选点(腾讯地图)`,width:`70%`,"body-style":wn,"on-before-ok":ii},{default:c(()=>[x(_,{style:{"margin-bottom":`12px`,width:`100%`}},{default:c(()=>[x(a,{modelValue:Nn.value,"onUpdate:modelValue":i[36]||=e=>Nn.value=e,placeholder:`输入关键词搜索,如:苏州博物馆`,style:{width:`420px`}},null,8,[`modelValue`]),x(g,{type:`primary`,loading:Mn.value,onClick:ni},{default:c(()=>[...i[119]||=[l(`搜索`,-1)]]),_:1},8,[`loading`])]),_:1}),b(`div`,Kt,[b(`div`,{ref_key:`mapContainerRef`,ref:Fn,style:{height:`520px`,flex:`1`,border:`1px solid #e5e6eb`}},null,512),b(`div`,qt,[i[120]||=b(`div`,{style:{"margin-bottom":`8px`,color:`#86909c`}},`搜索结果`,-1),x(Wn,{size:`small`},{default:c(()=>[(r(!0),v(p,null,S(Pn.value,(e,t)=>(r(),u(Vn,{key:t,onClick:t=>ri(e)},{default:c(()=>[x(tn,{ellipsis:{rows:1}},{default:c(()=>[l(h(e.title),1)]),_:2},1024),x(In,{type:`secondary`},{default:c(()=>[l(h(e.address),1)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1})])]),V.value?(r(),u(Kn,{key:0,type:`info`,style:{"margin-top":`12px`}},{default:c(()=>[l(` 已选坐标:`+h(V.value.lng)+`, `+h(V.value.lat),1),i[121]||=b(`br`,null,null,-1),l(` 地址:`+h(V.value.address||`-`),1)]),_:1})):d(``,!0)]),_:1},8,[`visible`])],64)}}}),[[`__scopeId`,`data-v-2a6f9490`]]);export{Jt as default}; |