1.20(服务订单,详情,申请退款

This commit is contained in:
Hong
2024-01-20 18:39:25 +08:00
parent b63442dd0f
commit 60d27c97c3
10 changed files with 351 additions and 272 deletions

View File

@@ -23,6 +23,13 @@ export function getIntegralOrderDetail(id) {
method: 'get',
})
}
//积分商品订单取消 /api/front/card/product/order/cancel/{orderNo}
export function getIntegralOrderCancel(orderNo) {
return request({
url: `/api/front/integral/product/order/cancel/${orderNo}`,
method: 'post',
})
}
//卡券订单列表 /api/front/card/product/order/list
export function getCardOrderList(params) {
return request({
@@ -44,4 +51,48 @@ export function getCardOrderCancel(orderNo) {
url: `/api/front/card/product/order/cancel/${orderNo}`,
method: 'post',
})
}
// 卡券订单申请退款/api/front/card/product/order/refund
export function getCardOrderRefund(data) {
return request({
url: `/api/front/card/product/order/refund`,
method: 'post',
data
})
}
//卡券订单退款详情/api/front/card/product/order/refund/detail/{orderNo}
export function getCardOrderRefundDetail(orderNo) {
return request({
url: `/api/front/card/product/order/refund/detail/${orderNo}`,
method: 'get',
})
}
//通过卡券订单编号获取卡券可使用门店列表 /api/front/card/product/order/merchant/list/{id}
export function getCardMerchantList(orderNo) {
return request({
url: `/api/front/card/product/order/merchant/list/${orderNo}`,
method: 'get',
})
}
//删除工单 /api/front/car/user/center/delete/reservation/order/{id}
export function deleteCenterOrder(id) {
return request({
url: `/api/front/car/user/center/delete/reservation/order/${id}`,
method: 'post',
})
}
//取消工单 /api/front/car/user/center/cancel/reservation/order/{id}
export function getCancelOrderCancel(id) {
return request({
url: `/api/front/car/user/center/cancel/reservation/order/${id}`,
method: 'post',
})
}
//工单详情 /api/front/car/user/center/info
export function getCancelOrderDetail(params) {
return request({
url: `/api/front/car/user/center/info`,
method: 'get',
params
})
}

View File

@@ -3,8 +3,6 @@
module.exports = {
//正式
baseUrl: 'https://mall.lianxianke.cn/car_app_api',
// 测试
//baseUrl: 'https://mall.lianxianke.cn/car_app_api',
TOKENNAME: 'Authori-zation',
//薛磊测试
// baseUrl: 'http://192.168.31.226:8081/car_app_api',

View File

@@ -428,7 +428,23 @@
{
"path": "pages/mine/my_order/serveOrder/serve_particulars",
"style": {
"navigationBarTitleText": "服务订单详情",
"navigationBarTitleText": "服务订单卡券详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "pages/mine/my_order/serveOrder/integral_particulars",
"style": {
"navigationBarTitleText": "服务订单积分详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "pages/mine/my_order/serveOrder/work_particulars",
"style": {
"navigationBarTitleText": "服务订单工单详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}

View File

@@ -4,7 +4,7 @@
<view class="f-jcsb card-detail-user">
<view class="f-a-i">
<image :src="cardData.merImage" mode=""></image>
<text class="ml-2">{{cardData.merName}}</text>
<text class="ml-2">{{cardData.merName?cardData.merName:'未选择门店'}}</text>
</view>
<view class="card-detail-state">{{cardData.isUsed==1?'已使用':'待使用'}}</view>
</view>
@@ -21,7 +21,7 @@
</view>
<view class="card-detail-qr-code">
<view class="card-detail-qr-code-image" style="">
<image style="" :src="verificationImage" mode=""></image>
<image style="" :src="verificationImage" mode="" @click="previewImageFn(verificationImage)"></image>
<view v-if="cardData.isUsed==1" class="card-detail-qr-code-masking">已使用</view>
</view>
<view :class="[cardData.isUsed==1?'strikethrough':'']">
@@ -41,16 +41,23 @@
return {
cardData: {},
userInfo: {},
verificationImage:''
verificationImage: ''
}
},
methods: {
//预览二维码
previewImageFn(url) {
uni.previewImage({
urls: [url]
});
},
//详情
cardUserInfoFn(id) {
cardUserInfo(id).then(res => {
console.log(res, '卡券详情');
this.cardData = res.data
this.verificationImage=`https://wxapp.nianxiang-tech.com/prod-api/ums/login/qrcode?content=${this.cardData.verificationCode}`
this.verificationImage =
`https://wxapp.nianxiang-tech.com/prod-api/ums/login/qrcode?content=${this.cardData.verificationCode}`
})
}
},

View File

@@ -2,18 +2,17 @@
<view>
<view class="padd-marg-cen">
<u--form labelPosition="left" :model="model1" :rules="rules" ref="uForm">
<u-form-item label="退款原因" prop="userInfo.refundReason" @click="showRefund = true" ref="item1"
labelWidth="120">
<u--input v-model="model1.userInfo.refundReason" disabled disabledColor="#ffffff" placeholder="请选择"
<u-form-item label="退款原因" prop="userInfo.text" @click="showRefund = true" ref="item1" labelWidth="120">
<u--input v-model="model1.userInfo.text" disabled disabledColor="#ffffff" placeholder="请选择"
border="none" inputAlign="right"></u--input>
<u-icon slot="right" name="arrow-right"></u-icon>
</u-form-item>
<view class="f-jcsb" style="padding: 20rpx 0;">
<view style="font-size: 30rpx;">退款金额</view>
<view style="margin-right: 24rpx;font-size: 32rpx;font-weight: 500;color: #13AFA8;">
{{model1.userInfo.refundPrice?model1.userInfo.refundPrice:666}}</view>
</view>
<u-form-item label="退款金额" prop="userInfo.refundReason" @click="showRefund = true" ref="item1"
labelWidth="120">
<view style="font-size: 32rpx;font-weight: 500;color: #13AFA8;text-align: end;">
{{model1.userInfo.payPrice?model1.userInfo.payPrice:'--'}}</view>
</u-form-item>
</u--form>
<u-action-sheet :show="showRefund" :actions="RefundActions" title="服务状态" description=""
@close="showRefund = false" @select="refundSexSelect">
@@ -22,7 +21,7 @@
<view class="padd-marg-cen">
<h3>补充描述和凭证</h3>
<view style="background: #F6F7FB;position: relative;margin-top: 32rpx;">
<u--textarea v-model="model1.userInfo.refundRemark" placeholder="补充描述,有利于商家更好的处理问题" border="none"
<u--textarea v-model="model1.userInfo.explain" placeholder="补充描述,有利于商家更好的处理问题" border="none"
:customStyle="{background:'#F6F7FB'}"></u--textarea>
<view class="up_down">
<view class="content flex-wrap align-center">
@@ -35,7 +34,7 @@
</view>
</view>
<view style="position: absolute;right: 20rpx;bottom: 10rpx;color: #666666;">
<text>{{200-model1.userInfo.refundRemark.length}}</text>
<text>{{200-model1.userInfo.explain.length}}</text>
<text>/</text>
<text>200</text>
</view>
@@ -48,6 +47,9 @@
</template>
<script>
import {
getCardOrderRefund
} from "@/api/myOrder/index.js"
export default {
data() {
return {
@@ -56,10 +58,11 @@
showRefund: false,
model1: {
userInfo: {
orderStatus: '',
refundReason: '',
refundRemark: '',
refundPhoto: ''
text: '',
explain: '',
payPrice: 0,
orderNo: '',
reasonImage: ''
},
},
RefundActions: [{
@@ -70,7 +73,7 @@
name: '其他',
}],
rules: {
'userInfo.refundReason': {
'userInfo.text': {
type: 'string',
max: '其他',
required: true,
@@ -78,6 +81,7 @@
trigger: ['blur', 'change']
},
},
};
},
methods: {
@@ -102,22 +106,28 @@
submitDrawFn() {
this.$refs.uForm.validate().then(res => {
uni.$u.toast('校验通过')
this.model1.userInfo.reasonImage = this.imageList.join(',')
let obj = this.model1.userInfo
uni.navigateTo({
url: `/pages/mine/my_order/refund/refund_x?type=${this.type}`
getCardOrderRefund(obj).then(res => {
console.log(res, '申请退款成功');
uni.redirectTo({
url: `/pages/mine/my_order/refund/refund_x?type=${this.type}&orderNo=${obj.orderNo}`
})
})
}).catch(errors => {})
},
//选择退款原因
refundSexSelect(e) {
this.model1.userInfo.refundReason = e.name
this.model1.userInfo.text = e.name
this.$refs.uForm.validateField('userInfo.refund')
},
},
onLoad(option) {
console.log(option);
this.type = option.type
this.model1.userInfo.payPrice = option.payPrice
this.model1.userInfo.orderNo = option.orderNo
},
onReady() {},
};

View File

@@ -3,28 +3,33 @@
<view class="cont ">
<view class="f-a-i">
<view class="cont-tit">处理进度</view>
<view>退款处理中</view>
<view>
<text v-if="refundDeta.refundStatus==0">待审核</text>
<text v-if="refundDeta.refundStatus==1">审核未通过</text>
<text v-if="refundDeta.refundStatus==2">退款中</text>
<text v-if="refundDeta.refundStatus==3">已退款</text>
</view>
</view>
<view class="f-a-i cont-explain">
<view class="cont-tit">处理说明</view>
<view>退款处理中(驳回,已退款)</view>
<view>{{refundDeta.refundReasonWapExplain?refundDeta.refundReasonWapExplain:'无'}}</view>
</view>
</view>
<view v-if="type==1">
<view class="refund-order">
<view :class="['integral']">
<view class="f-a-i integral-data">
<image src="@/static/images/app/serve/serve_zuche.png" mode=""></image>
<image :src="refundDeta.image" mode=""></image>
<view class="integral-cont">
<view class="">
<u--text :lines="1" size="14" text="积分券"></u--text>
<u--text :lines="1" size="14" :text="refundDeta.name"></u--text>
</view>
<view class="f-jcsb integral-specification">
<text class="">暗夜黑 规格2 规格3</text>
<view class="">X 1</view>
<text class="">{{refundDeta.content}}</text>
<view class="">X {{refundDeta.num}}</view>
</view>
<view class="f-a-i">
<view class="integral-price">¥9.9 + </view>
<view class="f-a-i" v-if="item.totalIntegral">
<view class="integral-price">¥{{refundDeta.price}} +</view>
<!-- #ifdef MP-WEIXIN -->
<image style="width: 28rpx;height: 28rpx;"
:src="`${config.aliyunOssUrl}/static/images/app/mine/integral_hei.png`" mode="">
@@ -36,11 +41,14 @@
<!-- #endif -->
<view class="integral-price">198</view>
</view>
<view v-else class="f-a-i">
<view class="integral-price">¥{{refundDeta.price}}</view>
</view>
</view>
</view>
<view class="f-jce integral-all-price">
<view>
1件商品 合计<text>12.9</text>
{{refundDeta.num}}件商品 合计<text>{{refundDeta.refundPrice}}</text>
</view>
</view>
</view>
@@ -96,28 +104,40 @@
</view>
<view>
<view class="order-info">
<view>退款原因其他</view>
<view>退款金额12.9</view>
<view>申请时间2020-10-22 12:20:12 </view>
<view>退款时间2020-10-22 12:20:12 </view>
<view>退款编号123456789123456789 </view>
<view>退款原因{{refundDeta.refundReasonWap}}</view>
<view>退款金额{{refundDeta.refundPrice}}</view>
<view>申请时间{{refundDeta.createTime}} </view>
<view>退款时间{{refundDeta.refundTime?refundDeta.refundTime:'--'}} </view>
<view>退款编号{{refundDeta.refundOrderNo}} </view>
</view>
</view>
</view>
</template>
<script>
import {
config
} from "@/config.js"
import {
getCardOrderRefundDetail
} from "@/api/myOrder/index.js"
export default {
data() {
return {
config,
//退款类型 1:优惠券 2:租车 3:买车
type : 2,
type: 1,
refundDeta: {}
}
},
methods: {},
onLoad(optons) {
console.log(optons);
this.type = optons.type
getCardOrderRefundDetail(optons.orderNo).then(res => {
console.log(res, '退款详情');
this.refundDeta = res.data
})
}
}
</script>

View File

@@ -9,8 +9,8 @@
itemStyle="padding-left: 15px; padding-right: 15px; height: 34px;"></u-tabs>
</view>
<view class="tab-list f-jcsa f-a-i">
<view v-if="typeOne==1" :class="[actTab==tab.value?'act-tab':'']" v-for="(tab,index) in tabsList7"
@click="clickTabFn(tab)" :key="index">{{tab.name}}</view>
<view v-if="typeOne==1" :class="[orderType==tab.type?'act-tab':'']" v-for="(tab,index) in tabsList7"
@click="clickTabFnGong(tab)" :key="index">{{tab.name}}</view>
<view v-if="typeOne==2" :class="[actTab==tab.value?'act-tab':'']" v-for="(tab,index) in tabsList6"
@click="clickTabFn(tab)" :key="index">{{tab.name}}</view>
<view v-if="typeOne==3" :class="[actTab==tab.value?'act-tab':'']" v-for="(tab,index) in tabsList6"
@@ -30,16 +30,25 @@
<view class="list-cont" v-for="(item,index) in dataList" :key="index" @click="navParticularFn(item)">
<view class="serve-order">
<view class="f-a-i f-jcsb ">
<view class="serve-order-shop-name">星桔EV(祥园路店)</view>
<view class="serve-order-state">未处理</view>
<view class="serve-order-shop-name">{{item.merName}}</view>
<view class="serve-order-state">
<text v-if="item.auditRepair==0">待处理</text>
<text v-if="item.auditRepair==1">
<text v-if="item.status==0">同意受理</text>
<text v-if="item.status==1">维修中</text>
<text v-if="item.status==2">维修完成</text>
</text>
<text v-if="item.auditRepair==2">已驳回</text>
</view>
</view>
<view class="f-a-i f-jcsb">
<view>维修项目</view>
<view>维保维修</view>
<view>维修类型</view>
<view>{{item.repairType==1?'常规保养':item.repairType==2?'故障维修':item.repairType==3?'事故维修':'退车'}}
</view>
</view>
<view class="f-a-i f-jcsb">
<view>维修时间</view>
<view>2023-11-07 14:00-14:30</view>
<view>{{item.arriveTime}}</view>
</view>
</view>
<view class="order-list-butt">
@@ -49,20 +58,25 @@
<view style="">去这里</view>
</view>
<view class="f-a-i">
<view>
<view class="butt-list" v-if="item.auditRepair==0||item.auditRepair==1&&item.status==0"
@click.stop="cancelOrderFn(item)">
<u-button type="primary" text="取消工单" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'160rpx',height:'56rpx',marginLeft: '16rpx'}"></u-button>
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view @click.stop="navEvaFn(item)">
<view class="butt-list" v-if="item.isFinish==1&&item.isReply==0"
@click.stop="navEvaFn(item)">
<u-button :hoverStopPropagation="false" type="primary" text="去评价" plain
color="#333333" shape="circle"
:customStyle="{width:'136rpx',height:'56rpx',marginLeft: '16rpx'}"></u-button>
color="#333333" shape="circle" :customStyle="{height:'56rpx'}"></u-button>
</view>
<view>
<view class="butt-list" v-if="item.auditRepair==2"
@click.stop="deleteCenterOrderFn(item)">
<u-button type="primary" text="删除工单" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'160rpx',height:'56rpx',marginLeft: '16rpx'}"></u-button>
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view class="butt-list" v-if="item.auditRepair==2" @click.stop="navAnewPlaceFn(item)">
<u-button type="primary" text="重新提交" plain color="#333333" shape="circle" @click=""
:customStyle="{height:'56rpx'}"></u-button>
</view>
</view>
</view>
</view>
@@ -104,7 +118,7 @@
<image style="width: 28rpx;height: 28rpx;"
src="@/static/images/app/mine/integral_hei.png" mode=""></image>
<!-- #endif -->
<view class="integral-price">{{item.totalIntegral}}</view>
<view class="integral-price"> {{ item.totalIntegral}}</view>
</view>
</view>
</view>
@@ -123,11 +137,11 @@
<u-button text="付款" color="#13AFA8" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==3" class="butt-list" @click.stop="navEvaFn(item)">
<view v-if="item.status==4" class="butt-list" @click.stop="navEvaFn(item)">
<u-button text="去评价" color="#13AFA8" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==4" class="butt-list">
<view v-if="item.status==5" class="butt-list" @click.stop="navAnewPlaceFn">
<u-button text="重新下单" plain color="#333333" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
@@ -135,8 +149,9 @@
<u-button text="申请退款" plain color="#333333" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==1" class="butt-list">
<u-button text="去卡包" plain color="#333333" shape="circle" @click=""></u-button>
<view v-if="item.status==1" class="butt-list" @click.stop="navCardBagFn">
<u-button text="去卡包" plain color="#333333" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
</view>
</view>
@@ -149,7 +164,10 @@
<view class="f-a-i f-jcsb ">
<view class="serve-order-shop-sn">订单号{{item.orderNo}}</view>
<view class="serve-order-state">
<text v-if="item.status==0">代付</text>
<text v-if="item.refundStatus==1">申请退</text>
<text v-else-if="item.refundStatus==2">退款中</text>
<text v-else-if="item.refundStatus==3">已退款</text>
<text v-else-if="item.status==0">代付款</text>
<text v-else-if="item.status==1">待使用</text>
<text v-else-if="item.status==2">部分使用</text>
<text v-else-if="item.status==3">已完成</text>
@@ -187,20 +205,23 @@
<u-button text="付款" color="#13AFA8" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==3 && item.isReply" class="butt-list" @click.stop="navEvaFn(item)">
<view v-if="item.status==3 && item.isReply" class="butt-list"
@click.stop="navEvaFn(item)">
<u-button text="去评价" color="#13AFA8" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==4" class="butt-list">
<view v-if="item.status==4" class="butt-list" @click.stop="navAnewPlaceFn">
<u-button text="重新下单" plain color="#333333" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==1" class="butt-list">
<view v-if="item.status==1&&item.refundStatus==0" class="butt-list"
@click.stop="navRefundFn(item)">
<u-button text="申请退款" plain color="#333333" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
<view v-if="item.status==1" class="butt-list">
<u-button text="去卡包" plain color="#333333" shape="circle" @click=""></u-button>
<view v-if="item.status==1" class="butt-list" @click.stop="navCardBagFn">
<u-button text="去卡包" plain color="#333333" shape="circle"
:customStyle="{height:'56rpx'}"></u-button>
</view>
</view>
</view>
@@ -222,7 +243,10 @@
getReservationList,
getIntegralOrderList,
getCardOrderList,
getCardOrderCancel
getCardOrderCancel,
getIntegralOrderCancel,
deleteCenterOrder,
getCancelOrderCancel
} from "@/api/myOrder/index.js"
import config from '@/config';
export default {
@@ -242,14 +266,34 @@
};
},
methods: {
//删除工单
deleteCenterOrderFn(item) {
deleteCenterOrder(item.id).then(res => {
console.log(res);
})
},
//取消订单
cancelOrderFn(item) {
if (this.typeOne == 3) {
getCardOrderCancel(item.orderNo).then(res => {
this.$refs.paging.refresh();
})
} else if (this.typeOne == 2) {
getIntegralOrderCancel(item.orderNo).then(res => {
this.$refs.paging.refresh();
})
} else {
getCancelOrderCancel(item.id).then(res => {
this.$refs.paging.refresh();
})
}
},
//去卡包 pages/mine/my_card_bag/my_card_bag
navCardBagFn() {
uni.navigateTo({
url: '/pages/mine/my_card_bag/my_card_bag'
})
},
//去评价
navEvaFn(item) {
console.log('去评价');
@@ -257,18 +301,51 @@
url: '/pages/mine/my_evaluate/evaluate_issue'
})
},
//申请退款
navRefundFn(item) {
console.log(item);
uni.navigateTo({
url: `/pages/mine/my_order/refund/refund?type=1&orderNo=${item.orderNo}&payPrice=${item.payPrice}`
})
},
//我的评价
navMyevaluateFn() {
uni.navigateTo({
url: '/pages/mine/my_evaluate/my_evaluate'
})
},
//重新下单 pages/serve/coupons/coupons
navAnewPlaceFn() {
if (this.typeOne == 3) {
uni.redirectTo({
url: '/pages/serve/coupons/coupons'
})
} else if (this.typeOne == 2) {
uni.redirectTo({
url: '/pages/welfare/rightsInterests/rightsInterests'
})
} else {
uni.redirectTo({
url: '/pages/serve/repair/repair'
})
}
},
//详情
navParticularFn(item) {
console.log(this.typeOne);
uni.navigateTo({
url: `/pages/mine/my_order/serveOrder/serve_particulars?id=${item.id}&type=${this.typeOne}`
})
if (this.typeOne == 3) {
uni.navigateTo({
url: `/pages/mine/my_order/serveOrder/serve_particulars?id=${item.id}`
})
} else if (this.typeOne == 2) {
uni.navigateTo({
url: `/pages/mine/my_order/serveOrder/integral_particulars?id=${item.id}`
})
} else {
uni.navigateTo({
url: `/pages/mine/my_order/serveOrder/work_particulars?id=${item.orderSn}`
})
}
},
tabClick(e) {
console.log(e.value);
@@ -277,6 +354,9 @@
},
clickTabFn(tab) {
this.actTab = tab.value
this.$refs.paging.refresh();
},
clickTabFnGong(tab) {
this.orderType = tab.type
this.$refs.paging.refresh();
},
@@ -286,6 +366,7 @@
let obj = {
page: pageNo,
limit: pageSize,
}
if (this.typeOne == 1) {
obj.orderType = this.orderType
@@ -394,8 +475,8 @@
.act-tab {
font-size: 29rpx;
font-weight: 500;
color: #222222;
font-weight: 600;
color: #000;
}
}

View File

@@ -1,92 +1,35 @@
<template>
<!-- 卡券订单详情 -->
<view class="order-data">
<u-navbar title="" safeAreaInsetTop placeholder bgColor="rgba(0,0,0,0)">
<view class="u-nav-slot f-a-i" slot="left">
<u-navbar title="''" safeAreaInsetTop placeholder bgColor="rgba(0,0,0,0)">
<view class="u-nav-slot f-a-i" slot="left" @click="navBackFn">
<u-icon name="arrow-left" size="19"></u-icon>
<view class="state">代付款</view>
<view class="state">
<text v-if="orderData.refundStatus==1">退款申请中</text>
<text v-else-if="orderData.refundStatus==2">退款中</text>
<text v-else-if="orderData.refundStatus==3">已退款</text>
<text v-else-if="orderData.status==0">代付款</text>
<text v-else-if="orderData.status==1">待使用</text>
<text v-else-if="orderData.status==2">部分使用</text>
<text v-else-if="orderData.status==3">已完成</text>
<text v-else="orderData.status==4">已取消</text>
</view>
</view>
</u-navbar>
<view v-if="type==1">
<view class="cont">
<view class="f-jcsb f-a-i">
<view class="cont-name">星桔EV(祥园路店)</view>
<view class="cont-state">待受理</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">维修类型</view>
<view class="order-type">常规保养</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">维修时间</view>
<view class="cont-content">2023-11-07 14:00-14:30</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">车牌号</view>
<view class="cont-content">浙A·15JD6</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">车型</view>
<view class="cont-content">UE5系列</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">备注</view>
<view class="cont-content"></view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">预约编号</view>
<view class="cont-content">20231107001</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">提交时间</view>
<view class="cont-content">2023-11-07 14:00</view>
</view>
</view>
<view class="cont">
<view class="">
<view class="cont-name">保养项目</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">维修项目</view>
<view class="cont-content">B保</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">维修项目</view>
<view class="cont-content">B保</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">维修项目</view>
<view class="cont-content">B保</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">维修时间</view>
<view class="cont-content">2023-11-09 14:00</view>
</view>
</view>
</view>
<view v-if="type==2">
<view>
<view class="cont">
<view :class="['f-a-i','integral']">
<image src="@/static/images/app/serve/serve_zuche.png" mode=""></image>
<image :src="orderData.image" mode=""></image>
<view class="integral-cont">
<view class="">
<u--text :lines="1" size="14" text="积分券"></u--text>
<u--text :lines="1" size="14" :text="orderData.name"></u--text>
</view>
<view class="f-jcsb integral-specification">
<text class="">暗夜黑 规格2 规格3</text>
<text class="">{{orderData.content}}</text>
<view class="">X 1</view>
</view>
<view class="f-a-i">
<view class="integral-price">¥9.9 + </view>
<!-- #ifdef MP-WEIXIN -->
<image style="width: 28rpx;height: 28rpx;"
:src="`${config.aliyunOssUrl}/static/images/app/mine/integral_hei.png`" mode="">
</image>
<!-- #endif -->
<!-- #ifdef APP -->
<image style="width: 28rpx;height: 28rpx;" src="@/static/images/app/mine/integral_hei.png"
mode=""></image>
<!-- #endif -->
<view class="integral-price">198</view>
<view class="integral-price">¥{{orderData.price}} </view>
</view>
</view>
</view>
@@ -94,93 +37,24 @@
<view class="cont">
<view class="f-jcsb f-a-i">
<view class="cont-title">商品金额</view>
<view class="cont-content">¥200</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">消耗积分</view>
<view class="cont-content">200</view>
<view class="cont-content">¥{{orderData.price}}</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">订单备注</view>
<view class="cont-content">选填选填选填选填选填选填选填选填</view>
<view class="cont-content">{{orderData.orderRemark?orderData.orderRemark:'--'}}</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">实付款</view>
<view class="cont-content">¥200</view>
</view>
</view>
<view class="cont">
<view class="">
<view class="cont-name">订单信息</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">订单编号</view>
<view class="cont-content">4144556221122</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">创建时间</view>
<view class="cont-content">2023-11-09 14:00</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">支付方式</view>
<view class="cont-content">微信</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">下单时间</view>
<view class="cont-content">2023-11-09 14:00</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">完成时间</view>
<view class="cont-content">2023-11-09 14:00</view>
</view>
</view>
</view>
<view v-if="type==3">
<view class="cont">
<view :class="['f-a-i','integral']">
<image src="@/static/images/app/serve/serve_zuche.png" mode=""></image>
<view class="integral-cont">
<view class="">
<u--text :lines="1" size="14" text="积分券"></u--text>
</view>
<view class="f-jcsb integral-specification">
<text class="">暗夜黑 规格2 规格3</text>
<view class="">X 1</view>
</view>
<view class="f-a-i">
<view class="integral-price">¥9.9 + </view>
<!-- #ifdef MP-WEIXIN -->
<image style="width: 28rpx;height: 28rpx;"
:src="`${config.aliyunOssUrl}/static/images/app/mine/integral_hei.png`" mode="">
</image>
<!-- #endif -->
<!-- #ifdef APP -->
<image style="width: 28rpx;height: 28rpx;" src="@/static/images/app/mine/integral_hei.png"
mode=""></image>
<!-- #endif -->
<view class="integral-price">198</view>
</view>
</view>
</view>
</view>
<view class="cont">
<view class="f-jcsb f-a-i">
<view class="cont-title">商品金额</view>
<view class="cont-content">¥200</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">订单备注</view>
<view class="cont-content">选填选填选填选填选填选填选填选填</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">实付款</view>
<view class="cont-content">¥200</view>
<view class="cont-content">¥{{orderData.payPrice}}</view>
</view>
</view>
<view class="cont">
<view class="f-jcsb f-a-i">
<view class="cont-title">适用门店</view>
<view class="cont-content">查看门店></view>
<view class="cont-content flex align-center" @click="getCardMerchantListFn">
<text>查看门店</text>
<u-icon name="arrow-right" size="16" color="#111"></u-icon>
</view>
</view>
</view>
<view class="cont">
@@ -189,84 +63,105 @@
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">订单编号</view>
<view class="cont-content">4144556221122</view>
<view class="cont-content">{{orderData.orderNo}}</view>
</view>
<view class="f-jcsb f-a-i">
<view class="cont-title">创建时间</view>
<view class="cont-content">2023-11-09 14:00</view>
<view class="cont-content">{{orderData.createTime}}</view>
</view>
</view>
</view>
<view class="bottom-butt-caozuo f-jce">
<view class="flex" v-if="type==1">
<u-button type="primary" text="拒绝" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="重新提交" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx',}"></u-button>
<u-button type="primary" text="取消工单" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="结束工单" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="删除工单" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="去评价" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
</view>
<view class="flex" v-if="type==2">
<u-button type="primary" text="取消订单" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="去支付" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="去卡包" color="#13AFA8" shape="circle" @click="navCardBagFn"
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="去评价" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
</view>
<view class="flex" v-if="type==3">
<u-button type="primary" text="去支付" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="去卡包" color="#13AFA8" shape="circle" @click="navCardBagFn"
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="去评论" color="#13AFA8" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="查看进度" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button type="primary" text="取消订单" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx',}"></u-button>
<u-button type="primary" text="重新下单" plain color="#333333" shape="circle" @click=""
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx',}"></u-button>
<u-button type="primary" text="申请退款" color="#13AFA8" shape="circle" @click="navRefundFn"
<view class="bottom-butt-caozuo flex justify-end">
<view class="flex">
<u-button v-if="orderData.refundStatus!=0" type="primary" text="查看进度" plain color="#333333"
shape="circle" @click="navRefundDataFn"
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<view v-else class="flex">
<u-button v-if="orderData.status==0" type="primary" text="去支付" color="#13AFA8" shape="circle"
@click="" :customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button v-if="orderData.status==1" type="primary" text="去卡包" color="#13AFA8" shape="circle"
@click="navCardBagFn"
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button v-if="orderData.status==4" type="primary" text="去评价" color="#13AFA8" shape="circle"
@click="" :customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
<u-button v-if="orderData.status==0" type="primary" text="取消订单" plain color="#333333" shape="circle"
@click="" :customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx',}"></u-button>
<u-button v-if="orderData.status==5" type="primary" text="重新下单" plain color="#333333" shape="circle"
@click="" :customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx',}"></u-button>
<u-button v-if="orderData.status==1" type="primary" text="申请退款" color="#13AFA8" shape="circle"
@click="navRefundFn"
:customStyle="{width:'192rpx',height:'80rpx',marginLeft: '24rpx'}"></u-button>
</view>
</view>
</view>
<!-- 查看门店 -->
<u-picker :show="shopShow" :columns="shopColumns" keyName="name" @confirm="shopShow=false" @close="shopShow=false"
@cancel="shopShow=false"></u-picker>
</view>
</template>
<script>
import {
getCardOrderDetail,
getCardMerchantList
} from "@/api/myOrder/index.js"
export default {
data() {
return {
type: 1
//type 1:工单 2:积分订单 3:卡券
type: 1,
orderData: {},
//查看门店
shopShow: false,
shopColumns: [],
}
},
methods: {
//去卡包
navCardBagFn(url) {
uni.navigateTo({
uni.redirectTo({
url: '/pages/mine/my_card_bag/my_card_bag'
})
},
//申请退款
navRefundFn() {
uni.navigateTo({
url: '/pages/mine/my_order/refund/refund?type=1'
url: `/pages/mine/my_order/refund/refund?type=1&orderNo=${this.orderData.orderNo}&payPrice=${this.orderData.payPrice}`
})
},
//查看退款进度
navRefundDataFn() {
uni.navigateTo({
url: `/pages/mine/my_order/refund/refund_x?type=1&orderNo=${this.orderData.orderNo}`
})
},
//重新下单 pages/serve/coupons/coupons
navAnewPlaceFn(){
uni.redirectTo({
url: '/pages/serve/coupons/coupons'
})
},
//返回
navBackFn() {
uni.navigateBack()
},
//获取绑定门店列表
getCardMerchantListFn() {
getCardMerchantList(this.orderData.id).then(res => {
// console.log(res);
this.shopShow = true
this.shopColumns = [res.data]
})
}
},
onLoad(options) {
console.log(options);
//type 1:工单 2:积分订单 3:卡券
this.type = options.type
getCardOrderDetail(options.id).then(res => {
console.log(res.data, '订单详情');
this.orderData = res.data
})
}
}
</script>

View File

@@ -38,7 +38,7 @@
</view>
<view class="flex align-center justify-between" @click="remarkShow=true">
<view class="c444" style="width: 160rpx;">订单备注</view>
<view class="c999" style="width: 400rpx;">
<view class="c999" style="width: 400rpx;text-align: end;">
<u--text :lines="1" size="14" :text="remark"></u--text>
</view>
</view>
@@ -164,7 +164,7 @@
commodityNum: 1,
config,
remarkShow: false,
remark: '选填选填选填选填选填选填选填选填',
remark: '选填',
paymentShow: false,
commodityDeta: {},
//订单号
@@ -178,7 +178,8 @@
async settlementFn() {
let obj = {
num: this.commodityNum,
redeemProductId: this.commodityDeta.id
redeemProductId: this.commodityDeta.id,
remark:this.remark
}
this.paymentShow = true
await createProductOrder([obj]).then(res => {

View File

@@ -8,7 +8,7 @@
<view class="list-list flex justify-between">
<view class="integral-goods-item" v-for="(item,index) in datalist" :key="index"
@click="navParticularsFn(item)">
<image class="goods-image" src="@/static/images/app/welfare/tab_task_bg.png" mode="">
<image class="goods-image" :src="item.image" mode="">
</image>
<view class="goods-title line-two f-28 c111">
{{item.name}}