This commit is contained in:
caolc
2023-05-08 10:45:07 +08:00
parent 8fd25deedf
commit 1c3e0f9662
27 changed files with 388 additions and 297 deletions

View File

@@ -1,24 +1,19 @@
<template>
<view class="padding-top">
<scroll-view scroll-x class=" nav text-center">
<view class="cu-item" v-for="(item,index) in channelList" :class="index==TabCur?'text-blues cur':''" :key="item.channelId"
@tap="tabSelect" :data-id="index">
<image class="site-icon margin-right-sm" :src="imgURL+'site-'+item.channelCode+'.png'" mode="widthFix">
</image>
{{item.channelCode|channelCodeFamt}}
<view class="cu-item" v-for="(item, index) in channelList" :class="index == TabCur ? 'text-blues cur' : ''" :key="item.channelId" @tap="tabSelect" :data-id="index">
<image class="site-icon margin-right-sm" :src="imgURL + 'site-' + item.channelCode + '.png'" mode="widthFix"></image>
{{ item.channelCode | channelCodeFamt }}
<!-- 少了壳牌 -->
</view>
</scroll-view>
<view class="cu-list menu padding-left padding-right">
<view class="cu-item" v-for="(itemx,index) in oilSitePriceDetailsVos" :key="index" v-if="itemx.sitePrice>0">
<text class="cu-tag my-tag line-red text-lg">
</text>
<text class="text-bold text-black text-lg">{{itemx.oilProductCode}}</text>
<text class="text-bold text-blues text-lg">{{itemx.sitePrice==0?'-.--':itemx.sitePrice}}/L</text>
<text class="text-delete">{{itemx.oilSitePrice}}/L</text>
<text class="text-xs ">预计每100L节省{{(100*(itemx.oilSitePrice - itemx.sitePrice))|moneyFormat}}</text>
<view class="cu-item" v-for="(itemx, index) in oilSitePriceDetailsVos" :key="index" v-if="itemx.sitePrice > 0">
<text class="cu-tag my-tag line-red text-lg"></text>
<text class="text-bold text-black text-lg">{{ itemx.oilProductCode }}</text>
<text class="text-bold text-blues text-lg">{{ itemx.sitePrice == 0 ? '-.--' : itemx.sitePrice }}/L</text>
<text class="text-delete">{{ itemx.oilSitePrice }}/L</text>
<text class="text-xs ">预计每100L节省{{ (100 * (itemx.oilSitePrice - itemx.sitePrice)) | moneyFormat }}</text>
<!-- <text class="text-gray text-delete">$市场价</text>
<text class="text-gray text-sm">
预计每100L节省581元
@@ -30,7 +25,7 @@
<view class="bg-white padding ">
<text>油站特色</text>
<view class="padding-top-sm">
<text class="cu-tag line-yellow margin-right-xs" v-for="(itemy,index) in tagList" :key="index">{{itemy}}</text>
<text class="cu-tag line-yellow margin-right-xs" v-for="(itemy, index) in tagList" :key="index">{{ itemy }}</text>
</view>
</view>
</view>
@@ -38,103 +33,101 @@
</template>
<script>
export default {
props: {
channelList: {
type: Array,
default () {}
export default {
props: {
channelList: {
type: Array,
default() {}
}
},
data() {
return {
TabCur: 0,
imgURL: this.global.imgURL,
scrollLeft: 0
};
},
computed: {
activeChannelCode() {
if (this.channelList.length && this.channelList[this.TabCur]) {
let channelCode = this.channelList[this.TabCur].channelCode;
let secondChannelCode = '';
if (this.channelList[this.TabCur].secondChannelCode) {
secondChannelCode = this.channelList[this.TabCur].secondChannelCode;
}
this.$emit('onChangeChannelCode', channelCode, secondChannelCode);
return channelCode;
}
},
data() {
return {
TabCur: 0,
imgURL: this.global.imgURL,
scrollLeft: 0
};
},
computed: {
activeChannelCode() {
if (this.channelList.length && this.channelList[this.TabCur]) {
let channelCode = this.channelList[this.TabCur].channelCode
let secondChannelCode = ''
if (this.channelList[this.TabCur].secondChannelCode) {
secondChannelCode = this.channelList[this.TabCur].secondChannelCode
}
this.$emit('onChangeChannelCode', channelCode, secondChannelCode)
return channelCode
}
},
tagList() {
if (this.channelList.length && this.channelList[this.TabCur].labelTag) {
let labelTag = this.channelList[this.TabCur].labelTag
let tagList = labelTag ? labelTag.split(',') : []
return tagList
}
},
activePay() {
if (this.channelList.length && this.channelList[this.TabCur]) {
let activePay = this.channelList[this.TabCur].activePay
this.$emit('onChangePay', activePay, this.TabCur)
}
},
qrcodePay() {
if (this.channelList.length && this.channelList[this.TabCur]) {
let qrcodePay = this.channelList[this.TabCur].qrcodePay
this.$emit('onChangePayQr', qrcodePay)
}
},
oilSitePriceDetailsVos() {
if (this.channelList[this.TabCur]) {
return this.channelList[this.TabCur].oilSitePriceDetailsVos
}
tagList() {
if (this.channelList.length && this.channelList[this.TabCur].labelTag) {
let labelTag = this.channelList[this.TabCur].labelTag;
let tagList = labelTag ? labelTag.split(',') : [];
return tagList;
}
},
created() {
},
methods: {
tabSelect(e) {
this.TabCur = e.currentTarget.dataset.id;
this.scrollLeft = (e.currentTarget.dataset.id - 1) * 60
activePay() {
if (this.channelList.length && this.channelList[this.TabCur]) {
let activePay = this.channelList[this.TabCur].activePay;
this.$emit('onChangePay', activePay, this.TabCur);
}
},
filters: {
moneyFormat(value) {
if (value != 'xxx.x') {
return "¥" + (parseInt(value * 100) / 100).toFixed(2)
} else {
return value
}
},
channelCodeFamt(value) {
if (value) {
// 渠道编码 ( XOIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
switch (value) {
case 'XOIL':
return '星油'
case 'WJY':
return '万金油'
case 'LV':
return '老吕(找油网)'
case 'TY':
return '团油'
case 'YDJY':
return '一点加油(壳牌)'
}
qrcodePay() {
if (this.channelList.length && this.channelList[this.TabCur]) {
let qrcodePay = this.channelList[this.TabCur].qrcodePay;
this.$emit('onChangePayQr', qrcodePay);
}
},
oilSitePriceDetailsVos() {
if (this.channelList[this.TabCur]) {
return this.channelList[this.TabCur].oilSitePriceDetailsVos;
}
}
},
created() {},
methods: {
tabSelect(e) {
this.TabCur = e.currentTarget.dataset.id;
this.scrollLeft = (e.currentTarget.dataset.id - 1) * 60;
}
},
filters: {
moneyFormat(value) {
if (value != 'xxx.x') {
return '¥' + (parseInt(value * 100) / 100).toFixed(2);
} else {
return value;
}
},
channelCodeFamt(value) {
if (value) {
// 渠道编码 ( XOIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
switch (value) {
case 'XOIL':
return '星油';
case 'WJY':
return '万金油';
case 'LV':
return '老吕(找油网)';
case 'TY':
return '团油';
case 'YDJY':
return '一点加油(壳牌)';
}
}
}
}
};
</script>
<style scoped>
.site-icon {
width: 2rem;
vertical-align: middle;
}
.site-icon {
width: 2rem;
vertical-align: middle;
}
.my-tag {
padding: 0 12rpx;
}
.my-tag {
padding: 0 12rpx;
}
</style>