master
parent
6d69070014
commit
77da5a03ae
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-DUb5nbkg.js";import{t as m}from"./datetime-3T8f3S0H.js";import{t as h}from"./listTable-Djel28e5.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-B7XKDmVs.js";import{t as m}from"./datetime-3T8f3S0H.js";import{t as h}from"./listTable-Djel28e5.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
@ -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,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-DUb5nbkg.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:`SZKP 管理后台登录`,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};
|
||||
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-B7XKDmVs.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:`SZKP 管理后台登录`,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
@ -1 +1 @@
|
||||
import{it as e,n as t}from"./axios-CiYFffbI.js";import{E as n,G as r,I as i,V as a,Y as o,_ as s,d as c,it as l,kt as u,l as d,p as f,ut as p,v as m,y as h}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{o as g}from"./index-DUb5nbkg.js";import{t as _}from"./vue-quill.snow-BT2oa_xL.js";function v(e){let t=e.parentNode;if(t){for(;e.firstChild;)t.insertBefore(e.firstChild,e);t.removeChild(e)}}function y(e){if(!e?.trim())return``;if(typeof document>`u`)return e;let t=document.createElement(`div`);t.innerHTML=e,t.querySelectorAll(`*`).forEach(e=>{e.removeAttribute(`style`),e.removeAttribute(`class`)}),t.querySelectorAll(`font`).forEach(e=>v(e));let n=0;for(;n<5;){let e=t.querySelectorAll(`span`),r=!1;if(e.forEach(e=>{e.attributes.length===0&&(v(e),r=!0)}),!r)break;n++}return t.innerHTML}var b={class:`rich-editor-field`},x=g(h({__name:`RichEditorField`,props:n({editorOptions:{},fieldKey:{},minHeight:{default:180}},{modelValue:{default:``},modelModifiers:{}}),emits:[`update:modelValue`],setup(n){e(e=>({f58dc364:v.value}));let h=r(n,`modelValue`),g=n,v=d(()=>`${g.minHeight}px`),x=l(!1),S=l(0),C=l(``);function w(){x.value?(h.value=C.value,S.value+=1,x.value=!1):(C.value=h.value||``,x.value=!0)}function T(){let e=y(h.value||``);h.value=e,C.value=e,S.value+=1,t.success(`已清除样式`)}return(e,t)=>{let r=a(`a-button`),l=a(`a-space`),d=a(`a-textarea`);return i(),f(`div`,b,[m(l,{style:{"margin-bottom":`8px`,"flex-wrap":`wrap`}},{default:o(()=>[m(r,{size:`small`,onClick:w},{default:o(()=>[s(u(x.value?`返回可视化`:`查看源代码`),1)]),_:1}),m(r,{size:`small`,onClick:T},{default:o(()=>[...t[2]||=[s(`一键清除样式`,-1)]]),_:1})]),_:1}),x.value?(i(),c(d,{key:0,modelValue:C.value,"onUpdate:modelValue":t[0]||=e=>C.value=e,"auto-size":{minRows:14,maxRows:32},placeholder:`HTML 源代码`,style:{"font-family":`ui-monospace, monospace`,"font-size":`12px`}},null,8,[`modelValue`])):(i(),c(p(_),{key:`${n.fieldKey}-${S.value}`,content:h.value,"onUpdate:content":t[1]||=e=>h.value=e,"content-type":`html`,theme:`snow`,options:n.editorOptions},null,8,[`content`,`options`]))])}}}),[[`__scopeId`,`data-v-8ed53dd2`]]);export{x as t};
|
||||
import{it as e,n as t}from"./axios-CiYFffbI.js";import{E as n,G as r,I as i,V as a,Y as o,_ as s,d as c,it as l,kt as u,l as d,p as f,ut as p,v as m,y as h}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{o as g}from"./index-B7XKDmVs.js";import{t as _}from"./vue-quill.snow-BT2oa_xL.js";function v(e){let t=e.parentNode;if(t){for(;e.firstChild;)t.insertBefore(e.firstChild,e);t.removeChild(e)}}function y(e){if(!e?.trim())return``;if(typeof document>`u`)return e;let t=document.createElement(`div`);t.innerHTML=e,t.querySelectorAll(`*`).forEach(e=>{e.removeAttribute(`style`),e.removeAttribute(`class`)}),t.querySelectorAll(`font`).forEach(e=>v(e));let n=0;for(;n<5;){let e=t.querySelectorAll(`span`),r=!1;if(e.forEach(e=>{e.attributes.length===0&&(v(e),r=!0)}),!r)break;n++}return t.innerHTML}var b={class:`rich-editor-field`},x=g(h({__name:`RichEditorField`,props:n({editorOptions:{},fieldKey:{},minHeight:{default:180}},{modelValue:{default:``},modelModifiers:{}}),emits:[`update:modelValue`],setup(n){e(e=>({f58dc364:v.value}));let h=r(n,`modelValue`),g=n,v=d(()=>`${g.minHeight}px`),x=l(!1),S=l(0),C=l(``);function w(){x.value?(h.value=C.value,S.value+=1,x.value=!1):(C.value=h.value||``,x.value=!0)}function T(){let e=y(h.value||``);h.value=e,C.value=e,S.value+=1,t.success(`已清除样式`)}return(e,t)=>{let r=a(`a-button`),l=a(`a-space`),d=a(`a-textarea`);return i(),f(`div`,b,[m(l,{style:{"margin-bottom":`8px`,"flex-wrap":`wrap`}},{default:o(()=>[m(r,{size:`small`,onClick:w},{default:o(()=>[s(u(x.value?`返回可视化`:`查看源代码`),1)]),_:1}),m(r,{size:`small`,onClick:T},{default:o(()=>[...t[2]||=[s(`一键清除样式`,-1)]]),_:1})]),_:1}),x.value?(i(),c(d,{key:0,modelValue:C.value,"onUpdate:modelValue":t[0]||=e=>C.value=e,"auto-size":{minRows:14,maxRows:32},placeholder:`HTML 源代码`,style:{"font-family":`ui-monospace, monospace`,"font-size":`12px`}},null,8,[`modelValue`])):(i(),c(p(_),{key:`${n.fieldKey}-${S.value}`,content:h.value,"onUpdate:content":t[1]||=e=>h.value=e,"content-type":`html`,theme:`snow`,options:n.editorOptions},null,8,[`content`,`options`]))])}}}),[[`__scopeId`,`data-v-8ed53dd2`]]);export{x as t};
|
||||
@ -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-DUb5nbkg.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-B7XKDmVs.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-DUb5nbkg.js";import{n as h,t as g}from"./datetime-3T8f3S0H.js";import{t as _}from"./listTable-Djel28e5.js";import{t as v}from"./reservationStatus-JhCfFMzX.js";var y={class:`verify-list-toolbar`},b=m(f({__name:`Verify`,setup(f){let m=s(!1),b=s([]),x=s(``),S=s(!1),C=s(`all`),w=s(``),T=s([]);async function E(){m.value=!0;try{let{data:e}=await p.get(`/reservations`,{params:{status:C.value,keyword:w.value||void 0,start_date:T.value?.[0]||void 0,end_date:T.value?.[1]||void 0}});b.value=e}catch(t){e.error(t?.response?.data?.message??`加载预约列表失败`)}finally{m.value=!1}}function D(){E()}function O(){C.value=`all`,w.value=``,T.value=[],E()}async function k(){if(!x.value){e.warning(`请输入二维码 token`);return}S.value=!0;try{await p.post(`/reservations/verify`,{qr_token:x.value}),e.success(`核销成功`),x.value=``,await E()}catch(t){e.error(t?.response?.data?.message??`核销失败`)}finally{S.value=!1}}return n(E),(e,n)=>{let s=r(`a-alert`),f=r(`a-input`),p=r(`a-button`),A=r(`a-space`),j=r(`a-radio`),M=r(`a-radio-group`),N=r(`a-range-picker`),P=r(`a-table-column`),F=r(`a-tag`),I=r(`a-table`),L=r(`a-card`);return t(),o(L,{title:`活动管理 / 现场核销`},{default:i(()=>[d(A,{direction:`vertical`,fill:``},{default:i(()=>[d(s,null,{default:i(()=>[...n[4]||=[a(` 输入预约二维码 token 进行核销。场馆管理员仅可核销自己绑定场馆的预约。 `,-1)]]),_:1}),d(A,{wrap:``,size:12},{default:i(()=>[d(f,{modelValue:x.value,"onUpdate:modelValue":n[0]||=e=>x.value=e,style:{width:`min(100%, 420px)`},placeholder:`请输入二维码 token`,"allow-clear":``},null,8,[`modelValue`]),d(p,{type:`primary`,loading:S.value,onClick:k},{default:i(()=>[...n[5]||=[a(`立即核销`,-1)]]),_:1},8,[`loading`])]),_:1}),l(`div`,y,[d(A,{wrap:``,size:12},{default:i(()=>[d(M,{modelValue:C.value,"onUpdate:modelValue":n[1]||=e=>C.value=e,type:`button`,size:`small`,onChange:E},{default:i(()=>[d(j,{value:`all`},{default:i(()=>[...n[6]||=[a(`全部`,-1)]]),_:1}),d(j,{value:`pending`},{default:i(()=>[...n[7]||=[a(`待核销`,-1)]]),_:1}),d(j,{value:`verified`},{default:i(()=>[...n[8]||=[a(`已核销`,-1)]]),_:1}),d(j,{value:`cancelled`},{default:i(()=>[...n[9]||=[a(`已取消`,-1)]]),_:1})]),_:1},8,[`modelValue`]),d(f,{modelValue:w.value,"onUpdate:modelValue":n[2]||=e=>w.value=e,placeholder:`报名人/手机/身份证/token`,"allow-clear":``,style:{width:`220px`}},null,8,[`modelValue`]),d(N,{modelValue:T.value,"onUpdate:modelValue":n[3]||=e=>T.value=e,style:{width:`260px`}},null,8,[`modelValue`]),d(p,{type:`primary`,onClick:D},{default:i(()=>[...n[10]||=[a(`查询`,-1)]]),_:1}),d(p,{onClick:O},{default:i(()=>[...n[11]||=[a(`重置`,-1)]]),_:1}),d(p,{onClick:E},{default:i(()=>[...n[12]||=[a(`刷新列表`,-1)]]),_:1})]),_:1})]),d(I,{class:`list-data-table verify-table`,scroll:{x:u(_)},data:b.value,loading:m.value,"row-key":`id`,pagination:{pageSize:10,showTotal:!0}},{columns:i(()=>[d(P,{title:`ID`,"data-index":`id`,width:88}),d(P,{title:`活动`,width:240,"min-width":180,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.activity?.title??`-`),1)]),_:1}),d(P,{title:`场馆`,width:200,"min-width":160,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.venue?.name??`-`),1)]),_:1}),d(P,{title:`报名人`,"data-index":`visitor_name`,width:120,ellipsis:!0,tooltip:!0}),d(P,{title:`手机号`,"data-index":`visitor_phone`,width:130,ellipsis:!0,tooltip:!0}),d(P,{title:`身份证`,"data-index":`id_card`,width:180,ellipsis:!0,tooltip:!0}),d(P,{title:`预约票数`,width:100},{cell:i(({record:e})=>[a(c(e.ticket_count??1),1)]),_:1}),d(P,{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(P,{title:`状态`,width:100},{cell:i(({record:e})=>[d(F,{color:e.status===`verified`?`green`:e.status===`pending`?`arcoblue`:`gray`},{default:i(()=>[a(c(u(v)(e.status)),1)]),_:2},1032,[`color`])]),_:1}),d(P,{title:`预约时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.created_at)),1)]),_:1}),d(P,{title:`核销时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.verified_at)),1)]),_:1}),d(P,{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-07ab0f2b`]]);export{b 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-B7XKDmVs.js";import{n as h,t as g}from"./datetime-3T8f3S0H.js";import{t as _}from"./listTable-Djel28e5.js";import{t as v}from"./reservationStatus-JhCfFMzX.js";var y={class:`verify-list-toolbar`},b=m(f({__name:`Verify`,setup(f){let m=s(!1),b=s([]),x=s(``),S=s(!1),C=s(`all`),w=s(``),T=s([]);async function E(){m.value=!0;try{let{data:e}=await p.get(`/reservations`,{params:{status:C.value,keyword:w.value||void 0,start_date:T.value?.[0]||void 0,end_date:T.value?.[1]||void 0}});b.value=e}catch(t){e.error(t?.response?.data?.message??`加载预约列表失败`)}finally{m.value=!1}}function D(){E()}function O(){C.value=`all`,w.value=``,T.value=[],E()}async function k(){if(!x.value){e.warning(`请输入二维码 token`);return}S.value=!0;try{await p.post(`/reservations/verify`,{qr_token:x.value}),e.success(`核销成功`),x.value=``,await E()}catch(t){e.error(t?.response?.data?.message??`核销失败`)}finally{S.value=!1}}return n(E),(e,n)=>{let s=r(`a-alert`),f=r(`a-input`),p=r(`a-button`),A=r(`a-space`),j=r(`a-radio`),M=r(`a-radio-group`),N=r(`a-range-picker`),P=r(`a-table-column`),F=r(`a-tag`),I=r(`a-table`),L=r(`a-card`);return t(),o(L,{title:`活动管理 / 现场核销`},{default:i(()=>[d(A,{direction:`vertical`,fill:``},{default:i(()=>[d(s,null,{default:i(()=>[...n[4]||=[a(` 输入预约二维码 token 进行核销。场馆管理员仅可核销自己绑定场馆的预约。 `,-1)]]),_:1}),d(A,{wrap:``,size:12},{default:i(()=>[d(f,{modelValue:x.value,"onUpdate:modelValue":n[0]||=e=>x.value=e,style:{width:`min(100%, 420px)`},placeholder:`请输入二维码 token`,"allow-clear":``},null,8,[`modelValue`]),d(p,{type:`primary`,loading:S.value,onClick:k},{default:i(()=>[...n[5]||=[a(`立即核销`,-1)]]),_:1},8,[`loading`])]),_:1}),l(`div`,y,[d(A,{wrap:``,size:12},{default:i(()=>[d(M,{modelValue:C.value,"onUpdate:modelValue":n[1]||=e=>C.value=e,type:`button`,size:`small`,onChange:E},{default:i(()=>[d(j,{value:`all`},{default:i(()=>[...n[6]||=[a(`全部`,-1)]]),_:1}),d(j,{value:`pending`},{default:i(()=>[...n[7]||=[a(`待核销`,-1)]]),_:1}),d(j,{value:`verified`},{default:i(()=>[...n[8]||=[a(`已核销`,-1)]]),_:1}),d(j,{value:`cancelled`},{default:i(()=>[...n[9]||=[a(`已取消`,-1)]]),_:1})]),_:1},8,[`modelValue`]),d(f,{modelValue:w.value,"onUpdate:modelValue":n[2]||=e=>w.value=e,placeholder:`报名人/手机/身份证/token`,"allow-clear":``,style:{width:`220px`}},null,8,[`modelValue`]),d(N,{modelValue:T.value,"onUpdate:modelValue":n[3]||=e=>T.value=e,style:{width:`260px`}},null,8,[`modelValue`]),d(p,{type:`primary`,onClick:D},{default:i(()=>[...n[10]||=[a(`查询`,-1)]]),_:1}),d(p,{onClick:O},{default:i(()=>[...n[11]||=[a(`重置`,-1)]]),_:1}),d(p,{onClick:E},{default:i(()=>[...n[12]||=[a(`刷新列表`,-1)]]),_:1})]),_:1})]),d(I,{class:`list-data-table verify-table`,scroll:{x:u(_)},data:b.value,loading:m.value,"row-key":`id`,pagination:{pageSize:10,showTotal:!0}},{columns:i(()=>[d(P,{title:`ID`,"data-index":`id`,width:88}),d(P,{title:`活动`,width:240,"min-width":180,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.activity?.title??`-`),1)]),_:1}),d(P,{title:`场馆`,width:200,"min-width":160,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(e.venue?.name??`-`),1)]),_:1}),d(P,{title:`报名人`,"data-index":`visitor_name`,width:120,ellipsis:!0,tooltip:!0}),d(P,{title:`手机号`,"data-index":`visitor_phone`,width:130,ellipsis:!0,tooltip:!0}),d(P,{title:`身份证`,"data-index":`id_card`,width:180,ellipsis:!0,tooltip:!0}),d(P,{title:`预约票数`,width:100},{cell:i(({record:e})=>[a(c(e.ticket_count??1),1)]),_:1}),d(P,{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(P,{title:`状态`,width:100},{cell:i(({record:e})=>[d(F,{color:e.status===`verified`?`green`:e.status===`pending`?`arcoblue`:`gray`},{default:i(()=>[a(c(u(v)(e.status)),1)]),_:2},1032,[`color`])]),_:1}),d(P,{title:`预约时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.created_at)),1)]),_:1}),d(P,{title:`核销时间`,width:175,ellipsis:!0,tooltip:!0},{cell:i(({record:e})=>[a(c(u(g)(e.verified_at)),1)]),_:1}),d(P,{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-07ab0f2b`]]);export{b 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-DUb5nbkg.js";import{n as m,t as h}from"./h5Http-CJGbyAGu.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-B7XKDmVs.js";import{n as m,t as h}from"./h5Http-CCovTImr.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};
|
||||
File diff suppressed because one or more lines are too long
@ -0,0 +1 @@
|
||||
import{t as e}from"./axios-CiYFffbI.js";var t=`szkp_h5_verify_token`,n=e.create({baseURL:`http://szkp-map.ali251.langye.net/api`,timeout:2e4});n.interceptors.request.use(e=>{let n=localStorage.getItem(t);return n&&(e.headers.Authorization=`Bearer ${n}`),e}),n.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(`/m/verify`)?window.location.replace(`${window.location.origin}/m/verify/login`):e.includes(`/verify`)&&window.location.replace(`${window.location.origin}/h5/verify/login`)}return Promise.reject(e)});export{n,t};
|
||||
@ -1 +0,0 @@
|
||||
import{t as e}from"./axios-CiYFffbI.js";var t=`szkp_h5_verify_token`,n=e.create({baseURL:`http://127.0.0.1:8000/api`,timeout:2e4});n.interceptors.request.use(e=>{let n=localStorage.getItem(t);return n&&(e.headers.Authorization=`Bearer ${n}`),e}),n.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(`/m/verify`)?window.location.replace(`${window.location.origin}/m/verify/login`):e.includes(`/verify`)&&window.location.replace(`${window.location.origin}/h5/verify/login`)}return Promise.reject(e)});export{n,t};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{h as t}from"./index-Bb3NhKfd.js";function i(i={}){return t.get("/h5/activities",i,{withAuth:!1})}function n(i){return t.get(`/h5/activities/${i}`,{},{withAuth:!1})}function e(){return t.get("/h5/venues",{},{withAuth:!1})}function u(i){return t.get(`/h5/venues/${i}`,{},{withAuth:!1})}function h(i){return t.get(`/h5/study-tours/${i}`,{},{withAuth:!1})}function r(){return t.get("/h5/study-tours",{},{withAuth:!1})}function s(i){return t.get(`/h5/activities/${i}/booking-info`,{},{withAuth:!1})}function o(i,n){return t.post(`/h5/activities/${i}/reservations`,n,{withAuth:!1})}function a(i){return t.get("/h5/my/reservations",{visitor_phone:i},{withAuth:!1})}function c(i,n){return t.get(`/h5/my/reservations/${i}`,{visitor_phone:n},{withAuth:!1})}function f(i,n){return t.post(`/h5/my/reservations/${i}/cancel`,{visitor_phone:n},{withAuth:!1})}export{i as a,r as b,a as c,f as d,n as e,s as f,e as g,o as h,c as i,h as j,u as k};
|
||||
import{h as t}from"./index-C46MzMfW.js";function i(i={}){return t.get("/h5/activities",i,{withAuth:!1})}function n(i){return t.get(`/h5/activities/${i}`,{},{withAuth:!1})}function e(){return t.get("/h5/venues",{},{withAuth:!1})}function u(i){return t.get(`/h5/venues/${i}`,{},{withAuth:!1})}function h(i){return t.get(`/h5/study-tours/${i}`,{},{withAuth:!1})}function r(){return t.get("/h5/study-tours",{},{withAuth:!1})}function s(i){return t.get(`/h5/activities/${i}/booking-info`,{},{withAuth:!1})}function o(i,n){return t.post(`/h5/activities/${i}/reservations`,n,{withAuth:!1})}function a(i){return t.get("/h5/my/reservations",{visitor_phone:i},{withAuth:!1})}function c(i,n){return t.get(`/h5/my/reservations/${i}`,{visitor_phone:n},{withAuth:!1})}function f(i,n){return t.post(`/h5/my/reservations/${i}/cancel`,{visitor_phone:n},{withAuth:!1})}export{i as a,r as b,a as c,f as d,n as e,s as f,e as g,o as h,c as i,h as j,u as k};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as l,r as a,J as e,a as s,b as u,p as t,m as n,n as r,t as d,S as v,A as o,C as i,u as c,v as _,F as f,x as m,q as g,K as p,H as b,e as h,L as y,E as k}from"./index-Bb3NhKfd.js";import{e as j}from"./content.Vcui7IWs.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const C=x(l({__name:"detail",setup(l){const x=a(null);function C(l,a){const e=l?l.slice(0,10):"",s=a?a.slice(0,10):"";return e||s?e&&s?`${e} - ${s}`:e||s:"日期待定"}function N(){var l,a,e,s,u,t,n,r,d,v;const o=Number((null==(l=x.value)?void 0:l.lat)??(null==(e=null==(a=x.value)?void 0:a.venue)?void 0:e.lat)??0),i=Number((null==(s=x.value)?void 0:s.lng)??(null==(t=null==(u=x.value)?void 0:u.venue)?void 0:t.lng)??0);o&&i?y({latitude:o,longitude:i,name:(null==(n=x.value)?void 0:n.title)||"活动地点",address:(null==(r=x.value)?void 0:r.address)||(null==(v=null==(d=x.value)?void 0:d.venue)?void 0:v.address)||""}):h({title:"暂无导航坐标",icon:"none"})}function $(){var l;(null==(l=x.value)?void 0:l.id)&&k({url:`/pages/activity/reserve?id=${x.value.id}`})}return e(async l=>{const a=Number((null==l?void 0:l.id)||0);a&&(x.value=await j(a))}),(l,a)=>{const e=t,h=o,y=g,k=p,j=v,F=b;return n(),s(e,{class:"page"},{default:u(()=>[r(e,{class:"head"},{default:u(()=>[d("活动详情")]),_:1}),r(j,{"scroll-y":"",class:"scroll"},{default:u(()=>{var l;return[r(e,{class:"hero"},{default:u(()=>{var l;return[(null==(l=x.value)?void 0:l.image)?(n(),s(h,{key:0,class:"cover",src:x.value.image,mode:"aspectFill"},null,8,["src"])):i("",!0),r(e,{class:"hero-mask"}),r(e,{class:"hero-bottom"},{default:u(()=>[r(e,{class:"hero-sub"},{default:u(()=>{var l;return[d(c((null==(l=x.value)?void 0:l.summary)||""),1)]}),_:1}),r(e,{class:"hero-join"},{default:u(()=>{var l;return[d("已预约"+c((null==(l=x.value)?void 0:l.registered_count)||0)+"人",1)]}),_:1})]),_:1})]}),_:1}),r(e,{class:"card"},{default:u(()=>[r(e,{class:"title"},{default:u(()=>{var l,a,e;return[d(c((null==(a=null==(l=x.value)?void 0:l.venue)?void 0:a.name)||"苏州")+" · "+c((null==(e=x.value)?void 0:e.title)||"-"),1)]}),_:1}),r(e,{class:"tags"},{default:u(()=>{var l;return[(n(!0),_(f,null,m((null==(l=x.value)?void 0:l.tags)||[],l=>(n(),s(y,{key:l,class:"tag"},{default:u(()=>[d(c(l),1)]),_:2},1024))),128))]}),_:1}),r(e,{class:"meta"},{default:u(()=>{var l,a;return[d(c(C(null==(l=x.value)?void 0:l.start_at,null==(a=x.value)?void 0:a.end_at)),1)]}),_:1}),r(e,{class:"meta"},{default:u(()=>{var l,a;return[d(c((null==(a=null==(l=x.value)?void 0:l.venue)?void 0:a.name)||"-"),1)]}),_:1}),r(e,{class:"meta"},{default:u(()=>{var l,a,e;return[d(c((null==(l=x.value)?void 0:l.address)||(null==(e=null==(a=x.value)?void 0:a.venue)?void 0:e.address)||"-"),1)]}),_:1}),r(e,{class:"summary"},{default:u(()=>{var l;return[d(c((null==(l=x.value)?void 0:l.summary)||""),1)]}),_:1})]),_:1}),r(e,{class:"card"},{default:u(()=>{var l;return[r(e,{class:"sec-title"},{default:u(()=>[d("活动详情")]),_:1}),r(k,{nodes:(null==(l=x.value)?void 0:l.detail_html)||""},null,8,["nodes"])]}),_:1}),(null==(l=x.value)?void 0:l.reservation_notice)?(n(),s(e,{key:0,class:"card"},{default:u(()=>[r(e,{class:"sec-title"},{default:u(()=>[d("预约须知")]),_:1}),r(e,{class:"notice"},{default:u(()=>{var l;return[d(c(null==(l=x.value)?void 0:l.reservation_notice),1)]}),_:1})]),_:1})):i("",!0),r(e,{class:"safe-bottom"})]}),_:1}),r(e,{class:"action-bar"},{default:u(()=>[r(F,{class:"btn ghost",onClick:N},{default:u(()=>[d("导航")]),_:1}),r(F,{class:"btn primary",onClick:$},{default:u(()=>[d("立即预约")]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-c11517b4"]]);export{C as default};
|
||||
import{d as l,r as a,J as e,a as s,b as u,p as t,m as n,n as r,t as d,S as v,A as o,C as i,u as c,v as _,F as f,x as m,q as g,K as p,H as b,e as h,L as y,E as k}from"./index-C46MzMfW.js";import{e as j}from"./content.77V1RU5a.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const C=x(l({__name:"detail",setup(l){const x=a(null);function C(l,a){const e=l?l.slice(0,10):"",s=a?a.slice(0,10):"";return e||s?e&&s?`${e} - ${s}`:e||s:"日期待定"}function N(){var l,a,e,s,u,t,n,r,d,v;const o=Number((null==(l=x.value)?void 0:l.lat)??(null==(e=null==(a=x.value)?void 0:a.venue)?void 0:e.lat)??0),i=Number((null==(s=x.value)?void 0:s.lng)??(null==(t=null==(u=x.value)?void 0:u.venue)?void 0:t.lng)??0);o&&i?y({latitude:o,longitude:i,name:(null==(n=x.value)?void 0:n.title)||"活动地点",address:(null==(r=x.value)?void 0:r.address)||(null==(v=null==(d=x.value)?void 0:d.venue)?void 0:v.address)||""}):h({title:"暂无导航坐标",icon:"none"})}function $(){var l;(null==(l=x.value)?void 0:l.id)&&k({url:`/pages/activity/reserve?id=${x.value.id}`})}return e(async l=>{const a=Number((null==l?void 0:l.id)||0);a&&(x.value=await j(a))}),(l,a)=>{const e=t,h=o,y=g,k=p,j=v,F=b;return n(),s(e,{class:"page"},{default:u(()=>[r(e,{class:"head"},{default:u(()=>[d("活动详情")]),_:1}),r(j,{"scroll-y":"",class:"scroll"},{default:u(()=>{var l;return[r(e,{class:"hero"},{default:u(()=>{var l;return[(null==(l=x.value)?void 0:l.image)?(n(),s(h,{key:0,class:"cover",src:x.value.image,mode:"aspectFill"},null,8,["src"])):i("",!0),r(e,{class:"hero-mask"}),r(e,{class:"hero-bottom"},{default:u(()=>[r(e,{class:"hero-sub"},{default:u(()=>{var l;return[d(c((null==(l=x.value)?void 0:l.summary)||""),1)]}),_:1}),r(e,{class:"hero-join"},{default:u(()=>{var l;return[d("已预约"+c((null==(l=x.value)?void 0:l.registered_count)||0)+"人",1)]}),_:1})]),_:1})]}),_:1}),r(e,{class:"card"},{default:u(()=>[r(e,{class:"title"},{default:u(()=>{var l,a,e;return[d(c((null==(a=null==(l=x.value)?void 0:l.venue)?void 0:a.name)||"苏州")+" · "+c((null==(e=x.value)?void 0:e.title)||"-"),1)]}),_:1}),r(e,{class:"tags"},{default:u(()=>{var l;return[(n(!0),_(f,null,m((null==(l=x.value)?void 0:l.tags)||[],l=>(n(),s(y,{key:l,class:"tag"},{default:u(()=>[d(c(l),1)]),_:2},1024))),128))]}),_:1}),r(e,{class:"meta"},{default:u(()=>{var l,a;return[d(c(C(null==(l=x.value)?void 0:l.start_at,null==(a=x.value)?void 0:a.end_at)),1)]}),_:1}),r(e,{class:"meta"},{default:u(()=>{var l,a;return[d(c((null==(a=null==(l=x.value)?void 0:l.venue)?void 0:a.name)||"-"),1)]}),_:1}),r(e,{class:"meta"},{default:u(()=>{var l,a,e;return[d(c((null==(l=x.value)?void 0:l.address)||(null==(e=null==(a=x.value)?void 0:a.venue)?void 0:e.address)||"-"),1)]}),_:1}),r(e,{class:"summary"},{default:u(()=>{var l;return[d(c((null==(l=x.value)?void 0:l.summary)||""),1)]}),_:1})]),_:1}),r(e,{class:"card"},{default:u(()=>{var l;return[r(e,{class:"sec-title"},{default:u(()=>[d("活动详情")]),_:1}),r(k,{nodes:(null==(l=x.value)?void 0:l.detail_html)||""},null,8,["nodes"])]}),_:1}),(null==(l=x.value)?void 0:l.reservation_notice)?(n(),s(e,{key:0,class:"card"},{default:u(()=>[r(e,{class:"sec-title"},{default:u(()=>[d("预约须知")]),_:1}),r(e,{class:"notice"},{default:u(()=>{var l;return[d(c(null==(l=x.value)?void 0:l.reservation_notice),1)]}),_:1})]),_:1})):i("",!0),r(e,{class:"safe-bottom"})]}),_:1}),r(e,{class:"action-bar"},{default:u(()=>[r(F,{class:"btn ghost",onClick:N},{default:u(()=>[d("导航")]),_:1}),r(F,{class:"btn primary",onClick:$},{default:u(()=>[d("立即预约")]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-c11517b4"]]);export{C as default};
|
||||
@ -1 +1 @@
|
||||
import{d as a,r as t,o as e,a as s,b as l,k as n,p as u,m as i,n as r,t as c,v as o,F as d,x as _,A as f,u as m,E as p}from"./index-Bb3NhKfd.js";import{a as v}from"./content.Vcui7IWs.js";import{_ as g}from"./_plugin-vue_export-helper.BCo6x5W8.js";const h=g(a({__name:"index",setup(a){const g=t([]),h=t(null);function M(a){if(!(null==a?void 0:a.start_at))return"活动进行中";const t=(new Date).getTime(),e=new Date(a.start_at).getTime(),s=a.end_at?new Date(a.end_at).getTime():e;return Number.isFinite(s)&&s<t?"活动已结束":e>t?"活动即将开始":"活动进行中"}function y(a){const t=Number(a);return Number.isFinite(t)?t:0}function b(a){if(!h.value)return"距离 --";const t=y((null==a?void 0:a.lat)||(null==a?void 0:a.venue_lat)),e=y((null==a?void 0:a.lng)||(null==a?void 0:a.venue_lng));if(!t||!e)return"距离 --";const s=function(a,t,e,s){const l=a=>a*Math.PI/180,n=l(e-a),u=l(s-t),i=Math.sin(n/2)*Math.sin(n/2)+Math.cos(l(a))*Math.cos(l(e))*Math.sin(u/2)*Math.sin(u/2);return 12742*Math.atan2(Math.sqrt(i),Math.sqrt(1-i))}(h.value.lat,h.value.lng,t,e);return Number.isFinite(s)?`距离 ${s.toFixed(1)}km`:"距离 --"}return e(async function(){const a=await v({page:1,page_size:20});g.value=(null==a?void 0:a.data)||[]}),e(async function(){try{const a=await new Promise((a,t)=>{n({type:"gcj02",success:a,fail:t})});h.value={lat:a.latitude,lng:a.longitude}}catch{h.value=null}}),(a,t)=>{const e=u,n=f;return i(),s(e,{class:"page"},{default:l(()=>[r(e,{class:"head"},{default:l(()=>[c("活动列表")]),_:1}),r(e,{class:"list"},{default:l(()=>[(i(!0),o(d,null,_(g.value,a=>(i(),s(e,{key:a.id,class:"item",onClick:t=>{return e=a.id,void p({url:`/pages/activity/detail?id=${e}`});var e}},{default:l(()=>[r(e,{class:"poster-wrap"},{default:l(()=>[a.image?(i(),s(n,{key:0,class:"poster",src:a.image,mode:"aspectFill"},null,8,["src"])):(i(),s(e,{key:1,class:"poster placeholder"})),r(e,{class:"status"},{default:l(()=>[c(m(M(a)),1)]),_:2},1024),r(e,{class:"joined"},{default:l(()=>[c("已报名 "+m(a.registered_count||0),1)]),_:2},1024)]),_:2},1024),r(e,{class:"body"},{default:l(()=>[r(e,{class:"title"},{default:l(()=>[c(m(a.title),1)]),_:2},1024),r(e,{class:"meta"},{default:l(()=>{return[c(m((t=a.start_at,t?String(t).slice(0,16).replace("T"," "):"时间待定")),1)];var t}),_:2},1024),r(e,{class:"meta"},{default:l(()=>[c(m(a.address||a.venue_name||"-"),1)]),_:2},1024),r(e,{class:"meta"},{default:l(()=>[c(m(b(a)),1)]),_:2},1024),r(e,{class:"bottom"},{default:l(()=>[r(e,{class:"price"},{default:l(()=>[c("免费")]),_:1}),r(e,{class:"btn"},{default:l(()=>[c("立即报名")]),_:1})]),_:1})]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-f10e1a23"]]);export{h as default};
|
||||
import{d as a,r as t,o as e,a as s,b as l,k as n,p as u,m as i,n as r,t as c,v as o,F as d,x as _,A as f,u as m,E as p}from"./index-C46MzMfW.js";import{a as v}from"./content.77V1RU5a.js";import{_ as g}from"./_plugin-vue_export-helper.BCo6x5W8.js";const h=g(a({__name:"index",setup(a){const g=t([]),h=t(null);function M(a){if(!(null==a?void 0:a.start_at))return"活动进行中";const t=(new Date).getTime(),e=new Date(a.start_at).getTime(),s=a.end_at?new Date(a.end_at).getTime():e;return Number.isFinite(s)&&s<t?"活动已结束":e>t?"活动即将开始":"活动进行中"}function y(a){const t=Number(a);return Number.isFinite(t)?t:0}function b(a){if(!h.value)return"距离 --";const t=y((null==a?void 0:a.lat)||(null==a?void 0:a.venue_lat)),e=y((null==a?void 0:a.lng)||(null==a?void 0:a.venue_lng));if(!t||!e)return"距离 --";const s=function(a,t,e,s){const l=a=>a*Math.PI/180,n=l(e-a),u=l(s-t),i=Math.sin(n/2)*Math.sin(n/2)+Math.cos(l(a))*Math.cos(l(e))*Math.sin(u/2)*Math.sin(u/2);return 12742*Math.atan2(Math.sqrt(i),Math.sqrt(1-i))}(h.value.lat,h.value.lng,t,e);return Number.isFinite(s)?`距离 ${s.toFixed(1)}km`:"距离 --"}return e(async function(){const a=await v({page:1,page_size:20});g.value=(null==a?void 0:a.data)||[]}),e(async function(){try{const a=await new Promise((a,t)=>{n({type:"gcj02",success:a,fail:t})});h.value={lat:a.latitude,lng:a.longitude}}catch{h.value=null}}),(a,t)=>{const e=u,n=f;return i(),s(e,{class:"page"},{default:l(()=>[r(e,{class:"head"},{default:l(()=>[c("活动列表")]),_:1}),r(e,{class:"list"},{default:l(()=>[(i(!0),o(d,null,_(g.value,a=>(i(),s(e,{key:a.id,class:"item",onClick:t=>{return e=a.id,void p({url:`/pages/activity/detail?id=${e}`});var e}},{default:l(()=>[r(e,{class:"poster-wrap"},{default:l(()=>[a.image?(i(),s(n,{key:0,class:"poster",src:a.image,mode:"aspectFill"},null,8,["src"])):(i(),s(e,{key:1,class:"poster placeholder"})),r(e,{class:"status"},{default:l(()=>[c(m(M(a)),1)]),_:2},1024),r(e,{class:"joined"},{default:l(()=>[c("已报名 "+m(a.registered_count||0),1)]),_:2},1024)]),_:2},1024),r(e,{class:"body"},{default:l(()=>[r(e,{class:"title"},{default:l(()=>[c(m(a.title),1)]),_:2},1024),r(e,{class:"meta"},{default:l(()=>{return[c(m((t=a.start_at,t?String(t).slice(0,16).replace("T"," "):"时间待定")),1)];var t}),_:2},1024),r(e,{class:"meta"},{default:l(()=>[c(m(a.address||a.venue_name||"-"),1)]),_:2},1024),r(e,{class:"meta"},{default:l(()=>[c(m(b(a)),1)]),_:2},1024),r(e,{class:"bottom"},{default:l(()=>[r(e,{class:"price"},{default:l(()=>[c("免费")]),_:1}),r(e,{class:"btn"},{default:l(()=>[c("立即报名")]),_:1})]),_:1})]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-f10e1a23"]]);export{h as default};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as a,r as s,o as e,a as l,b as t,p as d,m as c,n as u,t as r,v as i,F as n,x as o,A as _,C as f,u as m,H as p,E as g}from"./index-Bb3NhKfd.js";import{b as v}from"./content.Vcui7IWs.js";import{_ as b}from"./_plugin-vue_export-helper.BCo6x5W8.js";const k=b(a({__name:"index",setup(a){const b=s([]);return e(async function(){b.value=await v()}),(a,s)=>{const e=d,v=_,k=p;return c(),l(e,{class:"page"},{default:t(()=>[u(e,{class:"head"},{default:t(()=>[r("线路列表")]),_:1}),(c(!0),i(n,null,o(b.value,a=>(c(),l(e,{key:a.id,class:"card",onClick:s=>{return e=a.id,void g({url:`/pages/study-tour/detail?id=${e}`});var e}},{default:t(()=>[u(e,{class:"img-wrap"},{default:t(()=>[a.cover_image?(c(),l(v,{key:0,class:"img",src:a.cover_image,mode:"aspectFill"},null,8,["src"])):f("",!0),u(e,{class:"mask"}),u(e,{class:"badge"},{default:t(()=>[r("活动进行中")]),_:1}),u(e,{class:"join"},{default:t(()=>[r("已报名 200")]),_:1})]),_:2},1024),u(e,{class:"body"},{default:t(()=>[u(e,{class:"title"},{default:t(()=>[r(m(a.name),1)]),_:2},1024),u(e,{class:"line"},{default:t(()=>[r("📅 2026-4-6 10:00-11:30")]),_:1}),u(e,{class:"line"},{default:t(()=>[r("📍 "+m(a.first_address||"-"),1)]),_:2},1024),u(e,{class:"line"},{default:t(()=>[r("👥 人数不限")]),_:1}),u(e,{class:"bottom"},{default:t(()=>[u(e,{class:"price"},{default:t(()=>[r("免费")]),_:1}),u(k,{class:"btn"},{default:t(()=>[r("立即报名")]),_:1})]),_:1})]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})}}}),[["__scopeId","data-v-b9676377"]]);export{k as default};
|
||||
import{d as a,r as s,o as e,a as l,b as t,p as d,m as c,n as u,t as r,v as i,F as n,x as o,A as _,C as f,u as m,H as p,E as g}from"./index-C46MzMfW.js";import{b as v}from"./content.77V1RU5a.js";import{_ as b}from"./_plugin-vue_export-helper.BCo6x5W8.js";const k=b(a({__name:"index",setup(a){const b=s([]);return e(async function(){b.value=await v()}),(a,s)=>{const e=d,v=_,k=p;return c(),l(e,{class:"page"},{default:t(()=>[u(e,{class:"head"},{default:t(()=>[r("线路列表")]),_:1}),(c(!0),i(n,null,o(b.value,a=>(c(),l(e,{key:a.id,class:"card",onClick:s=>{return e=a.id,void g({url:`/pages/study-tour/detail?id=${e}`});var e}},{default:t(()=>[u(e,{class:"img-wrap"},{default:t(()=>[a.cover_image?(c(),l(v,{key:0,class:"img",src:a.cover_image,mode:"aspectFill"},null,8,["src"])):f("",!0),u(e,{class:"mask"}),u(e,{class:"badge"},{default:t(()=>[r("活动进行中")]),_:1}),u(e,{class:"join"},{default:t(()=>[r("已报名 200")]),_:1})]),_:2},1024),u(e,{class:"body"},{default:t(()=>[u(e,{class:"title"},{default:t(()=>[r(m(a.name),1)]),_:2},1024),u(e,{class:"line"},{default:t(()=>[r("📅 2026-4-6 10:00-11:30")]),_:1}),u(e,{class:"line"},{default:t(()=>[r("📍 "+m(a.first_address||"-"),1)]),_:2},1024),u(e,{class:"line"},{default:t(()=>[r("👥 人数不限")]),_:1}),u(e,{class:"bottom"},{default:t(()=>[u(e,{class:"price"},{default:t(()=>[r("免费")]),_:1}),u(k,{class:"btn"},{default:t(()=>[r("立即报名")]),_:1})]),_:1})]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})}}}),[["__scopeId","data-v-b9676377"]]);export{k as default};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as e,r as a,c as t,o as l,a as s,b as i,p as u,m as r,n as c,t as n,u as o,v as d,F as v,x as p,A as f,E as m,D as _}from"./index-Bb3NhKfd.js";import{g as y}from"./content.Vcui7IWs.js";import{_ as k}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=k(e({__name:"index",setup(e){const k=a([]),T=a({district:"全部区域",venueType:"全部类型",ticketType:"全部"}),g=a(["全部区域"]),x=a(["全部类型"]),w=a(["全部"]),C=t(()=>k.value.filter(e=>{const a="全部区域"===T.value.district||(e.district||"")===T.value.district,t="全部类型"===T.value.venueType||(e.venue_type||"")===T.value.venueType,l="全部"===T.value.ticketType||(e.ticket_type||"")===T.value.ticketType;return a&&t&&l}));function h(e,a){_({itemList:a,success(t){T.value[e]=a[t.tapIndex]}})}return l(async function(){const e=await y();k.value=e||[],g.value=["全部区域",...Array.from(new Set(k.value.map(e=>e.district).filter(Boolean)))],x.value=["全部类型",...Array.from(new Set(k.value.map(e=>e.venue_type).filter(Boolean)))],w.value=["全部",...Array.from(new Set(k.value.map(e=>e.ticket_type).filter(Boolean)))]}),(e,a)=>{const t=u,l=f;return r(),s(t,{class:"page"},{default:i(()=>[c(t,{class:"head"},{default:i(()=>[n("科普场馆")]),_:1}),c(t,{class:"filter-row"},{default:i(()=>[c(t,{class:"filter-item",onClick:a[0]||(a[0]=e=>h("district",g.value))},{default:i(()=>[n(o(T.value.district),1)]),_:1}),c(t,{class:"filter-item",onClick:a[1]||(a[1]=e=>h("venueType",x.value))},{default:i(()=>[n(o(T.value.venueType),1)]),_:1}),c(t,{class:"filter-item",onClick:a[2]||(a[2]=e=>h("ticketType",w.value))},{default:i(()=>[n(o(T.value.ticketType),1)]),_:1})]),_:1}),c(t,{class:"list"},{default:i(()=>[(r(!0),d(v,null,p(C.value,e=>(r(),s(t,{key:e.id,class:"item",onClick:a=>{return t=e.id,void m({url:`/pages/venue/detail?id=${t}`});var t}},{default:i(()=>[e.cover_image?(r(),s(l,{key:0,class:"img",src:e.cover_image,mode:"aspectFill"},null,8,["src"])):(r(),s(t,{key:1,class:"img placeholder"})),c(t,{class:"body"},{default:i(()=>[c(t,{class:"name"},{default:i(()=>[n(o(e.name),1)]),_:2},1024),c(t,{class:"addr"},{default:i(()=>[n(o(e.address||"-"),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-96872a55"]]);export{T as default};
|
||||
import{d as e,r as a,c as t,o as l,a as s,b as i,p as u,m as r,n as c,t as n,u as o,v as d,F as v,x as p,A as f,E as m,D as _}from"./index-C46MzMfW.js";import{g as y}from"./content.77V1RU5a.js";import{_ as k}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=k(e({__name:"index",setup(e){const k=a([]),T=a({district:"全部区域",venueType:"全部类型",ticketType:"全部"}),g=a(["全部区域"]),x=a(["全部类型"]),w=a(["全部"]),C=t(()=>k.value.filter(e=>{const a="全部区域"===T.value.district||(e.district||"")===T.value.district,t="全部类型"===T.value.venueType||(e.venue_type||"")===T.value.venueType,l="全部"===T.value.ticketType||(e.ticket_type||"")===T.value.ticketType;return a&&t&&l}));function h(e,a){_({itemList:a,success(t){T.value[e]=a[t.tapIndex]}})}return l(async function(){const e=await y();k.value=e||[],g.value=["全部区域",...Array.from(new Set(k.value.map(e=>e.district).filter(Boolean)))],x.value=["全部类型",...Array.from(new Set(k.value.map(e=>e.venue_type).filter(Boolean)))],w.value=["全部",...Array.from(new Set(k.value.map(e=>e.ticket_type).filter(Boolean)))]}),(e,a)=>{const t=u,l=f;return r(),s(t,{class:"page"},{default:i(()=>[c(t,{class:"head"},{default:i(()=>[n("科普场馆")]),_:1}),c(t,{class:"filter-row"},{default:i(()=>[c(t,{class:"filter-item",onClick:a[0]||(a[0]=e=>h("district",g.value))},{default:i(()=>[n(o(T.value.district),1)]),_:1}),c(t,{class:"filter-item",onClick:a[1]||(a[1]=e=>h("venueType",x.value))},{default:i(()=>[n(o(T.value.venueType),1)]),_:1}),c(t,{class:"filter-item",onClick:a[2]||(a[2]=e=>h("ticketType",w.value))},{default:i(()=>[n(o(T.value.ticketType),1)]),_:1})]),_:1}),c(t,{class:"list"},{default:i(()=>[(r(!0),d(v,null,p(C.value,e=>(r(),s(t,{key:e.id,class:"item",onClick:a=>{return t=e.id,void m({url:`/pages/venue/detail?id=${t}`});var t}},{default:i(()=>[e.cover_image?(r(),s(l,{key:0,class:"img",src:e.cover_image,mode:"aspectFill"},null,8,["src"])):(r(),s(t,{key:1,class:"img placeholder"})),c(t,{class:"body"},{default:i(()=>[c(t,{class:"name"},{default:i(()=>[n(o(e.name),1)]),_:2},1024),c(t,{class:"addr"},{default:i(()=>[n(o(e.address||"-"),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-96872a55"]]);export{T as default};
|
||||
@ -1 +1 @@
|
||||
import{d as a,a as e,b as s,p as l,m as t,n as u,t as d,A as n,q as f,E as r}from"./index-Bb3NhKfd.js";import{_}from"./_plugin-vue_export-helper.BCo6x5W8.js";const c=_(a({__name:"index",setup(a){function _(){r({url:"/pages/mine/orders"})}return(a,r)=>{const c=l,o=n,p=f;return t(),e(c,{class:"page"},{default:s(()=>[u(c,{class:"header"},{default:s(()=>[u(c,{class:"header-title"},{default:s(()=>[d("个人中心")]),_:1}),u(c,{class:"profile"},{default:s(()=>[u(o,{class:"avatar",src:"https://picsum.photos/120/120?random=11",mode:"aspectFill"}),u(c,{class:"profile-info"},{default:s(()=>[u(c,{class:"name"},{default:s(()=>[d("苏青")]),_:1}),u(c,{class:"phone"},{default:s(()=>[d("188****0302")]),_:1})]),_:1})]),_:1})]),_:1}),u(c,{class:"panel"},{default:s(()=>[u(c,{class:"menu-item"},{default:s(()=>[u(p,null,{default:s(()=>[d("我的信息")]),_:1}),u(p,null,{default:s(()=>[d(">")]),_:1})]),_:1}),u(c,{class:"menu-item",onClick:_},{default:s(()=>[u(p,null,{default:s(()=>[d("预约记录")]),_:1}),u(p,null,{default:s(()=>[d(">")]),_:1})]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-edb151ca"]]);export{c as default};
|
||||
import{d as a,a as e,b as s,p as l,m as t,n as u,t as d,A as n,q as f,E as r}from"./index-C46MzMfW.js";import{_}from"./_plugin-vue_export-helper.BCo6x5W8.js";const c=_(a({__name:"index",setup(a){function _(){r({url:"/pages/mine/orders"})}return(a,r)=>{const c=l,o=n,p=f;return t(),e(c,{class:"page"},{default:s(()=>[u(c,{class:"header"},{default:s(()=>[u(c,{class:"header-title"},{default:s(()=>[d("个人中心")]),_:1}),u(c,{class:"profile"},{default:s(()=>[u(o,{class:"avatar",src:"https://picsum.photos/120/120?random=11",mode:"aspectFill"}),u(c,{class:"profile-info"},{default:s(()=>[u(c,{class:"name"},{default:s(()=>[d("苏青")]),_:1}),u(c,{class:"phone"},{default:s(()=>[d("188****0302")]),_:1})]),_:1})]),_:1})]),_:1}),u(c,{class:"panel"},{default:s(()=>[u(c,{class:"menu-item"},{default:s(()=>[u(p,null,{default:s(()=>[d("我的信息")]),_:1}),u(p,null,{default:s(()=>[d(">")]),_:1})]),_:1}),u(c,{class:"menu-item",onClick:_},{default:s(()=>[u(p,null,{default:s(()=>[d("预约记录")]),_:1}),u(p,null,{default:s(()=>[d(">")]),_:1})]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-edb151ca"]]);export{c as default};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{d as a,a as s,b as e,p as r,m as n,n as l,t,v as c,F as o,x as u,u as d}from"./index-Bb3NhKfd.js";import{_}from"./_plugin-vue_export-helper.BCo6x5W8.js";const f=_(a({__name:"index",setup(a){const _=[{rank:1,name:"苏州青少年科技馆",score:4912},{rank:2,name:"苏州科普体验中心",score:4911},{rank:3,name:"苏州未来科幻馆",score:4860},{rank:4,name:"苏州自然资源馆",score:4720},{rank:5,name:"苏州农业科普园",score:4618}];return(a,f)=>{const m=r;return n(),s(m,{class:"page"},{default:e(()=>[l(m,{class:"head"},{default:e(()=>[t("活跃指数排行榜")]),_:1}),l(m,{class:"list"},{default:e(()=>[(n(),c(o,null,u(_,a=>l(m,{key:a.rank,class:"row"},{default:e(()=>[l(m,{class:"left"},{default:e(()=>[l(m,{class:"rank"},{default:e(()=>[t("TOP"+d(a.rank),1)]),_:2},1024),l(m,{class:"name"},{default:e(()=>[t(d(a.name),1)]),_:2},1024)]),_:2},1024),l(m,{class:"score"},{default:e(()=>[t(d(a.score),1)]),_:2},1024)]),_:2},1024)),64))]),_:1})]),_:1})}}}),[["__scopeId","data-v-6384efbf"]]);export{f as default};
|
||||
import{d as a,a as s,b as e,p as r,m as n,n as l,t,v as c,F as o,x as u,u as d}from"./index-C46MzMfW.js";import{_}from"./_plugin-vue_export-helper.BCo6x5W8.js";const f=_(a({__name:"index",setup(a){const _=[{rank:1,name:"苏州青少年科技馆",score:4912},{rank:2,name:"苏州科普体验中心",score:4911},{rank:3,name:"苏州未来科幻馆",score:4860},{rank:4,name:"苏州自然资源馆",score:4720},{rank:5,name:"苏州农业科普园",score:4618}];return(a,f)=>{const m=r;return n(),s(m,{class:"page"},{default:e(()=>[l(m,{class:"head"},{default:e(()=>[t("活跃指数排行榜")]),_:1}),l(m,{class:"list"},{default:e(()=>[(n(),c(o,null,u(_,a=>l(m,{key:a.rank,class:"row"},{default:e(()=>[l(m,{class:"left"},{default:e(()=>[l(m,{class:"rank"},{default:e(()=>[t("TOP"+d(a.rank),1)]),_:2},1024),l(m,{class:"name"},{default:e(()=>[t(d(a.name),1)]),_:2},1024)]),_:2},1024),l(m,{class:"score"},{default:e(()=>[t(d(a.score),1)]),_:2},1024)]),_:2},1024)),64))]),_:1})]),_:1})}}}),[["__scopeId","data-v-6384efbf"]]);export{f as default};
|
||||
@ -1 +1 @@
|
||||
import{d as a,r as l,c as e,J as s,a as t,b as u,p as n,m as d,n as r,t as i,S as o,M as c,u as v,v as m,F as f,x as g,q as _,y as p,K as b,E as k,e as N,L as h}from"./index-Bb3NhKfd.js";import{j as y}from"./content.Vcui7IWs.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const C=x(a({__name:"detail",setup(a){const x=l(null);const C=e(()=>{var a,l;const e=null==(l=null==(a=x.value)?void 0:a.venues)?void 0:l[0];return{latitude:Number((null==e?void 0:e.lat)||31.2989),longitude:Number((null==e?void 0:e.lng)||120.5853)}}),j=e(()=>{var a;return((null==(a=x.value)?void 0:a.venues)||[]).map((a,l)=>({id:a.id||l+1,latitude:Number(a.lat||0),longitude:Number(a.lng||0),width:20,height:20,callout:{content:String(l+1),color:"#fff",fontSize:12,borderRadius:20,bgColor:"#ff6b6b",padding:4,display:"ALWAYS"}}))});return s(async a=>{const l=Number((null==a?void 0:a.id)||0);l&&(x.value=await y(l))}),(a,l)=>{const e=n,s=c,y=_,S=b,w=o;return d(),t(e,{class:"page-wrap"},{default:u(()=>[r(e,{class:"head"},{default:u(()=>[i("线路详情")]),_:1}),r(w,{"scroll-y":"",class:"page"},{default:u(()=>[r(s,{class:"map",latitude:C.value.latitude,longitude:C.value.longitude,markers:j.value,scale:11},null,8,["latitude","longitude","markers"]),r(e,{class:"card"},{default:u(()=>{var a;return[r(e,{class:"title"},{default:u(()=>{var a;return[i(v((null==(a=x.value)?void 0:a.name)||"-"),1)]}),_:1}),r(e,{class:"tags"},{default:u(()=>{var a;return[(d(!0),m(f,null,g((null==(a=x.value)?void 0:a.tags)||[],a=>(d(),t(y,{key:a,class:"tag"},{default:u(()=>[i(v(a),1)]),_:2},1024))),128))]}),_:1}),(d(!0),m(f,null,g((null==(a=x.value)?void 0:a.venues)||[],(a,l)=>(d(),t(e,{key:a.id,class:"venue",onClick:l=>{return e=a.id,void k({url:`/pages/venue/detail?id=${e}`});var e}},{default:u(()=>[r(e,{class:"idx"},{default:u(()=>[i(v(Number(l)+1),1)]),_:2},1024),r(e,{class:"name"},{default:u(()=>[i(v(a.name),1)]),_:2},1024),r(e,{class:"addr"},{default:u(()=>[i(v(a.address||"-"),1)]),_:2},1024),r(e,{class:"go",onClick:p(l=>function(a){(null==a?void 0:a.lat)&&(null==a?void 0:a.lng)?h({latitude:Number(a.lat),longitude:Number(a.lng),name:a.name||"站点",address:a.address||""}):N({title:"暂无导航坐标",icon:"none"})}(a),["stop"])},{default:u(()=>[i("导航")]),_:2},1032,["onClick"])]),_:2},1032,["onClick"]))),128))]}),_:1}),r(e,{class:"card"},{default:u(()=>{var a;return[r(e,{class:"sub-title"},{default:u(()=>[i("线路简介")]),_:1}),r(S,{nodes:(null==(a=x.value)?void 0:a.intro_html)||""},null,8,["nodes"])]}),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-6d6695e5"]]);export{C as default};
|
||||
import{d as a,r as l,c as e,J as s,a as t,b as u,p as n,m as d,n as r,t as i,S as o,M as c,u as v,v as m,F as f,x as g,q as _,y as p,K as b,E as k,e as N,L as h}from"./index-C46MzMfW.js";import{j as y}from"./content.77V1RU5a.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const C=x(a({__name:"detail",setup(a){const x=l(null);const C=e(()=>{var a,l;const e=null==(l=null==(a=x.value)?void 0:a.venues)?void 0:l[0];return{latitude:Number((null==e?void 0:e.lat)||31.2989),longitude:Number((null==e?void 0:e.lng)||120.5853)}}),j=e(()=>{var a;return((null==(a=x.value)?void 0:a.venues)||[]).map((a,l)=>({id:a.id||l+1,latitude:Number(a.lat||0),longitude:Number(a.lng||0),width:20,height:20,callout:{content:String(l+1),color:"#fff",fontSize:12,borderRadius:20,bgColor:"#ff6b6b",padding:4,display:"ALWAYS"}}))});return s(async a=>{const l=Number((null==a?void 0:a.id)||0);l&&(x.value=await y(l))}),(a,l)=>{const e=n,s=c,y=_,S=b,w=o;return d(),t(e,{class:"page-wrap"},{default:u(()=>[r(e,{class:"head"},{default:u(()=>[i("线路详情")]),_:1}),r(w,{"scroll-y":"",class:"page"},{default:u(()=>[r(s,{class:"map",latitude:C.value.latitude,longitude:C.value.longitude,markers:j.value,scale:11},null,8,["latitude","longitude","markers"]),r(e,{class:"card"},{default:u(()=>{var a;return[r(e,{class:"title"},{default:u(()=>{var a;return[i(v((null==(a=x.value)?void 0:a.name)||"-"),1)]}),_:1}),r(e,{class:"tags"},{default:u(()=>{var a;return[(d(!0),m(f,null,g((null==(a=x.value)?void 0:a.tags)||[],a=>(d(),t(y,{key:a,class:"tag"},{default:u(()=>[i(v(a),1)]),_:2},1024))),128))]}),_:1}),(d(!0),m(f,null,g((null==(a=x.value)?void 0:a.venues)||[],(a,l)=>(d(),t(e,{key:a.id,class:"venue",onClick:l=>{return e=a.id,void k({url:`/pages/venue/detail?id=${e}`});var e}},{default:u(()=>[r(e,{class:"idx"},{default:u(()=>[i(v(Number(l)+1),1)]),_:2},1024),r(e,{class:"name"},{default:u(()=>[i(v(a.name),1)]),_:2},1024),r(e,{class:"addr"},{default:u(()=>[i(v(a.address||"-"),1)]),_:2},1024),r(e,{class:"go",onClick:p(l=>function(a){(null==a?void 0:a.lat)&&(null==a?void 0:a.lng)?h({latitude:Number(a.lat),longitude:Number(a.lng),name:a.name||"站点",address:a.address||""}):N({title:"暂无导航坐标",icon:"none"})}(a),["stop"])},{default:u(()=>[i("导航")]),_:2},1032,["onClick"])]),_:2},1032,["onClick"]))),128))]}),_:1}),r(e,{class:"card"},{default:u(()=>{var a;return[r(e,{class:"sub-title"},{default:u(()=>[i("线路简介")]),_:1}),r(S,{nodes:(null==(a=x.value)?void 0:a.intro_html)||""},null,8,["nodes"])]}),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-6d6695e5"]]);export{C as default};
|
||||
@ -1 +1 @@
|
||||
import{d as a,r as e,c as l,o as t,W as s,w as u,a as d,b as c,_ as v,p as n,m as r,n as i,t as o,q as f,z as h,u as _,$ as x,V as y,v as m,F as p,x as g}from"./index-Bb3NhKfd.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=v(S),l=24,t=18,s=24,u=18,d=260,c=Math.min(...a.map(a=>a.value)),n=Math.max(...a.map(a=>a.value)),r=Math.max(1,n-c),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=f,s=x;return r(),d(l,{class:"page"},{default:c(()=>[i(l,{class:"head"},{default:c(()=>[o("客流统计")]),_:1}),i(l,{class:"section-title"},{default:c(()=>[i(l,{class:"bar"}),i(t,{class:"title"},{default:c(()=>[o("全市参观人数")]),_:1}),i(l,{class:"period"},{default:c(()=>[i(t,{class:h({active:"week"===k.value}),onClick:e[0]||(e[0]=a=>k.value="week")},{default:c(()=>[o("周")]),_:1},8,["class"]),i(t,{class:h({active:"month"===k.value}),onClick:e[1]||(e[1]=a=>k.value="month")},{default:c(()=>[o("月")]),_:1},8,["class"]),i(t,{class:h({active:"year"===k.value}),onClick:e[2]||(e[2]=a=>k.value="year")},{default:c(()=>[o("年")]),_:1},8,["class"])]),_:1})]),_:1}),i(l,{class:"date-range"},{default:c(()=>[o(_(T.value),1)]),_:1}),i(l,{class:"chart-card"},{default:c(()=>[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:c(()=>[(r(!0),m(p,null,g(b.value,a=>(r(),d(t,{key:a.date},{default:c(()=>[o(_(a.date),1)]),_:2},1024))),128))]),_:1})]),_:1}),i(l,{class:"list-card"},{default:c(()=>[i(l,{class:"list-title"},{default:c(()=>[o("参观人数列表")]),_:1}),(r(!0),m(p,null,g(b.value,a=>(r(),d(l,{key:a.date,class:"row"},{default:c(()=>{var e;return[i(t,{class:"d"},{default:c(()=>[o(_(a.date),1)]),_:2},1024),i(t,{class:h(["c",{hot:a.date===(null==(e=C.value)?void 0:e.date)}])},{default:c(()=>{return[o(_((e=a.value,`${e.toLocaleString()}人`)),1)];var e}),_:2},1032,["class"])]}),_:2},1024))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-5553bcc5"]]);export{w as default};
|
||||
import{d as a,r as e,c as l,o as t,W as s,w as u,a as d,b as c,_ as v,p as n,m as r,n as i,t as o,q as f,z as h,u as _,$ as x,V as y,v as m,F as p,x as g}from"./index-C46MzMfW.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=v(S),l=24,t=18,s=24,u=18,d=260,c=Math.min(...a.map(a=>a.value)),n=Math.max(...a.map(a=>a.value)),r=Math.max(1,n-c),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=f,s=x;return r(),d(l,{class:"page"},{default:c(()=>[i(l,{class:"head"},{default:c(()=>[o("客流统计")]),_:1}),i(l,{class:"section-title"},{default:c(()=>[i(l,{class:"bar"}),i(t,{class:"title"},{default:c(()=>[o("全市参观人数")]),_:1}),i(l,{class:"period"},{default:c(()=>[i(t,{class:h({active:"week"===k.value}),onClick:e[0]||(e[0]=a=>k.value="week")},{default:c(()=>[o("周")]),_:1},8,["class"]),i(t,{class:h({active:"month"===k.value}),onClick:e[1]||(e[1]=a=>k.value="month")},{default:c(()=>[o("月")]),_:1},8,["class"]),i(t,{class:h({active:"year"===k.value}),onClick:e[2]||(e[2]=a=>k.value="year")},{default:c(()=>[o("年")]),_:1},8,["class"])]),_:1})]),_:1}),i(l,{class:"date-range"},{default:c(()=>[o(_(T.value),1)]),_:1}),i(l,{class:"chart-card"},{default:c(()=>[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:c(()=>[(r(!0),m(p,null,g(b.value,a=>(r(),d(t,{key:a.date},{default:c(()=>[o(_(a.date),1)]),_:2},1024))),128))]),_:1})]),_:1}),i(l,{class:"list-card"},{default:c(()=>[i(l,{class:"list-title"},{default:c(()=>[o("参观人数列表")]),_:1}),(r(!0),m(p,null,g(b.value,a=>(r(),d(l,{key:a.date,class:"row"},{default:c(()=>{var e;return[i(t,{class:"d"},{default:c(()=>[o(_(a.date),1)]),_:2},1024),i(t,{class:h(["c",{hot:a.date===(null==(e=C.value)?void 0:e.date)}])},{default:c(()=>{return[o(_((e=a.value,`${e.toLocaleString()}人`)),1)];var e}),_:2},1032,["class"])]}),_:2},1024))),128))]),_:1})]),_:1})}}}),[["__scopeId","data-v-5553bcc5"]]);export{w as default};
|
||||
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue