wangfumin 6 месяцев назад
Родитель
Сommit
26d9faa8f9
100 измененных файлов с 231 добавлено и 160 удалено
  1. 12 5
      src/App.vue
  2. 4 143
      src/api/index.js
  3. 154 0
      src/api/indexPage.js
  4. 40 0
      src/api/user.js
  5. 3 0
      src/assets/main.css
  6. BIN
      src/assets/移动端切图_slices/Frame.png
  7. BIN
      src/assets/移动端切图_slices/Frame@2x(1).png
  8. BIN
      src/assets/移动端切图_slices/Frame@2x(2).png
  9. BIN
      src/assets/移动端切图_slices/Frame@2x(3).png
  10. BIN
      src/assets/移动端切图_slices/Frame@2x.png
  11. BIN
      src/assets/移动端切图_slices/Group 877.png
  12. BIN
      src/assets/移动端切图_slices/Group 877@2x.png
  13. BIN
      src/assets/移动端切图_slices/bg@2x(1).png
  14. BIN
      src/assets/移动端切图_slices/bg@2x.png
  15. BIN
      src/assets/移动端切图_slices/btn_01.png
  16. BIN
      src/assets/移动端切图_slices/btn_01@2x.png
  17. BIN
      src/assets/移动端切图_slices/btn_02.png
  18. BIN
      src/assets/移动端切图_slices/btn_02@2x.png
  19. BIN
      src/assets/移动端切图_slices/btn_04@2x.png
  20. BIN
      src/assets/移动端切图_slices/btn_05.png
  21. BIN
      src/assets/移动端切图_slices/btn_05@2x.png
  22. BIN
      src/assets/移动端切图_slices/icon_address.png
  23. BIN
      src/assets/移动端切图_slices/icon_address@2x.png
  24. BIN
      src/assets/移动端切图_slices/icon_auto_active.png
  25. BIN
      src/assets/移动端切图_slices/icon_auto_active@2x.png
  26. BIN
      src/assets/移动端切图_slices/icon_auto_normal.png
  27. BIN
      src/assets/移动端切图_slices/icon_auto_normal@2x.png
  28. BIN
      src/assets/移动端切图_slices/icon_back@2x.png
  29. BIN
      src/assets/移动端切图_slices/icon_cancel.png
  30. BIN
      src/assets/移动端切图_slices/icon_cancel@2x.png
  31. BIN
      src/assets/移动端切图_slices/icon_culture_active@2x.png
  32. BIN
      src/assets/移动端切图_slices/icon_culture_normal@2x.png
  33. BIN
      src/assets/移动端切图_slices/icon_delete.png
  34. BIN
      src/assets/移动端切图_slices/icon_delete@2x.png
  35. BIN
      src/assets/移动端切图_slices/icon_dollhouse_active.png
  36. BIN
      src/assets/移动端切图_slices/icon_dollhouse_active@2x.png
  37. BIN
      src/assets/移动端切图_slices/icon_dollhouse_normal.png
  38. BIN
      src/assets/移动端切图_slices/icon_dollhouse_normal@2x.png
  39. BIN
      src/assets/移动端切图_slices/icon_end.png
  40. BIN
      src/assets/移动端切图_slices/icon_end@2x.png
  41. BIN
      src/assets/移动端切图_slices/icon_exhibition_active@2x.png
  42. BIN
      src/assets/移动端切图_slices/icon_exhibition_normal@2x.png
  43. BIN
      src/assets/移动端切图_slices/icon_floor_active.png
  44. BIN
      src/assets/移动端切图_slices/icon_floor_active@2x.png
  45. BIN
      src/assets/移动端切图_slices/icon_floor_normal.png
  46. BIN
      src/assets/移动端切图_slices/icon_floor_normal@2x.png
  47. BIN
      src/assets/移动端切图_slices/icon_home_active@2x.png
  48. BIN
      src/assets/移动端切图_slices/icon_home_normal@2x.png
  49. BIN
      src/assets/移动端切图_slices/icon_img.png
  50. BIN
      src/assets/移动端切图_slices/icon_img@2x.png
  51. BIN
      src/assets/移动端切图_slices/icon_in@2x.png
  52. BIN
      src/assets/移动端切图_slices/icon_inside_active.png
  53. BIN
      src/assets/移动端切图_slices/icon_inside_active@2x.png
  54. BIN
      src/assets/移动端切图_slices/icon_inside_normal.png
  55. BIN
      src/assets/移动端切图_slices/icon_inside_normal@2x.png
  56. BIN
      src/assets/移动端切图_slices/icon_like_active.png
  57. BIN
      src/assets/移动端切图_slices/icon_like_active@2x.png
  58. BIN
      src/assets/移动端切图_slices/icon_like_normal.png
  59. BIN
      src/assets/移动端切图_slices/icon_like_normal@2x.png
  60. BIN
      src/assets/移动端切图_slices/icon_music_active.png
  61. BIN
      src/assets/移动端切图_slices/icon_music_active@2x.png
  62. BIN
      src/assets/移动端切图_slices/icon_music_normal.png
  63. BIN
      src/assets/移动端切图_slices/icon_music_normal@2x.png
  64. BIN
      src/assets/移动端切图_slices/icon_next.png
  65. BIN
      src/assets/移动端切图_slices/icon_next@2x.png
  66. BIN
      src/assets/移动端切图_slices/icon_out@2x.png
  67. BIN
      src/assets/移动端切图_slices/icon_pause.png
  68. BIN
      src/assets/移动端切图_slices/icon_pause@2x.png
  69. BIN
      src/assets/移动端切图_slices/icon_play.png
  70. BIN
      src/assets/移动端切图_slices/icon_play@2x.png
  71. BIN
      src/assets/移动端切图_slices/icon_search.png
  72. BIN
      src/assets/移动端切图_slices/icon_search@2x.png
  73. BIN
      src/assets/移动端切图_slices/icon_share_active.png
  74. BIN
      src/assets/移动端切图_slices/icon_share_active@2x.png
  75. BIN
      src/assets/移动端切图_slices/icon_share_normal.png
  76. BIN
      src/assets/移动端切图_slices/icon_share_normal@2x.png
  77. BIN
      src/assets/移动端切图_slices/icon_sucess.png
  78. BIN
      src/assets/移动端切图_slices/icon_sucess@2x.png
  79. BIN
      src/assets/移动端切图_slices/icon_user_active@2x.png
  80. BIN
      src/assets/移动端切图_slices/icon_user_normal@2x.png
  81. BIN
      src/assets/移动端切图_slices/icon_vr_active.png
  82. BIN
      src/assets/移动端切图_slices/icon_vr_active@2x.png
  83. BIN
      src/assets/移动端切图_slices/icon_vr_normal.png
  84. BIN
      src/assets/移动端切图_slices/icon_vr_normal@2x.png
  85. BIN
      src/assets/移动端切图_slices/icon_zoomin.png
  86. BIN
      src/assets/移动端切图_slices/icon_zoomin@2x.png
  87. BIN
      src/assets/移动端切图_slices/icon_zoomout.png
  88. BIN
      src/assets/移动端切图_slices/icon_zoomout@2x.png
  89. BIN
      src/assets/移动端切图_slices/img@2x.png
  90. BIN
      src/assets/移动端切图_slices/img_01.png
  91. BIN
      src/assets/移动端切图_slices/img_01@2x.png
  92. BIN
      src/assets/移动端切图_slices/img_02.png
  93. BIN
      src/assets/移动端切图_slices/img_02@2x.png
  94. BIN
      src/assets/移动端切图_slices/img_03.png
  95. BIN
      src/assets/移动端切图_slices/img_03@2x.png
  96. BIN
      src/assets/移动端切图_slices/img_05@2x.png
  97. BIN
      src/assets/移动端切图_slices/line.png
  98. BIN
      src/assets/移动端切图_slices/line@2x.png
  99. 18 12
      src/components/TabBar.vue
  100. 0 0
      src/router/index.js

+ 12 - 5
src/App.vue

@@ -16,13 +16,20 @@ const showTabBar = computed(() => {
 
 // 从store获取isFrom值
 const isFrom = computed(() => store.getters.getIsFrom)
-
 // 组件挂载时从URL参数获取isFrom并存储到store
 onMounted(() => {
-  const queryString = window.location.search
-  const urlParams = new URLSearchParams(queryString)
-  const isFromParam = urlParams.get('isFrom')
-  store.dispatch('setIsFrom', isFromParam)
+  const hash = window.location.hash
+  // 从hash中提取查询参数部分
+  const queryIndex = hash.indexOf('?')
+  if (queryIndex !== -1) {
+    const queryString = hash.substring(queryIndex + 1)
+    const urlParams = new URLSearchParams(queryString)
+    const isFromParam = urlParams.get('isFrom')
+    store.dispatch('setIsFrom', isFromParam)
+  } else {
+    console.log('No query parameters found', 9999)
+    store.dispatch('setIsFrom', null)
+  }
 })
 </script>
 

+ 4 - 143
src/api/index.js

@@ -1,109 +1,6 @@
 import request from '@/utils/request'
-
-// 博物馆相关接口
-export const museumApi = {
-  // 获取轮播图列表
-  getCarouselList(params = {}) {
-    return request({
-      url: '/museum/carousel/page',
-      method: 'get',
-      params: {
-        pageNum: 1,
-        pageSize: 10,
-        status: 1,
-        ...params,
-      },
-    })
-  },
-
-  // 获取展览列表
-  getExhibitionList(params = {}) {
-    return request({
-      url: '/museum/exhibition/page',
-      method: 'get',
-      params: {
-        pageNum: 1,
-        pageSize: 10,
-        status: 1,
-        ...params,
-      },
-    })
-  },
-
-  // 获取展览详情
-  getExhibitionDetail(id) {
-    return request({
-      url: `/museum/exhibition/${id}`,
-      method: 'get',
-    })
-  },
-
-  // 获取典藏列表
-  getCollectionList(params = {}) {
-    return request({
-      url: '/museum/collection/page',
-      method: 'get',
-      params: {
-        pageNum: 1,
-        pageSize: 10,
-        status: 1,
-        ...params,
-      },
-    })
-  },
-
-  // 获取典藏详情
-  getCollectionDetail(id) {
-    return request({
-      url: `/museum/collection/${id}`,
-      method: 'get',
-    })
-  },
-
-  // 获取新闻资讯列表
-  getNewsList(params = {}) {
-    return request({
-      url: '/museum/news/page',
-      method: 'get',
-      params: {
-        pageNum: 1,
-        pageSize: 10,
-        status: 1,
-        ...params,
-      },
-    })
-  },
-
-  // 获取新闻详情
-  getNewsDetail(id) {
-    return request({
-      url: `/museum/news/${id}`,
-      method: 'get',
-    })
-  },
-
-  // 获取活动列表
-  getActivityList(params = {}) {
-    return request({
-      url: '/museum/activity/page',
-      method: 'get',
-      params: {
-        pageNum: 1,
-        pageSize: 10,
-        status: 1,
-        ...params,
-      },
-    })
-  },
-
-  // 获取活动详情
-  getActivityDetail(id) {
-    return request({
-      url: `/museum/activity/${id}`,
-      method: 'get',
-    })
-  },
-}
+import museumApi from './indexPage.js'
+import userApi from './user.js'
 
 // 预约相关接口(需要token)
 export const reservationApi = {
@@ -147,44 +44,6 @@ export const reservationApi = {
   },
 }
 
-// 用户相关接口(需要token)
-export const userApi = {
-  // 获取用户信息
-  getUserInfo() {
-    return request({
-      url: '/user/info',
-      method: 'get',
-    })
-  },
-
-  // 更新用户信息
-  updateUserInfo(data) {
-    return request({
-      url: '/user/update',
-      method: 'post',
-      data,
-    })
-  },
-
-  // 用户登录
-  login(data) {
-    return request({
-      url: '/user/login',
-      method: 'post',
-      data,
-    })
-  },
-
-  // 微信登录
-  weixinLogin(data) {
-    return request({
-      url: '/user/weixin/login',
-      method: 'post',
-      data,
-    })
-  },
-}
-
 // 活动报名相关接口(需要token)
 export const activityApi = {
   // 报名活动
@@ -251,6 +110,8 @@ export const favoriteApi = {
 }
 
 // 导出所有API
+export { museumApi, userApi }
+
 export default {
   museumApi,
   reservationApi,

+ 154 - 0
src/api/indexPage.js

@@ -0,0 +1,154 @@
+import request from '@/utils/request'
+const museumApi = {
+  // 获取轮播图列表
+  getCarouselList(params = {}) {
+    return request({
+      url: '/museum/carousel/page',
+      method: 'post',
+      data: {
+        pageNum: 1,
+        pageSize: 10,
+        status: 1,
+        ...params,
+      },
+    })
+  },
+
+  // 获取资讯列表
+  getNewsList(params = {}) {
+    return request({
+      url: '/museum/information/page',
+      method: 'post',
+      data: {
+        pageNum: 1,
+        pageSize: 3,
+        status: 1,
+        ...params,
+      },
+    })
+  },
+
+  // 获取展览列表
+  getExhibitionList(params = {}) {
+    return request({
+      url: '/museum/exhibit/page',
+      method: 'post',
+      data: {
+        pageNum: 1,
+        pageSize: 5,
+        status: 1,
+        ...params,
+      },
+    })
+  },
+
+  // 社教活动列表
+  getSocialActivityList(params = {}) {
+    return request({
+      url: '/museum/activity/page',
+      method: 'post',
+      data: {
+        pageNum: 1,
+        pageSize: 5,
+        ...params,
+      },
+    })
+  },
+
+  // 获取展览详情
+  getExhibitionDetail(id) {
+    return request({
+      url: `/museum/exhibition/${id}`,
+      method: 'get',
+    })
+  },
+
+  // 获取展览详情(新接口)
+  getExhibitDetail(id) {
+    return request({
+      url: `/museum/exhibit/info/${id}`,
+      method: 'post',
+    })
+  },
+
+  // 获取典藏列表
+  getCollectionList(params = {}) {
+    return request({
+      url: '/museum/collection/page',
+      method: 'get',
+      params: {
+        pageNum: 1,
+        pageSize: 10,
+        status: 1,
+        ...params,
+      },
+    })
+  },
+
+  // 获取文物列表
+  getArtifactList(params = {}) {
+    return request({
+      url: '/museum/artifact/page',
+      method: 'post',
+      data: {
+        pageNum: 1,
+        pageSize: 10,
+        status: 1,
+        title: '',
+        type: 0,
+        ...params,
+      },
+    })
+  },
+
+  // 获取典藏详情
+  getCollectionDetail(id) {
+    return request({
+      url: `/museum/collection/${id}`,
+      method: 'get',
+    })
+  },
+
+  // 获取文物详情
+  getArtifactDetail(id) {
+    return request({
+      url: `/museum/artifact/info/${id}`,
+      method: 'post',
+    })
+  },
+
+  // 获取新闻详情
+  getNewsDetail(id) {
+    return request({
+      url: `/museum/news/${id}`,
+      method: 'get',
+    })
+  },
+
+  // 获取资讯详情
+  getInformationDetail(id) {
+    return request({
+      url: `/museum/information/info/${id}`,
+      method: 'post',
+    })
+  },
+
+  // 获取活动详情
+  getActivityDetail(id) {
+    return request({
+      url: `/museum/activity/info/${id}`,
+      method: 'post',
+    })
+  },
+
+  // 获取展馆介绍详情
+  getMuseumDetail(type) {
+    return request({
+      url: `/museum/introContext/info/${type}`,
+      method: 'post',
+    })
+  },
+}
+
+export { museumApi }
+export default museumApi

+ 40 - 0
src/api/user.js

@@ -0,0 +1,40 @@
+import request from '@/utils/request'
+// 用户相关接口(需要token)
+const userApi = {
+  // 获取用户信息
+  getUserInfo() {
+    return request({
+      url: '/user/info',
+      method: 'get',
+    })
+  },
+
+  // 更新用户信息
+  updateUserInfo(data) {
+    return request({
+      url: '/user/update',
+      method: 'post',
+      data,
+    })
+  },
+
+  // 用户登录
+  login(data) {
+    return request({
+      url: '/user/login',
+      method: 'post',
+      data,
+    })
+  },
+
+  // 微信登录
+  weixinLogin(data) {
+    return request({
+      url: '/user/weixin/login',
+      method: 'post',
+      data,
+    })
+  },
+}
+export { userApi }
+export default userApi

+ 3 - 0
src/assets/main.css

@@ -19,6 +19,9 @@ a,
 .home-tabar {
   height: calc(100vh - 78px) !important;
 }
+.notMargin {
+  margin: 0 !important;
+}
 @media (hover: hover) {
   a:hover {
     background-color: hsla(160, 100%, 37%, 0.2);

BIN
src/assets/移动端切图_slices/Frame.png


BIN
src/assets/移动端切图_slices/Frame@2x(1).png


BIN
src/assets/移动端切图_slices/Frame@2x(2).png


BIN
src/assets/移动端切图_slices/Frame@2x(3).png


BIN
src/assets/移动端切图_slices/Frame@2x.png


BIN
src/assets/移动端切图_slices/Group 877.png


BIN
src/assets/移动端切图_slices/Group 877@2x.png


BIN
src/assets/移动端切图_slices/bg@2x(1).png


BIN
src/assets/移动端切图_slices/bg@2x.png


BIN
src/assets/移动端切图_slices/btn_01.png


BIN
src/assets/移动端切图_slices/btn_01@2x.png


BIN
src/assets/移动端切图_slices/btn_02.png


BIN
src/assets/移动端切图_slices/btn_02@2x.png


BIN
src/assets/移动端切图_slices/btn_04@2x.png


BIN
src/assets/移动端切图_slices/btn_05.png


BIN
src/assets/移动端切图_slices/btn_05@2x.png


BIN
src/assets/移动端切图_slices/icon_address.png


BIN
src/assets/移动端切图_slices/icon_address@2x.png


BIN
src/assets/移动端切图_slices/icon_auto_active.png


BIN
src/assets/移动端切图_slices/icon_auto_active@2x.png


BIN
src/assets/移动端切图_slices/icon_auto_normal.png


BIN
src/assets/移动端切图_slices/icon_auto_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_back@2x.png


BIN
src/assets/移动端切图_slices/icon_cancel.png


BIN
src/assets/移动端切图_slices/icon_cancel@2x.png


BIN
src/assets/移动端切图_slices/icon_culture_active@2x.png


BIN
src/assets/移动端切图_slices/icon_culture_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_delete.png


BIN
src/assets/移动端切图_slices/icon_delete@2x.png


BIN
src/assets/移动端切图_slices/icon_dollhouse_active.png


BIN
src/assets/移动端切图_slices/icon_dollhouse_active@2x.png


BIN
src/assets/移动端切图_slices/icon_dollhouse_normal.png


BIN
src/assets/移动端切图_slices/icon_dollhouse_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_end.png


BIN
src/assets/移动端切图_slices/icon_end@2x.png


BIN
src/assets/移动端切图_slices/icon_exhibition_active@2x.png


BIN
src/assets/移动端切图_slices/icon_exhibition_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_floor_active.png


BIN
src/assets/移动端切图_slices/icon_floor_active@2x.png


BIN
src/assets/移动端切图_slices/icon_floor_normal.png


BIN
src/assets/移动端切图_slices/icon_floor_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_home_active@2x.png


BIN
src/assets/移动端切图_slices/icon_home_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_img.png


BIN
src/assets/移动端切图_slices/icon_img@2x.png


BIN
src/assets/移动端切图_slices/icon_in@2x.png


BIN
src/assets/移动端切图_slices/icon_inside_active.png


BIN
src/assets/移动端切图_slices/icon_inside_active@2x.png


BIN
src/assets/移动端切图_slices/icon_inside_normal.png


BIN
src/assets/移动端切图_slices/icon_inside_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_like_active.png


BIN
src/assets/移动端切图_slices/icon_like_active@2x.png


BIN
src/assets/移动端切图_slices/icon_like_normal.png


BIN
src/assets/移动端切图_slices/icon_like_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_music_active.png


BIN
src/assets/移动端切图_slices/icon_music_active@2x.png


BIN
src/assets/移动端切图_slices/icon_music_normal.png


BIN
src/assets/移动端切图_slices/icon_music_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_next.png


BIN
src/assets/移动端切图_slices/icon_next@2x.png


BIN
src/assets/移动端切图_slices/icon_out@2x.png


BIN
src/assets/移动端切图_slices/icon_pause.png


BIN
src/assets/移动端切图_slices/icon_pause@2x.png


BIN
src/assets/移动端切图_slices/icon_play.png


BIN
src/assets/移动端切图_slices/icon_play@2x.png


BIN
src/assets/移动端切图_slices/icon_search.png


BIN
src/assets/移动端切图_slices/icon_search@2x.png


BIN
src/assets/移动端切图_slices/icon_share_active.png


BIN
src/assets/移动端切图_slices/icon_share_active@2x.png


BIN
src/assets/移动端切图_slices/icon_share_normal.png


BIN
src/assets/移动端切图_slices/icon_share_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_sucess.png


BIN
src/assets/移动端切图_slices/icon_sucess@2x.png


BIN
src/assets/移动端切图_slices/icon_user_active@2x.png


BIN
src/assets/移动端切图_slices/icon_user_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_vr_active.png


BIN
src/assets/移动端切图_slices/icon_vr_active@2x.png


BIN
src/assets/移动端切图_slices/icon_vr_normal.png


BIN
src/assets/移动端切图_slices/icon_vr_normal@2x.png


BIN
src/assets/移动端切图_slices/icon_zoomin.png


BIN
src/assets/移动端切图_slices/icon_zoomin@2x.png


BIN
src/assets/移动端切图_slices/icon_zoomout.png


BIN
src/assets/移动端切图_slices/icon_zoomout@2x.png


BIN
src/assets/移动端切图_slices/img@2x.png


BIN
src/assets/移动端切图_slices/img_01.png


BIN
src/assets/移动端切图_slices/img_01@2x.png


BIN
src/assets/移动端切图_slices/img_02.png


BIN
src/assets/移动端切图_slices/img_02@2x.png


BIN
src/assets/移动端切图_slices/img_03.png


BIN
src/assets/移动端切图_slices/img_03@2x.png


BIN
src/assets/移动端切图_slices/img_05@2x.png


BIN
src/assets/移动端切图_slices/line.png


BIN
src/assets/移动端切图_slices/line@2x.png


+ 18 - 12
src/components/TabBar.vue

@@ -9,9 +9,8 @@
 </template>
 
 <script setup>
-import { ref, computed } from 'vue'
+import { computed } from 'vue'
 import { useRouter, useRoute } from 'vue-router'
-import wx from 'weixin-js-sdk'
 
 // 引入图标
 import homeNormal from '@/assets/components/icon_home_normal.png'
@@ -64,16 +63,23 @@ const getIconSrc = (item) => {
 
 // 切换标签
 const switchTab = (path) => {
-  router.push(path)
-  wx.miniProgram.navigateTo({
-    url: '/pages/user/index',
-    success: (res) => {
-      console.log('跳转成功', res)
-    },
-    fail: (err) => {
-      console.log('跳转失败', err)
-    }
-  })
+  // 检测当前URL是否有preview=1参数
+  const isPreviewMode = route.query.preview === '1'
+
+  // 如果是预览模式且要跳转到'我的'页面,则阻止跳转
+  if (isPreviewMode && path === '/user') {
+    return
+  }
+
+  // 如果是预览模式,在跳转时保留preview=1参数
+  if (isPreviewMode) {
+    router.push({
+      path: path,
+      query: { preview: '1' }
+    })
+  } else {
+    router.push(path)
+  }
 }
 </script>
 

+ 0 - 0
src/router/index.js


Некоторые файлы не были показаны из-за большого количества измененных файлов