0606
This commit is contained in:
parent
76b1ff03d2
commit
62123764fb
@ -3,8 +3,8 @@ module.exports = {
|
|||||||
// baseUrl: 'https://vue.ruoyi.vip/prod-api',
|
// baseUrl: 'https://vue.ruoyi.vip/prod-api',
|
||||||
|
|
||||||
imagesUrl: 'http://122.51.230.86:9000',
|
imagesUrl: 'http://122.51.230.86:9000',
|
||||||
// baseUrl: 'https://www.nuoyunr.com',
|
baseUrl: 'https://www.nuoyunr.com',
|
||||||
baseUrl: 'http://192.168.1.27:48080',
|
// baseUrl: 'http://192.168.1.27:48080',
|
||||||
appId: 'wx684fc832e96cee65',
|
appId: 'wx684fc832e96cee65',
|
||||||
appSecret: 'd1fecac806c5f3cd9aca9f3d5c3759c7',
|
appSecret: 'd1fecac806c5f3cd9aca9f3d5c3759c7',
|
||||||
// baseUrl: 'http://192.168.31.54:8016/jx',
|
// baseUrl: 'http://192.168.31.54:8016/jx',
|
||||||
|
@ -1,28 +1,28 @@
|
|||||||
{
|
{
|
||||||
"name": "驾悦同行",
|
"name" : "驾悦同行",
|
||||||
"appid": "__UNI__7A6878C",
|
"appid" : "__UNI__077A2D3",
|
||||||
"description": "",
|
"description" : "",
|
||||||
"versionName": "1.0.0",
|
"versionName" : "1.0.0",
|
||||||
"versionCode": "100",
|
"versionCode" : "100",
|
||||||
"transformPx": false,
|
"transformPx" : false,
|
||||||
/* 5+App特有相关 */
|
/* 5+App特有相关 */
|
||||||
"app-plus": {
|
"app-plus" : {
|
||||||
"usingComponents": true,
|
"usingComponents" : true,
|
||||||
"nvueStyleCompiler": "uni-app",
|
"nvueStyleCompiler" : "uni-app",
|
||||||
"compilerVersion": 3,
|
"compilerVersion" : 3,
|
||||||
"splashscreen": {
|
"splashscreen" : {
|
||||||
"alwaysShowBeforeRender": true,
|
"alwaysShowBeforeRender" : true,
|
||||||
"waiting": true,
|
"waiting" : true,
|
||||||
"autoclose": true,
|
"autoclose" : true,
|
||||||
"delay": 0
|
"delay" : 0
|
||||||
},
|
},
|
||||||
/* 模块配置 */
|
/* 模块配置 */
|
||||||
"modules": {},
|
"modules" : {},
|
||||||
/* 应用发布信息 */
|
/* 应用发布信息 */
|
||||||
"distribute": {
|
"distribute" : {
|
||||||
/* android打包配置 */
|
/* android打包配置 */
|
||||||
"android": {
|
"android" : {
|
||||||
"permissions": [
|
"permissions" : [
|
||||||
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
||||||
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
||||||
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
||||||
@ -41,48 +41,48 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
/* ios打包配置 */
|
/* ios打包配置 */
|
||||||
"ios": {},
|
"ios" : {},
|
||||||
/* SDK配置 */
|
/* SDK配置 */
|
||||||
"sdkConfigs": {}
|
"sdkConfigs" : {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/* 快应用特有相关 */
|
/* 快应用特有相关 */
|
||||||
"quickapp": {},
|
"quickapp" : {},
|
||||||
/* 小程序特有相关 */
|
/* 小程序特有相关 */
|
||||||
"mp-weixin": {
|
"mp-weixin" : {
|
||||||
"appid": "wx684fc832e96cee65",
|
"appid" : "wx684fc832e96cee65",
|
||||||
"setting": {
|
"setting" : {
|
||||||
"urlCheck": false,
|
"urlCheck" : false,
|
||||||
"es6": true,
|
"es6" : true,
|
||||||
"postcss": true,
|
"postcss" : true,
|
||||||
"minified": true
|
"minified" : true
|
||||||
},
|
},
|
||||||
"usingComponents": true,
|
"usingComponents" : true,
|
||||||
"optimization": {
|
"optimization" : {
|
||||||
"subPackages": true
|
"subPackages" : true
|
||||||
},
|
},
|
||||||
"permission": {
|
"permission" : {
|
||||||
"scope.userLocation": {
|
"scope.userLocation" : {
|
||||||
"desc": "用于展示驾校位置"
|
"desc" : "用于展示驾校位置"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mp-alipay": {
|
"mp-alipay" : {
|
||||||
"usingComponents": true
|
"usingComponents" : true
|
||||||
},
|
},
|
||||||
"mp-baidu": {
|
"mp-baidu" : {
|
||||||
"usingComponents": true
|
"usingComponents" : true
|
||||||
},
|
},
|
||||||
"mp-toutiao": {
|
"mp-toutiao" : {
|
||||||
"usingComponents": true
|
"usingComponents" : true
|
||||||
},
|
},
|
||||||
"uniStatistics": {
|
"uniStatistics" : {
|
||||||
"enable": false
|
"enable" : false
|
||||||
},
|
},
|
||||||
"vueVersion": "2",
|
"vueVersion" : "2",
|
||||||
"h5": {
|
"h5" : {
|
||||||
"sdkConfigs": {
|
"sdkConfigs" : {
|
||||||
"maps": {}
|
"maps" : {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -91,10 +91,7 @@
|
|||||||
url: '/static/lanhu_shouye2gai/pj.png',
|
url: '/static/lanhu_shouye2gai/pj.png',
|
||||||
text: '评价'
|
text: '评价'
|
||||||
},
|
},
|
||||||
{
|
|
||||||
url: '/static/lanhu_shouye2gai/pj.png',
|
|
||||||
text: '业务办理指南'
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
swiperList: [],
|
swiperList: [],
|
||||||
msg: "1",
|
msg: "1",
|
||||||
@ -177,6 +174,10 @@
|
|||||||
setCoachId(res.data.userId)
|
setCoachId(res.data.userId)
|
||||||
setStaffType('01')
|
setStaffType('01')
|
||||||
}
|
}
|
||||||
|
if (res.data.type == 'ywjl') {
|
||||||
|
setCoachId(res.data.userId)
|
||||||
|
setStaffType('04')
|
||||||
|
}
|
||||||
console.log('getCoachId', getCoachId())
|
console.log('getCoachId', getCoachId())
|
||||||
console.log('getStaffType', getStaffType())
|
console.log('getStaffType', getStaffType())
|
||||||
}
|
}
|
||||||
|
@ -189,6 +189,7 @@
|
|||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
const order = JSON.parse(decodeURIComponent(options.data));
|
const order = JSON.parse(decodeURIComponent(options.data));
|
||||||
|
console.log('order', order)
|
||||||
this.orderData = order;
|
this.orderData = order;
|
||||||
this.getCourseDetails()
|
this.getCourseDetails()
|
||||||
},
|
},
|
||||||
@ -305,7 +306,7 @@
|
|||||||
try {
|
try {
|
||||||
// 1. 获取预支付参数
|
// 1. 获取预支付参数
|
||||||
const prepayRes = await request({
|
const prepayRes = await request({
|
||||||
url: `/small/jxInfo/prepayment?type=jsapi&orderNo=${orderNo}&orderId=${orderId}&payType=${payType}`,
|
url: `/small/jxInfo/prepayment?type=jsapi&orderNo=${orderNo}&orderId=${orderId}&payType=${payType}&tenantId=${this.orderData.tenantId}`,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -395,7 +396,7 @@
|
|||||||
tenantId: this.orderData.tenantId,
|
tenantId: this.orderData.tenantId,
|
||||||
type: this.orderData.type,
|
type: this.orderData.type,
|
||||||
carType: this.getLicenseTypeDescription(this.orderData.type),
|
carType: this.getLicenseTypeDescription(this.orderData.type),
|
||||||
money: this.orderData.reserveMoney,
|
money: (this.orderData.reserveMoney * 100 + this.orderData.restMoney * 100) / 100,
|
||||||
indent: this.orderData.userNo,
|
indent: this.orderData.userNo,
|
||||||
phone: this.orderData.userPhone,
|
phone: this.orderData.userPhone,
|
||||||
time: this.getCurrentDateTime(),
|
time: this.getCurrentDateTime(),
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
background-color: rgba(255, 255, 255, 1);
|
background-color: rgba(255, 255, 255, 1);
|
||||||
width: 750rpx;
|
width: 750rpx;
|
||||||
height: 92rpx;
|
height: 92rpx;
|
||||||
|
padding-top: 88rpx;
|
||||||
.image_1 {
|
.image_1 {
|
||||||
width: 64rpx;
|
width: 64rpx;
|
||||||
height: 36rpx;
|
height: 36rpx;
|
||||||
|
@ -1,33 +1,25 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="page flex-col">
|
<view class="page flex-col">
|
||||||
<view class="block_1 flex-row">
|
<view class="block_1 flex-row">
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view class="block_2 flex-col">
|
<view class="block_2 flex-col">
|
||||||
<view class="group_1 flex-row">
|
<view class="group_1 flex-row">
|
||||||
<image
|
<image class="label_1" referrerpolicy="no-referrer"
|
||||||
class="label_1"
|
|
||||||
referrerpolicy="no-referrer"
|
|
||||||
src="/static/lanhu_quanbudingdan/FigmaDDSSlicePNGacf527a62cbe7351c6472edd8f5b2814.png"
|
src="/static/lanhu_quanbudingdan/FigmaDDSSlicePNGacf527a62cbe7351c6472edd8f5b2814.png"
|
||||||
@click="handleBack()"
|
@click="handleBack()" />
|
||||||
/>
|
|
||||||
<text class="text_1">订单</text>
|
<text class="text_1">订单</text>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
<view class="list_1 flex-col">
|
<view class="list_1 flex-col">
|
||||||
<scroll-view
|
<scroll-view class="scroll-view" scroll-y :style="{ height: scrollHeight + 'px' }"
|
||||||
class="scroll-view"
|
@scrolltolower="loadMoreData" :refresher-enabled="true" :refresher-triggered="isRefreshing"
|
||||||
scroll-y
|
@refresherrefresh="onRefresherrefresh">
|
||||||
:style="{ height: scrollHeight + 'px' }"
|
<view class="list-items_1 flex-col" v-for="(item, index) in orderList" :key="index"
|
||||||
@scrolltolower="loadMoreData"
|
@click="goOrderDetails(item)">
|
||||||
:refresher-enabled="true"
|
|
||||||
:refresher-triggered="isRefreshing"
|
|
||||||
@refresherrefresh="onRefresherrefresh"
|
|
||||||
>
|
|
||||||
<view class="list-items_1 flex-col" v-for="(item, index) in orderList" :key="index" @click="goOrderDetails(item)">
|
|
||||||
<view class="box_6 flex-row justify-between">
|
<view class="box_6 flex-row justify-between">
|
||||||
<text class="text_2">订单号: {{item.orderNo}}</text>
|
<text class="text_2">订单号: {{item.orderNo}}</text>
|
||||||
<view class="text-wrapper_1 flex-col" :style="{ background: statusMap[item.paymentStatus].background }">
|
<view class="text-wrapper_1 flex-col"
|
||||||
|
:style="{ background: statusMap[item.paymentStatus].background }">
|
||||||
<text class="text_3" :style="{ color: statusMap[item.paymentStatus].color }">{{
|
<text class="text_3" :style="{ color: statusMap[item.paymentStatus].color }">{{
|
||||||
statusMap[item.paymentStatus].name}}
|
statusMap[item.paymentStatus].name}}
|
||||||
</text>
|
</text>
|
||||||
@ -35,12 +27,8 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="box_7 flex-row">
|
<view class="box_7 flex-row">
|
||||||
<view class="image-text_1 flex-row">
|
<view class="image-text_1 flex-row">
|
||||||
<image
|
<image class="image_3" referrerpolicy="no-referrer"
|
||||||
class="image_3"
|
:src="imageUrl + '/' + item.photo" />
|
||||||
referrerpolicy="no-referrer"
|
|
||||||
:src="imageUrl + '/' + item.photo"
|
|
||||||
|
|
||||||
/>
|
|
||||||
<view class="text-group_1 flex-col justify-between">
|
<view class="text-group_1 flex-col justify-between">
|
||||||
<text class="text_4">{{item.courseName}}</text>
|
<text class="text_4">{{item.courseName}}</text>
|
||||||
<view class="text-wrapper_2 flex-row justify-between">
|
<view class="text-wrapper_2 flex-row justify-between">
|
||||||
@ -67,32 +55,16 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="group_2 flex-col justify-end">
|
<view class="group_2 flex-col justify-end">
|
||||||
<view class="text-wrapper_5 flex-row">
|
<view class="text-wrapper_5 flex-row">
|
||||||
<text
|
<text class="text_9" :class="{ 'active-blue': type === 1 }" @click="changeOrderType('',1)">
|
||||||
class="text_9"
|
|
||||||
:class="{ 'active-blue': type === 1 }"
|
|
||||||
@click="changeOrderType('',1)"
|
|
||||||
>
|
|
||||||
全部订单
|
全部订单
|
||||||
</text>
|
</text>
|
||||||
<text
|
<text class="text_10" :class="{ 'active-blue': type === 2 }" @click="changeOrderType(2,2)">
|
||||||
class="text_10"
|
|
||||||
:class="{ 'active-blue': type === 2 }"
|
|
||||||
@click="changeOrderType(2,2)"
|
|
||||||
>
|
|
||||||
已付款
|
已付款
|
||||||
</text>
|
</text>
|
||||||
<text
|
<text class="text_11" :class="{ 'active-blue': type === 3 }" @click="changeOrderType(4,3)">
|
||||||
class="text_11"
|
|
||||||
:class="{ 'active-blue': type === 3 }"
|
|
||||||
@click="changeOrderType(4,3)"
|
|
||||||
>
|
|
||||||
已面签
|
已面签
|
||||||
</text>
|
</text>
|
||||||
<text
|
<text class="text_12" :class="{ 'active-blue': type === 4 }" @click="changeOrderType(2,4)">
|
||||||
class="text_12"
|
|
||||||
:class="{ 'active-blue': type === 4 }"
|
|
||||||
@click="changeOrderType(2,4)"
|
|
||||||
>
|
|
||||||
已报名
|
已报名
|
||||||
</text>
|
</text>
|
||||||
</view>
|
</view>
|
||||||
@ -104,14 +76,13 @@
|
|||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import request from '@/utils/request.js'
|
import request from '@/utils/request.js'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
imageUrl: this.$imagesUrl,
|
imageUrl: this.$imagesUrl,
|
||||||
loopData0: [
|
loopData0: [{
|
||||||
{
|
|
||||||
lanhutext0: '订单号:44782938752039585',
|
lanhutext0: '订单号:44782938752039585',
|
||||||
lanhuBg2: 'rgba(255,244,228,1.000000)',
|
lanhuBg2: 'rgba(255,244,228,1.000000)',
|
||||||
lanhutext1: '已付款',
|
lanhutext1: '已付款',
|
||||||
@ -164,17 +135,53 @@ export default {
|
|||||||
loading: false,
|
loading: false,
|
||||||
isRefreshing: false,
|
isRefreshing: false,
|
||||||
statusMap: {
|
statusMap: {
|
||||||
8: { name: '退款成功', background: '#fef0f0', color: '#f56c6c' }, // 红色柔和
|
8: {
|
||||||
7: { name: '退款中', background: '#fef0f0', color: '#f56c6c' }, // 红色柔和
|
name: '退款成功',
|
||||||
6: { name: '申请退款', background: '#fef0f0', color: '#f56c6c' }, // 红色柔和
|
background: '#fef0f0',
|
||||||
|
color: '#f56c6c'
|
||||||
|
}, // 红色柔和
|
||||||
|
7: {
|
||||||
|
name: '退款中',
|
||||||
|
background: '#fef0f0',
|
||||||
|
color: '#f56c6c'
|
||||||
|
}, // 红色柔和
|
||||||
|
6: {
|
||||||
|
name: '申请退款',
|
||||||
|
background: '#fef0f0',
|
||||||
|
color: '#f56c6c'
|
||||||
|
}, // 红色柔和
|
||||||
|
|
||||||
5: { name: '已完成', background: '#f0f9eb', color: '#67c23a' }, // 绿色完成
|
5: {
|
||||||
4: { name: '已面签', background: '#ecf5ff', color: '#409EFF' }, // 蓝色稳定
|
name: '已完成',
|
||||||
3: { name: '待面签', background: '#fdf6ec', color: '#e6a23c' }, // 橙色提醒
|
background: '#f0f9eb',
|
||||||
|
color: '#67c23a'
|
||||||
|
}, // 绿色完成
|
||||||
|
4: {
|
||||||
|
name: '已面签',
|
||||||
|
background: '#ecf5ff',
|
||||||
|
color: '#409EFF'
|
||||||
|
}, // 蓝色稳定
|
||||||
|
3: {
|
||||||
|
name: '待面签',
|
||||||
|
background: '#fdf6ec',
|
||||||
|
color: '#e6a23c'
|
||||||
|
}, // 橙色提醒
|
||||||
|
|
||||||
2: { name: '已支付', background: '#f0f9eb', color: '#67c23a' }, // 绿色支付成功
|
2: {
|
||||||
1: { name: '已取消', background: '#f4f4f5', color: '#909399' }, // 灰色中立
|
name: '已支付',
|
||||||
0: { name: '待支付', background: '#fdf6ec', color: '#e6a23c' }, // 橙色提醒
|
background: '#f0f9eb',
|
||||||
|
color: '#67c23a'
|
||||||
|
}, // 绿色支付成功
|
||||||
|
1: {
|
||||||
|
name: '已取消',
|
||||||
|
background: '#f4f4f5',
|
||||||
|
color: '#909399'
|
||||||
|
}, // 灰色中立
|
||||||
|
0: {
|
||||||
|
name: '待支付',
|
||||||
|
background: '#fdf6ec',
|
||||||
|
color: '#e6a23c'
|
||||||
|
}, // 橙色提醒
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -189,6 +196,11 @@ export default {
|
|||||||
this.changeOrderType(this.orderType, this.type)
|
this.changeOrderType(this.orderType, this.type)
|
||||||
|
|
||||||
},
|
},
|
||||||
|
onShow() {
|
||||||
|
// 当页面显示时刷新数据
|
||||||
|
this.pageNo = 1;
|
||||||
|
this.getUserOrderDetails(this.orderType);
|
||||||
|
},
|
||||||
onReady() {
|
onReady() {
|
||||||
// 动态计算滚动区域高度
|
// 动态计算滚动区域高度
|
||||||
this.calculateScrollHeight();
|
this.calculateScrollHeight();
|
||||||
@ -282,7 +294,11 @@ export default {
|
|||||||
},
|
},
|
||||||
// 支付状态
|
// 支付状态
|
||||||
getStatusStyle(status) {
|
getStatusStyle(status) {
|
||||||
return this.statusMap[status] || {name: '未知状态', background: '', color: ''};
|
return this.statusMap[status] || {
|
||||||
|
name: '未知状态',
|
||||||
|
background: '',
|
||||||
|
color: ''
|
||||||
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
// 获取课程详情
|
// 获取课程详情
|
||||||
@ -301,7 +317,7 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
// 订单详情
|
// 订单详情
|
||||||
goOrderDetails(data){
|
goOrderDetails(data) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
// url: `/newPages/orderDetails/index?data=${data}`
|
// url: `/newPages/orderDetails/index?data=${data}`
|
||||||
url: `/newPages/orderDetails/index?data=${encodeURIComponent(JSON.stringify(data))}`
|
url: `/newPages/orderDetails/index?data=${encodeURIComponent(JSON.stringify(data))}`
|
||||||
@ -317,9 +333,9 @@ export default {
|
|||||||
this.scrollHeight = screenHeight - topHeight;
|
this.scrollHeight = screenHeight - topHeight;
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style lang='scss'>
|
<style lang='scss'>
|
||||||
@import '../common/common.scss';
|
@import '../common/common.scss';
|
||||||
@import './assets/style/index.rpx.scss';
|
@import './assets/style/index.rpx.scss';
|
||||||
</style>
|
</style>
|
@ -233,7 +233,7 @@
|
|||||||
.group_6 {
|
.group_6 {
|
||||||
background-color: rgba(255, 255, 255, 1);
|
background-color: rgba(255, 255, 255, 1);
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
//height: 642rpx;
|
// height: 942rpx;
|
||||||
margin-left: 32rpx;
|
margin-left: 32rpx;
|
||||||
width: 686rpx;
|
width: 686rpx;
|
||||||
justify-content: flex-center;
|
justify-content: flex-center;
|
||||||
|
@ -267,7 +267,7 @@
|
|||||||
method: 'GET',
|
method: 'GET',
|
||||||
params: {
|
params: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 3,
|
pageSize: 4,
|
||||||
tenantId: this.tenantId,
|
tenantId: this.tenantId,
|
||||||
},
|
},
|
||||||
tenantIdFlag: false
|
tenantIdFlag: false
|
||||||
|
14
pages.json
14
pages.json
@ -188,14 +188,22 @@
|
|||||||
"navigationBarTitleText": "通知公告详情",
|
"navigationBarTitleText": "通知公告详情",
|
||||||
"navigationStyle": "custom"
|
"navigationStyle": "custom"
|
||||||
}
|
}
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"path": "guideContent/index",
|
||||||
|
"style": {
|
||||||
|
"enablePullDownRefresh": true,
|
||||||
|
"navigationBarTitleText": "业务办理指南详情",
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
/* {
|
||||||
"root": "uni_modules",
|
"root": "uni_modules",
|
||||||
"name": "modules",
|
"name": "modules",
|
||||||
"pages": []
|
"pages": []
|
||||||
}
|
} */
|
||||||
],
|
],
|
||||||
"tabBar": {
|
"tabBar": {
|
||||||
"color": "#999999", // 未选中时的文字颜色(默认灰色)
|
"color": "#999999", // 未选中时的文字颜色(默认灰色)
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
<text class="text_8">{{ courseDetails.type }}</text>
|
<text class="text_8">{{ courseDetails.type }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<text class="text_9">周一至周日 08:00-18:00</text>
|
<!-- <text class="text_9">周一至周日 08:00-18:00</text> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="group_5 flex-col">
|
<view class="group_5 flex-col">
|
||||||
<view class="section_4 flex-row justify-between">
|
<view class="section_4 flex-row justify-between">
|
||||||
|
@ -105,18 +105,52 @@
|
|||||||
</view> -->
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
<view class="bm-page-dj">
|
<view class="bm-page-dj">
|
||||||
<view class="bm-page-dj-title" @click="show = true">
|
<view class="payment-type-container">
|
||||||
<view class="d-s">
|
<view class="payment-type-item" @click="changePayType(2)" :class="{active: selectedPayType === 2}">
|
||||||
<view>{{ dname }}</view>
|
<view class="payment-type-info">
|
||||||
:
|
<view class="payment-type-name">全款支付:¥{{ rightInfoList.price }}</view>
|
||||||
<text class="bm-page-dj-title-price">
|
<!-- <view class="payment-type-price">¥{{ rightInfoList.price }}</view> -->
|
||||||
¥{{ currentPrice }} <!-- 动态显示当前价格 -->
|
</view>
|
||||||
</text>
|
<view class="payment-type-radio">
|
||||||
|
<view v-if="selectedPayType === 2" class="radio-selected"></view>
|
||||||
|
<view v-else class="radio-unselected"></view>
|
||||||
</view>
|
</view>
|
||||||
<u-icon name="arrow-right" color="#999" size="18"></u-icon>
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view @click="changeStartPay(2)" class="dj-list">
|
<view class="payment-type-item" @click="changePayType(1)" :class="{active: selectedPayType === 1}">
|
||||||
|
<view class="payment-type-info">
|
||||||
|
<view class="payment-type-name">定金支付:¥{{ rightInfoList.reserveMoney }}</view>
|
||||||
|
<!-- <view class="payment-type-price">¥{{ rightInfoList.reserveMoney }}</view> -->
|
||||||
|
</view>
|
||||||
|
<view class="payment-type-radio">
|
||||||
|
<view v-if="selectedPayType === 1" class="radio-selected"></view>
|
||||||
|
<view v-else class="radio-unselected"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 支付渠道选择(微信/线下) -->
|
||||||
|
<view class="payment-channel-container">
|
||||||
|
<view class="payment-channel-title">支付方式</view>
|
||||||
|
<view class="payment-channel-item" @click="changeStartPay(1)" :class="{active: startPay === 1}">
|
||||||
|
<image class="channel-icon" src="../../static/imgs/qbdd3.png" mode=""></image>
|
||||||
|
<view class="channel-name">微信支付</view>
|
||||||
|
<view class="channel-radio">
|
||||||
|
<view v-if="startPay === 1" class="radio-selected"></view>
|
||||||
|
<view v-else class="radio-unselected"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="payment-channel-item" @click="changeStartPay(2)" :class="{active: startPay === 2}"
|
||||||
|
v-if="selectedPayType !== 1">
|
||||||
|
<image class="channel-icon" src="../../static/imgs/yfk2.png" mode=""></image>
|
||||||
|
<view class="channel-name">线下支付</view>
|
||||||
|
<view class="channel-radio">
|
||||||
|
<view v-if="startPay === 2" class="radio-selected"></view>
|
||||||
|
<view v-else class="radio-unselected"></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view @click="changeStartPay(2)" class="dj-list">
|
||||||
<view class="dj-list-left">
|
<view class="dj-list-left">
|
||||||
<image class="dj-list-left-img" src="../../static/imgs/yfk2.png" mode=""></image>
|
<image class="dj-list-left-img" src="../../static/imgs/yfk2.png" mode=""></image>
|
||||||
<view class="dj-list-left-name">线下支付</view>
|
<view class="dj-list-left-name">线下支付</view>
|
||||||
@ -139,7 +173,7 @@
|
|||||||
<u-icon name="checkmark" color="#FFF" size="16"></u-icon>
|
<u-icon name="checkmark" color="#FFF" size="16"></u-icon>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
|
||||||
@ -267,6 +301,7 @@
|
|||||||
this.userId = this.userDetails.id,
|
this.userId = this.userDetails.id,
|
||||||
this.userinfo = getLocalUserInfo()
|
this.userinfo = getLocalUserInfo()
|
||||||
this.localStaffType = getStaffType()
|
this.localStaffType = getStaffType()
|
||||||
|
console.log('this.localStaffType', this.localStaffType)
|
||||||
if (this.localStaffType === '02') {
|
if (this.localStaffType === '02') {
|
||||||
this.localCoachId = getCoachId()
|
this.localCoachId = getCoachId()
|
||||||
}
|
}
|
||||||
@ -314,6 +349,32 @@
|
|||||||
this.rightInfoList.reserveMoney :
|
this.rightInfoList.reserveMoney :
|
||||||
this.rightInfoList.price;
|
this.rightInfoList.price;
|
||||||
},
|
},
|
||||||
|
// 修改支付类型(全款/定金)
|
||||||
|
changePayType(type) {
|
||||||
|
this.selectedPayType = type;
|
||||||
|
this.dname = type === 1 ? '定金' : '全款';
|
||||||
|
this.currentPrice = type === 1 ? this.rightInfoList.reserveMoney : this.rightInfoList.price;
|
||||||
|
if (type == 1) {
|
||||||
|
this.startPay = 1
|
||||||
|
} else if (type == 2) {
|
||||||
|
this.startPay = 2
|
||||||
|
}
|
||||||
|
console.log('this.selectedPayType', this.selectedPayType)
|
||||||
|
console.log('this.startPay', this.startPay)
|
||||||
|
},
|
||||||
|
// 修改支付渠道选择按钮(微信/线下)
|
||||||
|
changeStartPay(channel) {
|
||||||
|
/* if (this.selectedPayType == 1) {
|
||||||
|
this.startPay = 1
|
||||||
|
} else if (this.selectedPayType == 2 && this.startPay == 1) {
|
||||||
|
console.log('123', this.selectedPayType == 2 && this.startPay == 1)
|
||||||
|
this.startPay = 2
|
||||||
|
} else {
|
||||||
|
this.startPay = channel;
|
||||||
|
} */
|
||||||
|
this.startPay = channel;
|
||||||
|
|
||||||
|
},
|
||||||
async getStudentDetail() {
|
async getStudentDetail() {
|
||||||
const res = await request({
|
const res = await request({
|
||||||
url: '/app-api/small/dl-drive-school-student/getByUserId',
|
url: '/app-api/small/dl-drive-school-student/getByUserId',
|
||||||
@ -547,6 +608,7 @@
|
|||||||
reserveMoney: reserveMoney,
|
reserveMoney: reserveMoney,
|
||||||
payType: payType,
|
payType: payType,
|
||||||
restMoney: restMoney,
|
restMoney: restMoney,
|
||||||
|
payChannel: '1',
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -554,7 +616,7 @@
|
|||||||
this.orderNo = res.orderNo;
|
this.orderNo = res.orderNo;
|
||||||
|
|
||||||
const prepayRes = await request({
|
const prepayRes = await request({
|
||||||
url: `/app-api/small/jxInfo/prepayment?type=jsapi&orderNo=${this.orderNo}&orderId=${this.orderId}&payType=${payType}`,
|
url: `/app-api/small/jxInfo/prepayment?type=jsapi&orderNo=${this.orderNo}&orderId=${this.orderId}&payType=${payType}&tenantId=${this.tenantId}`,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -588,6 +650,7 @@
|
|||||||
reserveMoney: this.rightInfoList.price,
|
reserveMoney: this.rightInfoList.price,
|
||||||
payType: '2',
|
payType: '2',
|
||||||
userId: this.userId,
|
userId: this.userId,
|
||||||
|
payChannel: '2',
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -689,15 +752,17 @@
|
|||||||
// 4. 处理支付
|
// 4. 处理支付
|
||||||
if (this.startPay === 1) {
|
if (this.startPay === 1) {
|
||||||
const res = await request({
|
const res = await request({
|
||||||
url: `/app-api/small/jxInfo/prepayment?type=jsapi&orderNo=${this.orderNo}&orderId=${this.orderId}&payType=${payType}`,
|
url: `/app-api/small/jxInfo/prepayment?type=jsapi&orderNo=${this.orderNo}&orderId=${this.orderId}&payType=${payType}&tenantId=${this.tenantId}`,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
});
|
});
|
||||||
|
this.orderTime = this.getCurrentDateTime()
|
||||||
const result = await this.handleWxPayment(res);
|
const result = await this.handleWxPayment(res);
|
||||||
if (result === 'success') {
|
if (result === 'success') {
|
||||||
|
console.log('ifSuccess', result)
|
||||||
await Promise.all([
|
await Promise.all([
|
||||||
this.updateOrderStatus(this.orderId, '2'),
|
this.updateOrderStatus(this.orderId, '2'),
|
||||||
this.insertSchoolStudent()
|
this.insertSchoolStudent()
|
||||||
|
|
||||||
]);
|
]);
|
||||||
this.signContract();
|
this.signContract();
|
||||||
}
|
}
|
||||||
@ -933,6 +998,9 @@
|
|||||||
this.autoAssignCoach()
|
this.autoAssignCoach()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} else if (getCoachId() && this.localStaffType == '04') {
|
||||||
|
studentData.source = '04';
|
||||||
|
studentData.sourceUserId = getCoachId(); // 设置来源用户ID为业务经理ID
|
||||||
} else {
|
} else {
|
||||||
studentData.source = '03'; // 自来客户
|
studentData.source = '03'; // 自来客户
|
||||||
this.sendMessages(this.name, this.rightInfoList.name, this.jlId)
|
this.sendMessages(this.name, this.rightInfoList.name, this.jlId)
|
||||||
@ -951,8 +1019,9 @@
|
|||||||
courseName: this.rightInfoList.name,
|
courseName: this.rightInfoList.name,
|
||||||
licenseType: this.rightInfoList.type,
|
licenseType: this.rightInfoList.type,
|
||||||
price: this.rightInfoList.price,
|
price: this.rightInfoList.price,
|
||||||
orderTime: this.orderTime
|
orderTime: this.getCurrentDateTime()
|
||||||
}
|
}
|
||||||
|
console.log('现在是微信支付', dynamicData)
|
||||||
this.sendSubscriptionMessage(dynamicData)
|
this.sendSubscriptionMessage(dynamicData)
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -1021,7 +1090,7 @@
|
|||||||
tenantId: this.tenantId,
|
tenantId: this.tenantId,
|
||||||
type: this.rightInfoList.type,
|
type: this.rightInfoList.type,
|
||||||
carType: this.getLicenseTypeDescription(this.rightInfoList.type),
|
carType: this.getLicenseTypeDescription(this.rightInfoList.type),
|
||||||
money: this.payPrice,
|
money: this.rightInfoList.price,
|
||||||
indent: this.identity,
|
indent: this.identity,
|
||||||
phone: this.phone,
|
phone: this.phone,
|
||||||
time: this.getCurrentDateTime(),
|
time: this.getCurrentDateTime(),
|
||||||
@ -1113,6 +1182,136 @@
|
|||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
border-radius: 20rpx;
|
border-radius: 20rpx;
|
||||||
|
|
||||||
|
.payment-type-container {
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
|
||||||
|
.payment-type-item {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
padding: 25rpx 0;
|
||||||
|
border-bottom: 1rpx solid #f5f5f5;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
.payment-type-name {
|
||||||
|
color: #2C78F5;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.payment-type-price {
|
||||||
|
color: #ff4d4f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.payment-type-info {
|
||||||
|
flex: 1;
|
||||||
|
|
||||||
|
.payment-type-name {
|
||||||
|
font-size: 30rpx;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.payment-type-price {
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #999;
|
||||||
|
margin-top: 10rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.payment-type-radio {
|
||||||
|
width: 40rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 1rpx solid #ddd;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.radio-selected {
|
||||||
|
width: 24rpx;
|
||||||
|
height: 24rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: #2C78F5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.radio-unselected {
|
||||||
|
width: 24rpx;
|
||||||
|
height: 24rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.payment-channel-container {
|
||||||
|
margin-top: 20rpx;
|
||||||
|
padding-top: 20rpx;
|
||||||
|
border-top: 1rpx solid #eee;
|
||||||
|
|
||||||
|
.payment-channel-title {
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #666;
|
||||||
|
margin-bottom: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.payment-channel-item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding: 20rpx 0;
|
||||||
|
|
||||||
|
&.active {
|
||||||
|
.channel-name {
|
||||||
|
color: #2C78F5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.channel-icon {
|
||||||
|
width: 40rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
margin-right: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.channel-name {
|
||||||
|
flex: 1;
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.channel-radio {
|
||||||
|
width: 40rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 1rpx solid #ddd;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.radio-selected {
|
||||||
|
width: 24rpx;
|
||||||
|
height: 24rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: #2C78F5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.radio-unselected {
|
||||||
|
width: 24rpx;
|
||||||
|
height: 24rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* .bm-page-dj {
|
||||||
|
margin-top: 30rpx;
|
||||||
|
padding: 30rpx;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
|
||||||
|
|
||||||
.dj-list {
|
.dj-list {
|
||||||
padding: 20rpx 0;
|
padding: 20rpx 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -1146,7 +1345,7 @@
|
|||||||
color: red;
|
color: red;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} */
|
||||||
|
|
||||||
.bm-page-info {
|
.bm-page-info {
|
||||||
margin-top: 30rpx;
|
margin-top: 30rpx;
|
||||||
|
@ -42,6 +42,8 @@ export async function sendSubscriptionMessage(dynamicData) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
console.log('messageData', messageData)
|
||||||
|
console.log('微信支付是否进入此方法')
|
||||||
|
|
||||||
// 发送订阅消息
|
// 发送订阅消息
|
||||||
await request({
|
await request({
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 83 KiB |
BIN
static/imgs/qbdd3.png
Normal file
BIN
static/imgs/qbdd3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.8 KiB |
Loading…
Reference in New Issue
Block a user