parent
0e03c578f4
commit
23f5d5a3fc
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,N as n,V as r,Y as i,_ as a,d as o,it as s,kt as c,nt as l,ut as u,v as d,y as f}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as p}from"./index-CJv6Zvm3.js";import{t as m}from"./datetime-3T8f3S0H.js";import{t as h}from"./listTable-DKAruyoN.js";var g=f({__name:`AuditLogs`,setup(f){let g=s(!1),_=s([]),v=l({current:1,pageSize:20,total:0}),y=l({keyword:``,method:`all`,status_code:void 0,dateRange:[]});async function b(){g.value=!0;try{let{data:e}=await p.get(`/audit-logs`,{params:{keyword:y.keyword||void 0,method:y.method,status_code:y.status_code||void 0,start_date:y.dateRange?.[0]||void 0,end_date:y.dateRange?.[1]||void 0,page:v.current,page_size:v.pageSize}});_.value=e.data,v.total=e.total}catch(t){e.error(t?.response?.data?.message??`加载操作日志失败`)}finally{g.value=!1}}function x(){v.current=1,b()}function S(e){v.current=e,b()}function C(e){return e===`super_admin`?`超级管理员`:e===`venue_admin`?`场馆管理员`:`-`}return n(b),(e,n)=>{let s=r(`a-input`),l=r(`a-option`),f=r(`a-select`),p=r(`a-input-number`),w=r(`a-range-picker`),T=r(`a-button`),E=r(`a-space`),D=r(`a-table-column`),O=r(`a-typography-paragraph`),k=r(`a-table`),A=r(`a-card`);return t(),o(A,{title:`用户与权限 / 操作日志`},{default:i(()=>[d(E,{wrap:``,size:12,style:{"margin-bottom":`12px`}},{default:i(()=>[d(s,{modelValue:y.keyword,"onUpdate:modelValue":n[0]||=e=>y.keyword=e,placeholder:`操作人/路径/动作`,"allow-clear":``,style:{width:`240px`}},null,8,[`modelValue`]),d(f,{modelValue:y.method,"onUpdate:modelValue":n[1]||=e=>y.method=e,style:{width:`120px`}},{default:i(()=>[d(l,{value:`all`},{default:i(()=>[...n[4]||=[a(`全部方法`,-1)]]),_:1}),d(l,{value:`POST`},{default:i(()=>[...n[5]||=[a(`POST`,-1)]]),_:1}),d(l,{value:`PUT`},{default:i(()=>[...n[6]||=[a(`PUT`,-1)]]),_:1}),d(l,{value:`PATCH`},{default:i(()=>[...n[7]||=[a(`PATCH`,-1)]]),_:1}),d(l,{value:`DELETE`},{default:i(()=>[...n[8]||=[a(`DELETE`,-1)]]),_:1})]),_:1},8,[`modelValue`]),d(p,{modelValue:y.status_code,"onUpdate:modelValue":n[2]||=e=>y.status_code=e,min:100,max:599,placeholder:`状态码`,style:{width:`120px`}},null,8,[`modelValue`]),d(w,{modelValue:y.dateRange,"onUpdate:modelValue":n[3]||=e=>y.dateRange=e,style:{width:`260px`}},null,8,[`modelValue`]),d(T,{type:`primary`,onClick:x},{default:i(()=>[...n[9]||=[a(`查询`,-1)]]),_:1}),d(T,{onClick:b},{default:i(()=>[...n[10]||=[a(`刷新`,-1)]]),_:1})]),_:1}),d(k,{class:`list-data-table`,scroll:{x:u(h)},data:_.value,loading:g.value,"row-key":`id`,pagination:{current:v.current,pageSize:v.pageSize,total:v.total,showTotal:!0},onPageChange:S},{columns:i(()=>[d(D,{title:`ID`,"data-index":`id`,width:88}),d(D,{title:`操作人`,"data-index":`username`,width:140,ellipsis:!0,tooltip:!0}),d(D,{title:`角色`,width:120},{cell:i(({record:e})=>[a(c(C(e.role)),1)]),_:1}),d(D,{title:`方法`,"data-index":`method`,width:90}),d(D,{title:`路径`,"data-index":`path`,width:260,ellipsis:!0,tooltip:!0}),d(D,{title:`动作`,"data-index":`action`,width:220,ellipsis:!0,tooltip:!0}),d(D,{title:`状态码`,"data-index":`status_code`,width:100}),d(D,{title:`IP`,"data-index":`ip`,width:140,ellipsis:!0,tooltip:!0}),d(D,{title:`时间`,width:190},{cell:i(({record:e})=>[a(c(u(m)(e.created_at)),1)]),_:1}),d(D,{title:`请求参数`,"min-width":260},{cell:i(({record:e})=>[d(O,{ellipsis:{rows:2}},{default:i(()=>[a(c(e.request_payload?JSON.stringify(e.request_payload):`-`),1)]),_:2},1024)]),_:1})]),_:1},8,[`scroll`,`data`,`loading`,`pagination`])]),_:1})}}});export{g as default};
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,N as n,V as r,Y as i,_ as a,d as o,it as s,kt as c,nt as l,ut as u,v as d,y as f}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as p}from"./index-YPNNx9fb.js";import{t as m}from"./datetime-3T8f3S0H.js";import{t as h}from"./listTable-DKAruyoN.js";var g=f({__name:`AuditLogs`,setup(f){let g=s(!1),_=s([]),v=l({current:1,pageSize:20,total:0}),y=l({keyword:``,method:`all`,status_code:void 0,dateRange:[]});async function b(){g.value=!0;try{let{data:e}=await p.get(`/audit-logs`,{params:{keyword:y.keyword||void 0,method:y.method,status_code:y.status_code||void 0,start_date:y.dateRange?.[0]||void 0,end_date:y.dateRange?.[1]||void 0,page:v.current,page_size:v.pageSize}});_.value=e.data,v.total=e.total}catch(t){e.error(t?.response?.data?.message??`加载操作日志失败`)}finally{g.value=!1}}function x(){v.current=1,b()}function S(e){v.current=e,b()}function C(e){return e===`super_admin`?`超级管理员`:e===`venue_admin`?`场馆管理员`:`-`}return n(b),(e,n)=>{let s=r(`a-input`),l=r(`a-option`),f=r(`a-select`),p=r(`a-input-number`),w=r(`a-range-picker`),T=r(`a-button`),E=r(`a-space`),D=r(`a-table-column`),O=r(`a-typography-paragraph`),k=r(`a-table`),A=r(`a-card`);return t(),o(A,{title:`用户与权限 / 操作日志`},{default:i(()=>[d(E,{wrap:``,size:12,style:{"margin-bottom":`12px`}},{default:i(()=>[d(s,{modelValue:y.keyword,"onUpdate:modelValue":n[0]||=e=>y.keyword=e,placeholder:`操作人/路径/动作`,"allow-clear":``,style:{width:`240px`}},null,8,[`modelValue`]),d(f,{modelValue:y.method,"onUpdate:modelValue":n[1]||=e=>y.method=e,style:{width:`120px`}},{default:i(()=>[d(l,{value:`all`},{default:i(()=>[...n[4]||=[a(`全部方法`,-1)]]),_:1}),d(l,{value:`POST`},{default:i(()=>[...n[5]||=[a(`POST`,-1)]]),_:1}),d(l,{value:`PUT`},{default:i(()=>[...n[6]||=[a(`PUT`,-1)]]),_:1}),d(l,{value:`PATCH`},{default:i(()=>[...n[7]||=[a(`PATCH`,-1)]]),_:1}),d(l,{value:`DELETE`},{default:i(()=>[...n[8]||=[a(`DELETE`,-1)]]),_:1})]),_:1},8,[`modelValue`]),d(p,{modelValue:y.status_code,"onUpdate:modelValue":n[2]||=e=>y.status_code=e,min:100,max:599,placeholder:`状态码`,style:{width:`120px`}},null,8,[`modelValue`]),d(w,{modelValue:y.dateRange,"onUpdate:modelValue":n[3]||=e=>y.dateRange=e,style:{width:`260px`}},null,8,[`modelValue`]),d(T,{type:`primary`,onClick:x},{default:i(()=>[...n[9]||=[a(`查询`,-1)]]),_:1}),d(T,{onClick:b},{default:i(()=>[...n[10]||=[a(`刷新`,-1)]]),_:1})]),_:1}),d(k,{class:`list-data-table`,scroll:{x:u(h)},data:_.value,loading:g.value,"row-key":`id`,pagination:{current:v.current,pageSize:v.pageSize,total:v.total,showTotal:!0},onPageChange:S},{columns:i(()=>[d(D,{title:`ID`,"data-index":`id`,width:88}),d(D,{title:`操作人`,"data-index":`username`,width:140,ellipsis:!0,tooltip:!0}),d(D,{title:`角色`,width:120},{cell:i(({record:e})=>[a(c(C(e.role)),1)]),_:1}),d(D,{title:`方法`,"data-index":`method`,width:90}),d(D,{title:`路径`,"data-index":`path`,width:260,ellipsis:!0,tooltip:!0}),d(D,{title:`动作`,"data-index":`action`,width:220,ellipsis:!0,tooltip:!0}),d(D,{title:`状态码`,"data-index":`status_code`,width:100}),d(D,{title:`IP`,"data-index":`ip`,width:140,ellipsis:!0,tooltip:!0}),d(D,{title:`时间`,width:190},{cell:i(({record:e})=>[a(c(u(m)(e.created_at)),1)]),_:1}),d(D,{title:`请求参数`,"min-width":260},{cell:i(({record:e})=>[d(O,{ellipsis:{rows:2}},{default:i(()=>[a(c(e.request_payload?JSON.stringify(e.request_payload):`-`),1)]),_:2},1024)]),_:1})]),_:1},8,[`scroll`,`data`,`loading`,`pagination`])]),_:1})}}});export{g as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,V as n,Y as r,_ as i,it as a,nt as o,p as s,v as c,y as l}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{i as u,n as d,t as f}from"./index-YPNNx9fb.js";var p={style:{height:`100vh`,display:`grid`,"place-items":`center`,background:`var(--color-fill-2)`}},m=l({__name:`Login`,setup(l){let m=u(),h=a(!1),g=o({username:`admin`,password:`admin123456`});async function _(){h.value=!0;try{let{data:t}=await d.post(`/auth/login`,g);localStorage.setItem(f,t.token),e.success(`登录成功`),m.replace(`/dashboard`)}catch(t){e.error(t?.response?.data?.message??`登录失败`)}finally{h.value=!1}}return(e,a)=>{let o=n(`a-input`),l=n(`a-form-item`),u=n(`a-input-password`),d=n(`a-button`),f=n(`a-form`),m=n(`a-card`);return t(),s(`div`,p,[c(m,{title:`苏州科普管理后台登录`,style:{width:`380px`}},{default:r(()=>[c(f,{model:g,layout:`vertical`,onSubmitSuccess:_},{default:r(()=>[c(l,{field:`username`,label:`用户名`},{default:r(()=>[c(o,{modelValue:g.username,"onUpdate:modelValue":a[0]||=e=>g.username=e,placeholder:`请输入用户名`},null,8,[`modelValue`])]),_:1}),c(l,{field:`password`,label:`密码`},{default:r(()=>[c(u,{modelValue:g.password,"onUpdate:modelValue":a[1]||=e=>g.password=e,placeholder:`请输入密码`},null,8,[`modelValue`])]),_:1}),c(d,{type:`primary`,long:``,loading:h.value,onClick:_},{default:r(()=>[...a[2]||=[i(`登录`,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`])]),_:1})])}}});export{m as default};
|
||||
@ -1 +0,0 @@
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,V as n,Y as r,_ as i,it as a,nt as o,p as s,v as c,y as l}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{i as u,n as d,t as f}from"./index-CJv6Zvm3.js";var p={style:{height:`100vh`,display:`grid`,"place-items":`center`,background:`var(--color-fill-2)`}},m=l({__name:`Login`,setup(l){let m=u(),h=a(!1),g=o({username:`admin`,password:`admin123456`});async function _(){h.value=!0;try{let{data:t}=await d.post(`/auth/login`,g);localStorage.setItem(f,t.token),e.success(`登录成功`),m.replace(`/dashboard`)}catch(t){e.error(t?.response?.data?.message??`登录失败`)}finally{h.value=!1}}return(e,a)=>{let o=n(`a-input`),l=n(`a-form-item`),u=n(`a-input-password`),d=n(`a-button`),f=n(`a-form`),m=n(`a-card`);return t(),s(`div`,p,[c(m,{title:`苏科普管理后台登录`,style:{width:`380px`}},{default:r(()=>[c(f,{model:g,layout:`vertical`,onSubmitSuccess:_},{default:r(()=>[c(l,{field:`username`,label:`用户名`},{default:r(()=>[c(o,{modelValue:g.username,"onUpdate:modelValue":a[0]||=e=>g.username=e,placeholder:`请输入用户名`},null,8,[`modelValue`])]),_:1}),c(l,{field:`password`,label:`密码`},{default:r(()=>[c(u,{modelValue:g.password,"onUpdate:modelValue":a[1]||=e=>g.password=e,placeholder:`请输入密码`},null,8,[`modelValue`])]),_:1}),c(d,{type:`primary`,long:``,loading:h.value,onClick:_},{default:r(()=>[...a[2]||=[i(`登录`,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`])]),_:1})])}}});export{m as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,N as n,V as r,Y as i,_ as a,d as o,f as s,i as c,it as l,kt as u,l as d,p as f,v as p,y as m,z as h}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as g}from"./index-CJv6Zvm3.js";var _=m({__name:`Roles`,setup(m){let _=l(!1),v=l(!1),y=l(!1),b=l([]),x=l([]),S=l(`super_admin`),C=l([]),w=d(()=>{let e=new Map;b.value.forEach(t=>e.set(t.id,{key:t.id,title:t.name,children:[]}));let t=[];return b.value.forEach(n=>{let r=e.get(n.id);n.parent_id>0&&e.has(n.parent_id)?e.get(n.parent_id).children.push(r):t.push(r)}),t}),T=d(()=>x.value.find(e=>e.role===S.value));async function E(){let{data:e}=await g.get(`/me`);y.value=e?.role===`super_admin`}async function D(){_.value=!0;try{let{data:e}=await g.get(`/role-menu-permissions`);b.value=e.menus||[],x.value=e.roles||[];let t=x.value[0];t&&(S.value=t.role,C.value=[...t.menu_ids||[]])}catch(t){e.error(t?.response?.data?.message??`加载角色菜单权限失败`)}finally{_.value=!1}}function O(e){S.value=e,C.value=[...x.value.find(t=>t.role===e)?.menu_ids||[]]}function k(e){C.value=e.map(e=>Number(e))}async function A(){if(y.value){v.value=!0;try{await g.put(`/role-menu-permissions/${S.value}`,{menu_ids:C.value});let t=x.value.find(e=>e.role===S.value);t&&(t.menu_ids=[...C.value]),e.success(`角色菜单权限保存成功`)}catch(t){e.error(t?.response?.data?.message??`保存失败`)}finally{v.value=!1}}}return n(async()=>{await E(),await D()}),(e,n)=>{let l=r(`a-alert`),d=r(`a-button`),m=r(`a-space`),g=r(`a-card`),b=r(`a-tree`),E=r(`a-spin`);return t(),o(g,{title:`用户与权限 / 角色管理(菜单权限)`},{default:i(()=>[p(l,{style:{"margin-bottom":`12px`}},{default:i(()=>[...n[0]||=[a(` 当前仅控制“每个角色可查看哪些菜单”;接口级细粒度权限后续可继续扩展。 `,-1)]]),_:1}),y.value?s(``,!0):(t(),o(l,{key:0,type:`info`,style:{"margin-bottom":`12px`}},{default:i(()=>[...n[1]||=[a(` 当前为只读模式,仅超级管理员可以修改角色菜单权限。 `,-1)]]),_:1})),p(E,{loading:_.value},{default:i(()=>[p(m,{align:`start`,fill:``},{default:i(()=>[p(g,{title:`角色列表`,size:`small`,style:{width:`220px`}},{default:i(()=>[p(m,{direction:`vertical`,fill:``},{default:i(()=>[(t(!0),f(c,null,h(x.value,e=>(t(),o(d,{key:e.role,type:S.value===e.role?`primary`:`secondary`,long:``,onClick:t=>O(e.role)},{default:i(()=>[a(u(e.label),1)]),_:2},1032,[`type`,`onClick`]))),128))]),_:1})]),_:1}),p(g,{title:`${T.value?.label||``} - 菜单权限`,size:`small`,style:{flex:`1`}},{extra:i(()=>[p(d,{type:`primary`,disabled:!y.value,loading:v.value,onClick:A},{default:i(()=>[...n[2]||=[a(`保存当前角色`,-1)]]),_:1},8,[`disabled`,`loading`])]),default:i(()=>[p(b,{checkable:``,"block-node":``,data:w.value,"checked-keys":C.value,"default-expand-all":!0,onCheck:k},null,8,[`data`,`checked-keys`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`loading`])]),_:1})}}});export{_ as default};
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,N as n,V as r,Y as i,_ as a,d as o,f as s,i as c,it as l,kt as u,l as d,p as f,v as p,y as m,z as h}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as g}from"./index-YPNNx9fb.js";var _=m({__name:`Roles`,setup(m){let _=l(!1),v=l(!1),y=l(!1),b=l([]),x=l([]),S=l(`super_admin`),C=l([]),w=d(()=>{let e=new Map;b.value.forEach(t=>e.set(t.id,{key:t.id,title:t.name,children:[]}));let t=[];return b.value.forEach(n=>{let r=e.get(n.id);n.parent_id>0&&e.has(n.parent_id)?e.get(n.parent_id).children.push(r):t.push(r)}),t}),T=d(()=>x.value.find(e=>e.role===S.value));async function E(){let{data:e}=await g.get(`/me`);y.value=e?.role===`super_admin`}async function D(){_.value=!0;try{let{data:e}=await g.get(`/role-menu-permissions`);b.value=e.menus||[],x.value=e.roles||[];let t=x.value[0];t&&(S.value=t.role,C.value=[...t.menu_ids||[]])}catch(t){e.error(t?.response?.data?.message??`加载角色菜单权限失败`)}finally{_.value=!1}}function O(e){S.value=e,C.value=[...x.value.find(t=>t.role===e)?.menu_ids||[]]}function k(e){C.value=e.map(e=>Number(e))}async function A(){if(y.value){v.value=!0;try{await g.put(`/role-menu-permissions/${S.value}`,{menu_ids:C.value});let t=x.value.find(e=>e.role===S.value);t&&(t.menu_ids=[...C.value]),e.success(`角色菜单权限保存成功`)}catch(t){e.error(t?.response?.data?.message??`保存失败`)}finally{v.value=!1}}}return n(async()=>{await E(),await D()}),(e,n)=>{let l=r(`a-alert`),d=r(`a-button`),m=r(`a-space`),g=r(`a-card`),b=r(`a-tree`),E=r(`a-spin`);return t(),o(g,{title:`用户与权限 / 角色管理(菜单权限)`},{default:i(()=>[p(l,{style:{"margin-bottom":`12px`}},{default:i(()=>[...n[0]||=[a(` 当前仅控制“每个角色可查看哪些菜单”;接口级细粒度权限后续可继续扩展。 `,-1)]]),_:1}),y.value?s(``,!0):(t(),o(l,{key:0,type:`info`,style:{"margin-bottom":`12px`}},{default:i(()=>[...n[1]||=[a(` 当前为只读模式,仅超级管理员可以修改角色菜单权限。 `,-1)]]),_:1})),p(E,{loading:_.value},{default:i(()=>[p(m,{align:`start`,fill:``},{default:i(()=>[p(g,{title:`角色列表`,size:`small`,style:{width:`220px`}},{default:i(()=>[p(m,{direction:`vertical`,fill:``},{default:i(()=>[(t(!0),f(c,null,h(x.value,e=>(t(),o(d,{key:e.role,type:S.value===e.role?`primary`:`secondary`,long:``,onClick:t=>O(e.role)},{default:i(()=>[a(u(e.label),1)]),_:2},1032,[`type`,`onClick`]))),128))]),_:1})]),_:1}),p(g,{title:`${T.value?.label||``} - 菜单权限`,size:`small`,style:{flex:`1`}},{extra:i(()=>[p(d,{type:`primary`,disabled:!y.value,loading:v.value,onClick:A},{default:i(()=>[...n[2]||=[a(`保存当前角色`,-1)]]),_:1},8,[`disabled`,`loading`])]),default:i(()=>[p(b,{checkable:``,"block-node":``,data:w.value,"checked-keys":C.value,"default-expand-all":!0,onCheck:k},null,8,[`data`,`checked-keys`])]),_:1},8,[`title`])]),_:1})]),_:1},8,[`loading`])]),_:1})}}});export{_ as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,N as n,V as r,Y as i,_ as a,d as o,it as s,kt as c,u as l,ut as u,v as d,y as f}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as p,o as m}from"./index-CJv6Zvm3.js";import{n as h,t as g}from"./datetime-3T8f3S0H.js";import{t as _}from"./listTable-DKAruyoN.js";import{n as v,t as y}from"./reservationStatus-DNE9Cq6e.js";var b={class:`verify-list-toolbar`},x=m(f({__name:`Verify`,setup(f){let m=s(!1),x=s([]),S=s(``),C=s(!1),w=s(`all`),T=s(``),E=s([]);async function D(){m.value=!0;try{let{data:e}=await p.get(`/reservations`,{params:{status:w.value,keyword:T.value||void 0,start_date:E.value?.[0]||void 0,end_date:E.value?.[1]||void 0}});x.value=e}catch(t){e.error(t?.response?.data?.message??`加载预约列表失败`)}finally{m.value=!1}}function O(){D()}function k(){w.value=`all`,T.value=``,E.value=[],D()}async function A(){if(!S.value){e.warning(`请输入二维码 token`);return}C.value=!0;try{await p.post(`/reservations/verify`,{qr_token:S.value}),e.success(`核销成功`),S.value=``,await D()}catch(t){e.error(t?.response?.data?.message??`核销失败`)}finally{C.value=!1}}return n(D),(e,n)=>{let s=r(`a-alert`),f=r(`a-input`),p=r(`a-button`),j=r(`a-space`),M=r(`a-radio`),N=r(`a-radio-group`),P=r(`a-range-picker`),F=r(`a-table-column`),I=r(`a-tag`),L=r(`a-table`),R=r(`a-card`);return t(),o(R,{title:`活动管理 / 现场核销`},{default:i(()=>[d(j,{direction:`vertical`,fill:``},{default:i(()=>[d(s,null,{default:i(()=>[...n[4]||=[a(` 输入预约二维码 token 进行核销。场馆管理员仅可核销自己绑定场馆的预约。 `,-1)]]),_:1}),d(j,{wrap:``,size:12},{default:i(()=>[d(f,{modelValue:S.value,"onUpdate:modelValue":n[0]||=e=>S.value=e,style:{width:`min(100%, 420px)`},placeholder:`请输入二维码 token`,"allow-clear":``},null,8,[`modelValue`]),d(p,{type:`primary`,loading:C.value,onClick:A},{default:i(()=>[...n[5]||=[a(`立即核销`,-1)]]),_:1},8,[`loading`])]),_:1}),l(`div`,b,[d(j,{wrap:``,size:12},{default:i(()=>[d(N,{modelValue:w.value,"onUpdate:modelValue":n[1]||=e=>w.value=e,type:`button`,size:`small`,onChange:D},{default:i(()=>[d(M,{value:`all`},{default:i(()=>[...n[6]||=[a(`全部`,-1)]]),_:1}),d(M,{value:`pending`},{default:i(()=>[...n[7]||=[a(`待核销`,-1)]]),_:1}),d(M,{value:`verified`},{default:i(()=>[...n[8]||=[a(`已核销`,-1)]]),_:1}),d(M,{value:`cancelled`},{default:i(()=>[...n[9]||=[a(`已取消`,-1)]]),_:1})]),_:1},8,[`modelValue`]),d(f,{modelValue:T.value,"onUpdate:modelValue":n[2]||=e=>T.value=e,placeholder:`报名人/手机/token`,"allow-clear":``,style:{width:`220px`}},null,8,[`modelValue`]),d(P,{modelValue:E.value,"onUpdate:modelValue":n[3]||=e=>E.value=e,style:{width:`260px`}},null,8,[`modelValue`]),d(p,{type:`primary`,onClick:O},{default:i(()=>[...n[10]||=[a(`查询`,-1)]]),_:1}),d(p,{onClick:k},{default:i(()=>[...n[11]||=[a(`重置`,-1)]]),_:1}),d(p,{onClick:D},{default:i(()=>[...n[12]||=[a(`刷新列表`,-1)]]),_:1})]),_:1})]),d(L,{class:`list-data-table verify-table`,scroll:{x:u(_)},data:x.value,loading:m.value,"row-key":`id`,pagination:{pageSize:10,showTotal:!0}},{columns:i(()=>[d(F,{title:`ID`,"data-index":`id`,width:88}),d(F,{title:`活动`,width:240,"min-width":180,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.activity?.title??`-`),1)]),_:1}),d(F,{title:`场馆`,width:200,"min-width":160,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.venue?.name??`-`),1)]),_:1}),d(F,{title:`报名人`,"data-index":`visitor_name`,width:120,ellipsis:!0,tooltip:!0}),d(F,{title:`手机号`,"data-index":`visitor_phone`,width:130,ellipsis:!0,tooltip:!0}),d(F,{title:`预约类型`,width:100},{cell:i(({record:e})=>[a(c(u(v)(e.booking_type,e.ticket_count)),1)]),_:1}),d(F,{title:`预约票数`,width:100},{cell:i(({record:e})=>[a(c(e.ticket_count??1),1)]),_:1}),d(F,{title:`预约入馆日期`,width:140,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.activity_day?.activity_date?u(h)(e.activity_day.activity_date):`-`),1)]),_:1}),d(F,{title:`状态`,width:100},{cell:i(({record:e})=>[d(I,{color:e.status===`verified`?`green`:e.status===`pending`?`arcoblue`:`gray`},{default:i(()=>[a(c(u(y)(e.status)),1)]),_:2},1032,[`color`])]),_:1}),d(F,{title:`预约时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.created_at)),1)]),_:1}),d(F,{title:`核销时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.verified_at)),1)]),_:1}),d(F,{title:`二维码 token`,"data-index":`qr_token`,width:220,"min-width":180,ellipsis:!0,tooltip:!0,fixed:`right`,align:`left`})]),_:1},8,[`scroll`,`data`,`loading`])]),_:1})]),_:1})}}}),[[`__scopeId`,`data-v-a0bd6091`]]);export{x as default};
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,N as n,V as r,Y as i,_ as a,d as o,it as s,kt as c,u as l,ut as u,v as d,y as f}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as p,o as m}from"./index-YPNNx9fb.js";import{n as h,t as g}from"./datetime-3T8f3S0H.js";import{t as _}from"./listTable-DKAruyoN.js";import{n as v,t as y}from"./reservationStatus-DNE9Cq6e.js";var b={class:`verify-list-toolbar`},x=m(f({__name:`Verify`,setup(f){let m=s(!1),x=s([]),S=s(``),C=s(!1),w=s(`all`),T=s(``),E=s([]);async function D(){m.value=!0;try{let{data:e}=await p.get(`/reservations`,{params:{status:w.value,keyword:T.value||void 0,start_date:E.value?.[0]||void 0,end_date:E.value?.[1]||void 0}});x.value=e}catch(t){e.error(t?.response?.data?.message??`加载预约列表失败`)}finally{m.value=!1}}function O(){D()}function k(){w.value=`all`,T.value=``,E.value=[],D()}async function A(){if(!S.value){e.warning(`请输入二维码 token`);return}C.value=!0;try{await p.post(`/reservations/verify`,{qr_token:S.value}),e.success(`核销成功`),S.value=``,await D()}catch(t){e.error(t?.response?.data?.message??`核销失败`)}finally{C.value=!1}}return n(D),(e,n)=>{let s=r(`a-alert`),f=r(`a-input`),p=r(`a-button`),j=r(`a-space`),M=r(`a-radio`),N=r(`a-radio-group`),P=r(`a-range-picker`),F=r(`a-table-column`),I=r(`a-tag`),L=r(`a-table`),R=r(`a-card`);return t(),o(R,{title:`活动管理 / 现场核销`},{default:i(()=>[d(j,{direction:`vertical`,fill:``},{default:i(()=>[d(s,null,{default:i(()=>[...n[4]||=[a(` 输入预约二维码 token 进行核销。场馆管理员仅可核销自己绑定场馆的预约。 `,-1)]]),_:1}),d(j,{wrap:``,size:12},{default:i(()=>[d(f,{modelValue:S.value,"onUpdate:modelValue":n[0]||=e=>S.value=e,style:{width:`min(100%, 420px)`},placeholder:`请输入二维码 token`,"allow-clear":``},null,8,[`modelValue`]),d(p,{type:`primary`,loading:C.value,onClick:A},{default:i(()=>[...n[5]||=[a(`立即核销`,-1)]]),_:1},8,[`loading`])]),_:1}),l(`div`,b,[d(j,{wrap:``,size:12},{default:i(()=>[d(N,{modelValue:w.value,"onUpdate:modelValue":n[1]||=e=>w.value=e,type:`button`,size:`small`,onChange:D},{default:i(()=>[d(M,{value:`all`},{default:i(()=>[...n[6]||=[a(`全部`,-1)]]),_:1}),d(M,{value:`pending`},{default:i(()=>[...n[7]||=[a(`待核销`,-1)]]),_:1}),d(M,{value:`verified`},{default:i(()=>[...n[8]||=[a(`已核销`,-1)]]),_:1}),d(M,{value:`cancelled`},{default:i(()=>[...n[9]||=[a(`已取消`,-1)]]),_:1})]),_:1},8,[`modelValue`]),d(f,{modelValue:T.value,"onUpdate:modelValue":n[2]||=e=>T.value=e,placeholder:`报名人/手机/token`,"allow-clear":``,style:{width:`220px`}},null,8,[`modelValue`]),d(P,{modelValue:E.value,"onUpdate:modelValue":n[3]||=e=>E.value=e,style:{width:`260px`}},null,8,[`modelValue`]),d(p,{type:`primary`,onClick:O},{default:i(()=>[...n[10]||=[a(`查询`,-1)]]),_:1}),d(p,{onClick:k},{default:i(()=>[...n[11]||=[a(`重置`,-1)]]),_:1}),d(p,{onClick:D},{default:i(()=>[...n[12]||=[a(`刷新列表`,-1)]]),_:1})]),_:1})]),d(L,{class:`list-data-table verify-table`,scroll:{x:u(_)},data:x.value,loading:m.value,"row-key":`id`,pagination:{pageSize:10,showTotal:!0}},{columns:i(()=>[d(F,{title:`ID`,"data-index":`id`,width:88}),d(F,{title:`活动`,width:240,"min-width":180,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.activity?.title??`-`),1)]),_:1}),d(F,{title:`场馆`,width:200,"min-width":160,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.venue?.name??`-`),1)]),_:1}),d(F,{title:`报名人`,"data-index":`visitor_name`,width:120,ellipsis:!0,tooltip:!0}),d(F,{title:`手机号`,"data-index":`visitor_phone`,width:130,ellipsis:!0,tooltip:!0}),d(F,{title:`预约类型`,width:100},{cell:i(({record:e})=>[a(c(u(v)(e.booking_type,e.ticket_count)),1)]),_:1}),d(F,{title:`预约票数`,width:100},{cell:i(({record:e})=>[a(c(e.ticket_count??1),1)]),_:1}),d(F,{title:`预约入馆日期`,width:140,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.activity_day?.activity_date?u(h)(e.activity_day.activity_date):`-`),1)]),_:1}),d(F,{title:`状态`,width:100},{cell:i(({record:e})=>[d(I,{color:e.status===`verified`?`green`:e.status===`pending`?`arcoblue`:`gray`},{default:i(()=>[a(c(u(y)(e.status)),1)]),_:2},1032,[`color`])]),_:1}),d(F,{title:`预约时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.created_at)),1)]),_:1}),d(F,{title:`核销时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.verified_at)),1)]),_:1}),d(F,{title:`二维码 token`,"data-index":`qr_token`,width:220,"min-width":180,ellipsis:!0,tooltip:!0,fixed:`right`,align:`left`})]),_:1},8,[`scroll`,`data`,`loading`])]),_:1})]),_:1})}}}),[[`__scopeId`,`data-v-a0bd6091`]]);export{x as default};
|
||||
@ -1 +1 @@
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,V as n,Y as r,_ as i,it as a,nt as o,p as s,u as c,v as l,y as u}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{i as d,o as f,r as p}from"./index-CJv6Zvm3.js";import{n as m,t as h}from"./h5Http-BaUTUr0i.js";var g={class:`m-verify-page`},_={class:`m-verify-card`},v=f(u({__name:`VerifyLogin`,setup(u){let f=d(),v=p(),y=a(!1),b=o({username:``,password:``});function x(){return v.path.startsWith(`/m/`)?`/m/verify`:`/h5/verify/scan`}async function S(){y.value=!0;try{let{data:t}=await m.post(`/auth/login`,{...b,client:`h5_verify`});localStorage.setItem(h,t.token),localStorage.setItem(`${h}_saved_at`,String(Date.now())),e.success(`登录成功`),f.replace(x())}catch(t){e.error(t?.response?.data?.message??`登录失败`)}finally{y.value=!1}}return(e,a)=>{let o=n(`a-input`),u=n(`a-form-item`),d=n(`a-input-password`),f=n(`a-button`),p=n(`a-form`);return t(),s(`div`,g,[a[4]||=c(`div`,{class:`m-verify-hero`},[c(`div`,{class:`m-verify-title`},`苏州科普场馆地图`),c(`div`,{class:`m-verify-sub`},`移动端核销登录`)],-1),c(`div`,_,[l(p,{model:b,layout:`vertical`,onSubmitSuccess:S},{default:r(()=>[l(u,{label:`用户名`},{default:r(()=>[l(o,{modelValue:b.username,"onUpdate:modelValue":a[0]||=e=>b.username=e,placeholder:`请输入账号`,size:`large`,"allow-clear":``},null,8,[`modelValue`])]),_:1}),l(u,{label:`密码`},{default:r(()=>[l(d,{modelValue:b.password,"onUpdate:modelValue":a[1]||=e=>b.password=e,placeholder:`请输入密码`,size:`large`,"allow-clear":``},null,8,[`modelValue`])]),_:1}),l(f,{type:`primary`,long:``,size:`large`,loading:y.value,onClick:S},{default:r(()=>[...a[2]||=[i(`登录`,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`]),a[3]||=c(`p`,{class:`m-verify-tip`},`登录状态将保持较长时间;若已失效会自动回到本页。`,-1)])])}}}),[[`__scopeId`,`data-v-a78462a1`]]);export{v as default};
|
||||
import{n as e}from"./axios-CiYFffbI.js";import{I as t,V as n,Y as r,_ as i,it as a,nt as o,p as s,u as c,v as l,y as u}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{i as d,o as f,r as p}from"./index-YPNNx9fb.js";import{n as m,t as h}from"./h5Http-FFo2bPQ0.js";var g={class:`m-verify-page`},_={class:`m-verify-card`},v=f(u({__name:`VerifyLogin`,setup(u){let f=d(),v=p(),y=a(!1),b=o({username:``,password:``});function x(){return v.path.startsWith(`/m/`)?`/m/verify`:`/h5/verify/scan`}async function S(){y.value=!0;try{let{data:t}=await m.post(`/auth/login`,{...b,client:`h5_verify`});localStorage.setItem(h,t.token),localStorage.setItem(`${h}_saved_at`,String(Date.now())),e.success(`登录成功`),f.replace(x())}catch(t){e.error(t?.response?.data?.message??`登录失败`)}finally{y.value=!1}}return(e,a)=>{let o=n(`a-input`),u=n(`a-form-item`),d=n(`a-input-password`),f=n(`a-button`),p=n(`a-form`);return t(),s(`div`,g,[a[4]||=c(`div`,{class:`m-verify-hero`},[c(`div`,{class:`m-verify-title`},`苏州科普场馆地图`),c(`div`,{class:`m-verify-sub`},`移动端核销登录`)],-1),c(`div`,_,[l(p,{model:b,layout:`vertical`,onSubmitSuccess:S},{default:r(()=>[l(u,{label:`用户名`},{default:r(()=>[l(o,{modelValue:b.username,"onUpdate:modelValue":a[0]||=e=>b.username=e,placeholder:`请输入账号`,size:`large`,"allow-clear":``},null,8,[`modelValue`])]),_:1}),l(u,{label:`密码`},{default:r(()=>[l(d,{modelValue:b.password,"onUpdate:modelValue":a[1]||=e=>b.password=e,placeholder:`请输入密码`,size:`large`,"allow-clear":``},null,8,[`modelValue`])]),_:1}),l(f,{type:`primary`,long:``,size:`large`,loading:y.value,onClick:S},{default:r(()=>[...a[2]||=[i(`登录`,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`]),a[3]||=c(`p`,{class:`m-verify-tip`},`登录状态将保持较长时间;若已失效会自动回到本页。`,-1)])])}}}),[[`__scopeId`,`data-v-a78462a1`]]);export{v as default};
|
||||
@ -1 +1 @@
|
||||
.m-scan[data-v-acfc0391]{min-height:100dvh;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));box-sizing:border-box;background:linear-gradient(#f0f5ff 0%,#f7f8fa 40%,#fff 100%)}.m-scan-head[data-v-acfc0391]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:28px;display:flex}.m-scan-brand[data-v-acfc0391]{color:#1d2129;font-size:22px;font-weight:700}.m-scan-sub[data-v-acfc0391]{color:#86909c;margin-top:4px;font-size:13px}.m-scan-venue[data-v-acfc0391]{color:#1d2129;word-break:break-all;margin-top:8px;font-size:14px;font-weight:600;line-height:1.45}.m-scan-stats[data-v-acfc0391]{box-sizing:border-box;gap:12px;max-width:420px;margin:0 auto 20px;padding:0 4px;display:flex}.m-scan-stats-loading[data-v-acfc0391]{text-align:center;color:#86909c;background:#ffffffb3;border:1px solid #e5e6eb;border-radius:12px;width:100%;padding:12px;font-size:13px}.m-scan-stat[data-v-acfc0391]{text-align:center;background:#fff;border:1px solid #e5e6eb;border-radius:12px;flex:1;min-width:0;padding:14px 12px;box-shadow:0 2px 8px #0000000a}.m-scan-stat--verified[data-v-acfc0391]{background:linear-gradient(#f6ffed 0%,#fff 100%);border-color:#00b42a59}.m-scan-stat-label[data-v-acfc0391]{color:#86909c;margin-bottom:6px;font-size:12px}.m-scan-stat-num[data-v-acfc0391]{color:#1d2129;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700;line-height:1.2}.m-scan-stat--verified .m-scan-stat-num[data-v-acfc0391]{color:#00b42a}.m-scan-main[data-v-acfc0391]{flex-direction:column;align-items:center;gap:16px;max-width:420px;margin:0 auto;display:flex}.m-scan-btn[data-v-acfc0391]{color:#fff;cursor:pointer;background:linear-gradient(145deg,#165dff 0%,#0e42d2 100%);border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:168px;height:168px;font-size:18px;font-weight:600;display:flex;box-shadow:0 12px 32px #165dff59}.m-scan-btn[data-v-acfc0391]:disabled{opacity:.65;cursor:not-allowed}.m-scan-btn-icon[data-v-acfc0391]{background:#ffffff40;border-radius:8px;width:40px;height:40px;position:relative}.m-scan-btn-icon[data-v-acfc0391]:before,.m-scan-btn-icon[data-v-acfc0391]:after{content:"";border:3px solid #fff;border-radius:4px;position:absolute}.m-scan-btn-icon[data-v-acfc0391]:before{inset:6px}.m-scan-btn-icon[data-v-acfc0391]:after{inset:10px}.m-scan-hint[data-v-acfc0391]{text-align:center;color:#86909c;margin:0;padding:0 8px;font-size:13px;line-height:1.5}.m-scan-hint--sub[data-v-acfc0391]{margin-top:6px;font-size:12px}.m-scan-secondary[data-v-acfc0391]{max-width:280px}.cam-wrap[data-v-acfc0391]{flex-direction:column;gap:12px;display:flex}.cam-video[data-v-acfc0391]{object-fit:cover;background:#000;border-radius:10px;width:100%;min-height:220px}.cam-tip[data-v-acfc0391]{color:#86909c;text-align:center;margin:0;font-size:13px}.today-list[data-v-acfc0391]{flex-direction:column;gap:10px;max-height:min(60vh,420px);display:flex;overflow:auto}.today-item[data-v-acfc0391]{background:#f7f8fa;border:1px solid #e5e6eb;border-radius:10px;padding:12px}.today-row[data-v-acfc0391]{justify-content:space-between;align-items:center;gap:8px;display:flex}.today-name[data-v-acfc0391]{color:#1d2129;font-size:15px;font-weight:600}.today-act[data-v-acfc0391]{color:#4e5969;margin-top:6px;font-size:14px}.today-meta[data-v-acfc0391]{color:#86909c;margin-top:4px;font-size:12px}.today-modal-summary[data-v-acfc0391]{color:#4e5969;background:#f7f8fa;border-radius:8px;margin:-4px 0 12px;padding:8px 10px;font-size:13px;line-height:1.5}.today-modal-summary strong[data-v-acfc0391]{color:#1d2129;font-variant-numeric:tabular-nums}.m-verify-res-modal.arco-modal{max-width:calc(100vw - 24px);margin:12px}.m-verify-res-modal .arco-modal-header{padding:14px 16px 10px}.m-verify-res-modal .arco-modal-title{font-size:17px;font-weight:600}.m-verify-res-modal .arco-modal-footer{padding:10px 16px 16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border-2,#e5e6eb);flex-direction:column;gap:10px;display:flex}.m-verify-res-modal .arco-modal-footer .arco-btn{width:100%;margin:0!important}.m-verify-res-desc .arco-descriptions-item-label{vertical-align:top;color:#86909c;width:88px;padding-bottom:10px}.m-verify-res-desc .arco-descriptions-item-value{word-break:break-all;padding-bottom:10px}@media (width>=480px){.m-verify-res-modal .arco-modal-footer{flex-direction:row;justify-content:flex-end}.m-verify-res-modal .arco-modal-footer .arco-btn{width:auto;min-width:100px}}
|
||||
.m-scan[data-v-9772cc3b]{min-height:100dvh;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));box-sizing:border-box;background:linear-gradient(#f0f5ff 0%,#f7f8fa 40%,#fff 100%)}.m-scan-head[data-v-9772cc3b]{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:28px;display:flex}.m-scan-brand[data-v-9772cc3b]{color:#1d2129;font-size:22px;font-weight:700}.m-scan-sub[data-v-9772cc3b]{color:#86909c;margin-top:4px;font-size:13px}.m-scan-venue[data-v-9772cc3b]{color:#1d2129;word-break:break-all;margin-top:8px;font-size:14px;font-weight:600;line-height:1.45}.m-scan-stats[data-v-9772cc3b]{box-sizing:border-box;gap:12px;max-width:420px;margin:0 auto 20px;padding:0 4px;display:flex}.m-scan-stats-loading[data-v-9772cc3b]{text-align:center;color:#86909c;background:#ffffffb3;border:1px solid #e5e6eb;border-radius:12px;width:100%;padding:12px;font-size:13px}.m-scan-stat[data-v-9772cc3b]{text-align:center;background:#fff;border:1px solid #e5e6eb;border-radius:12px;flex:1;min-width:0;padding:14px 12px;box-shadow:0 2px 8px #0000000a}.m-scan-stat--verified[data-v-9772cc3b]{background:linear-gradient(#f6ffed 0%,#fff 100%);border-color:#00b42a59}.m-scan-stat-label[data-v-9772cc3b]{color:#86909c;margin-bottom:6px;font-size:12px}.m-scan-stat-num[data-v-9772cc3b]{color:#1d2129;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700;line-height:1.2}.m-scan-stat--verified .m-scan-stat-num[data-v-9772cc3b]{color:#00b42a}.m-scan-main[data-v-9772cc3b]{flex-direction:column;align-items:center;gap:16px;max-width:420px;margin:0 auto;display:flex}.m-scan-btn[data-v-9772cc3b]{color:#fff;cursor:pointer;background:linear-gradient(145deg,#165dff 0%,#0e42d2 100%);border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:168px;height:168px;font-size:18px;font-weight:600;display:flex;box-shadow:0 12px 32px #165dff59}.m-scan-btn[data-v-9772cc3b]:disabled{opacity:.65;cursor:not-allowed}.m-scan-btn-icon[data-v-9772cc3b]{background:#ffffff40;border-radius:8px;width:40px;height:40px;position:relative}.m-scan-btn-icon[data-v-9772cc3b]:before,.m-scan-btn-icon[data-v-9772cc3b]:after{content:"";border:3px solid #fff;border-radius:4px;position:absolute}.m-scan-btn-icon[data-v-9772cc3b]:before{inset:6px}.m-scan-btn-icon[data-v-9772cc3b]:after{inset:10px}.m-scan-hint[data-v-9772cc3b]{text-align:center;color:#86909c;margin:0;padding:0 8px;font-size:13px;line-height:1.5}.m-scan-hint--sub[data-v-9772cc3b]{margin-top:6px;font-size:12px}.m-scan-secondary[data-v-9772cc3b]{max-width:280px}.cam-wrap[data-v-9772cc3b]{flex-direction:column;gap:12px;display:flex}.cam-video[data-v-9772cc3b]{object-fit:cover;background:#000;border-radius:10px;width:100%;min-height:220px}.cam-tip[data-v-9772cc3b]{color:#86909c;text-align:center;margin:0;font-size:13px}.today-list[data-v-9772cc3b]{flex-direction:column;gap:10px;max-height:min(60vh,420px);display:flex;overflow:auto}.today-item[data-v-9772cc3b]{background:#f7f8fa;border:1px solid #e5e6eb;border-radius:10px;padding:12px}.today-row[data-v-9772cc3b]{justify-content:space-between;align-items:center;gap:8px;display:flex}.today-name[data-v-9772cc3b]{color:#1d2129;font-size:15px;font-weight:600}.today-act[data-v-9772cc3b]{color:#4e5969;margin-top:6px;font-size:14px}.today-meta[data-v-9772cc3b]{color:#86909c;margin-top:4px;font-size:12px}.today-modal-summary[data-v-9772cc3b]{color:#4e5969;background:#f7f8fa;border-radius:8px;margin:-4px 0 12px;padding:8px 10px;font-size:13px;line-height:1.5}.today-modal-summary strong[data-v-9772cc3b]{color:#1d2129;font-variant-numeric:tabular-nums}.m-verify-res-modal.arco-modal{max-width:calc(100vw - 24px);margin:12px}.m-verify-res-modal .arco-modal-header{padding:14px 16px 10px}.m-verify-res-modal .arco-modal-title{font-size:17px;font-weight:600}.m-verify-res-modal .arco-modal-footer{padding:10px 16px 16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border-2,#e5e6eb);flex-direction:column;gap:10px;display:flex}.m-verify-res-modal .arco-modal-footer .arco-btn{width:100%;margin:0!important}.m-verify-res-desc .arco-descriptions-item-label{vertical-align:top;color:#86909c;width:88px;padding-bottom:10px}.m-verify-res-desc .arco-descriptions-item-value{word-break:break-all;padding-bottom:10px}@media (width>=480px){.m-verify-res-modal .arco-modal-footer{flex-direction:row;justify-content:flex-end}.m-verify-res-modal .arco-modal-footer .arco-btn{width:auto;min-width:100px}}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
import{t as e}from"./axios-CiYFffbI.js";var t=`szkp_h5_verify_token`,n=`http://szkp-map.ali251.langye.net/api`;function r(){let e=(window.location.pathname||``).includes(`/m/verify`)?`m/verify/login`:`h5/verify/login`,t=`/admin/`,n=t.endsWith(`/`)?t:`${t}/`;return`${window.location.origin}${n}${e}`}var i=e.create({baseURL:n,timeout:2e4});i.interceptors.request.use(e=>{let n=localStorage.getItem(t);return n&&(e.headers.Authorization=`Bearer ${n}`),e}),i.interceptors.response.use(e=>e,e=>{let n=e?.response?.status;if(n===401||n===403){localStorage.removeItem(t);let e=window.location.pathname||``;(e.includes(`/h5/verify`)||e.includes(`/m/verify`))&&window.location.replace(r())}return Promise.reject(e)});export{i as n,t};
|
||||
@ -0,0 +1 @@
|
||||
import{t as e}from"./axios-CiYFffbI.js";var t=`szkp_h5_verify_token`,n=`https://szkp-map.ali251.langye.net/api`;function r(){let e=(window.location.pathname||``).includes(`/m/verify`)?`m/verify/login`:`h5/verify/login`,t=`/admin/`,n=t.endsWith(`/`)?t:`${t}/`;return`${window.location.origin}${n}${e}`}var i=e.create({baseURL:n,timeout:2e4});i.interceptors.request.use(e=>{let n=localStorage.getItem(t);return n&&(e.headers.Authorization=`Bearer ${n}`),e}),i.interceptors.response.use(e=>e,e=>{let n=e?.response?.status;if(n===401||n===403){localStorage.removeItem(t);let e=window.location.pathname||``;(e.includes(`/h5/verify`)||e.includes(`/m/verify`))&&window.location.replace(r())}return Promise.reject(e)});export{i as n,t};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{h as t}from"./index-Ct6P_vam.js";function n(n={}){return t.get("/h5/activities",n,{withAuth:!1})}function i(n){return t.get(`/h5/activities/${n}`,{},{withAuth:!1})}function e(){return t.get("/h5/venues",{},{withAuth:!1})}function s(){return t.get("/h5/venue-dicts",{},{withAuth:!1})}function u(n){return t.get(`/h5/venues/${n}`,{},{withAuth:!1})}function h(n){return t.get(`/h5/study-tours/${n}`,{},{withAuth:!1})}function r(n={}){return t.get("/h5/study-tours",n,{withAuth:!1})}function o(n){return t.get(`/h5/activities/${n}/booking-info`,{},{withAuth:!1})}function a(n,i){return t.post(`/h5/activities/${n}/reservations`,i,{withAuth:!0})}function c(n){const i={};return n&&/^1\d{10}$/.test(n)&&(i.visitor_phone=n),t.get("/h5/my/reservations",i,{withAuth:!0})}function f(n,i){const e={};return i&&/^1\d{10}$/.test(i)&&(e.visitor_phone=i),t.get(`/h5/my/reservations/${n}`,e,{withAuth:!0})}function v(n,i){const e={};return i&&/^1\d{10}$/.test(i)&&(e.visitor_phone=i),t.post(`/h5/my/reservations/${n}/cancel`,e,{withAuth:!0})}export{e as a,n as b,r as c,c as d,v as e,i as f,s as g,o as h,a as i,f as j,h as k,u as l};
|
||||
import{h as t}from"./index-_pXctLR1.js";function n(n={}){return t.get("/h5/activities",n,{withAuth:!1})}function i(n){return t.get(`/h5/activities/${n}`,{},{withAuth:!1})}function e(){return t.get("/h5/venues",{},{withAuth:!1})}function s(){return t.get("/h5/venue-dicts",{},{withAuth:!1})}function u(n){return t.get(`/h5/venues/${n}`,{},{withAuth:!1})}function h(n){return t.get(`/h5/study-tours/${n}`,{},{withAuth:!1})}function r(n={}){return t.get("/h5/study-tours",n,{withAuth:!1})}function o(n){return t.get(`/h5/activities/${n}/booking-info`,{},{withAuth:!1})}function a(n,i){return t.post(`/h5/activities/${n}/reservations`,i,{withAuth:!0})}function c(n){const i={};return n&&/^1\d{10}$/.test(n)&&(i.visitor_phone=n),t.get("/h5/my/reservations",i,{withAuth:!0})}function f(n,i){const e={};return i&&/^1\d{10}$/.test(i)&&(e.visitor_phone=i),t.get(`/h5/my/reservations/${n}`,e,{withAuth:!0})}function v(n,i){const e={};return i&&/^1\d{10}$/.test(i)&&(e.visitor_phone=i),t.post(`/h5/my/reservations/${n}/cancel`,e,{withAuth:!0})}export{e as a,n as b,r as c,c as d,v as e,i as f,s as g,o as h,a as i,f as j,h as k,u as l};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
b[data-v-3670ed21],strong[data-v-3670ed21]{font-weight:400}uni-page-body[data-v-3670ed21]{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,sans-serif;background:#f7f8fa;color:#252525;font-weight:400;--brand-color: #05c9ac;--fs-tag: .625rem;--fs-body: .75rem;--fs-subtitle: .875rem;--fs-title: 1rem;--color-text: #252525;--color-text-sub: #8c8c8c}body[data-v-3670ed21]{background:#f7f8fa}.font-s[data-v-3670ed21]{font-size:var(--fs-body)}.font-m[data-v-3670ed21]{font-size:var(--fs-subtitle)}.font-l[data-v-3670ed21]{font-size:var(--fs-title)}uni-button[data-v-3670ed21],.uni-button[data-v-3670ed21]{font-weight:400}.page[data-v-3670ed21]{min-height:100vh;padding-top:calc(.375rem + env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);background:linear-gradient(180deg,#e8faf7,#eef1f4 28%,#eef1f4);box-sizing:border-box}.section-title[data-v-3670ed21]{display:flex;align-items:center;padding:.6875rem .625rem .4375rem;box-sizing:border-box}.section-title .bar[data-v-3670ed21]{width:.25rem;height:1.0625rem;border-radius:.125rem;background:#05c9ac;margin-right:.375rem;flex-shrink:0}.section-title .title[data-v-3670ed21]{font-size:1.125rem;font-weight:400;color:#1d2129;line-height:1.35}.tip[data-v-3670ed21]{display:block;margin:0 .625rem .5625rem;padding:0 .125rem;font-size:.75rem;color:#86909c;line-height:1.55;box-sizing:border-box}.state[data-v-3670ed21]{text-align:center;padding:2.5rem .75rem;font-size:.875rem;color:#1d2129}.state.muted[data-v-3670ed21]{color:#c0c4cc}.list[data-v-3670ed21]{padding:0 .75rem .75rem}.row[data-v-3670ed21]{display:flex;align-items:center;gap:.4375rem;padding:.5625rem .5rem;margin-bottom:.5rem;background:#fff;border-radius:.5rem;box-shadow:0 .125rem .625rem rgba(15,35,52,.06);border:.03125rem solid rgba(0,0,0,.04);box-sizing:border-box}.row.is-top1[data-v-3670ed21]{border-color:rgba(255,193,7,.45);box-shadow:0 .25rem .875rem rgba(255,193,7,.12)}.row.is-top2[data-v-3670ed21]{border-color:rgba(192,192,192,.55);box-shadow:0 .1875rem .75rem rgba(120,120,120,.1)}.row.is-top3[data-v-3670ed21]{border-color:rgba(205,127,50,.4);box-shadow:0 .1875rem .75rem rgba(205,127,50,.1)}.rank-wrap[data-v-3670ed21]{width:1.75rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.medal[data-v-3670ed21]{width:1.5rem;height:1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:400;color:#fff}.medal.m1[data-v-3670ed21]{background:linear-gradient(145deg,#ffd54f,#ff9800);box-shadow:0 .125rem .3125rem rgba(255,152,0,.35)}.medal.m2[data-v-3670ed21]{background:linear-gradient(145deg,#e0e0e0,#9e9e9e);box-shadow:0 .125rem .3125rem rgba(0,0,0,.12)}.medal.m3[data-v-3670ed21]{background:linear-gradient(145deg,#d7a574,#a65a2f);box-shadow:0 .125rem .3125rem rgba(166,90,47,.3)}.rank-num[data-v-3670ed21]{font-size:.875rem;font-weight:400;color:#c0c4cc}.thumb[data-v-3670ed21]{width:3.125rem;height:3.125rem;border-radius:.375rem;flex-shrink:0;background:#f2f3f5}.mid[data-v-3670ed21]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1875rem}.name[data-v-3670ed21]{font-size:.9375rem;font-weight:400;color:#1d2129;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.district[data-v-3670ed21]{font-size:.6875rem;color:#86909c;line-height:1.3}.count-block[data-v-3670ed21]{flex-shrink:0;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.count-label[data-v-3670ed21]{font-size:.625rem;color:#c9cdd4}.count-row[data-v-3670ed21]{display:flex;flex-direction:row;align-items:baseline;gap:.125rem}.count[data-v-3670ed21]{font-size:1.0625rem;font-weight:400;color:#05c9ac;font-variant-numeric:tabular-nums;letter-spacing:-.01563rem}.unit[data-v-3670ed21]{font-size:.6875rem;color:#86909c}.bottom-safe[data-v-3670ed21]{height:calc(.75rem + env(safe-area-inset-bottom))}
|
||||
@ -0,0 +1 @@
|
||||
b[data-v-84e06233],strong[data-v-84e06233]{font-weight:400}uni-page-body[data-v-84e06233]{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,sans-serif;background:#f7f8fa;color:#252525;font-weight:400;--brand-color: #05c9ac;--fs-tag: .625rem;--fs-body: .75rem;--fs-subtitle: .875rem;--fs-title: 1rem;--color-text: #252525;--color-text-sub: #8c8c8c}body[data-v-84e06233]{background:#f7f8fa}.font-s[data-v-84e06233]{font-size:var(--fs-body)}.font-m[data-v-84e06233]{font-size:var(--fs-subtitle)}.font-l[data-v-84e06233]{font-size:var(--fs-title)}uni-button[data-v-84e06233],.uni-button[data-v-84e06233]{font-weight:400}.page[data-v-84e06233]{min-height:100vh;padding-top:calc(.375rem + env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);background:linear-gradient(180deg,#e8faf7,#eef1f4 28%,#eef1f4);box-sizing:border-box}.section-title[data-v-84e06233]{display:flex;align-items:center;padding:.6875rem .625rem .4375rem;box-sizing:border-box}.section-title .bar[data-v-84e06233]{width:.25rem;height:1.0625rem;border-radius:.125rem;background:#05c9ac;margin-right:.375rem;flex-shrink:0}.section-title .title[data-v-84e06233]{font-size:1.125rem;font-weight:400;color:#1d2129;line-height:1.35}.state[data-v-84e06233]{text-align:center;padding:2.5rem .75rem;font-size:.875rem;color:#1d2129}.state.muted[data-v-84e06233]{color:#c0c4cc}.list[data-v-84e06233]{padding:0 .75rem .75rem}.row[data-v-84e06233]{display:flex;align-items:center;gap:.4375rem;padding:.5625rem .5rem;margin-bottom:.5rem;background:#fff;border-radius:.5rem;box-shadow:0 .125rem .625rem rgba(15,35,52,.06);border:.03125rem solid rgba(0,0,0,.04);box-sizing:border-box}.row.is-top1[data-v-84e06233]{border-color:rgba(255,193,7,.45);box-shadow:0 .25rem .875rem rgba(255,193,7,.12)}.row.is-top2[data-v-84e06233]{border-color:rgba(192,192,192,.55);box-shadow:0 .1875rem .75rem rgba(120,120,120,.1)}.row.is-top3[data-v-84e06233]{border-color:rgba(205,127,50,.4);box-shadow:0 .1875rem .75rem rgba(205,127,50,.1)}.rank-wrap[data-v-84e06233]{width:1.75rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.medal[data-v-84e06233]{width:1.5rem;height:1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:400;color:#fff}.medal.m1[data-v-84e06233]{background:linear-gradient(145deg,#ffd54f,#ff9800);box-shadow:0 .125rem .3125rem rgba(255,152,0,.35)}.medal.m2[data-v-84e06233]{background:linear-gradient(145deg,#e0e0e0,#9e9e9e);box-shadow:0 .125rem .3125rem rgba(0,0,0,.12)}.medal.m3[data-v-84e06233]{background:linear-gradient(145deg,#d7a574,#a65a2f);box-shadow:0 .125rem .3125rem rgba(166,90,47,.3)}.rank-num[data-v-84e06233]{font-size:.875rem;font-weight:400;color:#c0c4cc}.thumb[data-v-84e06233]{width:3.125rem;height:3.125rem;border-radius:.375rem;flex-shrink:0;background:#f2f3f5}.mid[data-v-84e06233]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1875rem}.name[data-v-84e06233]{font-size:.9375rem;font-weight:400;color:#1d2129;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.district[data-v-84e06233]{font-size:.6875rem;color:#86909c;line-height:1.3}.count-block[data-v-84e06233]{flex-shrink:0;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.count-label[data-v-84e06233]{font-size:.625rem;color:#c9cdd4}.count-row[data-v-84e06233]{display:flex;flex-direction:row;align-items:baseline;gap:.125rem}.count[data-v-84e06233]{font-size:1.0625rem;font-weight:400;color:#05c9ac;font-variant-numeric:tabular-nums;letter-spacing:-.01563rem}.unit[data-v-84e06233]{font-size:.6875rem;color:#86909c}.bottom-safe[data-v-84e06233]{height:calc(.75rem + env(safe-area-inset-bottom))}
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{h as t,g as n,S as r,b as e}from"./index-Ct6P_vam.js";function o(){return t.get("/h5/me/profile",{},{withAuth:!0})}function i(n){return t.put("/h5/me/profile",n,{withAuth:!0})}function u(){try{const t=n(r.localProfile);if(!t)return null;const e="string"==typeof t?JSON.parse(t):t;return e&&"object"==typeof e?e:null}catch{return null}}function l(t){e(r.localProfile,JSON.stringify(t))}export{o as g,u as l,l as s,i as u};
|
||||
import{h as t,g as n,S as r,b as e}from"./index-_pXctLR1.js";function o(){return t.get("/h5/me/profile",{},{withAuth:!0})}function i(n){return t.put("/h5/me/profile",n,{withAuth:!0})}function u(){try{const t=n(r.localProfile);if(!t)return null;const e="string"==typeof t?JSON.parse(t):t;return e&&"object"==typeof e?e:null}catch{return null}}function l(t){e(r.localProfile,JSON.stringify(t))}export{o as g,u as l,l as s,i as u};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as a,e,f as l,o as s,L as t,N as u,O as n,j as i,k as r,m as o,n as c,p as d,C as v,D as f,I as _,E as p,t as m,u as g,v as y,x as h,F as k,y as b,B as j,H as w,z as C,J as P}from"./index-Ct6P_vam.js";import{b as x}from"./content.BpyUCHA_.js";import{f as A,a as F,i as N,c as V}from"./activity.4NBjJ4my.js";import{P as z}from"./poster.DLiVsUXX.js";import{s as I}from"./search.BJnl3YRK.js";import{d as $}from"./down.BCKq9i8s.js";import{_ as B}from"./_plugin-vue_export-helper.BCo6x5W8.js";const D=B(a({__name:"index",setup(a){const B=e([]),D=e(1),E=e(0),H=e(!1),J=e(!1),L=e(""),O=e(""),U=[{value:"",label:"全部状态"},{value:"ongoing",label:"进行中"},{value:"not_started",label:"未开始"},{value:"ended",label:"已结束"}],q=e(0),G=l(()=>E.value>0&&D.value<E.value);async function K(a,e){if(!H.value||e){if(e){if(J.value||!G.value)return;J.value=!0}else H.value=!0;try{const l=await x({page:a,page_size:10,keyword:L.value.trim()||void 0,schedule_status:O.value||void 0}),{list:s,lastPage:t}=function(a){if(!a||"object"!=typeof a)return{list:[],lastPage:1};const e=a;if(Array.isArray(e))return{list:e,lastPage:1};const l=e.data;if(Array.isArray(l))return{list:l,lastPage:Number(e.last_page??1)||1};if(l&&"object"==typeof l){const a=l;if(Array.isArray(a.data)){const l=Number(a.last_page??e.last_page??1)||1;return{list:a.data,lastPage:l}}}return{list:[],lastPage:1}}(l);E.value=t,B.value=e?[...B.value,...s]:s,D.value=a}catch{e||(B.value=[])}finally{H.value=!1,J.value=!1}}}async function M(){D.value=1,await K(1,!1)}function Q(){M()}function R(a){var e;const l=Number((null==(e=null==a?void 0:a.detail)?void 0:e.value)??0);q.value=Number.isFinite(l)?l:0;const s=U[q.value];O.value=(null==s?void 0:s.value)??"",M()}function S(a){P({url:`/pages/activity/detail?id=${a}`})}function T(a){const e=null==a?void 0:a.schedule_status;return"not_started"===e||"ongoing"===e||"ended"===e?e:V(null==a?void 0:a.start_at,null==a?void 0:a.end_at)}function W(a){return F(T(a))}return s(()=>{!async function(){D.value=1,await K(1,!1)}()}),t(()=>{H.value||J.value||!G.value||K(D.value+1,!0)}),u(async()=>{try{await M()}finally{n()}}),(a,e)=>{const l=v,s=_,t=o,u=m,n=p;return c(),i(t,{class:"page"},{default:r(()=>[d(t,{class:"toolbar"},{default:r(()=>[d(t,{class:"toolbar-row"},{default:r(()=>[d(t,{class:"search-wrap"},{default:r(()=>[d(l,{class:"search-icon-img",src:f(I),mode:"aspectFit"},null,8,["src"]),d(s,{modelValue:L.value,"onUpdate:modelValue":e[0]||(e[0]=a=>L.value=a),class:"search-input",placeholder:"搜索活动标题","placeholder-class":"ph","confirm-type":"search",onConfirm:Q},null,8,["modelValue"])]),_:1}),d(n,{mode:"selector",range:U,"range-key":"label",value:q.value,class:"status-picker",onChange:R},{default:r(()=>[d(t,{class:"status-pick"},{default:r(()=>[d(u,{class:"status-pick-text"},{default:r(()=>{var a;return[g(y((null==(a=U[q.value])?void 0:a.label)||"全部"),1)]}),_:1}),d(l,{class:"status-pick-arrow",src:f($),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["value"])]),_:1})]),_:1}),d(t,{class:"list-inner"},{default:r(()=>[(c(!0),h(k,null,b(B.value,a=>(c(),i(t,{key:a.id,class:"item",onClick:e=>S(a.id)},{default:r(()=>[d(t,{class:"poster-wrap"},{default:r(()=>{return[d(l,{class:"poster",src:a.image||f(z),mode:"aspectFill"},null,8,["src"]),d(t,{class:j(["status",(e=a,`st-${T(e)}`)])},{default:r(()=>[g(y(W(a)),1)]),_:2},1032,["class"])];var e}),_:2},1024),d(t,{class:"body"},{default:r(()=>{var e,l;return[d(t,{class:"title"},{default:r(()=>[g(y(a.title),1)]),_:2},1024),(null==(e=a.tags)?void 0:e.length)?(c(),i(t,{key:0,class:"act-tags"},{default:r(()=>[(c(!0),h(k,null,b((a.tags||[]).slice(0,4),(e,l)=>(c(),i(u,{key:"t-"+a.id+"-"+l,class:"act-tag-chip"},{default:r(()=>[g(y(e),1)]),_:2},1024))),128))]),_:2},1024)):w("",!0),d(t,{class:"meta"},{default:r(()=>[g(y(f(A)(a.start_at,a.end_at)),1)]),_:2},1024),d(t,{class:"meta venue-line"},{default:r(()=>[g(y(a.venue_name||"场馆待定"),1)]),_:2},1024),(l=a,N(null==l?void 0:l.end_at)||!0!==(null==l?void 0:l.is_bookable)?w("",!0):(c(),i(t,{key:1,class:"action-row"},{default:r(()=>[d(t,{class:"btn",onClick:C(e=>S(a.id),["stop"])},{default:r(()=>[g("立即预约")]),_:2},1032,["onClick"])]),_:2},1024)))]}),_:2},1024)]),_:2},1032,["onClick"]))),128)),H.value&&!B.value.length?(c(),i(t,{key:0,class:"hint"},{default:r(()=>[g("加载中…")]),_:1})):w("",!0),J.value?(c(),i(t,{key:1,class:"hint"},{default:r(()=>[g("加载更多…")]),_:1})):w("",!0),E.value>0&&!G.value&&B.value.length&&!H.value?(c(),i(t,{key:2,class:"hint muted"},{default:r(()=>[g("没有更多了")]),_:1})):w("",!0),H.value||B.value.length?w("",!0):(c(),i(t,{key:3,class:"hint muted"},{default:r(()=>[g("暂无活动")]),_:1}))]),_:1})]),_:1})}}}),[["__scopeId","data-v-55ae1859"]]);export{D as default};
|
||||
import{d as a,e,f as l,o as s,L as t,N as u,O as n,j as i,k as r,m as o,n as c,p as d,C as v,D as f,I as _,E as p,t as m,u as g,v as y,x as h,F as k,y as b,B as j,H as w,z as C,J as P}from"./index-_pXctLR1.js";import{b as x}from"./content.BpoHdgiW.js";import{f as A,a as F,i as N,c as V}from"./activity.4NBjJ4my.js";import{P as z}from"./poster.DLiVsUXX.js";import{s as I}from"./search.BJnl3YRK.js";import{d as $}from"./down.BCKq9i8s.js";import{_ as B}from"./_plugin-vue_export-helper.BCo6x5W8.js";const D=B(a({__name:"index",setup(a){const B=e([]),D=e(1),E=e(0),H=e(!1),J=e(!1),L=e(""),O=e(""),U=[{value:"",label:"全部状态"},{value:"ongoing",label:"进行中"},{value:"not_started",label:"未开始"},{value:"ended",label:"已结束"}],q=e(0),G=l(()=>E.value>0&&D.value<E.value);async function K(a,e){if(!H.value||e){if(e){if(J.value||!G.value)return;J.value=!0}else H.value=!0;try{const l=await x({page:a,page_size:10,keyword:L.value.trim()||void 0,schedule_status:O.value||void 0}),{list:s,lastPage:t}=function(a){if(!a||"object"!=typeof a)return{list:[],lastPage:1};const e=a;if(Array.isArray(e))return{list:e,lastPage:1};const l=e.data;if(Array.isArray(l))return{list:l,lastPage:Number(e.last_page??1)||1};if(l&&"object"==typeof l){const a=l;if(Array.isArray(a.data)){const l=Number(a.last_page??e.last_page??1)||1;return{list:a.data,lastPage:l}}}return{list:[],lastPage:1}}(l);E.value=t,B.value=e?[...B.value,...s]:s,D.value=a}catch{e||(B.value=[])}finally{H.value=!1,J.value=!1}}}async function M(){D.value=1,await K(1,!1)}function Q(){M()}function R(a){var e;const l=Number((null==(e=null==a?void 0:a.detail)?void 0:e.value)??0);q.value=Number.isFinite(l)?l:0;const s=U[q.value];O.value=(null==s?void 0:s.value)??"",M()}function S(a){P({url:`/pages/activity/detail?id=${a}`})}function T(a){const e=null==a?void 0:a.schedule_status;return"not_started"===e||"ongoing"===e||"ended"===e?e:V(null==a?void 0:a.start_at,null==a?void 0:a.end_at)}function W(a){return F(T(a))}return s(()=>{!async function(){D.value=1,await K(1,!1)}()}),t(()=>{H.value||J.value||!G.value||K(D.value+1,!0)}),u(async()=>{try{await M()}finally{n()}}),(a,e)=>{const l=v,s=_,t=o,u=m,n=p;return c(),i(t,{class:"page"},{default:r(()=>[d(t,{class:"toolbar"},{default:r(()=>[d(t,{class:"toolbar-row"},{default:r(()=>[d(t,{class:"search-wrap"},{default:r(()=>[d(l,{class:"search-icon-img",src:f(I),mode:"aspectFit"},null,8,["src"]),d(s,{modelValue:L.value,"onUpdate:modelValue":e[0]||(e[0]=a=>L.value=a),class:"search-input",placeholder:"搜索活动标题","placeholder-class":"ph","confirm-type":"search",onConfirm:Q},null,8,["modelValue"])]),_:1}),d(n,{mode:"selector",range:U,"range-key":"label",value:q.value,class:"status-picker",onChange:R},{default:r(()=>[d(t,{class:"status-pick"},{default:r(()=>[d(u,{class:"status-pick-text"},{default:r(()=>{var a;return[g(y((null==(a=U[q.value])?void 0:a.label)||"全部"),1)]}),_:1}),d(l,{class:"status-pick-arrow",src:f($),mode:"aspectFit"},null,8,["src"])]),_:1})]),_:1},8,["value"])]),_:1})]),_:1}),d(t,{class:"list-inner"},{default:r(()=>[(c(!0),h(k,null,b(B.value,a=>(c(),i(t,{key:a.id,class:"item",onClick:e=>S(a.id)},{default:r(()=>[d(t,{class:"poster-wrap"},{default:r(()=>{return[d(l,{class:"poster",src:a.image||f(z),mode:"aspectFill"},null,8,["src"]),d(t,{class:j(["status",(e=a,`st-${T(e)}`)])},{default:r(()=>[g(y(W(a)),1)]),_:2},1032,["class"])];var e}),_:2},1024),d(t,{class:"body"},{default:r(()=>{var e,l;return[d(t,{class:"title"},{default:r(()=>[g(y(a.title),1)]),_:2},1024),(null==(e=a.tags)?void 0:e.length)?(c(),i(t,{key:0,class:"act-tags"},{default:r(()=>[(c(!0),h(k,null,b((a.tags||[]).slice(0,4),(e,l)=>(c(),i(u,{key:"t-"+a.id+"-"+l,class:"act-tag-chip"},{default:r(()=>[g(y(e),1)]),_:2},1024))),128))]),_:2},1024)):w("",!0),d(t,{class:"meta"},{default:r(()=>[g(y(f(A)(a.start_at,a.end_at)),1)]),_:2},1024),d(t,{class:"meta venue-line"},{default:r(()=>[g(y(a.venue_name||"场馆待定"),1)]),_:2},1024),(l=a,N(null==l?void 0:l.end_at)||!0!==(null==l?void 0:l.is_bookable)?w("",!0):(c(),i(t,{key:1,class:"action-row"},{default:r(()=>[d(t,{class:"btn",onClick:C(e=>S(a.id),["stop"])},{default:r(()=>[g("立即预约")]),_:2},1032,["onClick"])]),_:2},1024)))]}),_:2},1024)]),_:2},1032,["onClick"]))),128)),H.value&&!B.value.length?(c(),i(t,{key:0,class:"hint"},{default:r(()=>[g("加载中…")]),_:1})):w("",!0),J.value?(c(),i(t,{key:1,class:"hint"},{default:r(()=>[g("加载更多…")]),_:1})):w("",!0),E.value>0&&!G.value&&B.value.length&&!H.value?(c(),i(t,{key:2,class:"hint muted"},{default:r(()=>[g("没有更多了")]),_:1})):w("",!0),H.value||B.value.length?w("",!0):(c(),i(t,{key:3,class:"hint muted"},{default:r(()=>[g("暂无活动")]),_:1}))]),_:1})]),_:1})}}}),[["__scopeId","data-v-55ae1859"]]);export{D as default};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as a,e as s,o as e,N as l,O as t,j as u,k as r,m as o,n as c,p as n,C as d,D as i,I as m,x as f,F as p,y as _,t as v,u as y,v as h,H as g,J as k}from"./index-Ct6P_vam.js";import{c as w}from"./content.BpyUCHA_.js";import{P as j}from"./poster.DLiVsUXX.js";import{s as x}from"./search.BJnl3YRK.js";import{_ as b}from"./_plugin-vue_export-helper.BCo6x5W8.js";const C=b(a({__name:"index",setup(a){const b=s([]),C=s(!1),F=s("");async function V(){C.value=!0;try{b.value=await w({keyword:F.value.trim()||void 0})||[]}catch{b.value=[]}finally{C.value=!1}}function I(){V()}return e(()=>{V()}),l(async()=>{try{await V()}finally{t()}}),(a,s)=>{const e=d,l=m,t=o,w=v;return c(),u(t,{class:"page"},{default:r(()=>[n(t,{class:"toolbar"},{default:r(()=>[n(t,{class:"search-wrap"},{default:r(()=>[n(e,{class:"search-icon-img",src:i(x),mode:"aspectFit"},null,8,["src"]),n(l,{modelValue:F.value,"onUpdate:modelValue":s[0]||(s[0]=a=>F.value=a),class:"search-input",placeholder:"搜索研学路线名称","placeholder-class":"ph","confirm-type":"search",onConfirm:I},null,8,["modelValue"])]),_:1})]),_:1}),n(t,{class:"section"},{default:r(()=>[(c(!0),f(p,null,_(b.value,a=>(c(),u(t,{key:a.id,class:"tour-card",onClick:s=>{return e=a.id,void k({url:`/pages/study-tour/detail?id=${e}`});var e}},{default:r(()=>[n(t,{class:"tour-img-wrap"},{default:r(()=>[n(e,{class:"tour-img",src:a.cover_image||i(j),mode:"aspectFill"},null,8,["src"])]),_:2},1024),n(t,{class:"tour-body"},{default:r(()=>{var s;return[n(w,{class:"tour-title"},{default:r(()=>[y(h(a.name),1)]),_:2},1024),n(t,{class:"tour-stops-timeline"},{default:r(()=>[(c(!0),f(p,null,_(a.venue_names||[],(s,e)=>(c(),u(t,{key:"v-"+a.id+"-"+e,class:"tour-stop-row"},{default:r(()=>[n(t,{class:"tour-timeline-axis"},{default:r(()=>{var s;return[n(t,{class:"tour-dot-cell"},{default:r(()=>[n(t,{class:"tour-tl-dot"})]),_:1}),Number(e)<((null==(s=a.venue_names)?void 0:s.length)||0)-1?(c(),u(t,{key:0,class:"tour-tl-line"})):g("",!0)]}),_:2},1024),n(w,{class:"tour-stop-name"},{default:r(()=>[y(h(s),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),(null==(s=a.tags)?void 0:s.length)?(c(),u(t,{key:0,class:"tour-tags-row"},{default:r(()=>[(c(!0),f(p,null,_(a.tags,(s,e)=>(c(),u(w,{key:"t-"+a.id+"-"+e,class:"tour-tag"},{default:r(()=>[y(h(s),1)]),_:2},1024))),128))]),_:2},1024)):g("",!0)]}),_:2},1024)]),_:2},1032,["onClick"]))),128)),C.value&&!b.value.length?(c(),u(t,{key:0,class:"hint"},{default:r(()=>[y("加载中…")]),_:1})):g("",!0),C.value||b.value.length?g("",!0):(c(),u(t,{key:1,class:"hint muted"},{default:r(()=>[y("暂无研学路线")]),_:1}))]),_:1})]),_:1})}}}),[["__scopeId","data-v-cbf684f4"]]);export{C as default};
|
||||
import{d as a,e as s,o as e,N as l,O as t,j as u,k as r,m as o,n as c,p as n,C as d,D as i,I as m,x as f,F as p,y as _,t as v,u as y,v as h,H as g,J as k}from"./index-_pXctLR1.js";import{c as w}from"./content.BpoHdgiW.js";import{P as j}from"./poster.DLiVsUXX.js";import{s as x}from"./search.BJnl3YRK.js";import{_ as b}from"./_plugin-vue_export-helper.BCo6x5W8.js";const C=b(a({__name:"index",setup(a){const b=s([]),C=s(!1),F=s("");async function V(){C.value=!0;try{b.value=await w({keyword:F.value.trim()||void 0})||[]}catch{b.value=[]}finally{C.value=!1}}function I(){V()}return e(()=>{V()}),l(async()=>{try{await V()}finally{t()}}),(a,s)=>{const e=d,l=m,t=o,w=v;return c(),u(t,{class:"page"},{default:r(()=>[n(t,{class:"toolbar"},{default:r(()=>[n(t,{class:"search-wrap"},{default:r(()=>[n(e,{class:"search-icon-img",src:i(x),mode:"aspectFit"},null,8,["src"]),n(l,{modelValue:F.value,"onUpdate:modelValue":s[0]||(s[0]=a=>F.value=a),class:"search-input",placeholder:"搜索研学路线名称","placeholder-class":"ph","confirm-type":"search",onConfirm:I},null,8,["modelValue"])]),_:1})]),_:1}),n(t,{class:"section"},{default:r(()=>[(c(!0),f(p,null,_(b.value,a=>(c(),u(t,{key:a.id,class:"tour-card",onClick:s=>{return e=a.id,void k({url:`/pages/study-tour/detail?id=${e}`});var e}},{default:r(()=>[n(t,{class:"tour-img-wrap"},{default:r(()=>[n(e,{class:"tour-img",src:a.cover_image||i(j),mode:"aspectFill"},null,8,["src"])]),_:2},1024),n(t,{class:"tour-body"},{default:r(()=>{var s;return[n(w,{class:"tour-title"},{default:r(()=>[y(h(a.name),1)]),_:2},1024),n(t,{class:"tour-stops-timeline"},{default:r(()=>[(c(!0),f(p,null,_(a.venue_names||[],(s,e)=>(c(),u(t,{key:"v-"+a.id+"-"+e,class:"tour-stop-row"},{default:r(()=>[n(t,{class:"tour-timeline-axis"},{default:r(()=>{var s;return[n(t,{class:"tour-dot-cell"},{default:r(()=>[n(t,{class:"tour-tl-dot"})]),_:1}),Number(e)<((null==(s=a.venue_names)?void 0:s.length)||0)-1?(c(),u(t,{key:0,class:"tour-tl-line"})):g("",!0)]}),_:2},1024),n(w,{class:"tour-stop-name"},{default:r(()=>[y(h(s),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),(null==(s=a.tags)?void 0:s.length)?(c(),u(t,{key:0,class:"tour-tags-row"},{default:r(()=>[(c(!0),f(p,null,_(a.tags,(s,e)=>(c(),u(w,{key:"t-"+a.id+"-"+e,class:"tour-tag"},{default:r(()=>[y(h(s),1)]),_:2},1024))),128))]),_:2},1024)):g("",!0)]}),_:2},1024)]),_:2},1032,["onClick"]))),128)),C.value&&!b.value.length?(c(),u(t,{key:0,class:"hint"},{default:r(()=>[y("加载中…")]),_:1})):g("",!0),C.value||b.value.length?g("",!0):(c(),u(t,{key:1,class:"hint muted"},{default:r(()=>[y("暂无研学路线")]),_:1}))]),_:1})]),_:1})}}}),[["__scopeId","data-v-cbf684f4"]]);export{C as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as a,e as l,P as e,j as s,k as n,g as u,S as t,m as o,n as r,p as c,C as i,u as d,v as f,t as p,J as _}from"./index-Ct6P_vam.js";import{g as v,l as m}from"./localProfile.DQuKZqzj.js";import{_ as h}from"./_plugin-vue_export-helper.BCo6x5W8.js";const k=h(a({__name:"index",setup(a){const h=l("游客"),k=l(""),g=l("");function j(a){return a&&11===a.length?`${a.slice(0,3)}****${a.slice(7)}`:a||""}function x(){_({url:"/pages/mine/profile"})}function y(){_({url:"/pages/mine/orders"})}return e(()=>{!async function(){var a;if(u(t.accessToken))try{const a=await v();return h.value=(a.real_name||a.nickname||"用户").trim()||"用户",k.value=a.phone?j(a.phone):"",void(g.value=a.avatar_url||"")}catch{}const l=m();h.value=(null==(a=null==l?void 0:l.real_name)?void 0:a.trim())||"游客",k.value=(null==l?void 0:l.phone)?j(l.phone):"",g.value=(null==l?void 0:l.avatar_url)||""}()}),(a,l)=>{const e=i,u=o,t=p;return r(),s(u,{class:"page"},{default:n(()=>[c(u,{class:"header"},{default:n(()=>[c(u,{class:"profile",onClick:x},{default:n(()=>[g.value?(r(),s(e,{key:0,class:"avatar",src:g.value,mode:"aspectFill"},null,8,["src"])):(r(),s(u,{key:1,class:"avatar placeholder"})),c(u,{class:"profile-info"},{default:n(()=>[c(u,{class:"name"},{default:n(()=>[d(f(h.value),1)]),_:1}),c(u,{class:"phone"},{default:n(()=>[d(f(k.value||"完善信息方便预约"),1)]),_:1})]),_:1})]),_:1})]),_:1}),c(u,{class:"panel"},{default:n(()=>[c(u,{class:"menu-item",onClick:x},{default:n(()=>[c(t,null,{default:n(()=>[d("我的信息")]),_:1}),c(t,null,{default:n(()=>[d(">")]),_:1})]),_:1}),c(u,{class:"menu-item",onClick:y},{default:n(()=>[c(t,null,{default:n(()=>[d("预约记录")]),_:1}),c(t,null,{default:n(()=>[d(">")]),_:1})]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-0d216b84"]]);export{k as default};
|
||||
import{d as a,e as l,P as e,j as s,k as n,g as u,S as t,m as o,n as r,p as c,C as i,u as d,v as f,t as p,J as _}from"./index-_pXctLR1.js";import{g as v,l as m}from"./localProfile.BA58kiV-.js";import{_ as h}from"./_plugin-vue_export-helper.BCo6x5W8.js";const k=h(a({__name:"index",setup(a){const h=l("游客"),k=l(""),g=l("");function j(a){return a&&11===a.length?`${a.slice(0,3)}****${a.slice(7)}`:a||""}function x(){_({url:"/pages/mine/profile"})}function y(){_({url:"/pages/mine/orders"})}return e(()=>{!async function(){var a;if(u(t.accessToken))try{const a=await v();return h.value=(a.real_name||a.nickname||"用户").trim()||"用户",k.value=a.phone?j(a.phone):"",void(g.value=a.avatar_url||"")}catch{}const l=m();h.value=(null==(a=null==l?void 0:l.real_name)?void 0:a.trim())||"游客",k.value=(null==l?void 0:l.phone)?j(l.phone):"",g.value=(null==l?void 0:l.avatar_url)||""}()}),(a,l)=>{const e=i,u=o,t=p;return r(),s(u,{class:"page"},{default:n(()=>[c(u,{class:"header"},{default:n(()=>[c(u,{class:"profile",onClick:x},{default:n(()=>[g.value?(r(),s(e,{key:0,class:"avatar",src:g.value,mode:"aspectFill"},null,8,["src"])):(r(),s(u,{key:1,class:"avatar placeholder"})),c(u,{class:"profile-info"},{default:n(()=>[c(u,{class:"name"},{default:n(()=>[d(f(h.value),1)]),_:1}),c(u,{class:"phone"},{default:n(()=>[d(f(k.value||"完善信息方便预约"),1)]),_:1})]),_:1})]),_:1})]),_:1}),c(u,{class:"panel"},{default:n(()=>[c(u,{class:"menu-item",onClick:x},{default:n(()=>[c(t,null,{default:n(()=>[d("我的信息")]),_:1}),c(t,null,{default:n(()=>[d(">")]),_:1})]),_:1}),c(u,{class:"menu-item",onClick:y},{default:n(()=>[c(t,null,{default:n(()=>[d("预约记录")]),_:1}),c(t,null,{default:n(()=>[d(">")]),_:1})]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-0d216b84"]]);export{k as default};
|
||||
@ -1 +1 @@
|
||||
import{d as a,e,o as l,j as s,k as t,g as n,S as u,m as r,n as o,u as c,p as v,C as i,v as p,t as _,I as d,Q as m,s as f,R as h,a as y,T as k,c as b}from"./index-Ct6P_vam.js";import{g,l as w,u as V,s as j}from"./localProfile.DQuKZqzj.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=x(a({__name:"profile",setup(a){const x=e(!0),T=e(!1),C=e(!1),F=e({real_name:"",phone:"",avatar_url:""});function I(a){F.value.real_name=a.real_name||"",F.value.phone=a.phone||"",F.value.avatar_url=a.avatar_url||""}function P(){C.value?h({count:1,sizeType:["compressed"],sourceType:["album","camera"],success:async a=>{const e=a.tempFilePaths[0];if(e)try{y({title:"上传中"});const{url:a}=await k(e);F.value.avatar_url=a}catch(l){f({title:(null==l?void 0:l.message)||"上传失败",icon:"none"})}finally{b()}}}):f({title:"请先通过微信登录后再上传头像",icon:"none"})}async function U(){if(F.value.real_name.trim())if(/^1\d{10}$/.test(F.value.phone.trim())){T.value=!0;try{const a={real_name:F.value.real_name.trim(),phone:F.value.phone.trim(),avatar_url:F.value.avatar_url||void 0};C.value&&await V(a),j({real_name:a.real_name,phone:a.phone,avatar_url:a.avatar_url}),f({title:"保存成功",icon:"success"})}catch(a){f({title:(null==a?void 0:a.message)||"保存失败",icon:"none"})}finally{T.value=!1}}else f({title:"请填写11位手机号",icon:"none"});else f({title:"请填写姓名",icon:"none"})}return l(()=>{!async function(){x.value=!0,C.value=!!n(u.accessToken);try{if(C.value)try{const a=await g();F.value.real_name=a.real_name||"",F.value.phone=a.phone||"",F.value.avatar_url=a.avatar_url||""}catch{const a=w();a&&I(a)}else{const a=w();a&&I(a)}}finally{x.value=!1}}()}),(a,e)=>{const l=r,n=i,u=_,f=d,h=m;return o(),s(l,{class:"page"},{default:t(()=>[x.value?(o(),s(l,{key:0,class:"loading"},{default:t(()=>[c("加载中…")]),_:1})):(o(),s(l,{key:1,class:"content"},{default:t(()=>[v(l,{class:"avatar-block"},{default:t(()=>[v(l,{class:"avatar-wrap",onClick:P},{default:t(()=>[F.value.avatar_url?(o(),s(n,{key:0,class:"avatar",src:F.value.avatar_url,mode:"aspectFill"},null,8,["src"])):(o(),s(l,{key:1,class:"avatar placeholder"})),v(l,{class:"avatar-tip"},{default:t(()=>[c(p(C.value?"点击更换头像":"登录后可上传头像"),1)]),_:1})]),_:1})]),_:1}),v(l,{class:"card"},{default:t(()=>[v(l,{class:"row"},{default:t(()=>[v(u,{class:"label"},{default:t(()=>[c("姓名")]),_:1}),v(f,{modelValue:F.value.real_name,"onUpdate:modelValue":e[0]||(e[0]=a=>F.value.real_name=a),class:"input",placeholder:"必填","placeholder-class":"ph"},null,8,["modelValue"])]),_:1}),v(l,{class:"row last"},{default:t(()=>[v(u,{class:"label"},{default:t(()=>[c("手机号")]),_:1}),v(f,{modelValue:F.value.phone,"onUpdate:modelValue":e[1]||(e[1]=a=>F.value.phone=a),class:"input",type:"number",maxlength:"11",placeholder:"必填","placeholder-class":"ph"},null,8,["modelValue"])]),_:1})]),_:1}),v(h,{class:"btn",disabled:T.value,onClick:U},{default:t(()=>[c(p(T.value?"保存中…":"保存"),1)]),_:1},8,["disabled"])]),_:1}))]),_:1})}}}),[["__scopeId","data-v-e7e2a998"]]);export{T as default};
|
||||
import{d as a,e,o as l,j as s,k as t,g as n,S as u,m as r,n as o,u as c,p as v,C as i,v as p,t as _,I as d,Q as m,s as f,R as h,a as y,T as k,c as b}from"./index-_pXctLR1.js";import{g,l as w,u as V,s as j}from"./localProfile.BA58kiV-.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=x(a({__name:"profile",setup(a){const x=e(!0),T=e(!1),C=e(!1),F=e({real_name:"",phone:"",avatar_url:""});function I(a){F.value.real_name=a.real_name||"",F.value.phone=a.phone||"",F.value.avatar_url=a.avatar_url||""}function P(){C.value?h({count:1,sizeType:["compressed"],sourceType:["album","camera"],success:async a=>{const e=a.tempFilePaths[0];if(e)try{y({title:"上传中"});const{url:a}=await k(e);F.value.avatar_url=a}catch(l){f({title:(null==l?void 0:l.message)||"上传失败",icon:"none"})}finally{b()}}}):f({title:"请先通过微信登录后再上传头像",icon:"none"})}async function U(){if(F.value.real_name.trim())if(/^1\d{10}$/.test(F.value.phone.trim())){T.value=!0;try{const a={real_name:F.value.real_name.trim(),phone:F.value.phone.trim(),avatar_url:F.value.avatar_url||void 0};C.value&&await V(a),j({real_name:a.real_name,phone:a.phone,avatar_url:a.avatar_url}),f({title:"保存成功",icon:"success"})}catch(a){f({title:(null==a?void 0:a.message)||"保存失败",icon:"none"})}finally{T.value=!1}}else f({title:"请填写11位手机号",icon:"none"});else f({title:"请填写姓名",icon:"none"})}return l(()=>{!async function(){x.value=!0,C.value=!!n(u.accessToken);try{if(C.value)try{const a=await g();F.value.real_name=a.real_name||"",F.value.phone=a.phone||"",F.value.avatar_url=a.avatar_url||""}catch{const a=w();a&&I(a)}else{const a=w();a&&I(a)}}finally{x.value=!1}}()}),(a,e)=>{const l=r,n=i,u=_,f=d,h=m;return o(),s(l,{class:"page"},{default:t(()=>[x.value?(o(),s(l,{key:0,class:"loading"},{default:t(()=>[c("加载中…")]),_:1})):(o(),s(l,{key:1,class:"content"},{default:t(()=>[v(l,{class:"avatar-block"},{default:t(()=>[v(l,{class:"avatar-wrap",onClick:P},{default:t(()=>[F.value.avatar_url?(o(),s(n,{key:0,class:"avatar",src:F.value.avatar_url,mode:"aspectFill"},null,8,["src"])):(o(),s(l,{key:1,class:"avatar placeholder"})),v(l,{class:"avatar-tip"},{default:t(()=>[c(p(C.value?"点击更换头像":"登录后可上传头像"),1)]),_:1})]),_:1})]),_:1}),v(l,{class:"card"},{default:t(()=>[v(l,{class:"row"},{default:t(()=>[v(u,{class:"label"},{default:t(()=>[c("姓名")]),_:1}),v(f,{modelValue:F.value.real_name,"onUpdate:modelValue":e[0]||(e[0]=a=>F.value.real_name=a),class:"input",placeholder:"必填","placeholder-class":"ph"},null,8,["modelValue"])]),_:1}),v(l,{class:"row last"},{default:t(()=>[v(u,{class:"label"},{default:t(()=>[c("手机号")]),_:1}),v(f,{modelValue:F.value.phone,"onUpdate:modelValue":e[1]||(e[1]=a=>F.value.phone=a),class:"input",type:"number",maxlength:"11",placeholder:"必填","placeholder-class":"ph"},null,8,["modelValue"])]),_:1})]),_:1}),v(h,{class:"btn",disabled:T.value,onClick:U},{default:t(()=>[c(p(T.value?"保存中…":"保存"),1)]),_:1},8,["disabled"])]),_:1}))]),_:1})}}}),[["__scopeId","data-v-e7e2a998"]]);export{T as default};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
import{d as a,e as s,o as t,N as l,O as e,j as c,k as n,s as i,m as o,n as u,p as r,t as d,u as f,x as m,F as _,y as v,B as p,v as y,C as k,D as g,H as h,J as C}from"./index-Ct6P_vam.js";import{a as b,g as j}from"./content.BpyUCHA_.js";import{P as w}from"./poster.DLiVsUXX.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const A=x(a({__name:"index",setup(a){const x=s(!0),A=s([]);async function F(){x.value=!0;try{const[a,s]=await Promise.all([b(),j().catch(()=>null)]),t=Array.isArray(a)?a:[],l=function(a){const s={};for(const t of(null==a?void 0:a.district)??[]){const a=(t.value||"").trim();a&&(s[a]=(t.label||"").trim()||a)}return s}(s);A.value=function(a,s){return a.map(a=>{const t=(a.district||"").trim(),l=t?s[t]??t:"";return{id:a.id,name:a.name||"未命名场馆",district:l,cover_image:a.cover_image||null,liveCount:100+Math.floor(9900*Math.random())}}).sort((a,s)=>s.liveCount-a.liveCount)}(t,l)}catch(a){i({title:(null==a?void 0:a.message)||"加载失败",icon:"none"}),A.value=[]}finally{x.value=!1}}return t(()=>{F()}),l(async()=>{try{await F()}finally{e()}}),(a,s)=>{const t=o,l=d,e=k;return u(),c(t,{class:"page"},{default:n(()=>[r(t,{class:"section-title"},{default:n(()=>[r(t,{class:"bar"}),r(l,{class:"title"},{default:n(()=>[f("今日客流量统计")]),_:1})]),_:1}),r(l,{class:"tip"},{default:n(()=>[f("场馆信息来自平台数据;右侧人数为演示用随机值,每次进入或下拉刷新会重新计算,并按人数从高到低排序。")]),_:1}),x.value&&!A.value.length?(u(),c(t,{key:0,class:"state"},{default:n(()=>[f("加载中…")]),_:1})):A.value.length?(u(),c(t,{key:2,class:"list"},{default:n(()=>[(u(!0),m(_,null,v(A.value,(a,s)=>(u(),c(t,{key:a.id,class:p(["row",{"is-top1":0===s,"is-top2":1===s,"is-top3":2===s}]),onClick:s=>{var t;(t=a.id)&&C({url:`/pages/venue/detail?id=${t}`})}},{default:n(()=>[r(t,{class:"rank-wrap"},{default:n(()=>[s<3?(u(),c(t,{key:0,class:p(["medal","m"+(s+1)])},{default:n(()=>[f(y(s+1),1)]),_:2},1032,["class"])):(u(),c(l,{key:1,class:"rank-num"},{default:n(()=>[f(y(s+1),1)]),_:2},1024))]),_:2},1024),r(e,{class:"thumb",src:a.cover_image||g(w),mode:"aspectFill"},null,8,["src"]),r(t,{class:"mid"},{default:n(()=>[r(l,{class:"name"},{default:n(()=>[f(y(a.name),1)]),_:2},1024),a.district?(u(),c(l,{key:0,class:"district"},{default:n(()=>[f(y(a.district),1)]),_:2},1024)):h("",!0)]),_:2},1024),r(t,{class:"count-block"},{default:n(()=>[r(l,{class:"count-label"},{default:n(()=>[f("实时人数")]),_:1}),r(t,{class:"count-row"},{default:n(()=>[r(l,{class:"count"},{default:n(()=>[f(y(a.liveCount.toLocaleString()),1)]),_:2},1024),r(l,{class:"unit"},{default:n(()=>[f("人")]),_:1})]),_:2},1024)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})):(u(),c(t,{key:1,class:"state muted"},{default:n(()=>[f("暂无已上架场馆")]),_:1})),r(t,{class:"bottom-safe"})]),_:1})}}}),[["__scopeId","data-v-3670ed21"]]);export{A as default};
|
||||
@ -0,0 +1 @@
|
||||
import{d as a,e as s,o as t,N as l,O as e,j as c,k as n,s as i,m as o,n as u,p as r,t as d,u as m,x as f,F as _,y as v,B as p,v as y,C as k,D as g,H as h,J as C}from"./index-_pXctLR1.js";import{a as b,g as j}from"./content.BpoHdgiW.js";import{P as w}from"./poster.DLiVsUXX.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const A=x(a({__name:"index",setup(a){const x=s(!0),A=s([]);async function F(){x.value=!0;try{const[a,s]=await Promise.all([b(),j().catch(()=>null)]),t=Array.isArray(a)?a:[],l=function(a){const s={};for(const t of(null==a?void 0:a.district)??[]){const a=(t.value||"").trim();a&&(s[a]=(t.label||"").trim()||a)}return s}(s);A.value=function(a,s){return a.map(a=>{const t=(a.district||"").trim(),l=t?s[t]??t:"";return{id:a.id,name:a.name||"未命名场馆",district:l,cover_image:a.cover_image||null,liveCount:100+Math.floor(9900*Math.random())}}).sort((a,s)=>s.liveCount-a.liveCount)}(t,l)}catch(a){i({title:(null==a?void 0:a.message)||"加载失败",icon:"none"}),A.value=[]}finally{x.value=!1}}return t(()=>{F()}),l(async()=>{try{await F()}finally{e()}}),(a,s)=>{const t=o,l=d,e=k;return u(),c(t,{class:"page"},{default:n(()=>[r(t,{class:"section-title"},{default:n(()=>[r(t,{class:"bar"}),r(l,{class:"title"},{default:n(()=>[m("今日客流量统计")]),_:1})]),_:1}),x.value&&!A.value.length?(u(),c(t,{key:0,class:"state"},{default:n(()=>[m("加载中…")]),_:1})):A.value.length?(u(),c(t,{key:2,class:"list"},{default:n(()=>[(u(!0),f(_,null,v(A.value,(a,s)=>(u(),c(t,{key:a.id,class:p(["row",{"is-top1":0===s,"is-top2":1===s,"is-top3":2===s}]),onClick:s=>{var t;(t=a.id)&&C({url:`/pages/venue/detail?id=${t}`})}},{default:n(()=>[r(t,{class:"rank-wrap"},{default:n(()=>[s<3?(u(),c(t,{key:0,class:p(["medal","m"+(s+1)])},{default:n(()=>[m(y(s+1),1)]),_:2},1032,["class"])):(u(),c(l,{key:1,class:"rank-num"},{default:n(()=>[m(y(s+1),1)]),_:2},1024))]),_:2},1024),r(e,{class:"thumb",src:a.cover_image||g(w),mode:"aspectFill"},null,8,["src"]),r(t,{class:"mid"},{default:n(()=>[r(l,{class:"name"},{default:n(()=>[m(y(a.name),1)]),_:2},1024),a.district?(u(),c(l,{key:0,class:"district"},{default:n(()=>[m(y(a.district),1)]),_:2},1024)):h("",!0)]),_:2},1024),r(t,{class:"count-block"},{default:n(()=>[r(l,{class:"count-label"},{default:n(()=>[m("实时人数")]),_:1}),r(t,{class:"count-row"},{default:n(()=>[r(l,{class:"count"},{default:n(()=>[m(y(a.liveCount.toLocaleString()),1)]),_:2},1024),r(l,{class:"unit"},{default:n(()=>[m("人")]),_:1})]),_:2},1024)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})):(u(),c(t,{key:1,class:"state muted"},{default:n(()=>[m("暂无已上架场馆")]),_:1})),r(t,{class:"bottom-safe"})]),_:1})}}}),[["__scopeId","data-v-84e06233"]]);export{A as default};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as a,e,f as l,o as t,$ as s,w as u,j as d,k as v,a6 as c,m as n,n as r,p as i,t as o,u as f,B as h,v as _,a7 as x,G as y,x as m,F as p,y as g}from"./index-Ct6P_vam.js";import{_ as k}from"./_plugin-vue_export-helper.BCo6x5W8.js";const S="trafficLineChart",w=k(a({__name:"index",setup(a){const k=e("week"),w={week:[{date:"04-03",value:12358},{date:"04-04",value:15540},{date:"04-05",value:14200},{date:"04-06",value:18680},{date:"04-07",value:14820},{date:"04-08",value:20550},{date:"04-09",value:32100}],month:[{date:"04-01",value:12800},{date:"04-05",value:18800},{date:"04-10",value:17600},{date:"04-15",value:22900},{date:"04-20",value:19600},{date:"04-25",value:26400},{date:"04-30",value:30100}],year:[{date:"01月",value:268e3},{date:"03月",value:292e3},{date:"05月",value:318e3},{date:"07月",value:346e3},{date:"09月",value:332e3},{date:"11月",value:368e3},{date:"12月",value:392e3}]},b=l(()=>w[k.value]),T=l(()=>{var a,e;return`${(null==(a=b.value[0])?void 0:a.date)||"-"} 至 ${(null==(e=b.value[b.value.length-1])?void 0:e.date)||"-"}`}),C=l(()=>b.value.reduce((a,e)=>e.value>a.value?e:a,b.value[0]));function F(){const a=b.value;if(!a.length)return;const e=c(S),l=24,t=18,s=24,u=18,d=260,v=Math.min(...a.map(a=>a.value)),n=Math.max(...a.map(a=>a.value)),r=Math.max(1,n-v),i=680-u-t,o=d-l-s;e.clearRect(0,0,680,d);const f=e.createLinearGradient(0,l,0,d);f.addColorStop(0,"rgba(5,201,172,0.35)"),f.addColorStop(1,"rgba(5,201,172,0.02)");const h=a.map((e,t)=>({x:u+i*t/Math.max(1,a.length-1),y:l+(n-e.value)/r*o,value:e.value,date:e.date}));e.beginPath(),h.forEach((a,l)=>0===l?e.moveTo(a.x,a.y):e.lineTo(a.x,a.y)),e.lineTo(h[h.length-1].x,252),e.lineTo(h[0].x,252),e.closePath(),e.setFillStyle(f),e.fill(),e.beginPath(),h.forEach((a,l)=>0===l?e.moveTo(a.x,a.y):e.lineTo(a.x,a.y)),e.setStrokeStyle("#05c9ac"),e.setLineWidth(5),e.stroke(),e.setFillStyle("#ff7d00"),h.forEach(a=>{e.beginPath(),e.arc(a.x,a.y,6,0,2*Math.PI),e.fill(),e.setFillStyle("#4e5969"),e.setFontSize(20),e.fillText(a.value.toLocaleString(),a.x-34,a.y-12),e.setFillStyle("#ff7d00")}),e.draw()}return t(async()=>{await s(),F()}),u(k,async()=>{await s(),F()}),(a,e)=>{const l=n,t=o,s=x;return r(),d(l,{class:"page"},{default:v(()=>[i(l,{class:"section-title"},{default:v(()=>[i(l,{class:"bar"}),i(t,{class:"title"},{default:v(()=>[f("全市参观人数")]),_:1}),i(l,{class:"period"},{default:v(()=>[i(t,{class:h({active:"week"===k.value}),onClick:e[0]||(e[0]=a=>k.value="week")},{default:v(()=>[f("周")]),_:1},8,["class"]),i(t,{class:h({active:"month"===k.value}),onClick:e[1]||(e[1]=a=>k.value="month")},{default:v(()=>[f("月")]),_:1},8,["class"]),i(t,{class:h({active:"year"===k.value}),onClick:e[2]||(e[2]=a=>k.value="year")},{default:v(()=>[f("年")]),_:1},8,["class"])]),_:1})]),_:1}),i(l,{class:"date-range"},{default:v(()=>[f(_(T.value),1)]),_:1}),i(l,{class:"chart-card"},{default:v(()=>[i(s,{"canvas-id":S,id:S,class:"chart-canvas",style:y("width:680rpx;height:260rpx;")},null,8,["style"]),i(l,{class:"x-axis"},{default:v(()=>[(r(!0),m(p,null,g(b.value,a=>(r(),d(t,{key:a.date},{default:v(()=>[f(_(a.date),1)]),_:2},1024))),128))]),_:1})]),_:1}),i(l,{class:"list-card"},{default:v(()=>[i(l,{class:"list-title"},{default:v(()=>[f("参观人数列表")]),_:1}),(r(!0),m(p,null,g(b.value,a=>(r(),d(l,{key:a.date,class:"row"},{default:v(()=>{var e;return[i(t,{class:"d"},{default:v(()=>[f(_(a.date),1)]),_:2},1024),i(t,{class:h(["c",{hot:a.date===(null==(e=C.value)?void 0:e.date)}])},{default:v(()=>{return[f(_((e=a.value,`${e.toLocaleString()}人`)),1)];var e}),_:2},1032,["class"])]}),_:2},1024))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-bc58d322"]]);export{w as default};
|
||||
import{d as a,e,f as l,o as t,$ as s,w as u,j as d,k as v,a6 as c,m as n,n as r,p as i,t as o,u as f,B as h,v as _,a7 as x,G as y,x as m,F as p,y as g}from"./index-_pXctLR1.js";import{_ as k}from"./_plugin-vue_export-helper.BCo6x5W8.js";const S="trafficLineChart",w=k(a({__name:"index",setup(a){const k=e("week"),w={week:[{date:"04-03",value:12358},{date:"04-04",value:15540},{date:"04-05",value:14200},{date:"04-06",value:18680},{date:"04-07",value:14820},{date:"04-08",value:20550},{date:"04-09",value:32100}],month:[{date:"04-01",value:12800},{date:"04-05",value:18800},{date:"04-10",value:17600},{date:"04-15",value:22900},{date:"04-20",value:19600},{date:"04-25",value:26400},{date:"04-30",value:30100}],year:[{date:"01月",value:268e3},{date:"03月",value:292e3},{date:"05月",value:318e3},{date:"07月",value:346e3},{date:"09月",value:332e3},{date:"11月",value:368e3},{date:"12月",value:392e3}]},b=l(()=>w[k.value]),T=l(()=>{var a,e;return`${(null==(a=b.value[0])?void 0:a.date)||"-"} 至 ${(null==(e=b.value[b.value.length-1])?void 0:e.date)||"-"}`}),C=l(()=>b.value.reduce((a,e)=>e.value>a.value?e:a,b.value[0]));function F(){const a=b.value;if(!a.length)return;const e=c(S),l=24,t=18,s=24,u=18,d=260,v=Math.min(...a.map(a=>a.value)),n=Math.max(...a.map(a=>a.value)),r=Math.max(1,n-v),i=680-u-t,o=d-l-s;e.clearRect(0,0,680,d);const f=e.createLinearGradient(0,l,0,d);f.addColorStop(0,"rgba(5,201,172,0.35)"),f.addColorStop(1,"rgba(5,201,172,0.02)");const h=a.map((e,t)=>({x:u+i*t/Math.max(1,a.length-1),y:l+(n-e.value)/r*o,value:e.value,date:e.date}));e.beginPath(),h.forEach((a,l)=>0===l?e.moveTo(a.x,a.y):e.lineTo(a.x,a.y)),e.lineTo(h[h.length-1].x,252),e.lineTo(h[0].x,252),e.closePath(),e.setFillStyle(f),e.fill(),e.beginPath(),h.forEach((a,l)=>0===l?e.moveTo(a.x,a.y):e.lineTo(a.x,a.y)),e.setStrokeStyle("#05c9ac"),e.setLineWidth(5),e.stroke(),e.setFillStyle("#ff7d00"),h.forEach(a=>{e.beginPath(),e.arc(a.x,a.y,6,0,2*Math.PI),e.fill(),e.setFillStyle("#4e5969"),e.setFontSize(20),e.fillText(a.value.toLocaleString(),a.x-34,a.y-12),e.setFillStyle("#ff7d00")}),e.draw()}return t(async()=>{await s(),F()}),u(k,async()=>{await s(),F()}),(a,e)=>{const l=n,t=o,s=x;return r(),d(l,{class:"page"},{default:v(()=>[i(l,{class:"section-title"},{default:v(()=>[i(l,{class:"bar"}),i(t,{class:"title"},{default:v(()=>[f("全市参观人数")]),_:1}),i(l,{class:"period"},{default:v(()=>[i(t,{class:h({active:"week"===k.value}),onClick:e[0]||(e[0]=a=>k.value="week")},{default:v(()=>[f("周")]),_:1},8,["class"]),i(t,{class:h({active:"month"===k.value}),onClick:e[1]||(e[1]=a=>k.value="month")},{default:v(()=>[f("月")]),_:1},8,["class"]),i(t,{class:h({active:"year"===k.value}),onClick:e[2]||(e[2]=a=>k.value="year")},{default:v(()=>[f("年")]),_:1},8,["class"])]),_:1})]),_:1}),i(l,{class:"date-range"},{default:v(()=>[f(_(T.value),1)]),_:1}),i(l,{class:"chart-card"},{default:v(()=>[i(s,{"canvas-id":S,id:S,class:"chart-canvas",style:y("width:680rpx;height:260rpx;")},null,8,["style"]),i(l,{class:"x-axis"},{default:v(()=>[(r(!0),m(p,null,g(b.value,a=>(r(),d(t,{key:a.date},{default:v(()=>[f(_(a.date),1)]),_:2},1024))),128))]),_:1})]),_:1}),i(l,{class:"list-card"},{default:v(()=>[i(l,{class:"list-title"},{default:v(()=>[f("参观人数列表")]),_:1}),(r(!0),m(p,null,g(b.value,a=>(r(),d(l,{key:a.date,class:"row"},{default:v(()=>{var e;return[i(t,{class:"d"},{default:v(()=>[f(_(a.date),1)]),_:2},1024),i(t,{class:h(["c",{hot:a.date===(null==(e=C.value)?void 0:e.date)}])},{default:v(()=>{return[f(_((e=a.value,`${e.toLocaleString()}人`)),1)];var e}),_:2},1032,["class"])]}),_:2},1024))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-bc58d322"]]);export{w as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue