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