bug修改

This commit is contained in:
cjl520cy 2026-04-19 15:14:59 +08:00
parent 0c411882d9
commit 7bca1214ae
9 changed files with 929 additions and 825 deletions

View File

@ -156,6 +156,7 @@
weChatRefund: "/sj/workSeatOrder/weChatRefund",
aliRefund: "/sj/workSeatOrder/aliRefund",
startOrder: "/sj/workSeatOrder/start",
sureOrder:"/sj/workSeatOrder/sure",
endOrder: "/sj/workSeatOrder/end",
ordernum: "/sj/workSeatOrder/orderNum",
list: "/sj/workSeatOrder/list",
@ -405,6 +406,7 @@
return;
}
this.clickType = true;
console.log(111,this.activeFirstId,this.urls)
request
.post(this.urls[this.activeFirstId].sureOrder, {
id: order.id,
@ -414,7 +416,7 @@
.then((res) => {
if (res.state != 1 || res.code != 200) {
uni.showToast({
title: res.msg,
title: "开始服务",
icon: "none",
});
} else {
@ -459,7 +461,7 @@
console.log(res);
if (res.state == 1 || res.code == 200) {
uni.showToast({
title: res.msg,
title: "开始服务",
icon: "none",
});
this.searchList();

View File

@ -25,11 +25,11 @@
}}</text>
<text class="service-name-num">×1</text>
</view>
<text class="service-subtitle white-space-nowrap">{{identity==0?'使用场景':'服务范围'}}{{
<!-- <text class="service-subtitle white-space-nowrap">{{identity==0?'使用场景':'服务范围'}}{{
orderInfo.first_class_title +
" " +
orderInfo.second_class_title
}}</text>
}}</text> -->
</view>
<view class="service-price">
<text>单价{{ orderInfo.price }}/10分钟</text>

View File

@ -77,7 +77,7 @@
</text>
<text class="action-btn gray-btn" v-if="order.state == 5 || order.state == 6 || order.state == 7"
@click="orderAgain(order)">
来一单
次购买
</text>
<text class="action-btn gray-btn" v-if="order.state == 5 && order.appeal == 2"
@click="lookComplaint(order)">

View File

@ -1,16 +1,16 @@
<template>
<view class="detail-page">
<!-- 顶部导航栏 -->
<custom-navbar
title="订单详情"
:show-back="true"
title-color="#333333"
backgroundColor="transparent"
></custom-navbar>
<custom-navbar title="订单详情" :show-back="true" title-color="#333333"
backgroundColor="transparent"></custom-navbar>
<view class="content-part">
<!-- 订单状态 -->
<!-- <view class="status-section">
<text class="status-text">{{orderInfo.state == 1 ? '待支付' : orderInfo.state == 2 ? '待接单' : orderInfo.state == 3 ? '待服务' : orderInfo.state == 4 ? '服务中' : orderInfo.state == 5 ? '已完成' : orderInfo.state == 6 ? '待评价' : orderInfo.state == 7 ? '已取消' : ''}}</text>
</view> -->
<view class="status-section">
<text class="status-text">{{orderInfo.state == 1 ? '待支付' : orderInfo.state == 2 ? '待接单' : orderInfo.state == 3 ? '待服务' : orderInfo.state == 4 ? '待完成' : orderInfo.state == 5 ? '已完成' : orderInfo.state == 6 ? '待评价' : orderInfo.state == 7 ? '已取消' : ''}}</text>
<image class="status-section-image" mode="widthFix" :src="stateItem.icon" />
<text class="status-text">{{ stateItem.text }}</text>
</view>
<!-- 到家订单 客户以及手艺人信息 -->
@ -25,9 +25,7 @@
<text class="address">{{userInfo.dependency}}{{userInfo.address}}</text>
</view>
</view>
<image src="/static/images/boder_icon.png"
mode="aspectFill"
class="divider"></image>
<image src="/static/images/boder_icon.png" mode="aspectFill" class="divider"></image>
<view class="staff-info">
<image :src="user_syr.head_photo" mode="aspectFill" class="staff-avatar"></image>
<view class="staff-detail">
@ -56,10 +54,8 @@
</view>
</view>
<view class="service-item">
<image
:src="orderInfo.server_photo[0]"
v-if="orderInfo.server_photo && orderInfo.server_photo.length != 0"
mode="aspectFill"
<image :src="orderInfo.server_photo[0]"
v-if="orderInfo.server_photo && orderInfo.server_photo.length != 0" mode="aspectFill"
class="service-image"></image>
<view class="service-info">
<text class="service-name text-overflow">{{orderInfo.server_title}}</text>
@ -76,7 +72,7 @@
<!-- 订单信息 -->
<view class="order-card">
<text class="card-title">订单信息</text>
<view class="info-item">
<view class="info-item" v-if="orderInfo.state!=7">
<text class="label">服务码</text>
<text class="value">{{orderInfo.server_code}}</text>
</view>
@ -112,11 +108,13 @@
<text class="label">接单时间</text>
<text class="value">{{ orderInfo.get_time }}</text>
</view>
<view class="info-item" v-if="orderInfo.state != 1 && orderInfo.state != 2 && orderInfo.state != 3 && orderInfo.state != 7">
<view class="info-item"
v-if="orderInfo.state != 1 && orderInfo.state != 2 && orderInfo.state != 3 && orderInfo.state != 7">
<text class="label">开始服务时间</text>
<text class="value">{{orderInfo.server_start_time}}</text>
</view>
<view class="info-item" v-if="orderInfo.state != 1 && orderInfo.state != 2 && orderInfo.state != 3 && orderInfo.state != 4 && orderInfo.state != 7">
<view class="info-item"
v-if="orderInfo.state != 1 && orderInfo.state != 2 && orderInfo.state != 3 && orderInfo.state != 4 && orderInfo.state != 7">
<text class="label">服务完成时间</text>
<text class="value">{{orderInfo.server_end_time}}</text>
</view>
@ -128,36 +126,26 @@
<!-- <image src="/static/images/tell_icon.png" class="tell-icon"></image>
<text class="contact-text">联系TA</text> -->
</view>
<view class="handel-button btn-border"
@click="cancelService"
v-if="orderInfo.state == 1">
<view class="handel-button btn-border" @click="cancelService" v-if="orderInfo.state == 1">
<text class="button-text">取消订单</text>
</view>
<view class="handel-button btn-border"
@click="refoundService"
<view class="handel-button btn-border" @click="refoundService"
v-if="orderInfo.state == 2 || orderInfo.state == 3">
<text class="button-text">申请退款</text>
</view>
<view class="handel-button btn-bg"
@click="payOrder"
v-if="orderInfo.state == 1">
<view class="handel-button btn-bg" @click="payOrder" v-if="orderInfo.state == 1">
<text class="button-text">立即支付</text>
</view>
<view class="handel-button btn-bg"
@click="reviewOrder"
v-if="orderInfo.state == 6">
<view class="handel-button btn-bg" @click="reviewOrder" v-if="orderInfo.state == 6">
<text class="button-text">评价</text>
</view>
<view class="handel-button btn-bg"
@click="orderAgain"
v-if="orderInfo.state == 5 || orderInfo.state == 6">
<text class="button-text">再来一单</text>
<view class="handel-button btn-bg" @click="orderAgain" v-if="orderInfo.state == 5 || orderInfo.state == 6">
<text class="button-text">再次购买</text>
</view>
</view>
<!-- 获取权限提示匡内容 -->
<view class="permission"
:class="{ transform: isShowPer }">
<view class="permission" :class="{ transform: isShowPer }">
<view class="per-tit">美融融plus 对拨打电话权限申请说明</view>
<view class="per-cont">当您需要联系商家或平台客服的时候需要获取拨打电话权限</view>
</view>
@ -188,16 +176,63 @@ export default {
async onLoad(options) {
this.id = options.id
if (this.id) {
const userInfo = await request.post('/user/getuser',{type: 3});
const userInfo = await request.post('/user/getuser', {
type: 3
});
this.userInfo = userInfo.data;
//
this.getOrderDetail()
}
},
computed: {
stateItem() {
const list = [{
text: "待支付",
icon: "/static/images/icons/pay.png",
state: "1"
},
{
text: "待接单",
icon: "/static/images/icons/pending.png",
state: "2",
},
{
text: "待服务",
icon: "/static/images/icons/pendingService.png",
state: "3",
},
{
text: "服务中",
icon: "/static/images/icons/pendingService.png",
state: "4",
},
{
text: "已完成",
icon: "/static/images/icons/payOk.png",
state: "5"
},
{
text: "待评价",
icon: "/static/images/icons/pending.png",
state: "6",
},
{
text: "已取消",
icon: "/static/images/evaluate/cancel.png",
state: "7"
},
];
const item = list.find((it) => it.state == this.orderInfo.state) || {};
return item;
},
},
methods: {
getOrderDetail() {
request.post('/sj/sjorderdetail',{id: this.id,sjid: this.userInfo.id}).then(res=>{
request.post('/sj/sjorderdetail', {
id: this.id,
sjid: this.userInfo.id
}).then(res => {
this.orderInfo = res.data;
this.user_syr = res.data.user_syr;
console.log(this.orderInfo)
@ -236,7 +271,9 @@ export default {
// }
this.isShowPer = true;
// 1.
const { granted } = await permissionUtils.checkPermission('phone', '需要拨打电话权限,方便您联系商家或平台');
const {
granted
} = await permissionUtils.checkPermission('phone', '需要拨打电话权限,方便您联系商家或平台');
if (granted) {
uni.makePhoneCall({
phoneNumber: this.orderInfo.customer.phone //
@ -296,7 +333,9 @@ export default {
// this.isShowPer = true;
// }
// 1.
const { granted } = await permissionUtils.checkPermission('phone', '需要拨打电话权限,方便您联系商家或平台');
const {
granted
} = await permissionUtils.checkPermission('phone', '需要拨打电话权限,方便您联系商家或平台');
if (granted) {
uni.makePhoneCall({
phoneNumber: phone //
@ -431,11 +470,12 @@ export default {
}
</script>
<style>
<style lang="less">
page {
position: relative;
background-color: #fff;
}
.detail-page::before {
content: '';
position: fixed;
@ -449,12 +489,14 @@ page {
background-repeat: no-repeat;
z-index: 1;
}
.content-part {
position: relative;
left: 0;
right: 0;
z-index: 9;
}
/* 导航栏样式 */
.custom-nav {
position: fixed;
@ -496,28 +538,28 @@ page {
color: #FFFFFF;
}
/* 状态区域 */
/* 状态区域 */
.status-section {
/* background: linear-gradient(135deg, #FF6B9D 0%, #FF4D6B 100%); */
height: 160rpx;
display: flex;
align-items: center;
justify-content: center;
/* padding-top: 88rpx; */
/* #ifdef APP-PLUS || MP-WEIXIN */
/* padding-top: calc(88rpx + var(--status-bar-height)); */
/* #endif */
gap: 20rpx;
padding-top: 55rpx;
padding-bottom: 50rpx;
.status-section-image {
width: 52rpx;
}
}
.status-text {
font-size: 40rpx;
color: #FFFFFF;
font-weight: 500;
font-size: 44rpx;
color: #333333;
font-weight: 600;
}
/* 服务人员卡片 */
.service-card {
margin: 24rpx;
@ -614,6 +656,7 @@ page {
background-color: #E8101E;
border-radius: 32rpx;
}
/* 门店信息 */
.service-shop {
margin: 24rpx;
@ -626,26 +669,31 @@ page {
justify-content: flex-start;
align-items: center;
}
.shop-info {
flex: 1;
}
.shop-info1 {
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: center;
}
.shop-logo {
width: 96rpx;
height: 96rpx;
border-radius: 48rpx;
margin-right: 18rpx;
}
.shop-name {
font-size: 24rpx;
font-weight: 500;
color: #3D3D3D;
}
.shop-info2 {
display: flex;
flex-flow: column wrap;
@ -653,26 +701,34 @@ page {
align-items: flex-start;
margin-top: 16rpx;
}
.shop-time {
margin-bottom: 8rpx;
}
.shop-time,.shop-address {
.shop-time,
.shop-address {
font-size: 24rpx;
color: #999999;
}
.shop-btns {
display: flex;
flex-flow: row nowrap;
justify-content: flex-end;
align-items: center;
}
.btn-map,.btn-phone {
.btn-map,
.btn-phone {
width: 64rpx;
height: 64rpx;
}
.btn-map {
margin-right: 48rpx;
}
/* 预约信息卡片 */
.booking-card {
margin: 24rpx;
@ -700,10 +756,12 @@ page {
color: #333333;
padding-right: 4rpx;
}
.update-change {
font-size: 28rpx;
color: #666666;
}
.service-item {
display: flex;
flex-flow: row nowrap;
@ -755,15 +813,18 @@ page {
padding-top: 24rpx;
border-top: 1rpx solid rgba(0, 0, 0, 0.05);
}
.real-lable {
font-size: 24rpx;
color: #333333;
}
.real-price {
font-size: 32rpx;
font-weight: 500;
color: #E8101E;
}
/* 订单信息卡片 */
.order-card {
margin: 24rpx;
@ -808,21 +869,25 @@ page {
/* #endif */
z-index: 999;
}
.contact-button {
display: flex;
flex-flow: column nowrap;
justify-content: center;
align-items: center;
}
.contact-text {
font-size: 24rpx;
color: #666666;
}
.tell-icon {
width: 36rpx;
height: 36rpx;
margin-right: 8rpx;
}
.handel-button {
width: 240rpx;
height: 64rpx;
@ -832,25 +897,30 @@ page {
align-items: center;
border-radius: 32rpx;
}
.btn-border {
border: 1rpx solid #E8101E;
background-color: #fff;
box-sizing: border-box;
margin-left: 20rpx;
}
.btn-bg {
background-color: #E8101E;
}
.button-text {
font-size: 28rpx;
font-weight: 400;
color: #FFFFFF;
}
.btn-border .button-text {
font-size: 28rpx;
font-weight: 400;
color: #E8101E;
}
/* APP适配 */
/* #ifdef APP-PLUS */
.permission.transform {
@ -858,12 +928,18 @@ page {
opacity: 1;
visibility: visible;
}
.detail-page {
padding-bottom: 140rpx;
}
/* #endif */
/* 平台适配 */
/* #ifdef H5 */
.detail-page {
padding-bottom: calc(120rpx + env(safe-area-inset-bottom));
}
/* #endif */
/* #ifdef MP-WEIXIN */
@ -871,5 +947,6 @@ page {
padding-top: calc(var(--status-bar-height) + constant(safe-area-inset-top));
padding-top: calc(var(--status-bar-height) + env(safe-area-inset-top));
}
/* #endif */
</style>

View File

@ -136,8 +136,11 @@
methods: {
todetail() {
console.log('详情');
// uni.navigateTo({
// url: '/pages/shop/skill-detail'
// })
uni.navigateTo({
url: '/pages/shop/skill-detail'
url: `/pages/agreement/agreement?type=${this.type==1?22:23}&title=${this.type==1?`相册配置说明`:`视频配置说明`}`
})
},
getItem(item) {

View File

@ -1224,7 +1224,7 @@
}
</script>
<style scoped>
<style scoped lang="less">
.store-info-page {
padding-bottom: 20rpx;
}
@ -1367,6 +1367,7 @@
.label-wrapper {
display: inline-flex;
align-items: center;
transform: translateY(4rpx);
}
.label {
@ -1388,6 +1389,11 @@
align-items: flex-start;
justify-content: space-between;
padding: 24rpx;
.label {
transform: translateY(4rpx);
}
}
/* 左侧标签:固定宽度,不换行 */

View File

@ -653,10 +653,13 @@
//
startOrder(e, order) {
// app
// #ifdef APP-PLUS
e.preventDefault();
e.stopPropagation();
// #endif
if (order.team_buy_order_state == 1) {
uni.showToast({
title: "订单当前处于拼团中,服务将在拼团完成后才开启~",
icon: "none",
});
return
}
this.showInput = true
},
//
@ -664,7 +667,9 @@
this.showInput = false;
if (this.clickType) return;
this.clickType = true;
uni.showLoading({ title: '服务开始中...' });
uni.showLoading({
title: '服务开始中...'
});
request.post(this.urls[this.serviceType].startOrder, {
id: this.orderInfo.id,
@ -672,7 +677,10 @@
sjid: this.userInfo.id
}).then(res => {
if (res.state == 1) {
uni.showToast({ title: res.msg, icon: 'success' });
uni.showToast({
title: res.msg,
icon: 'success'
});
// 4
this.orderInfo.state = 4;
//
@ -687,11 +695,17 @@
prevPage.$vm.getOrderList?.();
}
} else if (res.state == 2) {
uni.showToast({ title: res.msg, icon: 'none' });
uni.showToast({
title: res.msg,
icon: 'none'
});
}
}).catch(err => {
console.error('开始服务失败', err);
uni.showToast({ title: '操作失败', icon: 'none' });
uni.showToast({
title: '操作失败',
icon: 'none'
});
}).finally(() => {
this.clickType = false;
uni.hideLoading();
@ -1695,6 +1709,7 @@
text-align: left;
font-style: normal;
}
.coupon-title {
width: 160rpx;
height: 40rpx;
@ -1706,5 +1721,6 @@
text-align: left;
font-style: normal;
}
.coupon-item {}
</style>

View File

@ -249,7 +249,7 @@
console.log(res);
if (res.state == 1 || res.code == 200) {
uni.showToast({
title: res.msg,
title: "开始服务",
icon: "none",
});
this.$refs.groupRef.manualRefresh(this.listQuery);

View File

@ -126,7 +126,7 @@
"待支付",
"待接单",
"待开始",
"进行中",
"待完成",
"已完成",
"已评价",
"已取消",