Merge pull request 'xiaozy_0614' (#9) from xiaozy_0614 into master

Reviewed-on: #9
pull/12/head
肖志勇 2 years ago
commit e2b1dee799
  1. 92
      BagMoney/pages/oilCards/oilCards.vue
  2. 79
      BagStation/orderDetail/orderDetail.vue
  3. 2
      BagStation/pages/components/price-select-tab.vue
  4. 109
      BagStation/pages/makeOrder/orderPaying.vue
  5. 28
      BagStation/pages/makeOrder/payResult.vue
  6. 75
      BagStation/pages/stationDetail/stieQr.vue

@ -6,19 +6,17 @@
</cu-custom> </cu-custom>
<view class="" v-show="accountStatus"> <view class="" v-show="accountStatus">
<view class="placeholder bg-main-oil"> <view class="placeholder bg-main-oil">
</view> </view>
<view class="move-top"> <view class="move-top">
<view class="flex radius margin my-shadow position-re"> <view class="flex radius margin my-shadow position-re">
<view class="basis-sm text-center padding bg-gradual-black"> <view class="basis-sm text-center padding bg-gradual-black">
我的油卡 我的油卡
</view> </view>
<view class="basis-lg padding bg-white"> <view class="basis-lg padding bg-white">
总余额<text class="text-red">{{userTotal.oilCardTotalPrice|moneyFormat}}</text><text class="cu-tag yu-tag-right position-ab sm">{{cardList.length>0?cardList.length:1}}</text> 总余额<text class="text-red">{{userTotal.oilCardTotalPrice|moneyFormat}}</text><text
class="cu-tag yu-tag-right position-ab sm">{{cardList.length>0?cardList.length:1}}</text>
</view> </view>
</view> </view>
<!-- <view class="flex radius margin my-shadow position-re"> <!-- <view class="flex radius margin my-shadow position-re">
<view class="basis-sm text-center padding bg-gradual-black"> <view class="basis-sm text-center padding bg-gradual-black">
自营公司油卡 自营公司油卡
@ -38,12 +36,10 @@
</view> </view>
</view> --> </view> -->
</view> </view>
</view> </view>
<view class=" margin-bottom-lg"> <view class=" margin-bottom-lg">
<swiper class="screen-swiper square-dot" @change="cardSwiper" :indicator-dots="true" :circular="true" :autoplay="false" <swiper class="screen-swiper square-dot" @change="cardSwiper" :indicator-dots="true" :circular="true"
interval="5000" duration="500"> :autoplay="false" interval="5000" duration="500">
<swiper-item v-for="(item,index) in cardList" :key="index" :class="cardCur==index?'cur':''"> <swiper-item v-for="(item,index) in cardList" :key="index" :class="cardCur==index?'cur':''">
<!-- <image :src="imgURL+ (item.type=='zs'?'card-zs.png':'card-other.png')" mode="aspectFill"> <!-- <image :src="imgURL+ (item.type=='zs'?'card-zs.png':'card-other.png')" mode="aspectFill">
</image> --> </image> -->
@ -58,16 +54,13 @@
<view class="text-red padding-bottom-sm text-bold text-lg"> <view class="text-red padding-bottom-sm text-bold text-lg">
共享企业余额 共享企业余额
</view> </view>
<text
<text class="text-grey">单日加油额度{{cardList[cardCur].orderAmountToplimit}}单日加油升数额度{{cardList[cardCur].orderVolumeToplimit}}L</text> class="text-grey">单日加油额度{{cardList[cardCur].orderAmountToplimit}}单日加油升数额度{{cardList[cardCur].orderVolumeToplimit}}L</text>
</view> </view>
<view class="text-center padding"> <view class="text-center padding">
<!-- <view class="text-red text-bold text-lg"> <!-- <view class="text-red text-bold text-lg">
{{userTotal.oilCardTotalPrice|moneyFormat}} {{userTotal.oilCardTotalPrice|moneyFormat}}
</view> --> </view> -->
<text class="">交易记录</text> <text class="">交易记录</text>
</view> </view>
</view> </view>
@ -75,7 +68,6 @@
<view class="cu-list menu" v-if="cardList[cardCur].historyList.length>0"> <view class="cu-list menu" v-if="cardList[cardCur].historyList.length>0">
<view class="cu-item" v-for="detail in cardList[cardCur].historyList" :key="detail.id"> <view class="cu-item" v-for="detail in cardList[cardCur].historyList" :key="detail.id">
<view class="content padding-tb-sm"> <view class="content padding-tb-sm">
<view class="text-gray text-sm"> <view class="text-gray text-sm">
{{detail.createTime}} {{detail.createTime}}
</view> </view>
@ -170,9 +162,9 @@
this.TowerSwiper('swiperList'); this.TowerSwiper('swiperList');
}, },
onLoad(option) { onLoad(option) {
this.getCards() // this.getCards()
this.getTotalOilCardInfo() // this.getTotalOilCardInfo()
this.TowerSwiper('swiperList'); // this.TowerSwiper('swiperList');
// towerSwiper // towerSwiper
}, },
onReachBottom() { onReachBottom() {
@ -188,14 +180,6 @@
} }
}, },
methods: { methods: {
getAmount() {
accountApi.getTotalOilCardInfo().then(res => {
if (res.code == 20000) {
this.userTotal = res.data
}
})
},
getTotalOilCardInfo() { getTotalOilCardInfo() {
accountApi.getTotalOilCardInfo().then(res => { accountApi.getTotalOilCardInfo().then(res => {
if (res.code == 20000) { if (res.code == 20000) {
@ -213,13 +197,7 @@
oilCardType: card.oilCardType oilCardType: card.oilCardType
} }
} }
console.log('++++++++++++++')
console.log(data2)
console.log('++++++++++++++')
accountApi.getOilCardRecordByPage(data2).then(res => { accountApi.getOilCardRecordByPage(data2).then(res => {
console.log('++++++++++++++')
console.log(res)
console.log('++++++++++++++')
if (res.code == 20000) { if (res.code == 20000) {
if (res.data.list.length < 20) { if (res.data.list.length < 20) {
this.cardList[index].loadStatus = 'nomore' this.cardList[index].loadStatus = 'nomore'
@ -228,9 +206,9 @@
this.cardList[index].currentPage++ this.cardList[index].currentPage++
} }
// this.cardList[index].historyList = [] // this.cardList[index].historyList = []
if (this.cardList[index].currentPage !== 1) { if (this.cardList[index].currentPage !== 1) {
this.cardList[index].historyList = this.cardList[index].historyList.concat(res.data.list) this.cardList[index].historyList = this.cardList[index].historyList.concat(res.data
.list)
} else { } else {
this.cardList[index].historyList = res.data.list this.cardList[index].historyList = res.data.list
} }
@ -247,14 +225,17 @@
await accountApi.getUserAccount().then(res => { await accountApi.getUserAccount().then(res => {
if (res.code == 20000) { if (res.code == 20000) {
if (res.data.length > 0) { if (res.data.length > 0) {
this.cardList = res.data
this.cardList = this.cardList.filter(item=>!this.hideCard.includes(item.companyId)) let staging = res.data.filter(item => item.companyType != 5).filter(item => !this.hideCard.includes(item
this.cardList.forEach(item => { .companyId))
staging.forEach(item => {
this.$set(item, 'currentPage', 1) this.$set(item, 'currentPage', 1)
this.$set(item, 'loadStatus', 'more') this.$set(item, 'loadStatus', 'more')
this.$set(item, 'historyList', []) this.$set(item, 'historyList', [])
}) })
console.log(this.cardList) let target = this.sortHandler(staging)
this.cardList = target
setTimeout(() => { setTimeout(() => {
this.getMoneyDetail(this.cardList[0], 0) this.getMoneyDetail(this.cardList[0], 0)
}, 100) }, 100)
@ -262,6 +243,41 @@
} }
}) })
}, },
sortHandler(arr) {
let internalArr = arr.filter(item => item.oilCardType == 2)
let externalArr = arr.filter(item => item.oilCardType == 3)
// let internalTarget = this.sortParticulars(internalArr, 'shareCompanyQuota')
let externalTarget = this.sortParticulars(externalArr, 'balance')
if (internalArr.length || externalTarget.length) return [...internalArr, ...externalTarget]
else return arr
},
sortParticulars(arr, field) {
let target = []
let map = new Map()
let keys = [],
values = []
arr.forEach(item => {
map.set(item, item[field])
})
for (let key of map.keys()) {
keys.push(key)
}
for (let value of map.values()) {
values.push(value)
}
values.sort((a,b)=>{return a - b})
values.reverse()
values.forEach(value => {
keys.forEach(key => {
if (map.get(key) == value) {
target.push(key)
map.set(key, new Date().getTime())
}
})
})
return target
},
DotStyle(e) { DotStyle(e) {
this.dotStyle = e.detail.value this.dotStyle = e.detail.value
}, },
@ -335,6 +351,7 @@
.boxsingForCard { .boxsingForCard {
position: relative; position: relative;
} }
.inCard { .inCard {
position: absolute; position: absolute;
right: 11%; right: 11%;
@ -348,6 +365,7 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.tower-swiper .tower-item { .tower-swiper .tower-item {
transform: scale(calc(0.5 + var(--index) / 10)); transform: scale(calc(0.5 + var(--index) / 10));
margin-left: calc(var(--left) * 100upx - 150upx); margin-left: calc(var(--left) * 100upx - 150upx);

@ -13,14 +13,15 @@
<view class="qr-container "> <view class="qr-container ">
<view class="qrimg"> <view class="qrimg">
<view class="qrimg" @tap="newQrString"> <view class="qrimg" @tap="newQrString">
<tki-qrcode ref="qrcode" cid="2" loadMake :val="val" :size="250" unit="upx" <tki-qrcode ref="qrcode" cid="2" loadMake :val="val" :size="250" unit="upx" background="#fff"
background="#fff" :foreground="foreground" :pdground="foreground" :icon="iconUrl" iconSize="40" onval :foreground="foreground" :pdground="foreground" :icon="iconUrl" iconSize="40" onval
:usingComponents="usingComponents" showLoading /> :usingComponents="usingComponents" showLoading />
</view> </view>
</view> </view>
</view> </view>
<view class="text-center text-sm justify-center align-center flex"> <view class="text-center text-sm justify-center align-center flex">
<image src="../static/img/YDJY.png" mode="" style="width: 60upx;height:60upx;" class="margin-right-sm"></image> <image src="../static/img/YDJY.png" mode="" style="width: 60upx;height:60upx;" class="margin-right-sm">
</image>
<text>壳牌 {{test}} {{tsets}}</text> <text>壳牌 {{test}} {{tsets}}</text>
</view> </view>
<view class="text-center padding-top text-sm margin-bottom"> <view class="text-center padding-top text-sm margin-bottom">
@ -43,67 +44,67 @@
</view> </view>
</view> </view>
<view class="cu-list menu solid-bottom"> <!-- <view class="cu-list menu solid-bottom">
<view class="cu-item arrow" @tap="toDetail(order)"> <view class="cu-item arrow" @tap="toDetail(order)">
油站 油站
<text class="fr">{{order.siteName?order.siteName:''}}</text> <text class="fr">{{order.siteName?order.siteName:''}}</text>
</view> </view>
</view> </view> -->
<view class="padding-tb-xs text-left">
<!-- <view class="cu-item arrow" @tap="toDetail(order)">
</view> -->
油站
<text class="fr nowrap">{{order.siteName?order.siteName:''}}</text>
</view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油品油枪 油品油枪
<text class="fr nowrap"> <text class="fr nowrap">
{{order.oilsCode?order.oilsCode+' ':'' }}{{ order.gunName?order.gunName+'号枪': order.oilsBar?order.oilsBar+'号枪':'未选择油枪'}} </text> {{order.oilsCode?order.oilsCode+' ':'' }}{{ order.gunName?order.gunName+'号枪': order.oilsBar?order.oilsBar+'号枪':'未选择油枪'}} </text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
{{order.oilProductType=='GAS'?'加气重量:':'加油升数:'}} {{order.oilProductType=='GAS'?'加气重量:':'加油升数:'}}
<text class="fr">{{order.volume?order.volume:'未输入' |moneyFormath}} {{order.oilProductType=='GAS'?'L':'L'}}</text> <text
class="fr nowrap">{{order.volume?'约':''}}{{order.volume?order.volume:'未输入' |moneyFormath}}{{order.oilProductType=='GAS'?'L':'L'}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油站价格 油站价格
<text class="fr">{{order.sitePrice?order.sitePrice+'¥/' +( order.oilProductType=='GAS'?'L':'L') :'暂无'}}</text> <text
class="fr">{{order.sitePrice?order.sitePrice+'¥/' +( order.oilProductType=='GAS'?'L':'L') :'暂无'}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
优惠价格 优惠价格
<text class="fr">{{moneyIntercept(order.realPrice) }}/ {{order.oilProductType=='GAS'?'L':'L'}}</text> <text class="fr">{{moneyIntercept(order.realPrice) }}/{{order.oilProductType=='GAS'?'L':'L'}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油员 加油员
<text class="fr">{{order.siteUser}}</text> <text class="fr">{{order.siteUser}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油渠道 加油渠道
<text class="fr">{{order.channelCode|channelCodeFamt}}</text> <text class="fr">{{order.channelCode|channelCodeFamt}}</text>
</view> </view>
<view class="dashed-top margin-top-xs padding-top-sm">
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油机金额 <text class="fr">{{order.sitePriceAmount |moneyFormat}}</text> 星油优惠
<!-- <text
class="fr">{{order.xoilDiscountAmount>0?order.realAmount+order.xoilDiscountAmount:order.realAmount|moneyFormat}}</text> -->
</view>
</view>
<view class="padding-tb-xs text-left">
星油优惠
<!-- order.xoilDiscountAmount>0?order.xoilDiscountAmount:'xxx.x'|moneyFormat --> <!-- order.xoilDiscountAmount>0?order.xoilDiscountAmount:'xxx.x'|moneyFormat -->
<text <text class="text-red fr">{{ moneyIntercept(order.xoilDiscountAmount)}}</text>
class="text-red fr">{{ moneyIntercept(order.xoilDiscountAmount)}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
优惠券 优惠券
<text class="text-red fr">{{order.couponMark==1?order.couponDiscountAmount:'未使用优惠券'}}</text> <text class="text-red fr">{{order.couponMark==1?order.couponDiscountAmount:'未使用优惠券'}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
合计 合计
<text <text
class="text-red text-bold text-lg fr">{{order.payRealAmount>0?order.payRealAmount:'xxx.x'|moneyFormat}}</text> class="text-red text-bold text-lg fr">{{order.payRealAmount>0?order.payRealAmount:'xxx.x'|moneyFormat}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
支付方式 支付方式
<text class=" fr">{{order.payAccountType==0?'星油豆':'企业账户支付'}}</text> <text class=" fr">{{order.payAccountType==0?'星油豆':'企业账户支付'}}</text>
</view> </view>
<view class="padding-tb-xs text-left" v-if="order.payTime"> <view class="padding-tb-xs text-left" v-if="order.payTime">
订单支付时间 订单支付时间
<text class=" fr">{{order.payTime}}</text> <text class=" fr">{{order.payTime}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
@ -113,26 +114,24 @@
<view class="dashed-top margin-top-xs padding-top-sm"> <view class="dashed-top margin-top-xs padding-top-sm">
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油车牌 加油车牌
<text class=" fr">{{order.plateNumber}}</text> <text class=" fr">{{order.plateNumber}}</text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油司机 加油司机
<text class=" fr">{{order.customerName}} {{order.customerCode}}</text> <text class=" fr">{{order.customerName}} {{order.customerCode}}</text>
</view> </view>
<view class="padding-tb-xs text-left" v-if="order.oilCardNature"> <view class="padding-tb-xs text-left" v-if="order.oilCardNature">
油卡性质 油卡性质
<text class=" fr">{{order.oilCardNature|oilCardNatureF}}</text> <text class=" fr">{{order.oilCardNature|oilCardNatureF}}</text>
</view> </view>
</view> </view>
</view> </view>
<view class="padding bg-white fixed-bottom"> <view class="padding bg-white fixed-bottom">
<view class="flex margin-bottom" v-if="order.orderStatus==0"> <view class="flex margin-bottom" v-if="order.orderStatus==0">
<button class="cu-btn block flex-sub lg bg-main-oil " <button class="cu-btn block flex-sub lg bg-main-oil " @tap="makePay">立即支付</button>
@tap="makePay">立即支付</button> <button class="cu-btn block flex-sub lg margin-left" @tap="cancelOrder">取消订单</button>
<button class="cu-btn block flex-sub lg margin-left"
@tap="cancelOrder">取消订单</button>
</view> </view>
<view class="cu-btn bg-white oil-main-color block flex-sub lg" @click="makeCall"> <view class="cu-btn bg-white oil-main-color block flex-sub lg" @click="makeCall">
<text class="cuIcon-service padding-right-sm">联系客服</text> <text class="cuIcon-service padding-right-sm">联系客服</text>
@ -142,10 +141,8 @@
</view> </view>
<view class="padding placeholder-hidden"> <view class="padding placeholder-hidden">
<view class="flex margin-bottom" v-if="order.orderStatus==0"> <view class="flex margin-bottom" v-if="order.orderStatus==0">
<button class="cu-btn block flex-sub lg bg-main-oil " <button class="cu-btn block flex-sub lg bg-main-oil " @tap="makePay">立即支付</button>
@tap="makePay">立即支付</button> <button class="cu-btn block flex-sub lg margin-left" @tap="cancelOrder">取消订单</button>
<button class="cu-btn block flex-sub lg margin-left"
@tap="cancelOrder">取消订单</button>
</view> </view>
<view class="cu-btn bg-white oil-main-color block flex-sub lg" @click="makeCall"> <view class="cu-btn bg-white oil-main-color block flex-sub lg" @click="makeCall">
<text class="cuIcon-service padding-right-sm">联系客服</text> <text class="cuIcon-service padding-right-sm">联系客服</text>
@ -398,12 +395,15 @@
} }
</script> </script>
<style scoped>.move-tops{ <style scoped>
.move-tops {
transform: translateY(-17px); transform: translateY(-17px);
} }
.bg-red { .bg-red {
background-color: #FF6700; background-color: #FF6700;
} }
.text-centers { .text-centers {
text-align: center; text-align: center;
width: 90%; width: 90%;
@ -411,6 +411,7 @@
border-radius: 7px; border-radius: 7px;
overflow: hidden; overflow: hidden;
} }
.move-top { .move-top {
margin-top: -2rem; margin-top: -2rem;
} }

@ -238,7 +238,7 @@
<view class="" v-if="activeChannelCode!='TY'"> <view class="" v-if="activeChannelCode!='TY'">
<view class="padding-tb-xs margin-bottom text-left"> <view class="padding-tb-xs margin-bottom text-left">
加油升数 加油升数
<text class="fr">{{vlom?vlom :'' | moneyVolm}} L </text> <text class="fr">{{vlom?'约' :''}}{{vlom?vlom :'' | moneyVolm}} L </text>
</view> </view>
<view class=" dashed-top margin-top padding-top text-left"> <view class=" dashed-top margin-top padding-top text-left">
加油金额 加油金额

@ -61,7 +61,8 @@
<view class="content padding-tb-sm"> <view class="content padding-tb-sm">
<view class="text-left"> <view class="text-left">
<view class="site-icon-sm"> <view class="site-icon-sm">
<image src="https://xoi-support.oss-cn-hangzhou.aliyuncs.com/星油运营小程序/gr.png" mode="widthFix" width="100upx"></image> <image src="https://xoi-support.oss-cn-hangzhou.aliyuncs.com/星油运营小程序/gr.png"
mode="widthFix" width="100upx"></image>
</view> </view>
<text class="padding-left-sm">自营企业油卡支付 <text <text class="padding-left-sm">自营企业油卡支付 <text
v-if="item.shareCompanyQuota==0">余额{{item.balance|moneyFormat}}</text></text> v-if="item.shareCompanyQuota==0">余额{{item.balance|moneyFormat}}</text></text>
@ -113,11 +114,16 @@
<view class="content padding-tb-sm"> <view class="content padding-tb-sm">
<view class="text-left"> <view class="text-left">
<view class="site-icon-sm"> <view class="site-icon-sm">
<image :src="imgURL+'pay-qy.png'" mode="widthFix" width="100upx" v-if='itemx.companyNature =="0"'></image> <image :src="imgURL+'pay-qy.png'" mode="widthFix" width="100upx"
<image src="https://xoi-support.oss-cn-hangzhou.aliyuncs.com/星油运营小程序/gr.png" mode="widthFix" width="100upx" v-if='itemx.companyNature =="1"'></image> v-if='itemx.companyNature =="0"'></image>
</view> <image src="https://xoi-support.oss-cn-hangzhou.aliyuncs.com/星油运营小程序/gr.png"
<text class="padding-left-sm" v-if='itemx.companyNature =="0"'>外请油卡支付余额{{itemx.balance|moneyFormat}}</text> mode="widthFix" width="100upx" v-if='itemx.companyNature =="1"'></image>
<text class="padding-left-sm" v-if='itemx.companyNature =="1"'>企业油卡支付 {{itemx.companyNature =="1" ? itemx.shareCompanyQuota==0? '(余额:'+itemx.balance+')' :'':''}} </text> </view>
<text class="padding-left-sm"
v-if='itemx.companyNature =="0"'>外请油卡支付余额{{itemx.balance|moneyFormat}}</text>
<text class="padding-left-sm" v-if='itemx.companyNature =="1"'>企业油卡支付
{{itemx.companyNature =="1" ? itemx.shareCompanyQuota==0? '(余额:'+itemx.balance+')' :'':''}}
</text>
</view> </view>
<view class="text-sm padding-left-xl margin-left-xs"> <view class="text-sm padding-left-xl margin-left-xs">
{{itemx.name}} {{itemx.shareCompanyQuota==1?'共享额度':'非共享'}} {{itemx.name}} {{itemx.shareCompanyQuota==1?'共享额度':'非共享'}}
@ -143,47 +149,46 @@
<view class="padding" v-if='type == "oil"'> <view class="padding" v-if='type == "oil"'>
<view class="padding-bottom-xs margin-bottom-xs dashed-bottom"> <view class="padding-bottom-xs margin-bottom-xs dashed-bottom">
<view class="padding-tb-xs text-left" @tap="onCopy(order.orderSerialNumber)"> <view class="padding-tb-xs text-left" @tap="onCopy(order.orderSerialNumber)">
订单编号 订单编号
<text class="fr">{{order.orderSerialNumber?order.orderSerialNumber:''}} <text <text class="fr">{{order.orderSerialNumber?order.orderSerialNumber:''}} <text
class="cuIcon-copy padding-left-xs"></text></text> class="cuIcon-copy padding-left-xs"></text></text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油站 油站
<view class="fr">{{order.siteName?order.siteName:''}} <view class="fr">{{order.siteName?order.siteName:''}}
<!-- <text v-if="order.siteLevel" class="cu-tag text-xs tag-red" style="margin-left: 20px;">{{order.siteLevel}}</text> --> <!-- <text v-if="order.siteLevel" class="cu-tag text-xs tag-red" style="margin-left: 20px;">{{order.siteLevel}}</text> -->
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油品油枪 油品油枪
<text <text
class="fr nowrap">{{order.oilsCode?order.oilsCode+' ':''}}&{{ order.gunName?order.gunName+'号枪': order.oilsBar?order.oilsBar+'号枪':'未选择油枪'}}</text> class="fr nowrap">{{order.oilsCode?order.oilsCode+' ':''}}&{{ order.gunName?order.gunName+'号枪': order.oilsBar?order.oilsBar+'号枪':'未选择油枪'}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油升数 加油升数
<text class="fr">{{order.volume?order.volume :'xxx.x' | moneyFormath}} L</text> <text class="fr">{{order.volume?order.volume :'xxx.x' | moneyFormath}} L</text>
</view> </view>
<view class="dashed-top margin-top-xs padding-top-sm"> <view class="dashed-top margin-top-xs padding-top-sm">
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油金额 加油金额
<!-- <text <!-- <text
class="fr">{{order.oilDiscountAmount>0?order.realAmount+order.oilDiscountAmount:order.realAmount|moneyFormat}}</text> --> class="fr">{{order.oilDiscountAmount>0?order.realAmount+order.oilDiscountAmount:order.realAmount|moneyFormat}}</text> -->
<text class="fr">{{ moneyIntercept(order.xoilAmountGun )}}</text> <text class="fr">{{ moneyIntercept(order.xoilAmountGun )}}</text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
星油优惠 星油优惠
<!-- order.oilDiscountAmount>0?order.oilDiscountAmount:'xxx.x'|moneyFormat --> <!-- order.oilDiscountAmount>0?order.oilDiscountAmount:'xxx.x'|moneyFormat -->
<text <text class="text-red fr">{{ moneyIntercept(order.oilDiscountAmount)}}</text>
class="text-red fr">{{ moneyIntercept(order.oilDiscountAmount)}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
优惠券 优惠券
<text <text
class="text-red fr">{{order.couponDiscountAmount>0?order.couponDiscountAmount:'xxx.x'|moneyFormat}}</text> class="text-red fr">{{order.couponDiscountAmount>0?order.couponDiscountAmount:'xxx.x'|moneyFormat}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
合计 合计
<text <text
class="text-red text-bold text-lg fr">{{order.realAmount>0? '¥'+ order.realAmount:'xxx.x'|}}</text> class="text-red text-bold text-lg fr">{{order.realAmount>0? '¥'+ order.realAmount:'xxx.x'|}}</text>
</view> </view>
@ -191,38 +196,39 @@
<view class="padding" v-if='type == "urea"'> <view class="padding" v-if='type == "urea"'>
<view class="padding-bottom-xs margin-bottom-xs dashed-bottom"> <view class="padding-bottom-xs margin-bottom-xs dashed-bottom">
<view class="padding-tb-xs text-left" @tap="onCopy(order.orderId)"> <view class="padding-tb-xs text-left" @tap="onCopy(order.orderId)">
订单编号 订单编号
<text class="fr">{{order.orderId?order.orderId:''}} <text <text class="fr">{{order.orderId?order.orderId:''}} <text
class="cuIcon-copy padding-left-xs"></text></text> class="cuIcon-copy padding-left-xs"></text></text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油站 油站
<view class="fr">{{order.siteName?order.siteName:''}} <view class="fr">{{order.siteName?order.siteName:''}}
<!-- <text v-if="order.siteLevel" class="cu-tag text-xs tag-red" style="margin-left: 20px;">{{order.siteLevel}}</text> --> <!-- <text v-if="order.siteLevel" class="cu-tag text-xs tag-red" style="margin-left: 20px;">{{order.siteLevel}}</text> -->
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加注类型 加注类型
<text <text class="fr nowrap">{{order.formats | ureaFormats }}</text>
class="fr nowrap">{{order.formats | ureaFormats }}</text>
</view> </view>
<view class="padding-tb-xs formats_box" v-if='order.formats == "2"'> <view class="padding-tb-xs formats_box" v-if='order.formats == "2"'>
<view class="formats_box_list" v-for="(list,i) in order.xoilUreaOrderRelations " :key='i'> <view class="formats_box_list" v-for="(list,i) in order.xoilUreaOrderRelations " :key='i'>
<view class="formats_box_list_left w30"> <view class="formats_box_list_left w30">
{{list.brandName}} {{list.brandName}}
</view> </view>
<view class="formats_box_list_main w30">{{list.options}}/<text style="color: red;">X{{list.goodsQuantity}}</text> </view> <view class="formats_box_list_main w30">{{list.options}}/<text
style="color: red;">X{{list.goodsQuantity}}</text> </view>
<view class="formats_box_list_right w30">&#165;{{list.totalPrice}}</view> <view class="formats_box_list_right w30">&#165;{{list.totalPrice}}</view>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left" v-if='order.formats != "2"'> <view class="padding-tb-xs text-left" v-if='order.formats != "2"'>
加注量 加注量
<text class="fr">{{order.oldRealLiter?order.oldRealLiter :'xxx.x' }}</text> <text class="fr">{{order.oldRealLiter?order.oldRealLiter :'xxx.x' }}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
合计 合计
<text class="text-red text-bold text-lg fr">{{order.oldRealAmount>0? '¥'+ order.oldRealAmount:'xxx.x'|}}</text> <text
class="text-red text-bold text-lg fr">{{order.oldRealAmount>0? '¥'+ order.oldRealAmount:'xxx.x'|}}</text>
</view> </view>
</view> </view>
</view> </view>
@ -239,7 +245,8 @@
<button class="cu-btn margin-top block lg " @tap="ureaCancelOrder(order.orderId)">取消订单</button> <button class="cu-btn margin-top block lg " @tap="ureaCancelOrder(order.orderId)">取消订单</button>
</view> </view>
</view> </view>
<AbnormalPopup :types='PopupType' :checkType='checkType' @hidenPopup='hidenPopup' :PopupShows='PopupShow' @getureaFinanceApi='getureaFinanceApi'></AbnormalPopup> <AbnormalPopup :types='PopupType' :checkType='checkType' @hidenPopup='hidenPopup' :PopupShows='PopupShow'
@getureaFinanceApi='getureaFinanceApi'></AbnormalPopup>
</view> </view>
</template> </template>
@ -305,12 +312,18 @@
computed: { computed: {
companyList() { companyList() {
if (this.isCompany) { if (this.isCompany) {
return this.order.companyAccounts let companyAccounts = this.order.companyAccounts || []
let filterData = companyAccounts.filter(item => item.companyType != 5)
return filterData
} }
}, },
companyOtherList() { companyOtherList() {
if (this.isCompany) { if (this.isCompany) {
return this.order.otherAccounts // return this.order.otherAccounts
let otherAccounts = this.order.otherAccounts || []
let filterData = otherAccounts.filter(item => item.companyType != 5)
let target = this.sortParticulars(filterData,'balance')
return target
} }
} }
}, },
@ -329,6 +342,32 @@
} }
}, },
methods: { methods: {
sortParticulars(arr, field) {
let map = new Map()
let keys = [],
values = [],
target = []
arr.forEach(item => {
map.set(item, item[field])
})
for (let key of map.keys()) {
keys.push(key)
}
for (let value of map.values()) {
values.push(value)
}
values.sort((a,b)=>{return a - b})
values.reverse()
values.forEach(value => {
keys.forEach(key => {
if (map.get(key) == value) {
target.push(key)
map.set(key, new Date().getTime())
}
})
})
return target
},
getureaFinanceApi() { getureaFinanceApi() {
ureaFinanceApi.queryWhetherToHangUp(this.order.orderId).then(res => { ureaFinanceApi.queryWhetherToHangUp(this.order.orderId).then(res => {
if (res.data == '2') { if (res.data == '2') {
@ -453,7 +492,8 @@
title: res.msg title: res.msg
}) })
uni.redirectTo({ uni.redirectTo({
url: '/BagStation/pages/makeOrder/payResult?status=success&&payMethod='+this.payMethod, url: '/BagStation/pages/makeOrder/payResult?status=success&&payMethod=' +
this.payMethod,
fail: (err) => { fail: (err) => {
// console.log(err) // console.log(err)
} }
@ -525,7 +565,8 @@
}) })
setTimeout(() => { setTimeout(() => {
uni.redirectTo({ uni.redirectTo({
url: '/BagStation/pages/makeOrder/payResult?status=success&&payMethod='+this.payMethod, url: '/BagStation/pages/makeOrder/payResult?status=success&&payMethod=' +
this.payMethod,
fail: (err) => { fail: (err) => {
// console.log(err) // console.log(err)
} }
@ -541,7 +582,8 @@
setTimeout(() => { setTimeout(() => {
let msg = res.msg let msg = res.msg
uni.redirectTo({ uni.redirectTo({
url: `/BagStation/pages/makeOrder/payResult?status=fail&&errMsg=${msg}payMethod=`+this.payMethod url: `/BagStation/pages/makeOrder/payResult?status=fail&&errMsg=${msg}payMethod=` +
this.payMethod
}) })
}, 1000) }, 1000)
} }
@ -634,6 +676,7 @@
font-weight: 700; font-weight: 700;
font-size: 28rpx; font-size: 28rpx;
} }
.formats_box { .formats_box {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
@ -642,6 +685,7 @@
box-sizing: border-box; box-sizing: border-box;
flex-direction: column; flex-direction: column;
} }
.formats_box_list { .formats_box_list {
display: flex; display: flex;
justify-content: space-around; justify-content: space-around;
@ -652,6 +696,7 @@
align-items: center; align-items: center;
width: 100%; width: 100%;
} }
.site-icon-sm { .site-icon-sm {
width: 40upx; width: 40upx;
vertical-align: middle; vertical-align: middle;

@ -52,28 +52,28 @@
<view class="padding" style="padding-bottom: 200px;"> <view class="padding" style="padding-bottom: 200px;">
<view class="padding-bottom-xs margin-bottom-xs dashed-bottom"> <view class="padding-bottom-xs margin-bottom-xs dashed-bottom">
<view class="padding-tb-xs text-left" @tap="onCopy(order.orderSerialNumber)"> <view class="padding-tb-xs text-left" @tap="onCopy(order.orderSerialNumber)">
订单编号 订单编号
<text class="fr">{{order.orderSerialNumber?order.orderSerialNumber:''}} <text <text class="fr">{{order.orderSerialNumber?order.orderSerialNumber:''}} <text
class="cuIcon-copy padding-left-xs"></text></text> class="cuIcon-copy padding-left-xs"></text></text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油站 油站
<text class="fr">{{order.siteName?order.siteName:''}}</text> <text class="fr">{{order.siteName?order.siteName:''}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油品油枪 油品油枪
<text class="fr nowrap"> <text class="fr nowrap">
{{order.oilsCode?order.oilsCode+' ':''}}&{{ order.gunName?order.gunName+'号枪': order.oilsBar?order.oilsBar+'号枪':'未选择油枪'}} {{order.oilsCode?order.oilsCode+' ':''}}&{{ order.gunName?order.gunName+'号枪': order.oilsBar?order.oilsBar+'号枪':'未选择油枪'}}
</text> </text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油升数 加油升数
<text class="fr">{{order.volume?order.volume :'未输入' | moneyFormath}} L</text> <text class="fr">{{order.volume?'约':''}}{{order.volume?order.volume :'未输入' | moneyFormath}} L</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油员 加油员
<text class="fr">{{order.siteUserName}}</text> <text class="fr">{{order.siteUserName}}</text>
</view> </view>
<!-- <view class="padding-tb-xs flex text-left"> <!-- <view class="padding-tb-xs flex text-left">
@ -87,40 +87,40 @@
</view> --> </view> -->
<view class="dashed-top margin-top-xs padding-top-sm"> <view class="dashed-top margin-top-xs padding-top-sm">
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油金额 加油金额
<!-- {{order.oilDiscountAmount>0?order.realAmount+order.oilDiscountAmount:order.realAmount|moneyFormat}} --> <!-- {{order.oilDiscountAmount>0?order.realAmount+order.oilDiscountAmount:order.realAmount|moneyFormat}} -->
<!-- <text class="fr">{{order.realPriceAmount |moneyFormat}}</text> --> <!-- <text class="fr">{{order.realPriceAmount |moneyFormat}}</text> -->
<text class="fr">{{order.xoilAmountGun |moneyFormat}}</text> <text class="fr">{{order.xoilAmountGun |moneyFormat}}</text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
星油优惠 星油优惠
<text <text
class="text-red fr">{{order.oilDiscountAmount>0?order.oilDiscountAmount:'xxx.x'|moneyFormat}}</text> class="text-red fr">{{order.oilDiscountAmount>0?order.oilDiscountAmount:'xxx.x'|moneyFormat}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
优惠券 优惠券
<text <text
class="text-red fr">{{order.couponDiscountAmount>0?order.couponDiscountAmount:'xxx.x'|moneyFormat}}</text> class="text-red fr">{{order.couponDiscountAmount>0?order.couponDiscountAmount:'xxx.x'|moneyFormat}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
合计 合计
<text <text
class="text-red text-bold text-lg fr">{{order.realAmount>0?'¥'+order.realAmount:'xxx.x'}}</text> class="text-red text-bold text-lg fr">{{order.realAmount>0?'¥'+order.realAmount:'xxx.x'}}</text>
</view> </view>
<view class="dashed-top margin-top-xs padding-top-sm"> <view class="dashed-top margin-top-xs padding-top-sm">
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油车牌 加油车牌
<text class=" fr">{{order.plateNumber}}</text> <text class=" fr">{{order.plateNumber}}</text>
</view> </view>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
加油司机 加油司机
<text class=" fr">{{user.customerCode}}</text> <text class=" fr">{{user.customerCode}}</text>
</view> </view>
<view class="padding-tb-xs text-left"> <view class="padding-tb-xs text-left">
油卡性质 油卡性质
<!-- <text class=" fr">{{order.couponDiscountAmount>0?order.couponDiscountAmount:'xxx.x'|moneyFormat}}</text> --> <!-- <text class=" fr">{{order.couponDiscountAmount>0?order.couponDiscountAmount:'xxx.x'|moneyFormat}}</text> -->
<text class="fr">企业</text> <text class="fr">企业</text>
</view> </view>

@ -125,7 +125,7 @@
</view> </view>
<view class="text-right flex-sub oil-main-color"> <view class="text-right flex-sub oil-main-color">
<text v-if="activeCard.shareCompanyQuota==1"> <text v-if="activeCard && activeCard.shareCompanyQuota==1">
共享余额 共享余额
</text> </text>
<text v-else> <text v-else>
@ -235,11 +235,10 @@
}, },
cards() { cards() {
if (this.cardList.length) { if (this.cardList.length) {
let cards = []
// console.log(this.cardList,'---------------------')
this.cardList.forEach((e) => { this.cardList.forEach((e) => {
// cards.push(e.accountCardCode) e.companyName = e.companyName + '(' + (e.companyType == 0 ? `柴油账户:${e.balance}` : e
e.companyName = e.companyName + '('+( e.companyType==0?`柴油账户:${e.balance}`:e.companyType==1?`汽油账户:${e.balance}`:e.companyType==2?`LNG账户:${e.balance}`:`尿素:${e.balance}`) + ')' .companyType == 1 ? `汽油账户:${e.balance}` : e.companyType == 2 ?
`LNG账户:${e.balance}` : `尿素:${e.balance}`) + ')'
}) })
return this.cardList return this.cardList
} }
@ -255,7 +254,6 @@
this.otherUser = 'kl' this.otherUser = 'kl'
} }
this.otherUserInfo = otherUserInfo this.otherUserInfo = otherUserInfo
// console.log('+++++',option)
this.showtitles = oilItem.listTag this.showtitles = oilItem.listTag
this.siteId = option.siteId this.siteId = option.siteId
this.activeChannelCode = option.activeChannelCode this.activeChannelCode = option.activeChannelCode
@ -267,6 +265,40 @@
this.getSiteInfo(option.siteId) this.getSiteInfo(option.siteId)
}, },
methods: { methods: {
sortHandler(arr) {
let internalArr = arr.filter(item => item.oilCardType == 2)
let externalArr = arr.filter(item => item.oilCardType == 3)
// let internalTarget = this.sortParticulars(internalArr, 'shareCompanyQuota')
let externalTarget = this.sortParticulars(externalArr, 'balance')
if (internalArr.length || externalTarget.length) return [...internalArr, ...externalTarget]
else return arr
},
sortParticulars(arr, field) {
let target = []
let map = new Map()
let keys = [],
values = []
arr.forEach(item => {
map.set(item, item[field])
})
for (let key of map.keys()) {
keys.push(key)
}
for (let value of map.values()) {
values.push(value)
}
values.sort((a,b)=>{return a - b})
values.reverse()
values.forEach(value => {
keys.forEach(key => {
if (map.get(key) == value) {
target.push(key)
map.set(key, new Date().getTime())
}
})
})
return target
},
qrR() { qrR() {
}, },
@ -284,16 +316,8 @@
oilCardNature: activeCard.oilCardType, //String oilCardNature: activeCard.oilCardType, //String
accountCardCode: activeCard.accountCardCode //String accountCardCode: activeCard.accountCardCode //String
} }
// console.log('',data2)
qrApi.getOilQrCode(data2).then(res => { qrApi.getOilQrCode(data2).then(res => {
// console.log('+',res,'+')
if (res.code === 20000) { if (res.code === 20000) {
// console.log(res.data)
// console.log(this.otherUser,'++++++++++++++++++++')
// if(this.otherUser = 'kl'){
// this.val = res.data.codeStr+"&"+this.otherUser
// return
// }
this.val = res.data.codeStr this.val = res.data.codeStr
} }
}) })
@ -313,26 +337,21 @@
}) })
}, },
getUserCard() { getUserCard() {
// console.log('%c look that ','color:red;font-size:50px') accountApi.getNewUserAccount({
// console.log(uni.getStorageSync('oilItem'),'*-*-*-*-') siteId: uni.getStorageSync('oilItem').siteId
accountApi.getNewUserAccount({siteId:uni.getStorageSync('oilItem').siteId}).then(res => { }).then(res => {
if (res.code == 20000) { if (res.code == 20000) {
this.cardList = res.data if (res.data.length) {
if (this.cardList.length > 0) { let staging = res.data.filter(item => item.companyType != 5)
// this.getMoneyDetail(this.cardList[0]) let target = this.sortHandler(staging)
} this.cardList = target
} else this.cardList = []
} }
}) })
}, },
toSiteDetail(id) { toSiteDetail(id) {
uni.redirectTo({ uni.redirectTo({
url: `/BagStation/pages/stationDetail/stationDetail?siteId=${id}&customerJump=false`, url: `/BagStation/pages/stationDetail/stationDetail?siteId=${id}&customerJump=false`
fail: (err) => {
// console.log(err)
},
success: () => {
// console.log('err')
}
}) })
}, },
openPlugin() { openPlugin() {

Loading…
Cancel
Save