完善茶艺师套餐功能

This commit is contained in:
wangxiaowei
2026-03-28 19:05:32 +08:00
parent 4729dc5ae8
commit 61d0ca2bd1
8 changed files with 38 additions and 20 deletions

View File

@ -104,6 +104,7 @@ export interface ICreateTeaSpecialistOrderParams {
tea_id: string tea_id: string
user_coupon_id: number user_coupon_id: number
server_number: number server_number: number
team_group_id?: number
} }
export function createTeaSpecialistOrder(data: ICreateTeaSpecialistOrderParams) { export function createTeaSpecialistOrder(data: ICreateTeaSpecialistOrderParams) {

View File

@ -12,7 +12,7 @@
<wd-navbar safeAreaInsetTop custom-class='!bg-[#F6F7F8]' :bordered="false" placeholder> <wd-navbar safeAreaInsetTop custom-class='!bg-[#F6F7F8]' :bordered="false" placeholder>
<template #left> <template #left>
<view class="h-48rpx flex items-center"> <view class="h-48rpx flex items-center">
<view class="mt-4rpx" @click="router.navigateBack()"> <view class="mt-4rpx" @click="OrderList.handleBack()">
<wd-icon name="thin-arrow-left" size="30rpx"></wd-icon> <wd-icon name="thin-arrow-left" size="30rpx"></wd-icon>
</view> </view>
<view class="search-box"> <view class="search-box">
@ -128,10 +128,10 @@
// 返回上一页 // 返回上一页
handleBack: () => { handleBack: () => {
uni.navigateBack({ router.navigateBack().catch(err => {
delta: 1 router.switchTab('/pages/my/my')
}) })
}, }
} }
</script> </script>

View File

@ -162,7 +162,7 @@
<script lang="ts" setup> <script lang="ts" setup>
import { useToast } from 'wot-design-uni' import { useToast } from 'wot-design-uni'
import { router, previewImage } from '@/utils/tools' import { router, previewImage, replaceNewLine } from '@/utils/tools'
import PriceFormat from '@/components/PriceFormat.vue' import PriceFormat from '@/components/PriceFormat.vue'
import { getTeaPackageDetail } from '@/api/tea-package' import { getTeaPackageDetail } from '@/api/tea-package'
@ -207,6 +207,8 @@ const Detail = {
// 包间详情 // 包间详情
const res = await getTeaPackageDetail(teaPackageId.value) const res = await getTeaPackageDetail(teaPackageId.value)
detail.value = res[0] detail.value = res[0]
detail.value.introduce_details = replaceNewLine(detail.value.introduce_details)
detail.value.returd_details = replaceNewLine(detail.value.returd_details)
}, },
/** /**

View File

@ -960,7 +960,8 @@ const Reserve = {
is_teacup: teaUsageValue.value, // 是否需要茶具 0客户自备 1茶艺师提供 is_teacup: teaUsageValue.value, // 是否需要茶具 0客户自备 1茶艺师提供
tea_id: selectedTea.value.join(','), // 茶叶商品ids 多个逗号隔开 tea_id: selectedTea.value.join(','), // 茶叶商品ids 多个逗号隔开
user_coupon_id: selectedCoupon.value.id, // 优惠券id默认传0 user_coupon_id: selectedCoupon.value.id, // 优惠券id默认传0
server_number: servicePeople.value server_number: servicePeople.value,
team_group_id: teaPackageId.value, // 茶艺师套餐ID
} }
try { try {
@ -974,13 +975,10 @@ const Reserve = {
isSubmitting.value = false isSubmitting.value = false
if (params.result) { if (params.result) {
uni.redirectTo({ // 结果通知改为TeaPackage
url: `/pages/notice/reserve?type=${OrderType.TeaSpecialist}&orderId=${params.orderId}` router.reLaunch(`/pages/notice/reserve?type=${OrderType.TeaPackage}&orderId=${params.orderId}&teaPackageTitle=${teaPackage.value.title}`)
})
} else { } else {
uni.redirectTo({ router.switchTab('/pages/index/index')
url: '/bundle/order/tea-specialist/order-list'
})
} }
}, 1000) }, 1000)
}) })

View File

@ -15,8 +15,8 @@
<!-- 支付信息 --> <!-- 支付信息 -->
<view class="mt-56rpx text-center"> <view class="mt-56rpx text-center">
<view class="text-28rpx leading-40rpx text-#606266">{{ title }}</view> <view class="text-28rpx leading-40rpx text-#606266" v-if="!teaPackageTitle">{{ title }}</view>
<!-- <view class="text-28rpx leading-40rpx text-#606266" v-if="teaPackageTitle">茶艺师套餐-{{ teaPackageTitle }}</view> --> <view class="text-28rpx leading-40rpx text-#606266" v-if="teaPackageTitle">茶艺师套餐-{{ teaPackageTitle }}</view>
<view class="mt-24rpx"> <view class="mt-24rpx">
<template> <template>
<price-format color="#303133" :first-size="44" :second-size="44" :subscript-size="28" :price="money"></price-format> <price-format color="#303133" :first-size="44" :second-size="44" :subscript-size="28" :price="money"></price-format>

View File

@ -67,11 +67,11 @@
</view> </view>
<view class="package-row px-30rpx pb-30rpx"> <view class="package-row px-30rpx pb-30rpx">
<view class="flex flex-wrap justify-between"> <view class="grid grid-cols-3 gap-x-0 gap-y-20rpx">
<view <view
v-for="(item, idx) in teaPackageList" v-for="(item, idx) in teaPackageList"
:key="item.id || idx" :key="item.id || idx"
class="w-216rpx rounded-20rpx pb-20rpx box-border mb-20rpx" class="w-216rpx rounded-20rpx pb-20rpx box-border"
:style="{ :style="{
background: idx === 0 background: idx === 0
? 'linear-gradient( 180deg, #EAFFF9 0%, #F6F7F9 100%)' ? 'linear-gradient( 180deg, #EAFFF9 0%, #F6F7F9 100%)'
@ -556,10 +556,10 @@ page {
.package-row { .package-row {
width: 100%; width: 100%;
} }
.package-row .flex { .package-row .grid {
display: flex; display: grid;
flex-wrap: wrap; grid-template-columns: repeat(3, 1fr);
justify-content: space-between; gap: 0 0;
} }
.package-row .w-216rpx { .package-row .w-216rpx {
margin-right: 0; margin-right: 0;

View File

@ -44,6 +44,15 @@
</template> </template>
</reserve-notice> </reserve-notice>
</view> </view>
<view v-if="type == OrderType.TeaPackage">
<reserve-notice title="套餐购买" desc="套餐购买成功">
<template #layout>
<view class="pb-22rpx mt-40rpx mx-30rpx flex justify-between items-center text-[32rpx] text-center">
<view class='bg-[#4C9F44] text-[#fff] rounded-8rpx h-90rpx leading-90rpx w-632rpx' @click="reserve.handleToTeaSpecialistOrder">完成</view>
</view>
</template>
</reserve-notice>
</view>
</view> </view>
</view> </view>
@ -107,6 +116,13 @@
handleRoomDone: () => { handleRoomDone: () => {
router.redirectTo('/bundle_b/pages/tea-specialist/list') router.redirectTo('/bundle_b/pages/tea-specialist/list')
// router.switchTab('/pages/index/index') // router.switchTab('/pages/index/index')
},
/**
* 套餐购买关闭所有页面跳转到茶艺师列表
*/
handleToTeaSpecialistOrder: () => {
router.reLaunch('/bundle/order/tea-specialist/order-list')
} }
} }
</script> </script>

View File

@ -211,6 +211,7 @@ export const OrderType = {
TeaRoomOrder: 'teaRoomOrder', TeaRoomOrder: 'teaRoomOrder',
TeaSpecialist: 'teaSpecialist', TeaSpecialist: 'teaSpecialist',
ReserveGroup: 'reserveGroup', ReserveGroup: 'reserveGroup',
TeaPackage: 'teaPackage',
} }
// 包间订单状态数字(根据UI图还缺已退款、待接单、售后中、售后完成) // 包间订单状态数字(根据UI图还缺已退款、待接单、售后中、售后完成)