Selaa lähdekoodia

Merge branch 'shopAdd' of https://git.malls.iformall.com/weapp/C into shopAdd

shopAdd
HolyKnightIX 2 vuotta sitten
vanhempi
commit
2b1f300968
21 muutettua tiedostoa jossa 575 lisäystä ja 69 poistoa
  1. +2
    -0
      app.json
  2. +4
    -0
      config/config.js
  3. +68
    -3
      index/passCar.js
  4. +16
    -6
      index/passCar.wxml
  5. +2
    -1
      pages/coupon/detail/index.wxml
  6. +3
    -2
      pages/joinFrDpell/index.js
  7. +1
    -0
      pages/joinFrDpell/index.wxml
  8. +4
    -0
      pages/order/detail/index.wxml
  9. +22
    -16
      pages/order/detail/index.wxss
  10. +2
    -1
      pages/order/index/index.wxml
  11. +79
    -37
      pages/order/index/index.wxss
  12. +125
    -0
      pages/passCar/showDetail/showDetail.js
  13. +9
    -0
      pages/passCar/showDetail/showDetail.json
  14. +43
    -0
      pages/passCar/showDetail/showDetail.wxml
  15. +8
    -0
      pages/passCar/showDetail/showDetail.wxss
  16. +119
    -0
      pages/passCar/showList/showList.js
  17. +9
    -0
      pages/passCar/showList/showList.json
  18. +17
    -0
      pages/passCar/showList/showList.wxml
  19. +36
    -0
      pages/passCar/showList/showList.wxss
  20. +5
    -2
      pages/spellGroup/mySpellGroup/index.wxml
  21. +1
    -1
      project.private.config.json

+ 2
- 0
app.json Näytä tiedosto

@@ -46,6 +46,8 @@
"pages/orderquanma/index",
"pages/passCar/couponList/couponList",
"pages/passCar/couponDetail/couponDetail",
"pages/passCar/showList/showList",
"pages/passCar/showDetail/showDetail",
"pages/managelicenseplate/managelicenseplate",
"pages/payrule/payrule",
"pages/grade/grade",


+ 4
- 0
config/config.js Näytä tiedosto

@@ -180,6 +180,10 @@ var config = {
* 联合登录
*/
carInit: "/car/init",
/**
* 停车支付订单列表
*/
carPayOrderList: "/car/payOrderList",
/**
* 绑车牌
*/


+ 68
- 3
index/passCar.js Näytä tiedosto

@@ -54,6 +54,7 @@ Page({
generalPayPath: '',
generalExtraData: {},
goHomeUrl: "",
supportPay: ""
},
getMoreList(e) {
let totalNum = this.data.ticketList.length;
@@ -192,6 +193,33 @@ Page({
}
},

callPay(data) {
wx.requestPayment({
timeStamp: data.timeStamp,
nonceStr: data.nonceStr,
package: data.package,
signType: data.signType ? data.signType : "MD5",
paySign: res.data.paySign,
success: res => {
wx.showLoading({
title: '订单正在处理中...',
})
this.showList()
},
fail: res => {
wx.hideLoading();
wx.showToast({
title: '支付失败',
icon: 'error'
})
/**
* 支付失败,需要更新订单的状态
*/
},
complete: res => { }
});
},

//停车费用为0
paySuccess: function () {
wx.showModal({
@@ -201,6 +229,27 @@ Page({
})
},

// supportPay等于1时
goToPay() {
Http.post({
url: '/car/createPayOrder',
data: {
carNumber: this.data.listCardNum,
carFee: String(this.data.stopFees.remainingFee * 100)
}
}).then(res => {
console.log(res, 'res');
const data = res.data
this.callPay(data)
}).catch(err => {
wx.showToast({
title: err.message,
icon: 'none',
mask: true
})
})
},

gotomange: function () {
wx.navigateTo({
url: '/pages/managelicenseplate/managelicenseplate',
@@ -236,6 +285,13 @@ Page({
url: '/pages/passCar/couponList/couponList',
})
},

showList: function () {
wx.navigateTo({
url: '/pages/passCar/showList/showList',
})
},

gotodetail: function (e) {
wx.showModal({
title: '缴费规则',
@@ -631,6 +687,15 @@ Page({
if (res.data.token) {
app.globalData.etcpToken = res.data.token;
}
if (res.data.supportPay && res.data.supportPay == 1) {
that.setData({
supportPay: 1
})
} else {
that.setData({
supportPay: 0
})
}
/**
* 获得停车费用
*/
@@ -912,7 +977,8 @@ Page({
},
timecha: res.data.duration
});
} else {
} else { // *#06#

// var extraDataStr = {
// params: {
// token: app.globalData.etcpToken,
@@ -934,8 +1000,7 @@ Page({
generalAppId: res.data.appId,
generalPayPath: res.data.payPath,
generalExtraData: res.data.extraData,
extraDataFlag: JSON.stringify(res.data.extraData),

extraDataFlag: JSON.stringify(res.data.extraData)
});
console.log(that.data.extraDataFlag, "123456789")
}


+ 16
- 6
index/passCar.wxml Näytä tiedosto

@@ -60,28 +60,28 @@
系统提示:
</view> -->
<!-- 停车费用大于0 etcp -->
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==1}}">
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==1&&supportPay!=1}}">
<navigator bindfail="bindfail" path="{{payPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{etcpAppId}}" extra-data='{{extraData}}' version="{{carMiniVersion}}">
立即支付
</navigator>
<view wx:if="{{!canIUse}}" class='buy' data-flag="parkVendor1" bindtap='gotoCarMini'>立即支付</view>
</view>
<!-- 停车费用大于0 tjd -->
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==2}}">
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==2&&supportPay!=1}}">
<navigator bindfail="bindfail" path="{{payPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{tjdAppId}}" extra-data='{{extraData}}' version="{{carMiniVersion}}">
立即支付
</navigator>
<view wx:if="{{!canIUse}}" class='buy' data-flag="parkVendor1" bindtap='gotoCarMini'>立即支付</view>
</view>
<!-- 停车费用大于0 bolink -->
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==5}}">
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor==5&&supportPay!=1}}">
<navigator bindfail="bindfail" path="{{payPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{bolinkAppId}}" extra-data='{{extraData}}' version="{{carMiniVersion}}">
立即支付
</navigator>
<view wx:if="{{!canIUse}}" class='buy' data-flag="parkVendor5" bindtap='gotoCarMini'>立即支付</view>
</view>
<!-- 通用停车 -->
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor!=1&&parkVendor!=2&&parkVendor!=3&&parkVendor!=4&&parkVendor!=5&&extraDataFlag!='{}'}}">
<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor!=1&&parkVendor!=2&&parkVendor!=3&&parkVendor!=4&&parkVendor!=5&&extraDataFlag!='{}'&&supportPay!=1}}">
<navigator bindfail="bindfail" path="{{generalPayPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{generalAppId}}" extra-data='{{generalExtraData}}' version="{{carMiniVersion}}">
立即支付
</navigator>
@@ -89,7 +89,7 @@
</view>


<view class="buy-view" wx:if="{{stopFees.orderId&&stopFees.remainingFee>0&&parkVendor!=1&&parkVendor!=2&&parkVendor!=3&&parkVendor!=4&&parkVendor!=5&&extraDataFlag=='{}'}}">
<view class="buy-view" wx:if="{{stopFees.orderId && stopFees.remainingFee>0 && parkVendor!=1 && parkVendor!=2 && parkVendor!=3 && parkVendor!=4 && parkVendor!=5 && extraDataFlag=='{}' && supportPay!=1}}">
<navigator bindfail="bindfail" path="{{generalPayPath}}" wx:if="{{canIUse}}" class='buy' target="miniProgram" open-type="navigate" app-id="{{generalAppId}}" version="{{carMiniVersion}}">
立即支付
</navigator>
@@ -97,7 +97,9 @@
</view>

<!-- 停车费用为0 -->
<view wx:if="{{stopFees.remainingFee==0}}" class='buy' bindtap='paySuccess'>立即支付</view>
<view wx:if="{{supportPay && supportPay==1 && stopFees.remainingFee>0}}" class='buy' bindtap='goToPay'>立即支付</view>

<!-- <view wx:if="{{stopFees.remainingFee==0}}" class='buy' bindtap='paySuccess'>立即支付</view> -->
</view>

<!-- 没有车牌的时候显示 -->
@@ -109,6 +111,14 @@
<text class='carNumber'>车辆入场后,才能绑车牌</text>
</view>
<view class='bottonBox'>
<view class='textStyle' bindtap='showList'>
<image src='{{tingcheHr}}'></image>
我的支付订单
<view class='detail'>
<image src='{{jianUrl}}'></image>
</view>
</view>

<view class='textStyle' bindtap='showquan'>
<image src='{{tingcheHr}}'></image>
我的停车券


+ 2
- 1
pages/coupon/detail/index.wxml Näytä tiedosto

@@ -164,7 +164,8 @@
<text class='btnTxt'>首页</text>
</button>
<button form-type="submit" disabled='{{showbutton}}' hover-class='active' class='buy' wx:if="{{data.type!=11&&data.type!=8&&data.type!=50&&data.type!=51&&priceAndStockObj.salePrice/100!=0&&priceAndStockObj.remainInventory!=0&&endtime!='活动已结束'&&data.activityStatus!=0}}">
<text class='txt'>{{priceAndStockObj.salePrice/100}}元</text>马上购买</button>
<text class='txt'>{{priceAndStockObj.salePrice/100}}元</text>马上购买
</button>
<button wx:if="{{data.type==11&&priceAndStockObj.remainInventory!=0}}" bindtap="gohome" data-couponchannelid="{{couponChannelId}}" data-couponid="{{couponId}}" data-shippingtype="2" class="home">配送到家
</button>
<button wx:if="{{data.type==11&&priceAndStockObj.remainInventory!=0}}" bindtap="gohome" data-couponchannelid="{{couponChannelId}}" data-couponid="{{couponId}}" data-shippingtype="1" class="arrive">到店自提


+ 3
- 2
pages/joinFrDpell/index.js Näytä tiedosto

@@ -33,7 +33,8 @@ Page({
showErr: false,
showTime: true,
merchantVoList: [],
mallList: []
mallList: [],
nickName: '微信用户'
},

/**
@@ -62,7 +63,7 @@ Page({
orderGroupId: options.orderGroupId,
orderId: options.orderId,
avatarUrl: options.avatarUrl,
nickName: options.nickName,
nickName: options.nickName || '微信用户',
})
if (options.orderGroupId) {
this.checkUser(options);


+ 1
- 0
pages/joinFrDpell/index.wxml Näytä tiedosto

@@ -31,6 +31,7 @@
</view>
</view>
</view>

<!-- 适用门店 -->
<!-- <store wx:if="{{merchantVoList.length>0}}" merchantVoList="{{merchantVoList}}"></store> -->
<shop wx:if="{{mallList.length>0}}" mallList="{{mallList}}"></shop>


+ 4
- 0
pages/order/detail/index.wxml Näytä tiedosto

@@ -63,6 +63,10 @@
<text class='bianhao'>订单编号:</text>
<text>{{order.orderNumber}}</text>
</view>
<view class='dhCode' wx:if="{{order.orderStatus==97}}">
<text class='bianhao'>支付状态:</text>
<text style="color: red;">订单已取消,即将退款</text>
</view>
<view class='wuliu' wx:if="{{order.type==11}}">
<text class='left'>物流状态:</text>
<text class="right">{{(order.shippingStatus==10||order.shippingStatus==14)?"待自提":order.shippingStatus==15?"已自提":order.shippingStatus==20?"待发货":order.shippingStatus==24?"待收货":order.shippingStatus==25?"已收货":""}}</text>


+ 22
- 16
pages/order/detail/index.wxss Näytä tiedosto

@@ -13,12 +13,14 @@ page {
width: 100%;
padding-bottom: 160rpx;
}
.barnumImg{

.barnumImg {
float: left;
height: 40rpx;
width: 40rpx;
margin: 24rpx 20rpx;
margin: 24rpx 20rpx;
}

.success {
vertical-align: middle;
width: 40rpx;
@@ -130,14 +132,16 @@ page {
font-size: 24rpx;
}

.info view:nth-child(2), .info view:nth-child(3) {
.info view:nth-child(2),
.info view:nth-child(3) {
font-size: 24rpx;
padding-left: 4%;
color: #919191;
letter-spacing: 0;
}

.info view:nth-child(2) text, .info view:nth-child(3) text {
.info view:nth-child(2) text,
.info view:nth-child(3) text {
font-size: 22rpx;
color: #b8b8b8;
}
@@ -209,7 +213,7 @@ page {
.left {
float: left;
font-size: 26rpx;
color: #a6a6a6;
color: #a6a6a6;
}

.copeCode {
@@ -220,7 +224,7 @@ page {
line-height: 30rpx;
border-radius: 8rpx;
color: #df3502;
border:1rpx #a6a6a6 solid;
border: 1rpx #a6a6a6 solid;
font-size: 28rpx;

}
@@ -231,7 +235,7 @@ page {
padding: 10rpx;
height: 30rpx;
line-height: 30rpx;
border:1rpx #a6a6a6 solid;
border: 1rpx #a6a6a6 solid;
border-radius: 8rpx;
color: #3cc51f;
font-size: 28rpx;
@@ -260,7 +264,8 @@ page {
line-height:94rpx;
} */

.classif > view:nth-child(2), .classif > view:nth-child(3) {
.classif>view:nth-child(2),
.classif>view:nth-child(3) {
position: relative;
height: 94rpx;
line-height: 94rpx;
@@ -271,22 +276,22 @@ page {
/* border-bottom: 1rpx solid #eee; */
}

.classif > view text:nth-child(2) {
.classif>view text:nth-child(2) {
font-size: 28rpx;
/* color: #3c3c3c; */
}

.classif > view text:nth-child(1) {
.classif>view text:nth-child(1) {
font-size: 28rpx;
color: #a6a6a6;
float: left;
}

.classif > view:nth-child(1) {
.classif>view:nth-child(1) {
display: block;
}

.classif > view:nth-child(6) text:nth-child(2) {
.classif>view:nth-child(6) text:nth-child(2) {
color: #666;
}

@@ -342,7 +347,8 @@ page {

.drawer_content {
height: 210px;
overflow-y: scroll; /*超出父盒子高度可滚动*/
overflow-y: scroll;
/*超出父盒子高度可滚动*/
}

.btn_ok {
@@ -476,7 +482,7 @@ radio {
color: #333;
}

.barcode > canvas {
.barcode>canvas {
width: 500rpx;
height: 100rpx;
}
@@ -489,7 +495,7 @@ radio {
align-items: center;
}

.qrcode > canvas {
.qrcode>canvas {
width: 350rpx;
height: 350rpx;
}
@@ -710,4 +716,4 @@ radio {
color: #919191;
letter-spacing: 0;
margin-left: 20rpx;
}
}

+ 2
- 1
pages/order/index/index.wxml Näytä tiedosto

@@ -32,6 +32,7 @@
<text class='sucess' wx:if="{{child.orderStatus==1&&child.salePrice==0&&child.type!=50&&child.type!=51}}">免费领取</text>
<text class='sucess' wx:if="{{child.orderStatus==1&&child.salePrice==0&&(child.type==50||child.type==51)}}">积分兑换</text>
<text class='sucess' wx:if="{{child.orderStatus==1&&child.salePrice!=0}}">付款成功</text>
<text class='waiting' wx:if="{{child.orderStatus==97}}">订单已取消,即将退款</text>
</view>

<view class="itemImg">
@@ -93,7 +94,7 @@
<text>再忙,也要记得买点什么犒赏自己~</text>
</view>
</view>
<view class="loading" wx:if="{{loading}}">
<image src="{{loadingUrl}}" mode="widthFix"></image>{{content}}
</view>

+ 79
- 37
pages/order/index/index.wxss Näytä tiedosto

@@ -4,6 +4,7 @@
background: #F4F5F9;
margin-top: 20rpx;
}
.tabs {
position: fixed;
width: 100% !important;
@@ -21,10 +22,12 @@
width: 30% !important;
display: inline-block;
}
.section{
.section {
background: #FFFFFF;
overflow: hidden;
}
.detail_msg {
position: relative;
width: 92%;
@@ -35,7 +38,8 @@
padding-top: 20rpx;
/* border-bottom: 1rpx solid #eee; */
}
.sendImg{
.sendImg {
position: absolute;
width: 100rpx;
top: 100rpx;
@@ -56,13 +60,15 @@
height: 120rpx;
border-radius: 20rpx;
}
.detail_top{
.detail_top {
width: 100%;
height: 40rpx;
line-height: 40rpx;
font-size: 30rpx;
padding-top: 30rpx;
}
.detail_top view:nth-child(1) {
display: flex;
justify-content: space-between;
@@ -96,20 +102,21 @@
white-space: nowrap;
text-overflow: ellipsis;
}
.discount{
.discount {
position: absolute;
width: 100rpx;
top:86rpx;
right:2rpx;
top: 86rpx;
right: 2rpx;
}
.detail_top .sucess {
display: inline-block;
width: 123rpx !important;
/* overflow: hidden; */
font-family:PingFangSC-Regular;
font-family: PingFangSC-Regular;
font-size: 28rpx;
font-weight:400;
font-weight: 400;
color: #2C8DFF;
letter-spacing: 0;
text-align: right;
@@ -118,13 +125,26 @@
.wait {
display: inline-block;
width: 123rpx !important;
overflow: visible!important;
width: 130rpx !important;
overflow: visible !important;
font-size: 28rpx;
color: #FD832D;
letter-spacing: 0;
text-align: right;
line-height: 28rpx!important;
line-height: 28rpx !important;
}
.waiting {
position: relative;
top: 20rpx;
display: inline-block;
width: 280rpx !important;
overflow: visible !important;
font-size: 28rpx;
color: red;
letter-spacing: 0;
text-align: right;
line-height: 28rpx !important;
}
.close {
@@ -165,9 +185,11 @@
.info view:nth-child(3) {
margin-top: 16rpx;
}
.info view:nth-child(2) {
margin-top: 16rpx;
}
.payment {
position: relative;
width: 92%;
@@ -213,9 +235,10 @@
float: right;
font-size: 26rpx;
border-radius: 20rpx;
background:linear-gradient(127deg,rgba(252,177,74,1) 0%,rgba(254,70,20,1) 100%);
background: linear-gradient(127deg, rgba(252, 177, 74, 1) 0%, rgba(254, 70, 20, 1) 100%);
}
.btnZf{
.btnZf {
position: absolute;
bottom: 0;
right: 0;
@@ -227,9 +250,10 @@
float: right;
font-size: 26rpx;
border-radius: 20rpx;
background:linear-gradient(130deg,rgba(50,177,252,1) 0%,rgba(47,108,255,1) 100%);
background: linear-gradient(130deg, rgba(50, 177, 252, 1) 0%, rgba(47, 108, 255, 1) 100%);
}
.btnGm{
.btnGm {
position: absolute;
bottom: 0;
right: 0;
@@ -248,10 +272,12 @@
font-size: 26rpx;
color: #FFFFFF;
}
.txGm{
font-size: 26rpx!important;
color: #2C8DFF!important;
.txGm {
font-size: 26rpx !important;
color: #2C8DFF !important;
}
.dingdan {
margin-top: 33rpx;
}
@@ -293,20 +319,25 @@
vertical-align: middle;
margin-right: 10rpx;
}
button::after{ border: none; }
.goback{
button::after {
border: none;
}
.goback {
position: fixed;
right: 50rpx;
bottom: 60rpx;
width:100rpx!important;
height:100rpx;
width: 100rpx !important;
height: 100rpx;
z-index: 100;
background:rgba(255,255,255,1);
background: rgba(255, 255, 255, 1);
line-height: 95rpx;
border:1rpx solid rgba(227,227,227,1);
border-radius:50%;
border: 1rpx solid rgba(227, 227, 227, 1);
border-radius: 50%;
}
.goback image{
.goback image {
position: absolute;
width: 60rpx;
left: 0;
@@ -315,28 +346,32 @@ button::after{ border: none; }
bottom: 0;
margin: auto;
}
.itemBox{
.itemBox {
overflow: hidden;
margin: 0 60rpx 20rpx 60rpx;
padding-bottom: 20rpx;
position: relative;
}
.payStatus{
.payStatus {
text-align: right;
}
.payStatus .sucess {
display: inline-block;
width: 123rpx !important;
/* overflow: hidden; */
font-family:PingFangSC-Regular;
font-family: PingFangSC-Regular;
font-size: 28rpx;
font-weight:400;
font-weight: 400;
color: #2C8DFF;
letter-spacing: 0;
text-align: right;
line-height: 26px;
}
.itemImg{
.itemImg {
float: left;
display: block;
width: 120rpx;
@@ -344,31 +379,36 @@ button::after{ border: none; }
border: 1px solid #f8f8f8;
border-radius: 20rpx;
}
.itemImg image {
display: block;
width: 120rpx;
height: 120rpx;
border-radius: 20rpx;
}
.itemContent{
.itemContent {
float: left;
width: 70%;
}
.face{
.face {
font-size: 24rpx;
color: #999;
letter-spacing: 0;
padding-left: 4%;
line-height: 33rpx;
}
.face text{
.face text {
font-size: 24rpx;
color: #333;
letter-spacing: 0;
line-height: 33rpx;
}
.date{
.date {
/* margin-top: 16rpx; */
font-size: 24rpx;
color: #999;
@@ -377,7 +417,8 @@ button::after{ border: none; }
line-height: 26rpx;
}
.yunfe{
.yunfe {
font-size: 24rpx;
color: #999;
letter-spacing: 0;
@@ -385,7 +426,8 @@ button::after{ border: none; }
height: 33rpx;
line-height: 33rpx;
}
.yunfeK{
.yunfeK {
font-size: 24rpx;
color: #999;
letter-spacing: 0;


+ 125
- 0
pages/passCar/showDetail/showDetail.js Näytä tiedosto

@@ -0,0 +1,125 @@
const navigationBarHeight = (getApp().statusBarHeight + 44) + 'px'
let config = require("../../../config/config.js");
let Http = require("../../../utils/HttpBasics");
const util = require("../../../utils/util");
let app = getApp();
const imgurl = require("../../../utils/imgurl");
Page({

/**
* 页面的初始数据
*/
data: {
navigationBarHeight,
detail: {}
},

/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
const detail = JSON.parse(options.item)
detail.payTime = this.timestampToTime(detail.payTime)
detail.createTime = this.timestampToTime(detail.createTime)
detail.updateTime = this.timestampToTime(detail.updateTime)
this.setData({
detail: detail
})
},

/**
* @description 根据时间戳获取时间
* @param {*} timestamp 必传,number类型,时间戳数据(10位及以下,10位至13位)
* @param {*} format 选传,string类型,提供以下时间格式:YYYY-MM-DD hh:mm:ss、YYYY/MM/DD hh:mm:ss、YYYY.MM.DD hh:mm:ss、YYYY MM DD hh:mm:ss、YYYY年MM月DD日 hh:mm:ss、YYYY-MM-DD、YYYY/MM/DD、YYYY.MM.DD、YYYY MM DD、YYYY年MM月DD日;若不传,则默认为:YYYY-MM-DD
* @returns 根据要求的时间格式
* @version V 1.0, Created by YWQ, 2022.10.20
*/
timestampToTime(timestamp, format) {
//时间戳为10位需*1000,时间戳为13位不需乘1000
const length = timestamp.length
if (length <= 10) {
var date = new Date(timestamp * 1000)
} else {
var date = new Date(timestamp)
}
let Y = String(date.getFullYear())
let M = String(date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1)
let D = String(date.getDate() + 1 < 10 ? '0' + (date.getDate()) : date.getDate())
let h = String(date.getHours() + 1 < 10 ? '0' + (date.getHours()) : date.getHours())
let m = String(date.getMinutes() + 1 < 10 ? '0' + (date.getMinutes()) : date.getMinutes())
let s = String(date.getSeconds() + 1 < 10 ? '0' + (date.getSeconds()) : date.getSeconds())
// return Y + M + D + h + m + s
if (format == "YYYY-MM-DD hh:mm:ss") {
return Y + "-" + M + "-" + D + " " + h + ":" + m + ":" + s
} else if (format == "YYYY/MM/DD hh:mm:ss") {
return Y + "/" + M + "/" + D + " " + h + ":" + m + ":" + s
} else if (format == "YYYY.MM.DD hh:mm:ss") {
return Y + "." + M + "." + D + " " + h + ":" + m + ":" + s
} else if (format == "YYYY MM DD hh:mm:ss") {
return Y + " " + M + " " + D + " " + h + ":" + m + ":" + s
} else if (format == "YYYY年MM月DD日 hh:mm:ss") {
return Y + "年" + M + "月" + D + "日" + " " + h + ":" + m + ":" + s
} else if (format == "YYYY-MM-DD") {
return Y + "-" + M + "-" + D
} else if (format == "YYYY/MM/DD") {
return Y + "/" + M + "/" + D
} else if (format == "YYYY.MM.DD") {
return Y + "." + M + "." + D
} else if (format == "YYYY MM DD") {
return Y + " " + M + " " + D
} else if (format == "YYYY年MM月DD日") {
return Y + "年" + M + "月" + D + "日"
} else {
return Y + "-" + M + "-" + D
}
},

/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {

},

/**
* 生命周期函数--监听页面显示
*/
onShow() {

},

/**
* 生命周期函数--监听页面隐藏
*/
onHide() {

},

/**
* 生命周期函数--监听页面卸载
*/
onUnload() {

},

/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {

},

/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {

},

/**
* 用户点击右上角分享
*/
onShareAppMessage() {

}
})

+ 9
- 0
pages/passCar/showDetail/showDetail.json Näytä tiedosto

@@ -0,0 +1,9 @@
{
"usingComponents": {
"i-tab": "../../../dist/tab/index",
"i-tabs": "../../../dist/tabs/index",
"navbar": "../../../components/navbar/navbar"
},
"navigationBarTitleText": "支付订单详情",
"navigationBarBackgroundColor": "#F4F5F9"
}

+ 43
- 0
pages/passCar/showDetail/showDetail.wxml Näytä tiedosto

@@ -0,0 +1,43 @@
<navbar back home text="支付订单详情"></navbar>
<view style="height:{{navigationBarHeight}} "></view>
<view class="detail">
<view>
车牌号:{{detail.carNumber}}
</view>
<view>
支付金额:{{detail.payAmount}}
</view>
<view>
支付时间:{{detail.payTime}}
</view>
<view>
创建时间:{{detail.createTime}}
</view>
<view>
更新时间:{{detail.updateTime}}
</view>
<view>
微信生成的订单号:{{detail.transactionId}}
</view>
<view>
车场订单号:{{detail.parkOrderNo}}
</view>
<view>
商户收款账户:{{detail.merchantAccount}}
</view>
<view>
商户编号:{{detail.merchantId}}
</view>
<view>
商户名称:{{detail.merchantName}}
</view>
<view>
是否已通知车场:{{detail.parkNotify == 1 ? '是' : '否'}}
</view>
<view>
通知失败原因:{{detail.notifyFailReason}}
</view>
<view>
通知重试次数:{{detail.notifyCount}}
</view>
</view>

+ 8
- 0
pages/passCar/showDetail/showDetail.wxss Näytä tiedosto

@@ -0,0 +1,8 @@
/* pages/passCar/showDetail/showDetail.wxss */
.detail {
padding: 40rpx;
}

.detail view {
margin-bottom: 50rpx;
}

+ 119
- 0
pages/passCar/showList/showList.js Näytä tiedosto

@@ -0,0 +1,119 @@
const navigationBarHeight = (getApp().statusBarHeight + 44) + 'px'
let config = require("../../../config/config.js");
let Http = require("../../../utils/HttpBasics");
const util = require("../../../utils/util");
let app = getApp();
const imgurl = require("../../../utils/imgurl");
Page({

/**
* 页面的初始数据
*/
data: {
navigationBarHeight,
carPayOrderList: [],
pageNum: '1'
},

getList(pageNum) {
const that = this
Http.get({
url: config.api.carPayOrderList + `?pageNum=${pageNum}&pageSize=10`,
}).then(res => {
console.log(res, 'res');
if (pageNum == 1) {
const tempArr = res.data.list
tempArr.forEach(item => {
item.payAmount = this.getPayNumber(item.payAmount)
})
that.setData({
carPayOrderList: res.data.list
})
} else {
const tempArr = that.data.carPayOrderList
res.data.list.forEach(item => {
item.payAmount = this.getPayNumber(item.payAmount)
tempArr.push(item)
})
that.setData({
carPayOrderList: tempArr
})
}

}).catch(err => {

})
},

getPayNumber(num) {
return (num / 100).toFixed(2) + "元"
},

goDetial(e) {
const item = JSON.stringify(e.currentTarget.dataset.item)
wx.navigateTo({
url: `/pages/passCar/showDetail/showDetail?item=${item}`,
})
},

/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.getList(this.data.pageNum)
},

/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {

},

/**
* 生命周期函数--监听页面显示
*/
onShow() {

},

/**
* 生命周期函数--监听页面隐藏
*/
onHide() {

},

/**
* 生命周期函数--监听页面卸载
*/
onUnload() {

},

/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {

},

/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
const that = this;
that.data.pageNum++;
that.setData({
pageNum: that.data.pageNum
});
that.getList(that.data.pageNum);
},

/**
* 用户点击右上角分享
*/
onShareAppMessage() {

}
})

+ 9
- 0
pages/passCar/showList/showList.json Näytä tiedosto

@@ -0,0 +1,9 @@
{
"usingComponents": {
"i-tab": "../../../dist/tab/index",
"i-tabs": "../../../dist/tabs/index",
"navbar": "../../../components/navbar/navbar"
},
"navigationBarTitleText": "支付订单",
"navigationBarBackgroundColor": "#F4F5F9"
}

+ 17
- 0
pages/passCar/showList/showList.wxml Näytä tiedosto

@@ -0,0 +1,17 @@
<navbar back home text="支付订单"></navbar>
<view style="height:{{navigationBarHeight}} "></view>
<view class="list">
<view class="item" wx:for="{{carPayOrderList}}" wx:key="index">
<view data-item="{{item}}" bindtap="goDetial">
<view class="child">车牌号:{{item.carNumber}}</view>
<view class="child">支付金额:{{item.payAmount}}</view>
<view>支付时间:{{item.payTime}}</view>
<view class="detail">
查看详情
</view>
<view class="notice" wx:if="{{item.parkNotify!=1}}">
未通知停车场
</view>
</view>
</view>
</view>

+ 36
- 0
pages/passCar/showList/showList.wxss Näytä tiedosto

@@ -0,0 +1,36 @@
/* pages/passCar/showList.wxss */
page {
background-color: #dfdfdf;
}

.list {

padding: 40rpx;
}

.list .item {
position: relative;
background-color: #fff;
margin-bottom: 40rpx;
border-radius: 20rpx;
padding: 20rpx;
}

.list .item .child {
margin-bottom: 20rpx;
}

.list .item .detail {
position: absolute;
right: 40rpx;
top: 50%;
transform: translateY(-50%);
}

.list .item .notice {
position: absolute;
right: 40rpx;
top: 25rpx;
transform: translateY(-50%);
color: #ff0000;
}

+ 5
- 2
pages/spellGroup/mySpellGroup/index.wxml Näytä tiedosto

@@ -38,13 +38,16 @@
<text class='timess' wx:if='{{limitCondition==1}}'>仅限新用户活动</text>
<text class='timess' wx:if='{{limitCondition==2&&(minLimit||minLimit==0)&&maxLimit}}'>({{minLimit}}-{{maxLimit}}成长值)</text>
<text class='timess' wx:if='{{limitCondition==2&&minLimit&&!maxLimit}}'>(大于{{minLimit}}成长值)</text>
<view class='right-text'>剩余{{data.remainInventory}}张</view>
<view class='right-text'>
<text style="margin-right: 25rpx;" wx:if="{{data.selledCount||data.selledCount==0}}">已售{{data.selledCount}}张</text>
<text>剩余{{data.remainInventory}}张</text>
</view>
</view>
<view class='status' wx:if="{{spellData!=null}}">
<view class='status01 st'>
<image src='{{spellData.avatarUrl}}'></image>
</view>
<view class='status02 st'>{{spellData.nickName}}的团还差<view class='r-p-num'>1人</view>
<view class='status02 st'>{{spellData.nickName||'微信用户'}}的团还差<view class='r-p-num'>1人</view>
</view>
<view class='status03 st'>
<view class='mm'>{{day}}</view><text class='day-box' style='font-size:32rpx;'> 天 </text>


+ 1
- 1
project.private.config.json Näytä tiedosto

@@ -7,5 +7,5 @@
"preloadBackgroundData": false,
"useIsolateContext": true
},
"libVersion": "2.28.1"
"libVersion": "2.29.1"
}

Ladataan…
Peruuta
Tallenna