Merge branch 'master' into 1-12-dev

# Conflicts:
#	.gitignore
#	high-unionPay/pages/order/confirmation.vue
#	high-unionPay/pages/tabBar/home/home.vue
#	high-unionPay/pages/user/order_details/order_details.vue
1.解决冲突
master
杨杰 2 years ago
commit 1687220b2a
  1. 8
      .idea/.gitignore
  2. 9
      .idea/high-unionPay.iml
  3. 6
      .idea/inspectionProfiles/Project_Default.xml
  4. 9
      .idea/libraries/.xml
  5. 6
      .idea/misc.xml
  6. 8
      .idea/modules.xml
  7. 6
      .idea/vcs.xml
  8. 35
      high-unionPay/pages/order/confirmation.vue
  9. 6
      high-unionPay/pages/tabBar/category/category.vue
  10. 14
      high-unionPay/pages/tabBar/home/home.vue
  11. 4
      high-unionPay/pages/tabBar/user/user.vue
  12. 489
      high-unionPay/pages/user/order_details/order_details.vue
  13. 2
      high-unionPay/subPages/coupon-packge-details/coupon-packge-details.vue
  14. 5
      high-unionPay/subPages/lottery/lottery.vue

8
.idea/.gitignore vendored

@ -0,0 +1,8 @@
# 默认忽略的文件
/shelf/
/workspace.xml
# 基于编辑器的 HTTP 客户端请求
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
</profile>
</component>

@ -0,0 +1,9 @@
<component name="libraryTable">
<library name="银联">
<CLASSES>
<root url="jar://$PROJECT_DIR$/high-unionPay/unpackage/dist/build/h5/银联.zip!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/high-unionPay.iml" filepath="$PROJECT_DIR$/.idea/high-unionPay.iml" />
</modules>
</component>
</project>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

@ -69,6 +69,22 @@
</view>
</view>
<!-- // -->
<view class="width94 backcorfff mart10" v-if="couponList.wherePost">
<view class="width94 alijusstart height50 font14 fcor666 bor-botm1">
<view class="width40 fcor333 fontwig6 font16" style="padding-left: 2%;">联系人</view>
<input class="width60 fotrt font15" v-model="contactPepole" placeholder="请输入联系人" />
</view>
<view class="width94 alijusstart height50 font14 fcor666 bor-botm1">
<view class="width40 fcor333 fontwig6 font16" style="padding-left: 2%;">联系电话</view>
<input class="width60 fotrt font15" v-model="contactPhone" placeholder="请输入联系电话" />
</view>
<view class="width94 alijusstart height50 font14 fcor666">
<view class="width40 fcor333 fontwig6 font16" style="padding-left: 2%;">联系地址</view>
<input class="width60 fotrt font15" v-model="contactAddress" placeholder="请输入联系地址" />
</view>
</view>
<view class="width94 comorder mart10">
<view class="width92 alijusstart paddtop20">
@ -228,7 +244,13 @@
isUse: true, //
rechargeDes: '', //
rebateIntegral: '', //
Integrastu: 1 //
Integrastu: 1 //
typeId: '',
identificationCode: '' ,//
contactPepole: '', //
contactPhone: '', //
contactAddress: '' //
};
},
onLoad(option) {
@ -507,6 +529,13 @@
"payGold": this.priceValue[1],
"promoteCode": this.identificationCode,
memDiscountId: this.memDiscountId
"storeId": this.storeId
}],
"postData": {
"address": this.contactAddress,
"user": this.contactPepole,
"phone": this.contactPhone
}
}
create(goods).then(res => {
if (res.return_code == '000000') {
@ -730,7 +759,7 @@
.toFixed(2);
} else {
this.paytheprice = parseFloat(this.orderPrice - parseFloat(this.priceValue[1] / 100).toFixed(2) - this
.deductionPrice).toFixed(2);
.deductionPrice).toFixed(2);
}
if (this.paytheprice == 0) {
this.isUse = false;
@ -1098,4 +1127,4 @@
}
}
}
</style>
</style>

@ -271,10 +271,12 @@
// uni.showToast({title: ""});
},
//
playPhone() {
playPhone() {
let cont = "本服务由惠兑礼品提供\n400-678-738";
let content = cont.replace(/<br>/g,"\n");
uni.showModal({
title: '客服',
content: '4006780738',
content: content,
success: function(res) {
if (res.confirm) {
uni.makePhoneCall({

@ -297,7 +297,7 @@
platform: 3,
categoryCode: 'CMS_HOME'
}
getCmsContent(params).then(res => {
getCmsContent(params).then(res => {
this.isdisplay = false;
if (res.return_code == '000000') {
this.homeCateList = res.return_data;
@ -418,11 +418,11 @@
swiperChange(event) {
this.currentSwiper = event.detail.current;
},
//
toCategory(item) {
uni.navigateTo({
url: item.jumpUrl
})
//
toCategory(item) {
uni.navigateTo({
url: item.jumpUrl
})
},
//
jumplottery(item) {
@ -700,4 +700,4 @@
border-radius: 50%;
}
}
</style>
</style>

@ -488,9 +488,11 @@
},
//
playPhone() {
let cont = "本服务由惠兑礼品提供\n400-678-738";
let content = cont.replace(/<br>/g,"\n");
uni.showModal({
title: '客服',
content: '4006780738',
content: content,
success: function(res) {
if (res.confirm) {
uni.makePhoneCall({

@ -1,5 +1,5 @@
<template>
<view>
<template>
<view>
<!-- 待支付 -->
<view class="width100 paddtop10 paddbotm10 backcorfff fotct" v-if="recinfo.orderStatus == 1">
<view class="height20"></view>
@ -16,7 +16,7 @@
</view>
<view class="width90 fcorfff font18 mart10" v-if="recinfo.payRealPrice">实付:{{recinfo.payRealPrice}}</view>
<view class="width90 fcorfff font14 mart10">{{recinfo.createTime | formatDate('-')}}</view>
<view class="width90 mart20" style="border-bottom: 1px dashed #7BC1F5;"></view>
<view class="width90 mart20 alijusnostart font12">
<view class="paddleft5 paddtright5 border-r" style="border: 1px solid #5BB5F3;color: #5BB5F3;">本单优惠
@ -27,7 +27,7 @@
<view class="width94">感谢您信任嗨森逛欢迎再次消费</view>
</view>
</view>
<!-- 订单信息 -->
<view class="width90 backcorfff border-8r mart10 paddbotm15">
<view class="paddtop20 font22 width94 fcor333" v-if="recinfo.productType == 6">商家/订单信息</view>
@ -59,7 +59,7 @@
<view class="width80p fotrt fcor333 text1">{{oilList.storeAddress}}</view>
</view>
</view>
<!-- 商品信息 -->
<view class="width90 backcorfff border-8r mart10 paddbotm15">
<view class="paddtop20 font22 width94 fcor333">商品信息</view>
@ -96,7 +96,7 @@
<view class="width50 fotrt fcor333">¥{{oilList.gasRefuelPrice}}</view>
</view>
</view>
<!-- 支付信息 -->
<view class="width90 backcorfff mart10 concont">
<view class="paddtop20 font22 width94 fcor333">优惠信息</view>
@ -120,21 +120,21 @@
<view class="gooddes width90 backcorfff marb20">
<view class="width90w height20 bordertopleft alijusnostart">
</view>
<view class="width90 height50 fotrt fcor777 font16 paddbotm10" v-if="!recinfo.payRealPrice">
</view>
<view class="width90 height50 fotrt fcor777 font16 paddbotm10" v-else>
加油实付 <text class="font24 fcor333 margle">{{recinfo.payRealPrice}}</text>
</view>
</view>
<!-- 购买商品列表 -->
<!-- <view class="buy-list" v-for="rec in recinfo.highChildOrderList" :key="rec.id"
@click="toGoods(rec.goodsId,rec.goodsType)">
@ -207,7 +207,7 @@
油卡
</view>
</view>
<view class="row" v-if="recinfo.payType">
<view class="left">
支付方式 :
@ -319,6 +319,30 @@
{{recinfo.refusalRefundContent}}
</view>
</view>
<view class="row" v-if="materialData">
<view class="left">
联系人 :
</view>
<view class="right">
{{materialData.user}}
</view>
</view>
<view class="row" v-if="materialData">
<view class="left">
联系电话 :
</view>
<view class="right">
{{materialData.phone}}
</view>
</view>
<view class="row" v-if="materialData">
<view class="left">
联系地址 :
</view>
<view class="right">
{{materialData.address}}
</view>
</view>
<view class="row" v-if="recinfo.finishTime">
<view class="left">
完成时间 :
@ -409,13 +433,13 @@
</view>
</view> -->
<view class="width100 height60"></view>
<view class="footer" @click="orderComplete" v-if="preByOrderInfo && preByOrderInfo.status == 2">
<view class="settlement">
<view class="btn" style="background-color: #0083f5;color: #fff;width: 100% !important;">预约完成</view>
</view>
</view>
<view class="footer"
v-if="recinfo.orderStatus == 1 && recinfo.highChildOrderList[0].goodsType !=6 && recinfo.highChildOrderList[0].goodsType !=5 && recinfo.highChildOrderList[0].goodsType !=4">
<view class="settlement">
@ -430,106 +454,108 @@
<view class="btn" @tap="toPay" style="background-color: #0083f5;color: #fff;">去支付</view>
</view>
</view>
<!-- 再来一单 -->
<view class="height50 width100"></view>
<view class="bottomstu backcorfff width100 height50 alijusend">
<button open-type="contact" class="cusservice font12 fcor666">联系客服</button>
<view class="buybtn font12 fcorfff">再来一单</view>
</view>
</view>
</template>
<script>
import {
</view>
</view>
</template>
<script>
import {
getDetailByOrderNo,
cancel,
getPreByOrderIdId,
orderComplete,
getOrderByOrderNo
} from '../../../Utils/Api.js';
let app = getApp()
export default {
data() {
return {
buylist: [], //
goodsPrice: 0.0, //
sumPrice: 0.0, //
freight: 12.00, //
note: '', //
int: 1200, //
deduction: 0, //
recinfo: [],
getOrderByOrderNo
} from '../../../Utils/Api.js';
let app = getApp()
export default {
data() {
return {
buylist: [], //
goodsPrice: 0.0, //
sumPrice: 0.0, //
freight: 12.00, //
note: '', //
int: 1200, //
deduction: 0, //
recinfo: [],
orderId: '',
timers: null, //
imageUrl: app.globalData.imgUrl,
imagewxUrl: app.globalData.imageWxImg,
imgadres1: 'dhf.png',
preByOrderInfo: '',
countdownh: '', //
countdownm: '', //
countdowns: '', //
timers: null, //
imageUrl: app.globalData.imgUrl,
imagewxUrl: app.globalData.imageWxImg,
imgadres1: 'dhf.png',
preByOrderInfo: '',
materialData: '' //
preByOrderInfo: '',
countdownh: '', //
countdownm: '', //
countdowns: '', //
timer: null, //
oilList: '', //
typeText: {
1: '待支付',
2: '已支付',
3: '已完成',
4: '已退款',
5: '已取消',
6: '退款中',
7: '退款失败'
},
};
},
onShow() {
//
this.getDetailByOrderNo();
// this.getPreByOrderIdId();
},
onHide() {
},
onUnload() {
clearInterval(this.timers);
},
onLoad(option) {
this.orderId = option.id
},
onBackPress() {
//退
},
filters: {
toFixed: function(x) {
return parseFloat(x).toFixed(2);
},
//
formatDate: function(value, spe = '/') {
let data = new Date(value);
let year = data.getFullYear();
let month = data.getMonth() + 1;
let day = data.getDate();
let h = data.getHours();
let mm = data.getMinutes();
let s = data.getSeconds();
month = month >= 10 ? month : "0" + month;
day = day >= 10 ? day : "0" + day;
h = h >= 10 ? h : "0" + h;
mm = mm >= 10 ? mm : "0" + mm;
s = s >= 10 ? s : "0" + s;
return `${year}${spe}${month}${spe}${day} ${h}:${mm}:${s}`;
}
},
methods: {
toGoods(e, item) {
if (item != 2 && item != 3 && item != 4 && item != 5 && item != 6) {
uni.navigateTo({
url: '../../goods/goods?id=' + e
});
}
},
oilList: '', //
typeText: {
1: '待支付',
2: '已支付',
3: '已完成',
4: '已退款',
5: '已取消',
6: '退款中',
7: '退款失败'
},
};
},
onShow() {
//
this.getDetailByOrderNo();
// this.getPreByOrderIdId();
},
onHide() {
},
onUnload() {
clearInterval(this.timers);
},
onLoad(option) {
this.orderId = option.id
},
onBackPress() {
//退
},
filters: {
toFixed: function(x) {
return parseFloat(x).toFixed(2);
},
//
formatDate: function(value, spe = '/') {
let data = new Date(value);
let year = data.getFullYear();
let month = data.getMonth() + 1;
let day = data.getDate();
let h = data.getHours();
let mm = data.getMinutes();
let s = data.getSeconds();
month = month >= 10 ? month : "0" + month;
day = day >= 10 ? day : "0" + day;
h = h >= 10 ? h : "0" + h;
mm = mm >= 10 ? mm : "0" + mm;
s = s >= 10 ? s : "0" + s;
return `${year}${spe}${month}${spe}${day} ${h}:${mm}:${s}`;
}
},
methods: {
toGoods(e, item) {
if (item != 2 && item != 3 && item != 4 && item != 5 && item != 6) {
uni.navigateTo({
url: '../../goods/goods?id=' + e
});
}
},
//
getDetailByOrderNo() {
uni.showLoading({
@ -545,7 +571,7 @@
if (res.return_data.productType == 6) {
this.getOrderByOrderNo();
}
if (res.return_data.orderStatus == 1) {
this.timers = setInterval(() => {
this.showtime()
@ -563,20 +589,25 @@
uni.hideLoading();
if (res.return_code == '000000') {
this.oilList = res.return_data;
if (res.return_data.remarks) {
this.materialData = JSON.parse(res.return_data.remarks);
}
} else {
uni.hideLoading()
}
})
},
//
getPreByOrderIdId() {
let params = {
orderId: this.orderId,
}
getPreByOrderIdId(params).then(res => {
if (res.return_code == '000000') {
this.preByOrderInfo = res.return_data;
}
})
},
},
//
getPreByOrderIdId() {
let params = {
orderId: this.orderId,
}
getPreByOrderIdId(params).then(res => {
if (res.return_code == '000000') {
this.preByOrderInfo = res.return_data;
}
})
},
//
showtime() {
var nowtime = new Date(), //
@ -599,45 +630,45 @@
// this.getDetailByOrderNo();
this.countdownh = this.countdownm = this.countdowns = "00"
}
},
//
orderComplete() {
let that = this;
uni.showModal({
title: '预约完成',
content: '确定预约完成?',
success: (res) => {
if (res.confirm) {
uni.showLoading({
title: '加载中...'
})
let params = {
preOrderId: this.preByOrderInfo.id
}
orderComplete(params).then(res => {
if (res.return_code == '000000') {
uni.hideLoading();
uni.showToast({
title: res.return_data,
icon: 'none',
duration: 2000
})
this.getPreByOrderIdId();
} else {
uni.showToast({
title: res.return_msg,
icon: 'none',
duration: 2000
})
uni.hideLoading()
}
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
},
//
orderComplete() {
let that = this;
uni.showModal({
title: '预约完成',
content: '确定预约完成?',
success: (res) => {
if (res.confirm) {
uni.showLoading({
title: '加载中...'
})
let params = {
preOrderId: this.preByOrderInfo.id
}
orderComplete(params).then(res => {
if (res.return_code == '000000') {
uni.hideLoading();
uni.showToast({
title: res.return_data,
icon: 'none',
duration: 2000
})
this.getPreByOrderIdId();
} else {
uni.showToast({
title: res.return_msg,
icon: 'none',
duration: 2000
})
uni.hideLoading()
}
})
} else if (res.cancel) {
console.log('用户点击取消');
}
}
});
},
cancel() {
let that = this;
uni.showModal({
@ -677,32 +708,32 @@
}
}
});
},
toPay() {
let payTypes;
if (this.recinfo.payType == 1 || this.recinfo.payType == null) {
payTypes = 3;
} else if (this.recinfo.payType == 2) {
payTypes = 1;
} else {
payTypes = 2;
}
uni.redirectTo({
url: "/pages/pay/payment/payment?amount=" + this.recinfo.payPrice +
'&paytype=' + payTypes + '&orderId=' + this.recinfo.id + '&couponId=' + this.recinfo
.highChildOrderList[0].goodsId + '&typeaout=' + this.recinfo.highChildOrderList[0].ext1 +
'&goodsType=' + this.recinfo.highChildOrderList[0].goodsType
})
},
}
}
</script>
<style lang="scss">
},
toPay() {
let payTypes;
if (this.recinfo.payType == 1 || this.recinfo.payType == null) {
payTypes = 3;
} else if (this.recinfo.payType == 2) {
payTypes = 1;
} else {
payTypes = 2;
}
uni.redirectTo({
url: "/pages/pay/payment/payment?amount=" + this.recinfo.payPrice +
'&paytype=' + payTypes + '&orderId=' + this.recinfo.id + '&couponId=' + this.recinfo
.highChildOrderList[0].goodsId + '&typeaout=' + this.recinfo.highChildOrderList[0].ext1 +
'&goodsType=' + this.recinfo.highChildOrderList[0].goodsType
})
},
}
}
</script>
<style lang="scss">
page {
background-color: #f0f0f0;
}
.headstu {
width: 90px;
height: 90px;
@ -715,7 +746,7 @@
margin-right: auto;
border: 1px solid #0096FF;
}
.addr {
width: 86%;
padding: 20upx 3%;
@ -723,50 +754,50 @@
box-shadow: 0upx 5upx 20upx rgba(0, 0, 0, 0.1);
border-radius: 20upx;
display: flex;
.icon {
width: 80upx;
height: 80upx;
display: flex;
align-items: center;
image {
width: 60upx;
height: 60upx;
}
}
.tel-name {
width: 100%;
display: flex;
font-size: 32upx;
.tel {
margin-left: 40upx;
}
}
.addres {
width: 100%;
font-size: 26upx;
color: #999;
}
}
.buy-list {
width: 86%;
padding: 10upx 3%;
margin: 30upx auto 20upx auto;
box-shadow: 0upx 5upx 20upx rgba(0, 0, 0, 0.1);
border-radius: 20upx;
.row {
margin: 20rpx 0;
.goods-info {
width: 100%;
display: flex;
.img {
width: 80px;
max-height: 80px;
@ -774,13 +805,13 @@
overflow: hidden;
flex-shrink: 0;
margin-right: 10upx;
image {
width: 80px;
max-height: 80px;
}
}
.info {
width: 100%;
height: 22vw;
@ -788,7 +819,7 @@
display: flex;
flex-wrap: wrap;
position: relative;
.title {
width: 100%;
font-size: 32upx;
@ -799,7 +830,7 @@
overflow: hidden;
max-height: 40px;
}
.spec {
font-size: 22upx;
color: #a7a7a7;
@ -810,7 +841,7 @@
border-radius: 20upx;
margin-bottom: 10px;
}
.zspec {
font-size: 22upx;
background-color: red;
@ -824,7 +855,7 @@
margin-bottom: 10px;
margin-left: 10px;
}
.price-number {
position: absolute;
width: 100%;
@ -834,46 +865,46 @@
align-items: flex-end;
font-size: 28upx;
height: 40upx;
.price {
color: #fe4343;
}
.number {
display: flex;
justify-content: center;
align-items: center;
}
}
}
}
}
}
.order {
width: 86%;
padding: 10upx 3%;
margin: 30upx auto 20upx auto;
box-shadow: 0upx 5upx 20upx rgba(0, 0, 0, 0.1);
border-radius: 20upx;
.row {
margin: 20upx 0;
height: 80rpx;
line-height: 80rpx;
border-bottom: 1px solid #f4f4f4;
display: flex;
.left {
font-size: 28upx;
}
.right {
margin-left: 40upx;
font-size: 26upx;
color: #999;
input {
font-size: 26upx;
color: #999;
@ -881,12 +912,12 @@
}
}
}
.blck {
width: 100%;
height: 100upx;
}
.footer {
width: 92%;
padding: 0 4%;
@ -899,13 +930,13 @@
position: fixed;
bottom: 0upx;
z-index: 5;
.settlement {
width: 100%;
display: flex;
justify-content: flex-end;
align-items: center;
.sum {
color: #FE1A1A;
width: 50%;
@ -915,7 +946,7 @@
height: 26px;
line-height: 26px;
justify-content: flex-start;
.money {
font-size: 20px;
font-weight: 600;
@ -923,7 +954,7 @@
align-items: center;
}
}
.btn {
padding: 0 20upx;
height: 70rpx;
@ -937,37 +968,37 @@
}
}
}
.detail {
width: 86%;
padding: 10upx 3%;
margin: 30upx auto 20upx auto;
box-shadow: 0upx 5upx 20upx rgba(0, 0, 0, 0.1);
border-radius: 20upx;
.row {
height: 60upx;
display: flex;
justify-content: space-between;
align-items: center;
.nominal {
font-size: 28upx;
}
.content {
font-size: 26upx;
color: #0083f5;
}
}
}
.headsbg {
background: linear-gradient(to bottom, #3da7e7, #e8eff4);
}
.stubtn {
width: 30%;
height: 35px;
@ -976,13 +1007,13 @@
color: #ffffff;
margin-left: 35%;
}
.bottomstu {
position: fixed;
bottom: 0px;
border-top: 1px solid #cecdcd;
}
.cusservice {
height: 30px;
width: 90px;
@ -990,7 +1021,7 @@
border: 1px solid #6c6c6c;
border-radius: 25px;
}
.buybtn {
height: 30px;
width: 90px;
@ -1000,23 +1031,23 @@
background-color: #009dff;
border-radius: 25px;
}
.borderleft {
background-image: radial-gradient(10px at bottom left, #f0f0f0 10px, #ffffff);
}
.bordertopleft {
background-image: radial-gradient(10px at top left, #f0f0f0 10px, #ffffff);
}
.concont {
border-radius: 8px 8px 0 0;
background-image: radial-gradient(10px at bottom right, #f0f0f0 10px, #ffffff);
}
.gooddes {
border-radius: 0 0 8px 8px;
background-image: radial-gradient(10px at top right, #f0f0f0 10px, #ffffff);
}
}
</style>

@ -19,7 +19,7 @@
</view>
<!-- 商品主图轮播 -->
<view class="swiper-box">
<swiper circular="true" autoplay="true" @change="swiperChange">
<swiper circular="true" autoplay="true" style="height: 188px;" @change="swiperChange">
<swiper-item v-for="(swiper,index) in swiperList" :key="index">
<image mode="widthFix" :src="imageUrl+swiper" @click="perImage(swiper)"></image>
</swiper-item>

@ -193,6 +193,7 @@
couponId: this.couponId
}
getActivityByCoupon(params).then(res => {
uni.hideLoading();
if (res.return_code == '000000') {
let prizeLists = res.return_data.activityAward;
this.activityId = res.return_data.activityInfo.id;
@ -287,7 +288,9 @@
},
onLoad(options) {
this.couponId = options.id
this.handleInitCanvas()
},
onShow() {
this.handleInitCanvas();
},
onUnload() {
uni.hideLoading()

Loading…
Cancel
Save