diff --git a/src/pages/ChatModule/AigcPhotoCard/index.vue b/src/pages/ChatModule/AigcPhotoCard/index.vue
index fa49b33..8b377fb 100644
--- a/src/pages/ChatModule/AigcPhotoCard/index.vue
+++ b/src/pages/ChatModule/AigcPhotoCard/index.vue
@@ -1,31 +1,27 @@
-
-
- {{ data.icon }}
-
- {{ data.title }}
- {{ data.subtitle }}
-
+
+
+
+
+
+
-
-
+
+
+ {{ data.title }}
-
- {{ data.buttonText }}
-
-
+
diff --git a/src/pages/ChatModule/FaqHelpCard/mocks.js b/src/pages/ChatModule/FaqHelpCard/mocks.js
index e2778b7..27c3813 100644
--- a/src/pages/ChatModule/FaqHelpCard/mocks.js
+++ b/src/pages/ChatModule/FaqHelpCard/mocks.js
@@ -1,10 +1,19 @@
export default {
- title: "常见问题",
- subtitle: "快速了解游览和服务信息",
- badge: "FAQ",
+ id: "faq-help",
+ icon: "?",
+ title: "您可能还想了解",
questions: [
- { id: "q1", question: "景区几点停止入园?", answer: "通常闭园前 1 小时停止入园,节假日以现场公告为准。" },
- { id: "q2", question: "可以携带宠物吗?", answer: "多数室内区域不支持宠物进入,导盲犬等服务犬除外。" },
- { id: "q3", question: "下雨还能游玩吗?", answer: "小雨可游览,雨后水景更好,但请注意栈道湿滑。" },
+ {
+ id: "shuttle-time",
+ text: "观光车末班车发车时间",
+ },
+ {
+ id: "power-bank",
+ text: "景区内哪里有共享充电宝",
+ },
+ {
+ id: "pet-policy",
+ text: "可以带宠物入园吗",
+ },
],
};
diff --git a/src/pages/ChatModule/FaqHelpCard/styles/index.scss b/src/pages/ChatModule/FaqHelpCard/styles/index.scss
index f60d7be..f628fa0 100644
--- a/src/pages/ChatModule/FaqHelpCard/styles/index.scss
+++ b/src/pages/ChatModule/FaqHelpCard/styles/index.scss
@@ -1,36 +1,54 @@
.faq-help-card {
+ padding: 34px 30px 26px;
+ border: 1px solid rgba(226, 232, 240, 0.72);
+ box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
+ box-sizing: border-box;
}
.faq-help-card__header {
- margin-bottom: 12px;
+ min-width: 0;
+}
+
+.faq-help-card__icon {
+ width: 22px;
+ height: 22px;
+ margin-right: 10px;
+ border: 2px solid #10b981;
+ color: #10b981;
+ line-height: 18px;
+ box-sizing: border-box;
}
.faq-help-card__title {
+ line-height: 26px;
}
-.faq-help-card__subtitle {
- margin-top: 4px;
-}
-
-.faq-help-card__list {
+.faq-help-card__divider {
+ height: 1px;
+ margin: 24px 0 18px;
+ background: #f1f5f9;
}
.faq-help-card__item {
+ min-height: 42px;
}
-.faq-help-card__item.is-open {
- background: #eff6ff;
+.faq-help-card__item:active {
+ opacity: 0.86;
+}
+
+.faq-help-card__item.is-disabled {
+ opacity: 0.55;
}
.faq-help-card__question {
+ min-width: 0;
+ line-height: 24px;
}
.faq-help-card__arrow {
- font-size: 18px;
- line-height: 14px;
-}
-
-.faq-help-card__answer {
- margin-top: 8px;
- line-height: 20px;
+ width: 22px;
+ margin-left: 16px;
+ text-align: right;
+ line-height: 24px;
}
diff --git a/src/pages/ChatModule/MapNavigationCard/index.vue b/src/pages/ChatModule/MapNavigationCard/index.vue
index 3b4ebf1..08e1a32 100644
--- a/src/pages/ChatModule/MapNavigationCard/index.vue
+++ b/src/pages/ChatModule/MapNavigationCard/index.vue
@@ -1,24 +1,40 @@
-
-
-
- {{ data.pinText }}
+
+
+
+
+ {{ badge.icon }}
+ {{ badge.text }}
+
-
+
+
- {{ data.title }}
- {{ data.distance }}
+
+ {{ data.title }}
+
+
+ {{ data.distance }}
+
-
- {{ data.buttonText }}
+
+ {{ action.icon }}
+ {{ action.text }}
-
+
diff --git a/src/pages/ChatModule/NoticeCard/mocks.js b/src/pages/ChatModule/NoticeCard/mocks.js
index a01e994..4d9148c 100644
--- a/src/pages/ChatModule/NoticeCard/mocks.js
+++ b/src/pages/ChatModule/NoticeCard/mocks.js
@@ -1,24 +1,49 @@
export default {
- title: "景区公告",
- subtitle: "重要通知与运营提醒",
- badge: "公告",
- notices: [
- {
- id: "notice-1",
- title: "观光车运营时间调整",
- summary: "因道路维护,今日 16:30 后部分站点临时调整。",
- date: "今日",
- type: "运营",
- cover: "https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=900&q=80",
- paragraphs: ["今日 16:30 后,水上森林站点将临时调整至游客中心东侧。", "已购票游客可凭原票乘坐接驳车,请根据现场指引有序排队。"],
- },
- {
- id: "notice-2",
- title: "雨后栈道防滑提醒",
- summary: "部分亲水路段地面湿滑,请穿防滑鞋并照看儿童。",
- date: "昨天",
- type: "安全",
- paragraphs: ["雨后栈道区域湿滑,请勿奔跑或翻越护栏。", "如遇临时封闭,请服从现场工作人员安排。"],
- },
- ],
+ id: "wolongtan-trail-notice",
+ summary: {
+ title: "卧龙潭",
+ content: "卧龙潭排队严重。",
+ publishTime: "发布时间:2025年7月12日 09:30",
+ actionText: "详情",
+ },
+ detail: {
+ navTitle: "交通公告",
+ image: "https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1000&q=80",
+ title: "卧龙潭至鸳鸯湖步道临时封闭通知",
+ timeIcon: "◷",
+ publishTime: "发布时间:2025年7月12日 09:30",
+ paragraphs: [
+ {
+ id: "rain",
+ segments: [
+ {
+ text: "因近日持续降雨导致景区内水位明显上升,为保障游客人身安全,景区管理部门决定自即日起临时封闭",
+ },
+ {
+ text: "卧龙潭至鸳鸯湖沉溪步道",
+ strong: true,
+ },
+ {
+ text: ",封闭时间视水位情况另行通知。",
+ },
+ ],
+ },
+ {
+ id: "route",
+ segments: [
+ {
+ text: "受影响游客可改走景区主干道绕行,全程增加约15分钟。观光车服务正常运营,建议优先乘车前往鸳鸯湖区域。",
+ },
+ ],
+ },
+ {
+ id: "reopen",
+ segments: [
+ {
+ text: "如水位下降恢复安全标准,景区将第一时间通过广播及公告重新开放步道,请游客留意景区实时公告。",
+ },
+ ],
+ },
+ ],
+ },
};
diff --git a/src/pages/ChatModule/NoticeCard/styles/index.scss b/src/pages/ChatModule/NoticeCard/styles/index.scss
index ed8f326..a86568d 100644
--- a/src/pages/ChatModule/NoticeCard/styles/index.scss
+++ b/src/pages/ChatModule/NoticeCard/styles/index.scss
@@ -2,59 +2,122 @@
width: 100%;
}
-.notice-card__list {
+.notice-card__summary,
+.notice-card__detail {
+ box-sizing: border-box;
}
-.notice-card__header {
- margin-bottom: 12px;
+.notice-card__summary {
+ padding: 16px 20px 14px;
+ border: 1px solid #fde68a;
+ box-shadow: 0 8px 22px rgba(245, 158, 11, 0.08);
}
-.notice-card__title {
+.notice-card__summary-title {
+ line-height: 22px;
}
-.notice-card__subtitle {
- margin-top: 4px;
+.notice-card__summary-content {
+ margin-top: 6px;
+ line-height: 20px;
}
-.notice-card__item {
- padding: 13px 0;
+.notice-card__summary-footer {
+ min-width: 0;
+ margin-top: 8px;
}
-.notice-card__item:last-child {
- border-bottom: none;
+.notice-card__summary-time {
+ min-width: 0;
+ line-height: 18px;
}
-.notice-card__item.is-disabled {
+.notice-card__summary-link {
+ margin-left: 16px;
+ line-height: 18px;
+ text-decoration: underline;
+ white-space: nowrap;
+}
+
+.notice-card__summary-link:active {
+ opacity: 0.82;
+}
+
+.notice-card__summary-link.is-disabled {
opacity: 0.55;
}
-.notice-card__item-body {
- min-width: 0;
-}
-
-.notice-card__item-title {
-}
-
-.notice-card__item-desc {
- margin-top: 5px;
- line-height: 17px;
-}
-
-.notice-card__item-date {
-}
-
.notice-card__detail {
+ border: 1px solid rgba(226, 232, 240, 0.72);
+ box-shadow: 0 12px 30px rgba(15, 23, 42, 0.05);
}
-.notice-card__cover {
- margin-bottom: 14px;
+.notice-card__detail-head {
+ height: 68px;
+ padding: 0 20px;
+ box-sizing: border-box;
}
-.notice-card__meta {
- margin-bottom: 12px;
+.notice-card__back {
+ width: 34px;
+ height: 34px;
+ margin-right: 14px;
+ color: #64748b;
+ font-size: 28px;
+ line-height: 1;
+ background: #f8fafc;
+}
+
+.notice-card__head-title {
+ line-height: 24px;
+}
+
+.notice-card__image {
+ height: 250px;
+}
+
+.notice-card__detail-body {
+ padding: 22px 20px 28px;
+ box-sizing: border-box;
+}
+
+.notice-card__detail-title {
+ line-height: 28px;
+}
+
+.notice-card__time-pill {
+ display: inline-flex;
+ height: 34px;
+ margin-top: 16px;
+ padding: 0 12px;
+ border: 1px solid #e2e8f0;
+ border-radius: 999px;
+ line-height: 34px;
+ box-sizing: border-box;
+}
+
+.notice-card__time-icon {
+ margin-right: 6px;
+ color: #64748b;
+ font-size: 15px;
+ line-height: 15px;
+}
+
+.notice-card__divider {
+ height: 1px;
+ margin: 26px 0 20px;
+ background: #e5e7eb;
}
.notice-card__paragraph {
- margin-bottom: 12px;
- line-height: 22px;
+ line-height: 30px;
+}
+
+.notice-card__paragraph + .notice-card__paragraph {
+ margin-top: 18px;
+}
+
+.notice-card__strong {
+ color: #1e293b;
+ font-weight: 900;
}
diff --git a/src/pages/ChatModule/ScenicImageCard/index.vue b/src/pages/ChatModule/ScenicImageCard/index.vue
index d056203..7a2dbb6 100644
--- a/src/pages/ChatModule/ScenicImageCard/index.vue
+++ b/src/pages/ChatModule/ScenicImageCard/index.vue
@@ -1,22 +1,35 @@
-
-
-
-
- {{ data.caption.title }}
-
- {{ data.caption.subtitle }}
-
-
- ⛶
+
+
+
+
+ {{ action.icon }}
-
+
+
+
+ {{ caption.title }}
+
+
+ {{ caption.subtitle }}
+
+
+
diff --git a/src/pages/ChatModule/ScenicImageCard/mocks.js b/src/pages/ChatModule/ScenicImageCard/mocks.js
index f525d9e..788306f 100644
--- a/src/pages/ChatModule/ScenicImageCard/mocks.js
+++ b/src/pages/ChatModule/ScenicImageCard/mocks.js
@@ -1,7 +1,19 @@
-export default {
+export const scenicImageWithoutCaption = {
+ id: "bridge-mist-plain",
image: "https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1000&q=80",
- caption: {
- title: "水上森林二号机位",
- subtitle: "下午逆光较弱,适合拍摄树影和水面反射",
+ action: {
+ icon: "↗",
+ },
+};
+
+export default {
+ id: "bridge-mist",
+ image: "https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1000&q=80",
+ caption: {
+ title: "古桥晨雾机位",
+ subtitle: "清晨 6:30 雾气最浓,长焦压缩效果极佳",
+ },
+ action: {
+ icon: "↗",
},
};
diff --git a/src/pages/ChatModule/ScenicImageCard/styles/index.scss b/src/pages/ChatModule/ScenicImageCard/styles/index.scss
index 18d4a81..b7e8f1e 100644
--- a/src/pages/ChatModule/ScenicImageCard/styles/index.scss
+++ b/src/pages/ChatModule/ScenicImageCard/styles/index.scss
@@ -1,8 +1,30 @@
-.scenic-image-card__image-wrap {
+.scenic-image-card {
+ height: 324px;
+ background: #e2e8f0;
+}
+
+.scenic-image-card:active,
+.scenic-image-card__expand:active {
+ opacity: 0.86;
+}
+
+.scenic-image-card.is-disabled {
+ opacity: 0.55;
}
.scenic-image-card__image {
- border-radius: 0;
+ height: 100%;
+}
+
+.scenic-image-card__expand {
+ position: absolute;
+ top: 16px;
+ right: 16px;
+ z-index: 2;
+ width: 40px;
+ height: 40px;
+ background: rgba(15, 23, 42, 0.36);
+ line-height: 40px;
}
.scenic-image-card__caption {
@@ -10,21 +32,17 @@
left: 0;
right: 0;
bottom: 0;
- padding: 42px 16px 16px;
+ padding: 72px 22px 20px;
background: linear-gradient(180deg, rgba(15, 23, 42, 0) 0%, rgba(15, 23, 42, 0.72) 100%);
}
-.scenic-image-card__caption-title {
- line-height: 20px;
+.scenic-image-card__title {
+ line-height: 24px;
+ text-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
}
-.scenic-image-card__caption-subtitle {
- margin-top: 3px;
- color: rgba(255, 255, 255, 0.72);
-}
-
-.scenic-image-card__expand {
- top: 12px;
- right: 12px;
- background: rgba(0, 0, 0, 0.32);
+.scenic-image-card__subtitle {
+ margin-top: 4px;
+ line-height: 18px;
+ text-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
}