完善茶艺师套餐功能
This commit is contained in:
@ -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) {
|
||||||
|
|||||||
@ -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>
|
||||||
|
|
||||||
|
|||||||
@ -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)
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -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)
|
||||||
})
|
})
|
||||||
|
|||||||
@ -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>
|
||||||
|
|||||||
@ -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;
|
||||||
|
|||||||
@ -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>
|
||||||
|
|||||||
@ -211,6 +211,7 @@ export const OrderType = {
|
|||||||
TeaRoomOrder: 'teaRoomOrder',
|
TeaRoomOrder: 'teaRoomOrder',
|
||||||
TeaSpecialist: 'teaSpecialist',
|
TeaSpecialist: 'teaSpecialist',
|
||||||
ReserveGroup: 'reserveGroup',
|
ReserveGroup: 'reserveGroup',
|
||||||
|
TeaPackage: 'teaPackage',
|
||||||
}
|
}
|
||||||
|
|
||||||
// 包间订单状态数字(根据UI图还缺已退款、待接单、售后中、售后完成)
|
// 包间订单状态数字(根据UI图还缺已退款、待接单、售后中、售后完成)
|
||||||
|
|||||||
Reference in New Issue
Block a user