Compare commits

...

6 Commits

Author SHA1 Message Date
duanshuwen
8766bb3720 feat:订单详情页面组件封装 2025-07-13 12:17:41 +08:00
duanshuwen
34a62d2f3e feat: 标签组件封装 2025-07-13 10:34:43 +08:00
duanshuwen
9bac216d7a feat:图片轮播组件封装 2025-07-12 23:10:36 +08:00
duanshuwen
7bea43f450 feat: 订单卡片组件封装 2025-07-11 17:35:21 +08:00
duanshuwen
deef75509e feat:你可以这样问我提示词组件封装 2025-07-11 14:46:30 +08:00
duanshuwen
fb6c258893 feat: 提交创建服务工单组件封装 2025-07-11 14:01:13 +08:00
147 changed files with 1912 additions and 455 deletions

45
App.vue
View File

@ -1,26 +1,31 @@
<script setup>
import { onLaunch,onShow,onHide } from '@dcloudio/uni-app'
import { onLaunch, onShow, onHide } from "@dcloudio/uni-app";
onLaunch(() => {
console.log('App Launch')
})
onShow(() => {
console.log('App Show')
})
onHide(() => {
console.log('App Hide')
})
onLaunch(() => {
console.log("App Launch");
});
onShow(() => {
console.log("App Show");
});
onHide(() => {
console.log("App Hide");
});
</script>
<style lang="scss">
/* 添加全局样式 */
page, body, #app {
width: 100vw;
height: 100vh;
}
/* 添加全局样式 */
page,
body,
#app {
font-family: PingFang SC, PingFang SC;
background-color: #E9F3F7;
height: 100vh;
width: 100vw;
}
.mb12 {
margin-bottom: 12px;
}
</style>

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 844 B

View File

@ -0,0 +1,72 @@
<template>
<view class="create-service-order">
<view class="create-service-wrapper">
<view class="order-header">
<text>创建服务工单</text>
</view>
<view class="order-content">
<view class="order-item">
<image src="./images/icon_service.png" class="order-icon"></image>
<text class="order-description">加一台麻将机</text>
</view>
<view class="order-line"></view>
<view class="order-details">
<view class="detail-item">
<text class="detail-label">房间号</text>
<text class="detail-value">302</text>
</view>
<view class="detail-item">
<text class="detail-label">服务时间</text>
<text class="detail-value">2025-09-12 12:00</text>
</view>
<view class="detail-item">
<text class="detail-label">联系房客</text>
<input
class="detail-input"
placeholder="请填写联系人"
v-model="contactName"
/>
</view>
<view class="detail-item">
<text class="detail-label">联系电话</text>
<input
class="detail-input"
placeholder="请填写联系电话"
v-model="contactPhone"
/>
</view>
</view>
<button class="order-button" @click="handleCall">立即呼叫</button>
</view>
</view>
<view class="footer-help">
<image src="./images/icon_volume.png" class="help-icon"></image>
<text class="help-text">没解决问题给我打电话吧</text>
<text class="help-phone" @click="makePhoneCall">15185111210</text>
</view>
</view>
</template>
<script setup>
import { ref } from "vue";
const contactName = ref("");
const contactPhone = ref("");
const handleCall = () => {
// Logic to handle the call action
console.log("Calling with:", contactName.value, contactPhone.value);
};
const makePhoneCall = () => {
// 使 uniapp API
uni.makePhoneCall({
phoneNumber: "15185111210",
});
};
</script>
<style scoped lang="scss">
@import "./styles/index.scss";
</style>

View File

@ -0,0 +1,21 @@
## 消息体组件信息
组件名称:消息体创建服务工单
服务名称:加一台麻将机
房间号302
服务时间2025-09-12 12:00
联系房客:
联系电话:
立即呼叫按钮
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.create-service-order
3、可以使用 uniapp 内置的组件
4、联系房客/联系电话,需要用户自己填写
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,144 @@
.create-service-order {
margin-left: 12px;
margin-right: 12px;
}
.create-service-wrapper {
box-sizing: border-box;
padding: 12px 12px 16px;
background-color: #eff6fa;
box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.1);
border-radius: 4px 20px 20px 20px;
border: 1px solid #fff;
}
.order-header {
font-size: 14px;
font-weight: 500;
margin-bottom: 10px;
color: #333;
}
.order-content {
width: 100%;
box-sizing: border-box;
background-color: #fff;
padding: 12px;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.order-item {
display: flex;
align-items: center;
margin-bottom: 12px;
}
.order-icon {
width: 24px;
height: 24px;
margin-right: 8px;
border-radius: 50%;
background-color: #ffa500;
display: flex;
align-items: center;
justify-content: center;
}
.order-description {
font-size: 14px;
font-weight: 500;
color: #333;
}
.order-line {
position: relative;
border: 1px dashed #eeeeee;
margin-left: -12px;
margin-right: -12px;
&::before,
&::after {
content: "";
position: absolute;
top: -8px;
width: 16px;
height: 16px;
border-radius: 50px;
background-color: #eff6fa;
}
&::before {
left: -8px;
}
&::after {
right: -8px;
}
}
.order-details {
margin-top: 12px;
}
.detail-item {
display: flex;
align-items: center;
margin-bottom: 10px;
font-size: 14px;
color: #666;
}
.detail-label {
width: 70px;
margin-right: 10px;
}
.detail-value {
color: #333;
}
.detail-input {
border: none;
outline: none;
width: calc(100% - 80px);
font-size: 14px;
color: #999;
border-bottom: 1px solid #ddd;
}
.order-button {
width: 280px;
height: 42px;
background: linear-gradient(90deg, #ff7e00, #ffba00);
color: #fff;
font-size: 14px;
font-weight: 600;
border-radius: 20px;
margin-top: 20px;
display: flex;
align-items: center;
justify-content: center;
}
.footer-help {
margin-top: 8px;
display: flex;
align-items: center;
font-size: 14px;
color: #ed6a0c;
}
.help-icon {
width: 16px;
height: 14px;
margin-right: 5px;
}
.help-text {
margin-right: 5px;
}
.help-phone {
cursor: pointer;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

View File

@ -0,0 +1,36 @@
<template>
<view class="image-swiper">
<swiper class="swiper-box" :indicator-dots="true" :autoplay="false" :interval="3000" :duration="1000">
<swiper-item v-for="(item, index) in mainImages" :key="index">
<image :src="item.url" mode="aspectFill"></image>
</swiper-item>
</swiper>
<view class="thumbnail-box">
<view v-for="(thumb, index) in thumbnails" :key="index" class="thumbnail-item">
<image :src="thumb.url" mode="aspectFill"></image>
<text>{{ thumb.description }}</text>
</view>
</view>
</view>
</template>
<script setup>
import { ref } from 'vue';
const mainImages = ref([
{ url: 'https://example.com/main-image-1.jpg' },
]);
const thumbnails = ref([
{ url: 'https://example.com/thumbnail-1.jpg', description: '瑶山古寨' },
{ url: 'https://example.com/thumbnail-2.jpg', description: '民俗表演' },
{ url: 'https://example.com/thumbnail-3.jpg', description: '特色美食' },
{ url: 'https://example.com/thumbnail-4.jpg', description: '传统服饰' },
{ url: 'https://example.com/thumbnail-5.jpg', description: '其他' },
]);
</script>
<style scoped lang="scss">
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,15 @@
## 图片详情组件
组件名称:图片详情组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片 100%还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.image-swiper
3、可以使用 uniapp swiper 内置的组件
4、可以使用网络图片地址
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,29 @@
.image-swiper {
position: relative;
width: 100%;
}
.swiper-box {
height: 167px;
}
.thumbnail-box {
display: flex;
justify-content: space-around;
margin-top: 10px;
}
.thumbnail-item {
text-align: center;
}
.thumbnail-item image {
width: 100px;
height: 100px;
border-radius: 8px;
}
.thumbnail-item text {
display: block;
margin-top: 5px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1,19 @@
<template>
<view class="module-header mb12">
<text class="module-title">{{ title }}</text>
<image class="underline" src="./images/wave_icon.png" mode="widthFix"/>
</view>
</template>
<script setup>
defineProps({
title: {
type: String,
default: '图片详情'
}
});
</script>
<style scoped lang="scss">
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 图片详情组件
组件名称:模块标题组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片 100%还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.module-title
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,25 @@
.module-header {
position: relative;
padding: 2px 8px 2px 3px;
}
.module-title {
font-size: 18px;
font-family: DingTalk JinBuTi, DingTalk JinBuTi;
color: #000;
position: relative;
z-index: 1;
}
.underline {
position: absolute;
bottom: 3px;
left: 0;
width: 79px;
height: 4px;
z-index: 0;
}
.mb12 {
margin-bottom: 12px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 917 B

View File

@ -0,0 +1,52 @@
<template>
<view class="service-order-item">
<view class="order-header">
<image class="order-icon" src="./images/icon_order.png"></image>
<text class="order-title">温泉早鸟票</text>
<text :class="['order-status', `status-${orderStatus}`]">{{
orderStatusText
}}</text>
</view>
<view class="order-details">
<view class="detail-item">
<text class="detail-label">订单编号</text>
<text class="detail-value">{{ orderId }}</text>
</view>
<view class="detail-item">
<text class="detail-label">游客人数</text>
<text class="detail-value">{{ touristCount }}</text>
</view>
</view>
</view>
</template>
<script setup>
import { ref, computed } from "vue";
// Sample data
const orderId = ref("7378400483776544");
const touristCount = ref(7);
const orderStatus = ref("pending"); // Options: 'canceled', 'pending', 'refundProcessing', 'refunded', 'completed'
// Computed property for order status text
const orderStatusText = computed(() => {
switch (orderStatus.value) {
case "canceled":
return "已取消";
case "pending":
return "待确认";
case "refundProcessing":
return "退款中";
case "refunded":
return "已退款";
case "completed":
return "已完成";
default:
return "";
}
});
</script>
<style scoped lang="scss">
@import "./styles/index.scss";
</style>

View File

@ -0,0 +1,16 @@
## 订单 Item 组件
组件名称:订单卡片组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.service-order-item
3、可以使用 uniapp 内置的组件
4、订单状态有已取消、待确认、退款中、已退款、已完成状态用颜色区分
5、订单卡片有点击跳转订单详情交互
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,81 @@
.service-order-item {
background-color: #fff;
border-radius: 10px;
padding: 15px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.order-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
}
.order-icon {
width: 20px;
height: 20px;
border-radius: 50%;
background-color: #ffa500;
display: flex;
align-items: center;
justify-content: center;
margin-right: 10px;
}
.order-title {
font-size: 16px;
color: #333;
}
.order-status {
font-size: 14px;
padding: 5px 10px;
border-radius: 15px;
}
.status-canceled {
color: #999;
border: 1px solid #999;
}
.status-pending {
color: #ff4d94;
border: 1px solid #ff4d94;
}
.status-refundProcessing {
color: #ff9900;
border: 1px solid #ff9900;
}
.status-refunded {
color: #ff4d4f;
border: 1px solid #ff4d4f;
}
.status-completed {
color: #28a745;
border: 1px solid #28a745;
}
.order-details {
margin-top: 10px;
}
.detail-item {
display: flex;
align-items: center;
margin-bottom: 10px;
}
.detail-label {
font-size: 14px;
color: #666;
margin-right: 10px;
}
.detail-value {
font-size: 14px;
color: #333;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

View File

@ -0,0 +1,40 @@
<template>
<view class="service-prompt">
<view class="service-header">
<text class="header-text">你可以这样问我</text>
<image
class="header-icon"
src="./images/icon_refresh.png"
@click="handleRefresh"
></image>
</view>
<view class="service-buttons">
<text class="service-button" @click="handleClick('bed')">
帮我加一张床
</text>
<text class="service-button" @click="handleClick('hotWater')">
房间热水不够热
</text>
<text class="service-button" @click="handleClick('mahjong')">
帮忙加一台麻将机
</text>
</view>
</view>
</template>
<script setup>
import { ref } from "vue";
const handleRefresh = (type) => {
console.log(`Button clicked: ${type}`);
};
const handleClick = (type) => {
console.log(`Button clicked: ${type}`);
// Add your logic here based on the type (e.g., 'bed', 'hotWater', 'mahjong')
};
</script>
<style scoped lang="scss">
@import "./styles/index.scss";
</style>

View File

@ -0,0 +1,16 @@
## 消息体提示词组件
组件名称:消息体提示词组件
帮我加一张床、房间热水不够热、帮我加一台麻将机
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.service-prompt
3、可以使用 uniapp 内置的组件
4、帮忙加一张床、房间热水不够热、帮忙加一台麻将机有点击交互
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,53 @@
.service-prompt {
padding: 12px 18px;
}
.service-header {
display: flex;
align-items: center;
margin-bottom: 5px;
}
.header-text {
font-size: 12px;
color: #6b84a2;
}
.header-icon {
width: 9px;
height: 9px;
margin-left: 8px;
}
.service-buttons {
display: flex;
flex-wrap: nowrap;
}
.service-button {
height: 36px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
padding-left: 12px;
padding-right: 12px;
background: linear-gradient(
180deg,
rgba(255, 255, 255, 0.5) 0%,
#ffffff 100%
);
box-shadow: 0px 2px 6px 0px rgba(16, 78, 137, 0.1);
border-radius: 20px 20px 20px 20px;
border: 1px solid #fff;
border-image: linear-gradient(
137deg,
rgba(255, 255, 255, 1),
rgba(255, 255, 255, 0.5),
rgba(255, 255, 255, 1)
);
font-size: 12px;
font-weight: 500;
color: #00a6ff;
border-radius: 50px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@ -0,0 +1,19 @@
<template>
<view class="tags-group">
<view class="tag-item" v-for="(tag, index) in tags" :key="index">
{{ tag }}
</view>
</view>
</template>
<script setup>
const tags = [
'门票套餐',
'民俗活动',
'车程路况'
];
</script>
<style scoped>
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 标签组件
组件名称:标签组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片 100%还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.tags-group
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,13 @@
.tags-group {
display: flex;
gap: 8px;
}
.tag-item {
background-color: #fff;
border-radius: 10px;
padding: 8px 16px;
font-size: 12px;
color: #00A6FF;
white-space: nowrap;
}

View File

@ -3,16 +3,30 @@
{
"path": "pages/index/index",
"style": {
"navigationStyle": "custom"
}
"navigationStyle": "custom"
}
},
{
"path" : "pages/chat/ChatQuickAccess",
"style" :
{
"navigationBarTitleText" : ""
}
},
{
"path": "pages/order/list",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/order/detail",
"style": {
"navigationStyle": "custom"
}
},
{
"path" : "pages/chat/ChatQuickAccess",
"style" :
{
"navigationBarTitleText" : ""
}
}
],
"globalStyle": {
@ -22,4 +36,4 @@
// "backgroundColor": "#F8F8F8"
},
"uniIdRouter": {}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,34 @@
<template>
<view class="goods-info mb12">
<view class="hotel-header">
<image class="hotel-icon" src="./images/icon_house.png"></image>
<text class="hotel-name">天沐温泉酒店</text>
</view>
<view class="goods-detail">
<image class="goods-image" :src="goodsImage"></image>
<view class="goods-description">
<text class="goods-title">温泉早鸟票</text>
<text class="goods-date">预定时间5月1日</text>
</view>
</view>
<view class="included-services">
<text class="services-title">包含服务</text>
<view class="service-item">
<text class="service-name">· 精致下午茶</text>
<text class="service-quantity">1</text>
</view>
<view class="service-item">
<text class="service-name">· 接机或接站</text>
<text class="service-quantity">1</text>
</view>
</view>
</view>
</template>
<script setup>
const goodsImage = 'https://example.com/path/to/image.jpg'; // Replace with actual image URL
</script>
<style scoped lang="scss">
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 商品信息组件
组件名称:商品信息组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.goods-info
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,77 @@
.goods-info {
background-color: #fff;
border-radius: 10px;
padding: 12px 16px 20px;
}
.hotel-header {
display: flex;
align-items: center;
margin-bottom: 10px;
}
.hotel-icon {
width: 24px;
height: 24px;
margin-right: 8px;
}
.hotel-name {
color: #333;
font-size: 12px;
font-weight: 500;
}
.goods-detail {
display: flex;
margin-bottom: 20px;
}
.goods-image {
background-color: pink;
width: 65px;
height: 65px;
border-radius: 8px;
margin-right: 15px;
}
.goods-description {
flex: 1;
}
.goods-title {
display: block;
font-size: 14px;
font-weight: 500;
margin-bottom: 8px;
}
.goods-date {
font-size: 12px;
color: #666;
}
.included-services {
margin-top: 10px;
}
.services-title {
display: block;
font-size: 12px;
margin-bottom: 12px;
}
.service-item {
display: flex;
justify-content: space-between;
margin-bottom: 10px;
}
.service-name {
font-size: 14px;
}
.service-quantity {
font-size: 12px;
color: #666;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 866 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 984 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,40 @@
<template>
<view class="notice-info mb12">
<view class="notice-section">
<view class="notice-title">
<image class="notice-icon" src="./images/icon_clock.png"></image>
取景点
</view>
<view class="notice-content">文本内容文本内容文本内容文本内容</view>
</view>
<view class="notice-section">
<view class="notice-title">
<image class="notice-icon" src="./images/icon_card.png"></image>
使用处
</view>
<view class="notice-content">
<text class="notice-item">· 文本内容文本内容文本内容</text>
<text class="notice-item">· 文本内容文本内容文本内容文本内容</text>
<text class="notice-item">· 文本内容文本内容文本内容文本内容文本内容</text>
<text class="notice-item">· 文本内容文本内容文本内容</text>
</view>
</view>
<view class="notice-section">
<view class="notice-title">
<image class="notice-icon" src="./images/icon_arrow.png"></image>
退改说明
</view>
<view class="notice-content">符合条件可退款</view>
</view>
</view>
</template>
<script setup>
// No dynamic data required for this static example
</script>
<style scoped lang="scss">
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 游玩须知组件
组件名称:游玩须知组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.notice-info
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,39 @@
.notice-info {
background-color: #fff;
border-radius: 10px;
padding: 16px 18px;
}
.notice-section {
margin-bottom: 20px;
&:last-child {
margin-bottom: 0;
}
}
.notice-title {
display: flex;
align-items: center;
margin-bottom: 8px;
font-size: 14px;
font-weight: 600;
color: #333;
}
.notice-icon {
width: 18px;
height: 18px;
margin-right: 10px;
}
.notice-content {
font-size: 12px;
color: #666;
padding-left: 28px;
}
.notice-item {
display: block;
margin-bottom: 5px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -0,0 +1,30 @@
<template>
<view class="order-info">
<view class="order-item">
<text class="label">订单号</text>
<text class="value">HUSUWF29387865</text>
</view>
<view class="order-item">
<text class="label">流水号</text>
<text class="value">76487829387865</text>
</view>
<view class="order-item">
<text class="label">支付方式</text>
<text class="value">微信</text>
</view>
<view class="order-item amount">
<text class="label">实际支付金额</text>
<text class="value">¥31.8</text>
</view>
<button class="reserve-button">再次预定</button>
<text class="feedback">投诉反馈</text>
</view>
</template>
<script setup>
// No dynamic data required for this static example
</script>
<style scoped>
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 订单信息组件
组件名称:订单信息组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.order-info
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,49 @@
.order-info {
background-color: #fff;
border-radius: 10px;
padding: 16px 18px;
}
.order-item {
display: flex;
justify-content: space-between;
margin-bottom: 8px;
}
.label {
font-size: 12px;
color: #666;
}
.value {
font-size: 12px;
color: #333;
}
.amount .label {
color: #333;
}
.amount .value {
color: #ff5722;
font-size: 18px;
}
.reserve-button {
width: 100%;
background-color: #ffa500;
color: #fff;
border: none;
border-radius: 50px;
height: 42px;
font-size: 14px;
margin-top: 20px;
}
.feedback {
display: block;
text-align: center;
font-size: 14px;
color: #333;
margin-top: 10px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1,19 @@
<template>
<view class="order-status">
<view class="status-header">
<image class="status-icon" src="/static/icons/clock.png"></image>
<text class="status-text">已取消</text>
</view>
<view class="status-description">
您已取消待支付的订单
</view>
</view>
</template>
<script setup>
// No dynamic data required for this static example
</script>
<style scoped>
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 订单状态组件
组件名称:订单状态组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.order-status
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,28 @@
.order-status {
color: #fff;
padding: 20px;
display: flex;
flex-direction: column;
align-items: center;
}
.status-header {
display: flex;
align-items: center;
margin-bottom: 10px;
}
.status-icon {
width: 18px;
height: 18px;
margin-right: 8px;
}
.status-text {
font-size: 18px;
font-weight: 600;
}
.status-description {
font-size: 12px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

View File

@ -0,0 +1,22 @@
<template>
<view class="user-info mb12">
<view class="user-info-title">游客信息</view>
<view class="user-info-item">
<text class="label">联系游客</text>
<text class="value">{{ contactName }}</text>
</view>
<view class="user-info-item">
<text class="label">联系电话</text>
<text class="value">{{ contactPhone }}</text>
</view>
</view>
</template>
<script setup>
const contactName = '李元一';
const contactPhone = '13172891829';
</script>
<style scoped>
@import './styles/index.scss';
</style>

View File

@ -0,0 +1,14 @@
## 游客信息组件
组件名称:游客信息组件
## 提示词:
使用 uniapp + vue3 组合式 api 开发微信小程序,要求如下:
1、按照提供的图片高度还原交互设计
2、要求布局样式结构简洁明了class 命名请按照模块名称来命名,例如:.user-info
3、可以使用 uniapp 内置的组件
## 备注
仅供学习、交流使用,请勿用于商业用途。

View File

@ -0,0 +1,28 @@
.user-info {
background-color: #fff;
border-radius: 10px;
padding: 16px 18px;
}
.user-info-title {
font-size: 16px;
font-weight: 600;
margin-bottom: 14px;
}
.user-info-item {
display: flex;
align-items: center;
margin-bottom: 10px;
}
.label {
font-size: 14px;
color: #666;
margin-right: 8px;
}
.value {
font-size: 14px;
color: #333;
}

22
pages/order/detail.vue Normal file
View File

@ -0,0 +1,22 @@
<template>
<view class="order-detail-wrapper">
<image class="icon-back" src="./images/back.png" />
<OrderStatusInfo />
<GoodsInfo />
<UserInfo />
<NoticeInfo />
<OrderInfo />
</view>
</template>
<script setup>
import OrderStatusInfo from './components/OrderStatusInfo/index.vue'
import GoodsInfo from './components/GoodsInfo/index.vue'
import UserInfo from './components/UserInfo/index.vue'
import NoticeInfo from './components/NoticeInfo/index.vue'
import OrderInfo from './components/OrderInfo/index.vue'
</script>
<style lang="scss" scoped>
@import './styles/detail.scss';
</style>

BIN
pages/order/images/back.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

11
pages/order/list.vue Normal file
View File

@ -0,0 +1,11 @@
<template>
</template>
<script setup>
</script>
<style>
</style>

View File

@ -0,0 +1,12 @@
.order-detail-wrapper {
background: url('./images/header_bg.png');
background-position: 0 0;
background-size: 100% 242px;
background-repeat: no-repeat;
padding: 60px 15px;
}
.icon-back {
height: 16px;
width: 16px;
}

29
project.config.json Normal file
View File

@ -0,0 +1,29 @@
{
"appid": "wxb71a18420dee6fdc",
"compileType": "miniprogram",
"libVersion": "3.8.10",
"packOptions": {
"ignore": [],
"include": []
},
"setting": {
"coverView": true,
"es6": true,
"postcss": true,
"minified": true,
"enhance": true,
"showShadowRootInWxmlPanel": true,
"packNpmRelationList": [],
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
}
},
"condition": {},
"editorSetting": {
"tabIndent": "insertSpaces",
"tabSize": 2
},
"projectArchitecture": "miniProgram"
}

View File

@ -0,0 +1,7 @@
{
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
"projectname": "YGChatCS",
"setting": {
"compileHotReLoad": true
}
}

View File

@ -1 +1 @@
{"version":3,"file":"ChatQuickAccess.js","sources":["pages/chat/ChatQuickAccess.vue"],"sourcesContent":["<template>\n\t<view class=\"quick-access\">\n\t\t<view class=\"quick-access-scroll\">\n\t\t\t<view class=\"quick-access-item\" v-for=\"(item, index) in itemList\" :key=\"index\" @click=\"sendReply(item.title)\">\n\t\t\t\t<image class=\"quick-access-item-bg\" src=\"/static/quick/quick_icon_bg.png\" mode=\"aspectFill\"></image>\n\t\t\t\t<view class=\"quick-access-item-title\">\n\t\t\t\t\t<image :src=\"item.icon\"></image>\n\t\t\t\t\t<text>{{ item.title }}</text>\n\t\t\t\t</view>\n\t\t\t\t<text class=\"quick-access-item-content\">{{ item.content }}</text>\n\t\t\t</view>\n\t\t</view>\n\t</view>\n</template>\n\n<script setup>\n\timport { onMounted, ref } from 'vue';\n\tconst itemList = ref([])\n\t\n\tconst emits = defineEmits(['replySent']);\n\t\n\tconst sendReply = (text) => {\n\t\temits('replySent', text); // 向父组件传递数据\n\t}\n\t\n\tonMounted(() => {\n\t\tinitData()\n\t})\n\t\n\tconst initData = () => {\n\t\titemList.value = [\n\t\t\t{\n\t\t\t\ticon: '/static/quick/quick_icon_yuding.png',\n\t\t\t\ttitle: '预定门票',\n\t\t\t\tcontent: '快速预定天沐温泉门票',\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: '/static/quick/quick_icon_find.png',\n\t\t\t\ttitle: '探索发现',\n\t\t\t\tcontent: '亲子、团建等更多玩法',\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: '/static/quick/quick_icon_call.png',\n\t\t\t\ttitle: '呼叫服务',\n\t\t\t\tcontent: '加床、订麻将机...',\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: '/static/quick/quick_icon_order.png',\n\t\t\t\ttitle: '我的订单',\n\t\t\t\tcontent: '快速查看订单',\n\t\t\t}\n\t\t] \n\t}\n\t\n</script>\n\n<style lang=\"scss\" scoped>\n\t.quick-access {\n\t\twidth: 100%;\n\t\t\n\t\t&-scroll {\n\t\t display: flex;\n\t\t flex-direction: row;\n\t\t overflow-x: auto;\n\t\t white-space: nowrap;\n\t\t -webkit-overflow-scrolling: touch; \n\t\t \n\t\t /* 隐藏滚动条 */\n\t\t scrollbar-width: none; \n\t\t &::-webkit-scrollbar {\n\t\t display: none; \n\t\t }\n\t\t }\n\t\t\n\t\t.quick-access-item {\n\t\t\tflex: 0 0 104px; \n\t\t\tborder-radius: 8px;\n\t\t\tmargin: 4px 4px 8px 4px;\n\t\t\tbox-shadow: 0 2px 5px 0px rgba(0,0,0,0.1);\n\t\t\tpadding: 12px;\n\t\t\tdisplay: inline-flex; \n\t\t\tflex-direction: column;\n\t\t\t\t\t\t\n\t\t\tposition: relative;\n\t\t\t\n\t\t\t&:first-child {\n\t\t\t\tmargin-left: 12px;\n\t\t\t}\n\t\t\t\t\n\t\t\t&:last-child {\n\t\t\t\tmargin-right: 12px;\n\t\t\t}\n\t\t\t\n\t\t\t.quick-access-item-bg {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t\tz-index: 0;\n\t\t\t\tborder-radius: 8px;\n\t\t\t\twidth: 128px;\n\t\t\t\theight: 56px;\n\t\t\t}\n\t\t\t\n\t\t\t.quick-access-item-title {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tz-index: 1;\n\t\t\t\t\n\t\t\t\timage {\n\t\t\t\t\twidth: 16px;\n\t\t\t\t\theight: 16px;\n\t\t\t\t\tmargin-right: 4px;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttext {\n\t\t\t\t\tfont-family: PingFang SC, PingFang SC;\n\t\t\t\t\tfont-weight: 500;\n\t\t\t\t\tfont-size: 12px;\n\t\t\t\t\tcolor: #201F32;\n\t\t\t\t\tline-height: 16px;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t.quick-access-item-content {\n\t\t\t\tz-index: 1;\n\t\t\t\tmargin-top: 4px;\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 10px;\n\t\t\t\tcolor: #678CAD;\n\t\t\t\tline-height: 18px;\n\t\t\t}\n\t\t}\n\t}\n\n</style>\n"],"names":["ref","onMounted"],"mappings":";;;;;;;AAiBC,UAAM,WAAWA,cAAG,IAAC,EAAE;AAEvB,UAAM,QAAQ;AAEd,UAAM,YAAY,CAAC,SAAS;AAC3B,YAAM,aAAa,IAAI;AAAA,IACvB;AAEDC,kBAAAA,UAAU,MAAM;AACf,eAAU;AAAA,IACZ,CAAE;AAED,UAAM,WAAW,MAAM;AACtB,eAAS,QAAQ;AAAA,QAChB;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,QACD;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,QACD;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,QACD;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,MACD;AAAA,IACD;;;;;;;;;;;;;;;;;;;"}
{"version":3,"file":"ChatQuickAccess.js","sources":["pages/chat/ChatQuickAccess.vue"],"sourcesContent":["<template>\r\n\t<view class=\"quick-access\">\r\n\t\t<view class=\"quick-access-scroll\">\r\n\t\t\t<view class=\"quick-access-item\" v-for=\"(item, index) in itemList\" :key=\"index\" @click=\"sendReply(item.title)\">\r\n\t\t\t\t<image class=\"quick-access-item-bg\" src=\"/static/quick/quick_icon_bg.png\" mode=\"aspectFill\"></image>\r\n\t\t\t\t<view class=\"quick-access-item-title\">\r\n\t\t\t\t\t<image :src=\"item.icon\"></image>\r\n\t\t\t\t\t<text>{{ item.title }}</text>\r\n\t\t\t\t</view>\r\n\t\t\t\t<text class=\"quick-access-item-content\">{{ item.content }}</text>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport { onMounted, ref } from 'vue';\r\n\tconst itemList = ref([])\r\n\t\r\n\tconst emits = defineEmits(['replySent']);\r\n\t\r\n\tconst sendReply = (text) => {\r\n\t\temits('replySent', text); // 向父组件传递数据\r\n\t}\r\n\t\r\n\tonMounted(() => {\r\n\t\tinitData()\r\n\t})\r\n\t\r\n\tconst initData = () => {\r\n\t\titemList.value = [\r\n\t\t\t{\r\n\t\t\t\ticon: '/static/quick/quick_icon_yuding.png',\r\n\t\t\t\ttitle: '预定门票',\r\n\t\t\t\tcontent: '快速预定天沐温泉门票',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ticon: '/static/quick/quick_icon_find.png',\r\n\t\t\t\ttitle: '探索发现',\r\n\t\t\t\tcontent: '亲子、团建等更多玩法',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ticon: '/static/quick/quick_icon_call.png',\r\n\t\t\t\ttitle: '呼叫服务',\r\n\t\t\t\tcontent: '加床、订麻将机...',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ticon: '/static/quick/quick_icon_order.png',\r\n\t\t\t\ttitle: '我的订单',\r\n\t\t\t\tcontent: '快速查看订单',\r\n\t\t\t}\r\n\t\t] \r\n\t}\r\n\t\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.quick-access {\r\n\t\twidth: 100%;\r\n\t\t\r\n\t\t&-scroll {\r\n\t\t display: flex;\r\n\t\t flex-direction: row;\r\n\t\t overflow-x: auto;\r\n\t\t white-space: nowrap;\r\n\t\t -webkit-overflow-scrolling: touch; \r\n\t\t \r\n\t\t /* 隐藏滚动条 */\r\n\t\t scrollbar-width: none; \r\n\t\t &::-webkit-scrollbar {\r\n\t\t display: none; \r\n\t\t }\r\n\t\t }\r\n\t\t\r\n\t\t.quick-access-item {\r\n\t\t\tflex: 0 0 104px; \r\n\t\t\tborder-radius: 8px;\r\n\t\t\tmargin: 4px 4px 8px 4px;\r\n\t\t\tbox-shadow: 0 2px 5px 0px rgba(0,0,0,0.1);\r\n\t\t\tpadding: 12px;\r\n\t\t\tdisplay: inline-flex; \r\n\t\t\tflex-direction: column;\r\n\t\t\t\t\t\t\r\n\t\t\tposition: relative;\r\n\t\t\t\r\n\t\t\t&:first-child {\r\n\t\t\t\tmargin-left: 12px;\r\n\t\t\t}\r\n\t\t\t\t\r\n\t\t\t&:last-child {\r\n\t\t\t\tmargin-right: 12px;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t.quick-access-item-bg {\r\n\t\t\t\tposition: absolute;\r\n\t\t\t\ttop: 0;\r\n\t\t\t\tleft: 0;\r\n\t\t\t\tz-index: 0;\r\n\t\t\t\tborder-radius: 8px;\r\n\t\t\t\twidth: 128px;\r\n\t\t\t\theight: 56px;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t.quick-access-item-title {\r\n\t\t\t\tdisplay: flex;\r\n\t\t\t\talign-items: center;\r\n\t\t\t\tz-index: 1;\r\n\t\t\t\t\r\n\t\t\t\timage {\r\n\t\t\t\t\twidth: 16px;\r\n\t\t\t\t\theight: 16px;\r\n\t\t\t\t\tmargin-right: 4px;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\ttext {\r\n\t\t\t\t\tfont-family: PingFang SC, PingFang SC;\r\n\t\t\t\t\tfont-weight: 500;\r\n\t\t\t\t\tfont-size: 12px;\r\n\t\t\t\t\tcolor: #201F32;\r\n\t\t\t\t\tline-height: 16px;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t.quick-access-item-content {\r\n\t\t\t\tz-index: 1;\r\n\t\t\t\tmargin-top: 4px;\r\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\r\n\t\t\t\tfont-weight: 400;\r\n\t\t\t\tfont-size: 10px;\r\n\t\t\t\tcolor: #678CAD;\r\n\t\t\t\tline-height: 18px;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n</style>\r\n"],"names":["ref","onMounted"],"mappings":";;;;;;;AAiBC,UAAM,WAAWA,cAAG,IAAC,EAAE;AAEvB,UAAM,QAAQ;AAEd,UAAM,YAAY,CAAC,SAAS;AAC3B,YAAM,aAAa,IAAI;AAAA,IACvB;AAEDC,kBAAAA,UAAU,MAAM;AACf,eAAU;AAAA,IACZ,CAAE;AAED,UAAM,WAAW,MAAM;AACtB,eAAS,QAAQ;AAAA,QAChB;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,QACD;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,QACD;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,QACD;AAAA,UACC,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,QACT;AAAA,MACD;AAAA,IACD;;;;;;;;;;;;;;;;;;;"}

View File

@ -1 +1 @@
{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["\n\n<script setup>\n import { onLaunch,onShow,onHide } from '@dcloudio/uni-app'\n\n\tonLaunch(() => {\n\t\tconsole.log('App Launch')\n\t})\n\t\n\tonShow(() => {\n\t\tconsole.log('App Show')\n\t})\n\t\n\tonHide(() => {\n\t\tconsole.log('App Hide')\n\t})\n</script>\n\n<style lang=\"scss\">\n\t/* 添加全局样式 */\n\tpage, body, #app {\n\t width: 100vw;\n\t height: 100vh;\n\t}\n\t\n</style>\n","import App from './App'\n\n// #ifndef VUE3\nimport Vue from 'vue'\nimport './uni.promisify.adaptor'\nVue.config.productionTip = false\nApp.mpType = 'app'\nconst app = new Vue({\n ...App\n})\napp.$mount()\n// #endif\n\n// #ifdef VUE3\nimport { createSSRApp } from 'vue'\nexport function createApp() {\n const app = createSSRApp(App)\n return {\n app\n }\n}\n// #endif"],"names":["onLaunch","uni","onShow","onHide","createSSRApp","App"],"mappings":";;;;;;;;;;AAKCA,kBAAAA,SAAS,MAAM;AACdC,oBAAAA,MAAA,MAAA,OAAA,gBAAY,YAAY;AAAA,IAC1B,CAAE;AAEDC,kBAAAA,OAAO,MAAM;AACZD,oBAAAA,MAAA,MAAA,OAAA,iBAAY,UAAU;AAAA,IACxB,CAAE;AAEDE,kBAAAA,OAAO,MAAM;AACZF,oBAAAA,MAAA,MAAA,OAAA,iBAAY,UAAU;AAAA,IACxB,CAAE;;;;;ACAK,SAAS,YAAY;AAC1B,QAAM,MAAMG,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["<script setup>\r\nimport { onLaunch, onShow, onHide } from \"@dcloudio/uni-app\";\r\n\r\nonLaunch(() => {\r\n console.log(\"App Launch\");\r\n});\r\n\r\nonShow(() => {\r\n console.log(\"App Show\");\r\n});\r\n\r\nonHide(() => {\r\n console.log(\"App Hide\");\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\">\r\n/* 添加全局样式 */\r\npage,\r\nbody,\r\n#app {\r\n font-family: PingFang SC, PingFang SC;\r\n background-color: #E9F3F7;\r\n height: 100vh;\r\n width: 100vw;\r\n}\r\n\r\n.mb12 {\r\n margin-bottom: 12px;\r\n}\r\n</style>\r\n","import App from './App'\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\nApp.mpType = 'app'\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n return {\r\n app\r\n }\r\n}\r\n// #endif"],"names":["onLaunch","uni","onShow","onHide","createSSRApp","App"],"mappings":";;;;;;;;;;;;AAGAA,kBAAAA,SAAS,MAAM;AACbC,oBAAAA,MAAY,MAAA,OAAA,gBAAA,YAAY;AAAA,IAC1B,CAAC;AAEDC,kBAAAA,OAAO,MAAM;AACXD,oBAAAA,MAAA,MAAA,OAAA,gBAAY,UAAU;AAAA,IACxB,CAAC;AAEDE,kBAAAA,OAAO,MAAM;AACXF,oBAAAA,MAAA,MAAA,OAAA,iBAAY,UAAU;AAAA,IACxB,CAAC;;;;;ACEM,SAAS,YAAY;AAC1B,QAAM,MAAMG,cAAY,aAACC,SAAG;AAC5B,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}

View File

@ -1 +1 @@
{"version":3,"file":"assets.js","sources":["static/quick/quick_icon_bg.png","static/logo.png","static/input_voice_icon.png","static/input_send_icon.png","static/hello_xiaomu_icon@2x.png","static/hello_logo_icon@2x.png","static/top_bg_icon.png","static/drawer_icon.png","static/wave_icon.png","static/test/mk_img_1.png"],"sourcesContent":["export default \"__VITE_ASSET__ff753b35__\"","export default \"__VITE_ASSET__46719607__\"","export default \"__VITE_ASSET__76f969d6__\"","export default \"__VITE_ASSET__e6bd7a29__\"","export default \"__VITE_ASSET__2eba501c__\"","export default \"__VITE_ASSET__51733f19__\"","export default \"__VITE_ASSET__ead16fdc__\"","export default \"__VITE_ASSET__a9576f2b__\"","export default \"__VITE_ASSET__d889f8a8__\"","export default \"__VITE_ASSET__c4efe7df__\""],"names":[],"mappings":";AAAA,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,aAAA;;;;;;;;;;;"}
{"version":3,"file":"assets.js","sources":["static/quick/quick_icon_bg.png","pages/order/images/back.png","static/logo.png","static/input_voice_icon.png","static/input_send_icon.png","C:/static/icons/clock.png","pages/order/components/GoodsInfo/images/icon_house.png","pages/order/components/NoticeInfo/images/icon_clock.png","pages/order/components/NoticeInfo/images/icon_card.png","pages/order/components/NoticeInfo/images/icon_arrow.png","static/hello_xiaomu_icon@2x.png","static/hello_logo_icon@2x.png","static/top_bg_icon.png","static/drawer_icon.png","static/wave_icon.png","static/test/mk_img_1.png"],"sourcesContent":["export default \"__VITE_ASSET__ff753b35__\"","export default \"__VITE_ASSET__6961004c__\"","export default \"__VITE_ASSET__46719607__\"","export default \"__VITE_ASSET__76f969d6__\"","export default \"__VITE_ASSET__e6bd7a29__\"","export default \"/static/icons/clock.png\"","export default \"__VITE_ASSET__8779a05f__\"","export default \"__VITE_ASSET__50bb3f13__\"","export default \"__VITE_ASSET__c038c52d__\"","export default \"__VITE_ASSET__228274ee__\"","export default \"__VITE_ASSET__2eba501c__\"","export default \"__VITE_ASSET__51733f19__\"","export default \"__VITE_ASSET__ead16fdc__\"","export default \"__VITE_ASSET__a9576f2b__\"","export default \"__VITE_ASSET__d889f8a8__\"","export default \"__VITE_ASSET__c4efe7df__\""],"names":[],"mappings":";AAAA,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,aAAA;;;;;;;;;;;;;;;;;"}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["components/OrderCardItem/index.vue","E:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovWUdDaGF0Q1MvY29tcG9uZW50cy9PcmRlckNhcmRJdGVtL2luZGV4LnZ1ZQ"],"sourcesContent":["<template>\r\n <view class=\"service-order-item\">\r\n <view class=\"order-header\">\r\n <image class=\"order-icon\" src=\"./images/icon_order.png\"></image>\r\n <text class=\"order-title\">温泉早鸟票</text>\r\n <text :class=\"['order-status', `status-${orderStatus}`]\">{{\r\n orderStatusText\r\n }}</text>\r\n </view>\r\n <view class=\"order-details\">\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">订单编号:</text>\r\n <text class=\"detail-value\">{{ orderId }}</text>\r\n </view>\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">游客人数:</text>\r\n <text class=\"detail-value\">{{ touristCount }}人</text>\r\n </view>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref, computed } from \"vue\";\r\n\r\n// Sample data\r\nconst orderId = ref(\"7378400483776544\");\r\nconst touristCount = ref(7);\r\nconst orderStatus = ref(\"pending\"); // Options: 'canceled', 'pending', 'refundProcessing', 'refunded', 'completed'\r\n\r\n// Computed property for order status text\r\nconst orderStatusText = computed(() => {\r\n switch (orderStatus.value) {\r\n case \"canceled\":\r\n return \"已取消\";\r\n case \"pending\":\r\n return \"待确认\";\r\n case \"refundProcessing\":\r\n return \"退款中\";\r\n case \"refunded\":\r\n return \"已退款\";\r\n case \"completed\":\r\n return \"已完成\";\r\n default:\r\n return \"\";\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"./styles/index.scss\";\r\n</style>\r\n","import Component from 'D:/YGChatCS/components/OrderCardItem/index.vue'\nwx.createComponent(Component)"],"names":["ref","computed"],"mappings":";;;;;;AA0BA,UAAM,UAAUA,cAAAA,IAAI,kBAAkB;AACtC,UAAM,eAAeA,cAAAA,IAAI,CAAC;AAC1B,UAAM,cAAcA,cAAAA,IAAI,SAAS;AAGjC,UAAM,kBAAkBC,cAAQ,SAAC,MAAM;AACrC,cAAQ,YAAY,OAAK;AAAA,QACvB,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO;AAAA,MACV;AAAA,IACH,CAAC;;;;;;;;;;;;;AC7CD,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["components/ServiceOrderItem/index.vue","E:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovWUdDaGF0Q1MvY29tcG9uZW50cy9TZXJ2aWNlT3JkZXJJdGVtL2luZGV4LnZ1ZQ"],"sourcesContent":["<template>\r\n <view class=\"service-order-item\">\r\n <view class=\"order-header\">\r\n <image class=\"order-icon\" src=\"./images/icon_order.png\"></image>\r\n <text class=\"order-title\">温泉早鸟票</text>\r\n <text :class=\"['order-status', `status-${orderStatus}`]\">{{\r\n orderStatusText\r\n }}</text>\r\n </view>\r\n <view class=\"order-details\">\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">订单编号:</text>\r\n <text class=\"detail-value\">{{ orderId }}</text>\r\n </view>\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">游客人数:</text>\r\n <text class=\"detail-value\">{{ touristCount }}人</text>\r\n </view>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref, computed } from \"vue\";\r\n\r\n// Sample data\r\nconst orderId = ref(\"7378400483776544\");\r\nconst touristCount = ref(7);\r\nconst orderStatus = ref(\"pending\"); // Options: 'canceled', 'pending', 'refundProcessing', 'refunded', 'completed'\r\n\r\n// Computed property for order status text\r\nconst orderStatusText = computed(() => {\r\n switch (orderStatus.value) {\r\n case \"canceled\":\r\n return \"已取消\";\r\n case \"pending\":\r\n return \"待确认\";\r\n case \"refundProcessing\":\r\n return \"退款中\";\r\n case \"refunded\":\r\n return \"已退款\";\r\n case \"completed\":\r\n return \"已完成\";\r\n default:\r\n return \"\";\r\n }\r\n});\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"./styles/index.scss\";\r\n</style>\r\n","import Component from 'D:/YGChatCS/components/ServiceOrderItem/index.vue'\nwx.createComponent(Component)"],"names":["ref","computed"],"mappings":";;;;;;AA0BA,UAAM,UAAUA,cAAAA,IAAI,kBAAkB;AACtC,UAAM,eAAeA,cAAAA,IAAI,CAAC;AAC1B,UAAM,cAAcA,cAAAA,IAAI,SAAS;AAGjC,UAAM,kBAAkBC,cAAQ,SAAC,MAAM;AACrC,cAAQ,YAAY,OAAK;AAAA,QACvB,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AACH,iBAAO;AAAA,QACT;AACE,iBAAO;AAAA,MACV;AAAA,IACH,CAAC;;;;;;;;;;;;;AC7CD,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["components/ServiceTipsWord/index.vue","E:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovWUdDaGF0Q1MvY29tcG9uZW50cy9TZXJ2aWNlVGlwc1dvcmQvaW5kZXgudnVl"],"sourcesContent":["<template>\r\n <view class=\"service-prompt\">\r\n <view class=\"service-header\">\r\n <text class=\"header-text\">你可以这样问我</text>\r\n <image\r\n class=\"header-icon\"\r\n src=\"./images/icon_refresh.png\"\r\n @click=\"handleRefresh\"\r\n ></image>\r\n </view>\r\n <view class=\"service-buttons\">\r\n <text class=\"service-button\" @click=\"handleClick('bed')\">\r\n 帮我加一张床\r\n </text>\r\n <text class=\"service-button\" @click=\"handleClick('hotWater')\">\r\n 房间热水不够热\r\n </text>\r\n <text class=\"service-button\" @click=\"handleClick('mahjong')\">\r\n 帮忙加一台麻将机\r\n </text>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref } from \"vue\";\r\n\r\nconst handleRefresh = (type) => {\r\n console.log(`Button clicked: ${type}`);\r\n};\r\n\r\nconst handleClick = (type) => {\r\n console.log(`Button clicked: ${type}`);\r\n // Add your logic here based on the type (e.g., 'bed', 'hotWater', 'mahjong')\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"./styles/index.scss\";\r\n</style>\r\n","import Component from 'D:/YGChatCS/components/ServiceTipsWord/index.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;AA2BA,UAAM,gBAAgB,CAAC,SAAS;AAC9BA,oBAAA,MAAA,MAAA,OAAA,8CAAY,mBAAmB,IAAI,EAAE;AAAA,IACvC;AAEA,UAAM,cAAc,CAAC,SAAS;AAC5BA,oBAAA,MAAA,MAAA,OAAA,8CAAY,mBAAmB,IAAI,EAAE;AAAA,IAEvC;;;;;;;;;;;;;ACjCA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["components/TagsGroup/index.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL2NvbXBvbmVudHMvVGFnc0dyb3VwL2luZGV4LnZ1ZQ"],"sourcesContent":["<template>\r\n <view class=\"tags-group\">\r\n <view class=\"tag-item\" v-for=\"(tag, index) in tags\" :key=\"index\">\r\n {{ tag }}\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nconst tags = [\r\n '门票套餐',\r\n '民俗活动',\r\n '车程路况'\r\n];\r\n</script>\r\n\r\n<style scoped>\r\n@import './styles/index.scss';\r\n</style>","import Component from 'D:/www/YGChatCS/components/TagsGroup/index.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;AASA,UAAM,OAAO;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,IACF;;;;;;;;;;;;;;ACZA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["components/create-service-order/index.vue","E:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovWUdDaGF0Q1MvY29tcG9uZW50cy9jcmVhdGUtc2VydmljZS1vcmRlci9pbmRleC52dWU"],"sourcesContent":["<template>\r\n <view class=\"create-service-order\">\r\n <view class=\"create-service-wrapper\">\r\n <view class=\"order-header\">\r\n <text>创建服务工单</text>\r\n </view>\r\n <view class=\"order-content\">\r\n <view class=\"order-item\">\r\n <image src=\"./images/icon_service.png\" class=\"order-icon\"></image>\r\n <text class=\"order-description\">加一台麻将机</text>\r\n </view>\r\n <view class=\"order-line\"></view>\r\n <view class=\"order-details\">\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">房间号:</text>\r\n <text class=\"detail-value\">302</text>\r\n </view>\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">服务时间:</text>\r\n <text class=\"detail-value\">2025-09-12 12:00</text>\r\n </view>\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">联系房客:</text>\r\n <input\r\n class=\"detail-input\"\r\n placeholder=\"请填写联系人\"\r\n v-model=\"contactName\"\r\n />\r\n </view>\r\n <view class=\"detail-item\">\r\n <text class=\"detail-label\">联系电话:</text>\r\n <input\r\n class=\"detail-input\"\r\n placeholder=\"请填写联系电话\"\r\n v-model=\"contactPhone\"\r\n />\r\n </view>\r\n </view>\r\n <button class=\"order-button\" @click=\"handleCall\">立即呼叫</button>\r\n </view>\r\n </view>\r\n\r\n <view class=\"footer-help\">\r\n <image src=\"./images/icon_volume.png\" class=\"help-icon\"></image>\r\n <text class=\"help-text\">没解决问题?给我打电话吧!</text>\r\n <text class=\"help-phone\" @click=\"makePhoneCall\">15185111210</text>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref } from \"vue\";\r\n\r\nconst contactName = ref(\"\");\r\nconst contactPhone = ref(\"\");\r\n\r\nconst handleCall = () => {\r\n // Logic to handle the call action\r\n console.log(\"Calling with:\", contactName.value, contactPhone.value);\r\n};\r\n\r\nconst makePhoneCall = () => {\r\n // 使用 uniapp 的 API 拨打电话\r\n uni.makePhoneCall({\r\n phoneNumber: \"15185111210\",\r\n });\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"./styles/index.scss\";\r\n</style>\r\n","import Component from 'D:/YGChatCS/components/create-service-order/index.vue'\nwx.createComponent(Component)"],"names":["ref","uni"],"mappings":";;;;;;AAqDA,UAAM,cAAcA,cAAAA,IAAI,EAAE;AAC1B,UAAM,eAAeA,cAAAA,IAAI,EAAE;AAE3B,UAAM,aAAa,MAAM;AAEvBC,0BAAY,MAAA,OAAA,mDAAA,iBAAiB,YAAY,OAAO,aAAa,KAAK;AAAA,IACpE;AAEA,UAAM,gBAAgB,MAAM;AAE1BA,oBAAAA,MAAI,cAAc;AAAA,QAChB,aAAa;AAAA,MACjB,CAAG;AAAA,IACH;;;;;;;;;;;;;;;;ACjEA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["components/service-prompt/index.vue","E:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovWUdDaGF0Q1MvY29tcG9uZW50cy9zZXJ2aWNlLXByb21wdC9pbmRleC52dWU"],"sourcesContent":["<template>\r\n <view class=\"service-prompt\">\r\n <view class=\"service-header\">\r\n <text class=\"header-text\">你可以这样问我</text>\r\n <image class=\"header-icon\" src=\"./images/icon_refresh.png\"></image>\r\n </view>\r\n <view class=\"service-buttons\">\r\n <button class=\"service-button\" @click=\"handleClick('bed')\">\r\n 帮我加一张床\r\n </button>\r\n <button class=\"service-button\" @click=\"handleClick('hotWater')\">\r\n 房间热水不够热\r\n </button>\r\n <button class=\"service-button\" @click=\"handleClick('mahjong')\">\r\n 帮忙加一台麻将机\r\n </button>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref } from \"vue\";\r\n\r\nconst handleClick = (type) => {\r\n console.log(`Button clicked: ${type}`);\r\n // Add your logic here based on the type (e.g., 'bed', 'hotWater', 'mahjong')\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import \"./styles/index.scss\";\r\n</style>\r\n","import Component from 'D:/YGChatCS/components/service-prompt/index.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;AAuBA,UAAM,cAAc,CAAC,SAAS;AAC5BA,oBAAA,MAAA,MAAA,OAAA,6CAAY,mBAAmB,IAAI,EAAE;AAAA,IAEvC;;;;;;;;;;;;ACzBA,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatModel.js","sources":["model/ChatModel.ts"],"sourcesContent":["\nexport enum MessageRole {\n\tAI = \"AI\",\n\tME = \"ME\",\n\tOTHER = \"OTHER\"\n}\n\nexport enum MessageType {\n\tTEXT = 'TEXT',\n\tIMAGE = 'IMAGE'\n}\n\n\n\nexport interface TextContent {\n type: MessageType;\n text: string;\n}\n\nexport interface ImageContent {\n type: MessageType;\n url: string;\n}\n\nexport type MessageContent = TextContent | ImageContent;\n\nexport interface ChatModel {\n\tmsgId: string;\n\tmsgType: MessageRole;\n\tmsg: string;\n\tmsgContent?: MessageContent;\n}\n\n\n\n"],"names":["MessageRole","MessageType"],"mappings":";AACY,IAAA,gCAAAA,iBAAL;AACNA,eAAA,IAAK,IAAA;AACLA,eAAA,IAAK,IAAA;AACLA,eAAA,OAAQ,IAAA;AAHGA,SAAAA;AAAA,GAAA,eAAA,CAAA,CAAA;AAMA,IAAA,gCAAAC,iBAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,OAAQ,IAAA;AAFGA,SAAAA;AAAA,GAAA,eAAA,CAAA,CAAA;;;"}
{"version":3,"file":"ChatModel.js","sources":["model/ChatModel.ts"],"sourcesContent":["\r\nexport enum MessageRole {\r\n\tAI = \"AI\",\r\n\tME = \"ME\",\r\n\tOTHER = \"OTHER\"\r\n}\r\n\r\nexport enum MessageType {\r\n\tTEXT = 'TEXT',\r\n\tIMAGE = 'IMAGE'\r\n}\r\n\r\n\r\n\r\nexport interface TextContent {\r\n type: MessageType;\r\n text: string;\r\n}\r\n\r\nexport interface ImageContent {\r\n type: MessageType;\r\n url: string;\r\n}\r\n\r\nexport type MessageContent = TextContent | ImageContent;\r\n\r\nexport interface ChatModel {\r\n\tmsgId: string;\r\n\tmsgType: MessageRole;\r\n\tmsg: string;\r\n\tmsgContent?: MessageContent;\r\n}\r\n\r\n\r\n\r\n"],"names":["MessageRole","MessageType"],"mappings":";AACY,IAAA,gCAAAA,iBAAL;AACNA,eAAA,IAAK,IAAA;AACLA,eAAA,IAAK,IAAA;AACLA,eAAA,OAAQ,IAAA;AAHGA,SAAAA;AAAA,GAAA,eAAA,CAAA,CAAA;AAMA,IAAA,gCAAAC,iBAAL;AACNA,eAAA,MAAO,IAAA;AACPA,eAAA,OAAQ,IAAA;AAFGA,SAAAA;AAAA,GAAA,eAAA,CAAA,CAAA;;;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatCardAI.js","sources":["/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatCardAI.vue?type=component"],"sourcesContent":["import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatCardAI.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"ChatCardAI.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdENhcmRBSS52dWU"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/chat/ChatCardAI.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatCardMine.js","sources":["/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatCardMine.vue?type=component"],"sourcesContent":["import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatCardMine.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"ChatCardMine.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdENhcmRNaW5lLnZ1ZQ"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/chat/ChatCardMine.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"ChatMoreTips.js","sources":["pages/chat/ChatMoreTips.vue","/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatMoreTips.vue?type=component"],"sourcesContent":["<template>\n\t<view class=\"more-tips\">\n\t\t<view class=\"more-tips-scroll\">\n\t\t\t<view class=\"more-tips-item\" v-for=\"(item, index) in itemList\" :key=\"index\">\n\t\t\t\t<text class=\"more-tips-item-title\" @click=\"sendReply(item.title)\">{{ item.title }}</text>\n\t\t\t</view>\n\t\t</view>\n\t</view>\n</template>\n\n<script setup>\n\timport { onMounted, ref } from 'vue';\n\tconst itemList = ref([])\n\tconst emits = defineEmits(['replySent']);\n\n\tconst sendReply = (text) => {\n\t\temits('replySent', text); // 向父组件传递数据\n\t}\n\t\n\tonMounted(() => {\n\t\tinitData()\n\t})\n\t\n\tconst initData = () => {\n\t\titemList.value = [\n\t\t\t{\n\t\t\t\ttitle: '定温泉票',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttitle: '定酒店',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttitle: '优惠套餐',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttitle: '亲子玩法',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttitle: '了解交通',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttitle: '看看酒店',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttitle: '看看美食',\n\t\t\t}\n\t\t] \n\t}\n\t\n</script>\n\n<style lang=\"scss\" scoped>\n\t.more-tips {\n\t\twidth: 100%;\n\t\t\n\t\t&-scroll {\n\t\t display: flex;\n\t\t flex-direction: row;\n\t\t overflow-x: auto;\n\t\t white-space: nowrap;\n\t\t -webkit-overflow-scrolling: touch; \n\t\t \n\t\t /* 隐藏滚动条 */\n\t\t scrollbar-width: none; \n\t\t &::-webkit-scrollbar {\n\t\t display: none; \n\t\t }\n\t\t }\n\t\t\n\t\t.more-tips-item {\n\t\t\tborder-radius: 8px;\n\t\t\tmargin: 4px;\n\t\t\tbox-shadow: 0 2px 5px 0px rgba(0,0,0,0.1);\n\t\t\tbackground-color: #FFFFFF;\n\t\t\tpadding: 2px 12px;\n\t\t\tdisplay: flex; \n\t\t\tflex-direction: column;\n\t\t\tmin-width: 46px;\n\t\t\t\n\t\t\t&:first-child {\n\t\t\t\tmargin-left: 12px;\n\t\t\t}\n\t\t\t\t\n\t\t\t&:last-child {\n\t\t\t\tmargin-right: 12px;\n\t\t\t}\n\t\t\t\n\t\t\t.more-tips-item-title {\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\n\t\t\t\tfont-weight: 500;\n\t\t\t\tfont-size: 12px;\n\t\t\t\tcolor: #00A6FF;\n\t\t\t\tline-height: 24px;\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t}\n\t}\n</style>\n","import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatMoreTips.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted"],"mappings":";;;;;;AAYC,UAAM,WAAWA,cAAG,IAAC,EAAE;AACvB,UAAM,QAAQ;AAEd,UAAM,YAAY,CAAC,SAAS;AAC3B,YAAM,aAAa,IAAI;AAAA,IACvB;AAEDC,kBAAAA,UAAU,MAAM;AACf,eAAU;AAAA,IACZ,CAAE;AAED,UAAM,WAAW,MAAM;AACtB,eAAS,QAAQ;AAAA,QAChB;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,MACD;AAAA,IACD;;;;;;;;;;;;;;;AC9CF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"ChatMoreTips.js","sources":["pages/chat/ChatMoreTips.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdE1vcmVUaXBzLnZ1ZQ"],"sourcesContent":["<template>\r\n\t<view class=\"more-tips\">\r\n\t\t<view class=\"more-tips-scroll\">\r\n\t\t\t<view class=\"more-tips-item\" v-for=\"(item, index) in itemList\" :key=\"index\">\r\n\t\t\t\t<text class=\"more-tips-item-title\" @click=\"sendReply(item.title)\">{{ item.title }}</text>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport { onMounted, ref } from 'vue';\r\n\tconst itemList = ref([])\r\n\tconst emits = defineEmits(['replySent']);\r\n\r\n\tconst sendReply = (text) => {\r\n\t\temits('replySent', text); // 向父组件传递数据\r\n\t}\r\n\t\r\n\tonMounted(() => {\r\n\t\tinitData()\r\n\t})\r\n\t\r\n\tconst initData = () => {\r\n\t\titemList.value = [\r\n\t\t\t{\r\n\t\t\t\ttitle: '定温泉票',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: '定酒店',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: '优惠套餐',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: '亲子玩法',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: '了解交通',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: '看看酒店',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\ttitle: '看看美食',\r\n\t\t\t}\r\n\t\t] \r\n\t}\r\n\t\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.more-tips {\r\n\t\twidth: 100%;\r\n\t\t\r\n\t\t&-scroll {\r\n\t\t display: flex;\r\n\t\t flex-direction: row;\r\n\t\t overflow-x: auto;\r\n\t\t white-space: nowrap;\r\n\t\t -webkit-overflow-scrolling: touch; \r\n\t\t \r\n\t\t /* 隐藏滚动条 */\r\n\t\t scrollbar-width: none; \r\n\t\t &::-webkit-scrollbar {\r\n\t\t display: none; \r\n\t\t }\r\n\t\t }\r\n\t\t\r\n\t\t.more-tips-item {\r\n\t\t\tborder-radius: 8px;\r\n\t\t\tmargin: 4px;\r\n\t\t\tbox-shadow: 0 2px 5px 0px rgba(0,0,0,0.1);\r\n\t\t\tbackground-color: #FFFFFF;\r\n\t\t\tpadding: 2px 12px;\r\n\t\t\tdisplay: flex; \r\n\t\t\tflex-direction: column;\r\n\t\t\tmin-width: 46px;\r\n\t\t\t\r\n\t\t\t&:first-child {\r\n\t\t\t\tmargin-left: 12px;\r\n\t\t\t}\r\n\t\t\t\t\r\n\t\t\t&:last-child {\r\n\t\t\t\tmargin-right: 12px;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t.more-tips-item-title {\r\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\r\n\t\t\t\tfont-weight: 500;\r\n\t\t\t\tfont-size: 12px;\r\n\t\t\t\tcolor: #00A6FF;\r\n\t\t\t\tline-height: 24px;\r\n\t\t\t\ttext-align: center;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</style>\r\n","import Component from 'D:/www/YGChatCS/pages/chat/ChatMoreTips.vue'\nwx.createComponent(Component)"],"names":["ref","onMounted"],"mappings":";;;;;;AAYC,UAAM,WAAWA,cAAG,IAAC,EAAE;AACvB,UAAM,QAAQ;AAEd,UAAM,YAAY,CAAC,SAAS;AAC3B,YAAM,aAAa,IAAI;AAAA,IACvB;AAEDC,kBAAAA,UAAU,MAAM;AACf,eAAU;AAAA,IACZ,CAAE;AAED,UAAM,WAAW,MAAM;AACtB,eAAS,QAAQ;AAAA,QAChB;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,QACD;AAAA,UACC,OAAO;AAAA,QACP;AAAA,MACD;AAAA,IACD;;;;;;;;;;;;;;;AC9CF,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatQuickAccess.js","sources":["pages/chat/ChatQuickAccess.vue?type=page"],"sourcesContent":["import MiniProgramPage from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatQuickAccess.vue'\nwx.createPage(MiniProgramPage)"],"names":["MiniProgramPage"],"mappings":";;AACA,GAAG,WAAWA,gBAAe,eAAA;"}
{"version":3,"file":"ChatQuickAccess.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvY2hhdC9DaGF0UXVpY2tBY2Nlc3MudnVl"],"sourcesContent":["import MiniProgramPage from 'D:/www/YGChatCS/pages/chat/ChatQuickAccess.vue'\nwx.createPage(MiniProgramPage)"],"names":["MiniProgramPage"],"mappings":";;AACA,GAAG,WAAWA,gBAAe,eAAA;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatQuickAccess2.js","sources":["/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatQuickAccess.vue?type=page"],"sourcesContent":["import MiniProgramPage from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatQuickAccess.vue'\nwx.createPage(MiniProgramPage)"],"names":["MiniProgramPage"],"mappings":";;AACA,GAAG,WAAWA,gBAAe,eAAA;"}
{"version":3,"file":"ChatQuickAccess2.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniPage:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdFF1aWNrQWNjZXNzLnZ1ZQ"],"sourcesContent":["import MiniProgramPage from 'D:/www/YGChatCS/pages/chat/ChatQuickAccess.vue'\nwx.createPage(MiniProgramPage)"],"names":["MiniProgramPage"],"mappings":";;AACA,GAAG,WAAWA,gBAAe,eAAA;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatTopBanner.js","sources":["pages/chat/ChatTopBanner.vue","/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatTopBanner.vue?type=component"],"sourcesContent":["<template>\n\t<view class=\"top-bg-content\" :style=\"{marginTop: marginContentTop + 'px'}\">\n\t\t<view class=\"top-item1\">\n\t\t\t<view class=\"top-item1-left\">\n\t\t\t\t<image src=\"/static/hello_xiaomu_icon@2x.png\"></image>\n\t\t\t\t<text>2025/02/10 多云 -36℃</text>\t\t\t\t\t\t \n\t\t\t</view>\n\t\t\t<view class=\"top-item1-right\">\n\t\t\t\t<image src=\"/static/hello_logo_icon@2x.png\" ></image>\n\t\t\t</view>\t\t\t \t\t\t \n\t\t</view>\n\t</view>\n</template>\n\n<script setup>\n\timport { ref } from 'vue';\n\timport { onLoad } from '@dcloudio/uni-app';\n\t\n\tconst statusBarHeight = ref(20);\n\tconst marginContentTop = ref(44) \n\t\n\tonLoad(() => {\n\t uni.getSystemInfo({\n\t success: (res) => {\n\t statusBarHeight.value = res.statusBarHeight || 20;\n\t\t marginContentTop.value += statusBarHeight.value;\n\t }\n\t });\n\t});\n\t\n</script>\n\n<style lang=\"scss\" scoped>\n\t.top-bg-content {\n\t\tdisplay: flex;\n\t\tjustify-content: flex-end;\n\t\talign-items: stretch;\n\t\tflex-direction: column;\n\t}\n\t\n\t.top-item1 {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tjustify-content: space-between;\n\t\tmargin: 0 46px 0 32px;\n\t\t\n\t\t.top-item1-left {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tjustify-content: flex-end;\n\t\t\t\n\t\t\timage {\n\t\t\t\twidth: 118px;\n\t\t\t\theight: 52px;\n\t\t\t}\n\t\t\ttext {\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 12px;\n\t\t\t\tcolor: #1E4C69;\n\t\t\t\tline-height: 24px;\n\t\t\t\ttext-align: justify;\n\t\t\t\tfont-style: normal;\n\t\t\t\ttext-transform: none;\n\t\t\t}\n\t\t}\n\t\t\n\t\t.top-item1-right {\n\t\t\timage {\n\t\t\t\twidth: 96px;\n\t\t\t\theight: 96px;\n\t\t\t}\n\t\t}\n\t}\n</style>","import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatTopBanner.vue'\nwx.createComponent(Component)"],"names":["ref","onLoad","uni"],"mappings":";;;;;;AAkBC,UAAM,kBAAkBA,kBAAI,EAAE;AAC9B,UAAM,mBAAmBA,cAAG,IAAC,EAAE;AAE/BC,kBAAAA,OAAO,MAAM;AACXC,oBAAAA,MAAI,cAAc;AAAA,QAChB,SAAS,CAAC,QAAQ;AAChB,0BAAgB,QAAQ,IAAI,mBAAmB;AAClD,2BAAiB,SAAS,gBAAgB;AAAA,QACxC;AAAA,MACN,CAAI;AAAA,IACJ,CAAE;;;;;;;;;;;AC3BF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"ChatTopBanner.js","sources":["pages/chat/ChatTopBanner.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdFRvcEJhbm5lci52dWU"],"sourcesContent":["<template>\r\n\t<view class=\"top-bg-content\" :style=\"{marginTop: marginContentTop + 'px'}\">\r\n\t\t<view class=\"top-item1\">\r\n\t\t\t<view class=\"top-item1-left\">\r\n\t\t\t\t<image src=\"/static/hello_xiaomu_icon@2x.png\"></image>\r\n\t\t\t\t<text>2025/02/10 多云 -36℃</text>\t\t\t\t\t\t \r\n\t\t\t</view>\r\n\t\t\t<view class=\"top-item1-right\">\r\n\t\t\t\t<image src=\"/static/hello_logo_icon@2x.png\" ></image>\r\n\t\t\t</view>\t\t\t \t\t\t \r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport { ref } from 'vue';\r\n\timport { onLoad } from '@dcloudio/uni-app';\r\n\t\r\n\tconst statusBarHeight = ref(20);\r\n\tconst marginContentTop = ref(44) \r\n\t\r\n\tonLoad(() => {\r\n\t uni.getSystemInfo({\r\n\t success: (res) => {\r\n\t statusBarHeight.value = res.statusBarHeight || 20;\r\n\t\t marginContentTop.value += statusBarHeight.value;\r\n\t }\r\n\t });\r\n\t});\r\n\t\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.top-bg-content {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: flex-end;\r\n\t\talign-items: stretch;\r\n\t\tflex-direction: column;\r\n\t}\r\n\t\r\n\t.top-item1 {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: row;\r\n\t\tjustify-content: space-between;\r\n\t\tmargin: 0 46px 0 32px;\r\n\t\t\r\n\t\t.top-item1-left {\r\n\t\t\tdisplay: flex;\r\n\t\t\tflex-direction: column;\r\n\t\t\tjustify-content: flex-end;\r\n\t\t\t\r\n\t\t\timage {\r\n\t\t\t\twidth: 118px;\r\n\t\t\t\theight: 52px;\r\n\t\t\t}\r\n\t\t\ttext {\r\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\r\n\t\t\t\tfont-weight: 400;\r\n\t\t\t\tfont-size: 12px;\r\n\t\t\t\tcolor: #1E4C69;\r\n\t\t\t\tline-height: 24px;\r\n\t\t\t\ttext-align: justify;\r\n\t\t\t\tfont-style: normal;\r\n\t\t\t\ttext-transform: none;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t.top-item1-right {\r\n\t\t\timage {\r\n\t\t\t\twidth: 96px;\r\n\t\t\t\theight: 96px;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</style>","import Component from 'D:/www/YGChatCS/pages/chat/ChatTopBanner.vue'\nwx.createComponent(Component)"],"names":["ref","onLoad","uni"],"mappings":";;;;;;AAkBC,UAAM,kBAAkBA,kBAAI,EAAE;AAC9B,UAAM,mBAAmBA,cAAG,IAAC,EAAE;AAE/BC,kBAAAA,OAAO,MAAM;AACXC,oBAAAA,MAAI,cAAc;AAAA,QAChB,SAAS,CAAC,QAAQ;AAChB,0BAAgB,QAAQ,IAAI,mBAAmB;AAClD,2BAAiB,SAAS,gBAAgB;AAAA,QACxC;AAAA,MACN,CAAI;AAAA,IACJ,CAAE;;;;;;;;;;;AC3BF,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatTopBgImg.js","sources":["/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatTopBgImg.vue?type=component"],"sourcesContent":["import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatTopBgImg.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"ChatTopBgImg.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdFRvcEJnSW1nLnZ1ZQ"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/chat/ChatTopBgImg.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"ChatTopNavBar.js","sources":["pages/chat/ChatTopNavBar.vue","/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatTopNavBar.vue?type=component"],"sourcesContent":["<template>\n\t<view class=\"nav-bar\">\n\t <view class=\"nav-item\" @click=\"openDrawer\">\n\t <image src=\"/static/drawer_icon.png\" mode=\"aspectFit\" class=\"nav-item-icon\"></image>\n\t </view>\n\t</view>\n</template>\n\n<script setup>\n\timport { defineEmits } from 'vue'\n\t\n\tconst emits = defineEmits(['openDrawer'])\n\t\n\tconst openDrawer = () => {\n\t\temits('openDrawer')\n\t\tconsole.log('=============打开抽屉')\n\t}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.nav-bar {\n\t display: flex;\n\t align-items: center;\n\t height: 44px;\n\t padding: 0 15px;\n\t \n\t .nav-item {\n\t width: 24px;\n\t height: 24px;\n\t margin-right: 10px;\n\t }\n\t .nav-item-icon {\n\t\t width: 100%;\n\t\t height: 100%;\n\t }\n\t}\n</style>","import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/chat/ChatTopNavBar.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;;AAWC,UAAM,QAAQ;AAEd,UAAM,aAAa,MAAM;AACxB,YAAM,YAAY;AAClBA,oBAAAA,yDAAY,mBAAmB;AAAA,IAC/B;;;;;;;;;;ACfF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"ChatTopNavBar.js","sources":["pages/chat/ChatTopNavBar.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2NoYXQvQ2hhdFRvcE5hdkJhci52dWU"],"sourcesContent":["<template>\r\n\t<view class=\"nav-bar\">\r\n\t <view class=\"nav-item\" @click=\"openDrawer\">\r\n\t <image src=\"/static/drawer_icon.png\" mode=\"aspectFit\" class=\"nav-item-icon\"></image>\r\n\t </view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport { defineEmits } from 'vue'\r\n\t\r\n\tconst emits = defineEmits(['openDrawer'])\r\n\t\r\n\tconst openDrawer = () => {\r\n\t\temits('openDrawer')\r\n\t\tconsole.log('=============打开抽屉')\r\n\t}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.nav-bar {\r\n\t display: flex;\r\n\t align-items: center;\r\n\t height: 44px;\r\n\t padding: 0 15px;\r\n\t \r\n\t .nav-item {\r\n\t width: 24px;\r\n\t height: 24px;\r\n\t margin-right: 10px;\r\n\t }\r\n\t .nav-item-icon {\r\n\t\t width: 100%;\r\n\t\t height: 100%;\r\n\t }\r\n\t}\r\n</style>","import Component from 'D:/www/YGChatCS/pages/chat/ChatTopNavBar.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;;AAWC,UAAM,QAAQ;AAEd,UAAM,aAAa,MAAM;AACxB,YAAM,YAAY;AAClBA,oBAAAA,yDAAY,mBAAmB;AAAA,IAC/B;;;;;;;;;;ACfF,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"DrawerHome.js","sources":["pages/drawer/DrawerHome.vue","/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/drawer/DrawerHome.vue?type=component"],"sourcesContent":["<template>\n\t<view class=\"drawer-home\"> \n\t\t<view class=\"drawer-home-nav\">\n\t\t\t<text>抽屉页面</text>\n\t\t</view>\n\t\t\n\t\t<button @click=\"closeDrawer\" type=\"default\">关闭</button>\n\t\t<view class=\"drawer-list\">\n\t\t\t<view v-for=\"(item,index) in 100\" :key=\"index\">\n\t\t\t\t<text class=\"message-item\">{{item}}</text>\n\t\t\t</view>\n\t\t</view>\n\t\t\n\t</view>\n</template>\n\n<script setup>\n\timport { defineEmits } from 'vue'\n\tconst emits = defineEmits(['closeDrawer'])\n\t\n\tconst closeDrawer = () => {\n\t\temits('closeDrawer')\n\t\tconsole.log('=============关闭抽屉')\n\t}\n\t\n</script>\n\n<style lang=\"scss\" scoped>\n\t.drawer-home {\n\t\twidth: 100%;\n\t\theight: 100vh;\n\t\tbackground-color: #E9F3F7;\n\t\tpadding-top: 44px;\n\t\t\n\t\t.drawer-home-nav {\n\t\t\tpadding: 12px;\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\t\n\t\t\ttext {\n\t\t\t\tfont-size: 20px;\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t}\n\t\t\n\t\t.drawer-list {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\theight: 100%;\n\t\t\toverflow-y: scroll;\n\t\t}\n\t\t\n\t\t.message-item {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: center;\n\t\t\tbackground-color: white;\n\t\t\tmargin: 6px 12px;\n\t\t\tpadding: 8px 24px;\n\t\t\tborder-radius: 4px;\n\t\t\tfont-size: 14px;\n\t\t\tbox-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);\n\t\t\t\n\t\t\ttext {\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 14px;\n\t\t\t\tcolor: #333333;\n\t\t\t}\n\t\t}\n\t}\n</style>","import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/drawer/DrawerHome.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;AAkBC,UAAM,QAAQ;AAEd,UAAM,cAAc,MAAM;AACzB,YAAM,aAAa;AACnBA,oBAAAA,wDAAY,mBAAmB;AAAA,IAC/B;;;;;;;;;;;;;;;ACtBF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"DrawerHome.js","sources":["pages/drawer/DrawerHome.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL2RyYXdlci9EcmF3ZXJIb21lLnZ1ZQ"],"sourcesContent":["<template>\r\n\t<view class=\"drawer-home\"> \r\n\t\t<view class=\"drawer-home-nav\">\r\n\t\t\t<text>抽屉页面</text>\r\n\t\t</view>\r\n\t\t\r\n\t\t<button @click=\"closeDrawer\" type=\"default\">关闭</button>\r\n\t\t<view class=\"drawer-list\">\r\n\t\t\t<view v-for=\"(item,index) in 100\" :key=\"index\">\r\n\t\t\t\t<text class=\"message-item\">{{item}}</text>\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t\t\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport { defineEmits } from 'vue'\r\n\tconst emits = defineEmits(['closeDrawer'])\r\n\t\r\n\tconst closeDrawer = () => {\r\n\t\temits('closeDrawer')\r\n\t\tconsole.log('=============关闭抽屉')\r\n\t}\r\n\t\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.drawer-home {\r\n\t\twidth: 100%;\r\n\t\theight: 100vh;\r\n\t\tbackground-color: #E9F3F7;\r\n\t\tpadding-top: 44px;\r\n\t\t\r\n\t\t.drawer-home-nav {\r\n\t\t\tpadding: 12px;\r\n\t\t\tdisplay: flex;\r\n\t\t\tjustify-content: center;\r\n\t\t\t\r\n\t\t\ttext {\r\n\t\t\t\tfont-size: 20px;\r\n\t\t\t\ttext-align: center;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t.drawer-list {\r\n\t\t\tdisplay: flex;\r\n\t\t\tflex-direction: column;\r\n\t\t\theight: 100%;\r\n\t\t\toverflow-y: scroll;\r\n\t\t}\r\n\t\t\r\n\t\t.message-item {\r\n\t\t\tdisplay: flex;\r\n\t\t\tjustify-content: center;\r\n\t\t\tbackground-color: white;\r\n\t\t\tmargin: 6px 12px;\r\n\t\t\tpadding: 8px 24px;\r\n\t\t\tborder-radius: 4px;\r\n\t\t\tfont-size: 14px;\r\n\t\t\tbox-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);\r\n\t\t\t\r\n\t\t\ttext {\r\n\t\t\t\tfont-family: PingFang SC, PingFang SC;\r\n\t\t\t\tfont-weight: 400;\r\n\t\t\t\tfont-size: 14px;\r\n\t\t\t\tcolor: #333333;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</style>","import Component from 'D:/www/YGChatCS/pages/drawer/DrawerHome.vue'\nwx.createComponent(Component)"],"names":["uni"],"mappings":";;;;;;AAkBC,UAAM,QAAQ;AAEd,UAAM,cAAc,MAAM;AACzB,YAAM,aAAa;AACnBA,oBAAAA,wDAAY,mBAAmB;AAAA,IAC/B;;;;;;;;;;;;;;;ACtBF,GAAG,gBAAgB,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"index.js","sources":["pages/index/index.vue","pages/index/index.vue?type=page"],"sourcesContent":["<template>\n\t<ex-drawer ref='drawer' width=\"488\">\n\t\t<!-- 抽屉页面 -->\n\t\t<view class=\"mian-drawer\" slot=\"drawerContent\">\n\t\t\t<drawer-home @closeDrawer=\"closeDrawer\" ></drawer-home>\n\t\t</view>\n\t\t\n\t\t<!-- 主页面 -->\n\t\t<view class=\"mian-container\" slot=\"containerContent\">\n\t\t\t<chat-main-list @openDrawer=\"openDrawer\"></chat-main-list>\n\t\t</view>\n\t</ex-drawer>\t\n\t\n</template>\n\n<script setup>\n\timport { ref, onMounted } from 'vue'\n\timport exDrawer from '@/third/ex-drawer/ex-drawer.vue'\n\timport DrawerHome from '@/pages/drawer/DrawerHome.vue'\n\timport ChatMainList from '../chat/ChatMainList.vue'\n\t\n\tconst drawer = ref()\n\t\n\tconst openDrawer = () => {\n\t\tdrawer.value.open()\n\t}\n\t\n\tconst closeDrawer = () => {\n\t\tdrawer.value.close()\n\t}\n\n</script>\n\n<style lang=\"scss\" scoped>\n\t.mian-drawer{\n\t\theight: 100vh;\n\t\tbackground-color: #ffffff;\n\t}\n\t.mian-container{\n\t\twidth: 100vw;\n\t\theight: 100vh;\n\t\tbackground-color: #ffffff;\n\t}\n</style>","import MiniProgramPage from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref"],"mappings":";;;;;AAiBC,MAAM,WAAW,MAAW;AAC5B,MAAM,aAAa,MAAW;AAC9B,MAAM,eAAe,MAAW;;;;AAEhC,UAAM,SAASA,cAAAA,IAAK;AAEpB,UAAM,aAAa,MAAM;AACxB,aAAO,MAAM,KAAM;AAAA,IACnB;AAED,UAAM,cAAc,MAAM;AACzB,aAAO,MAAM,MAAO;AAAA,IACpB;;;;;;;;;;;;;;;;AC5BF,GAAG,WAAW,eAAe;"}
{"version":3,"file":"index.js","sources":["pages/index/index.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvaW5kZXgvaW5kZXgudnVl"],"sourcesContent":["<template>\r\n\t<ex-drawer ref='drawer' width=\"488\">\r\n\t\t<!-- 抽屉页面 -->\r\n\t\t<view class=\"mian-drawer\" slot=\"drawerContent\">\r\n\t\t\t<drawer-home @closeDrawer=\"closeDrawer\" ></drawer-home>\r\n\t\t</view>\r\n\t\t\r\n\t\t<!-- 主页面 -->\r\n\t\t<view class=\"mian-container\" slot=\"containerContent\">\r\n\t\t\t<chat-main-list @openDrawer=\"openDrawer\"></chat-main-list>\r\n\t\t</view>\r\n\t</ex-drawer>\t\r\n\t\r\n</template>\r\n\r\n<script setup>\r\n\timport { ref, onMounted } from 'vue'\r\n\timport exDrawer from '@/third/ex-drawer/ex-drawer.vue'\r\n\timport DrawerHome from '@/pages/drawer/DrawerHome.vue'\r\n\timport ChatMainList from '../chat/ChatMainList.vue'\r\n\t\r\n\tconst drawer = ref()\r\n\t\r\n\tconst openDrawer = () => {\r\n\t\tdrawer.value.open()\r\n\t}\r\n\t\r\n\tconst closeDrawer = () => {\r\n\t\tdrawer.value.close()\r\n\t}\r\n\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.mian-drawer{\r\n\t\theight: 100vh;\r\n\t\tbackground-color: #ffffff;\r\n\t}\r\n\t.mian-container{\r\n\t\twidth: 100vw;\r\n\t\theight: 100vh;\r\n\t\tbackground-color: #ffffff;\r\n\t}\r\n</style>","import MiniProgramPage from 'D:/www/YGChatCS/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref"],"mappings":";;;;;AAiBC,MAAM,WAAW,MAAW;AAC5B,MAAM,aAAa,MAAW;AAC9B,MAAM,eAAe,MAAW;;;;AAEhC,UAAM,SAASA,cAAAA,IAAK;AAEpB,UAAM,aAAa,MAAM;AACxB,aAAO,MAAM,KAAM;AAAA,IACnB;AAED,UAAM,cAAc,MAAM;AACzB,aAAO,MAAM,MAAO;AAAA,IACpB;;;;;;;;;;;;;;;;AC5BF,GAAG,WAAW,eAAe;"}

View File

@ -1 +1 @@
{"version":3,"file":"OneFeelMK001.js","sources":["/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/module/OneFeelMK001.vue?type=component"],"sourcesContent":["import Component from '/Users/gleen/UniAppProjects/Tianmu/YGTianmuCS/pages/module/OneFeelMK001.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"OneFeelMK001.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL21vZHVsZS9PbmVGZWVsTUswMDEudnVl"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/module/OneFeelMK001.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["pages/order/components/GoodsInfo/index.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL29yZGVyL2NvbXBvbmVudHMvR29vZHNJbmZvL2luZGV4LnZ1ZQ"],"sourcesContent":["<template>\r\n <view class=\"goods-info mb12\">\r\n <view class=\"hotel-header\">\r\n <image class=\"hotel-icon\" src=\"./images/icon_house.png\"></image>\r\n <text class=\"hotel-name\">天沐温泉酒店</text>\r\n </view>\r\n <view class=\"goods-detail\">\r\n <image class=\"goods-image\" :src=\"goodsImage\"></image>\r\n <view class=\"goods-description\">\r\n <text class=\"goods-title\">温泉早鸟票</text>\r\n <text class=\"goods-date\">预定时间5月1日</text>\r\n </view>\r\n </view>\r\n <view class=\"included-services\">\r\n <text class=\"services-title\">包含服务</text>\r\n <view class=\"service-item\">\r\n <text class=\"service-name\">· 精致下午茶</text>\r\n <text class=\"service-quantity\">1份</text>\r\n </view>\r\n <view class=\"service-item\">\r\n <text class=\"service-name\">· 接机或接站</text>\r\n <text class=\"service-quantity\">1份</text>\r\n </view>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nconst goodsImage = 'https://example.com/path/to/image.jpg'; // Replace with actual image URL\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import './styles/index.scss';\r\n</style>","import Component from 'D:/www/YGChatCS/pages/order/components/GoodsInfo/index.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;AA4BA,MAAM,aAAa;;;;;;;;;;;;;AC3BnB,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL29yZGVyL2NvbXBvbmVudHMvTm90aWNlSW5mby9pbmRleC52dWU"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/order/components/NoticeInfo/index.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL29yZGVyL2NvbXBvbmVudHMvT3JkZXJJbmZvL2luZGV4LnZ1ZQ"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/order/components/OrderInfo/index.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL29yZGVyL2NvbXBvbmVudHMvT3JkZXJTdGF0dXNJbmZvL2luZGV4LnZ1ZQ"],"sourcesContent":["import Component from 'D:/www/YGChatCS/pages/order/components/OrderStatusInfo/index.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["pages/order/components/UserInfo/index.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovd3d3L1lHQ2hhdENTL3BhZ2VzL29yZGVyL2NvbXBvbmVudHMvVXNlckluZm8vaW5kZXgudnVl"],"sourcesContent":["<template>\r\n <view class=\"user-info mb12\">\r\n <view class=\"user-info-title\">游客信息</view>\r\n <view class=\"user-info-item\">\r\n <text class=\"label\">联系游客:</text>\r\n <text class=\"value\">{{ contactName }}</text>\r\n </view>\r\n <view class=\"user-info-item\">\r\n <text class=\"label\">联系电话:</text>\r\n <text class=\"value\">{{ contactPhone }}</text>\r\n </view>\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nconst contactName = '李元一';\r\nconst contactPhone = '13172891829';\r\n</script>\r\n\r\n<style scoped>\r\n@import './styles/index.scss';\r\n</style>","import Component from 'D:/www/YGChatCS/pages/order/components/UserInfo/index.vue'\nwx.createComponent(Component)"],"names":[],"mappings":";;AAeA,MAAM,cAAc;AACpB,MAAM,eAAe;;;;;;;;;;;;;ACfrB,GAAG,gBAAgB,SAAS;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"detail.js","sources":["pages/order/detail.vue","C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvb3JkZXIvZGV0YWlsLnZ1ZQ"],"sourcesContent":["<template>\r\n <view class=\"order-detail-wrapper\">\r\n <image class=\"icon-back\" src=\"./images/back.png\" />\r\n <OrderStatusInfo />\r\n <GoodsInfo />\r\n <UserInfo />\r\n <NoticeInfo />\r\n <OrderInfo />\r\n </view>\r\n</template>\r\n\r\n<script setup>\r\nimport OrderStatusInfo from './components/OrderStatusInfo/index.vue'\r\nimport GoodsInfo from './components/GoodsInfo/index.vue'\r\nimport UserInfo from './components/UserInfo/index.vue'\r\nimport NoticeInfo from './components/NoticeInfo/index.vue'\r\nimport OrderInfo from './components/OrderInfo/index.vue'\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import './styles/detail.scss';\r\n</style>","import MiniProgramPage from 'D:/www/YGChatCS/pages/order/detail.vue'\nwx.createPage(MiniProgramPage)"],"names":[],"mappings":";;;;;;AAYA,MAAM,kBAAkB,MAAW;AACnC,MAAM,YAAY,MAAW;AAC7B,MAAM,WAAW,MAAW;AAC5B,MAAM,aAAa,MAAW;AAC9B,MAAM,YAAY,MAAW;;;;;;;;;;;;ACf7B,GAAG,WAAW,eAAe;"}

View File

@ -0,0 +1 @@
{"version":3,"file":"list.js","sources":["C:/Program Files/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvb3JkZXIvbGlzdC52dWU"],"sourcesContent":["import MiniProgramPage from 'D:/www/YGChatCS/pages/order/list.vue'\nwx.createPage(MiniProgramPage)"],"names":[],"mappings":";;;;;;;AACA,GAAG,WAAW,eAAe;"}

File diff suppressed because one or more lines are too long

View File

@ -48,7 +48,7 @@ const _sfc_main = {
e: common_vendor.o(($event) => sendReply(item.title), index)
};
}),
b: common_assets._imports_0$4
b: common_assets._imports_0$8
};
};
}

View File

@ -4,18 +4,20 @@ const common_vendor = require("./common/vendor.js");
if (!Math) {
"./pages/index/index.js";
"./pages/chat/ChatQuickAccess.js";
"./pages/order/list.js";
"./pages/order/detail.js";
}
const _sfc_main = {
__name: "App",
setup(__props) {
common_vendor.onLaunch(() => {
common_vendor.index.__f__("log", "at App.vue:7", "App Launch");
common_vendor.index.__f__("log", "at App.vue:5", "App Launch");
});
common_vendor.onShow(() => {
common_vendor.index.__f__("log", "at App.vue:11", "App Show");
common_vendor.index.__f__("log", "at App.vue:9", "App Show");
});
common_vendor.onHide(() => {
common_vendor.index.__f__("log", "at App.vue:15", "App Hide");
common_vendor.index.__f__("log", "at App.vue:13", "App Hide");
});
return () => {
};

View File

@ -1,7 +1,9 @@
{
"pages": [
"pages/index/index",
"pages/chat/ChatQuickAccess"
"pages/chat/ChatQuickAccess",
"pages/order/list",
"pages/order/detail"
],
"window": {},
"usingComponents": {}

View File

@ -24,7 +24,14 @@
/* 透明度 */
/* 文章场景相关 */
/* 添加全局样式 */
page, body, #app {
width: 100vw;
page,
body,
#app {
font-family: PingFang SC, PingFang SC;
background-color: #E9F3F7;
height: 100vh;
width: 100vw;
}
.mb12 {
margin-bottom: 12px;
}page{--status-bar-height:25px;--top-window-height:0px;--window-top:0px;--window-bottom:0px;--window-left:0px;--window-right:0px;--window-magin:0px}[data-c-h="true"]{display: none !important;}

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 866 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 984 B

Some files were not shown because too many files have changed in this diff Show More