星油云站
This commit is contained in:
32
components/Empty.vue
Normal file
32
components/Empty.vue
Normal file
@@ -0,0 +1,32 @@
|
||||
<template>
|
||||
<!-- 空 -->
|
||||
<view class="img-box padding-lg margin-lg text-center">
|
||||
<view class="bg-img margin radius flex align-center" :style="'background-image: url('+mainURL+'kong.png)'">
|
||||
|
||||
</view>
|
||||
<text>这里没有相关记录哦~</text>
|
||||
</view>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
name: 'Empty',
|
||||
data() {
|
||||
return {
|
||||
mainURL: this.global.mainURL,
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
/* 空 */
|
||||
.img-box {
|
||||
color: rgb(148, 147, 147);
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.bg-img{
|
||||
min-height: 450rpx;
|
||||
min-width: 200upx;
|
||||
}
|
||||
</style>
|
||||
67
components/PriceList/PriceList.vue
Normal file
67
components/PriceList/PriceList.vue
Normal file
@@ -0,0 +1,67 @@
|
||||
<template>
|
||||
<view class="flex price-list padding-top-sm ">
|
||||
<view class="flex-sub" v-for="(item,index) in price" :key="index" :class="index<price.length-1?'solid-right':''">
|
||||
<view class="text-left" :class="item.name==='市场价'?'text-right':''">
|
||||
<view class="text-center padding-sm">
|
||||
<view class="strong text-lg" :class="'text-'+item.color">
|
||||
¥{{item.price|numberFliter}}
|
||||
</view>
|
||||
|
||||
<view class="text-sm padding-top-sm">
|
||||
{{item.name}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="flex-sub">
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'PriceList',
|
||||
props: {
|
||||
price: {
|
||||
type: Array,
|
||||
default () {}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isLast: true
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
numberFliter(value) {
|
||||
value = value - 1 + 1
|
||||
if (value) {
|
||||
return value.toFixed(2)
|
||||
} else {
|
||||
return '0.00'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.oil-card-price {
|
||||
max-width: 4rem;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.free-money {
|
||||
max-width: 3rem;
|
||||
font-size: 12px;
|
||||
color: #FE0505;
|
||||
line-height: 12px;
|
||||
}
|
||||
|
||||
.navigation {
|
||||
position: absolute;
|
||||
right: 16px;
|
||||
}
|
||||
</style>
|
||||
115
components/oil-menu-item.vue
Normal file
115
components/oil-menu-item.vue
Normal file
@@ -0,0 +1,115 @@
|
||||
<template>
|
||||
<view class="radius padding-xs padding-top solid-top solid-bottom" >
|
||||
<view class="item-title ">
|
||||
<!-- <text class="margin color-000 text-xl text-bold">{{oilItem.otherOilsName}}</text>
|
||||
<text class="fr padding-right text-sm text-grey">市场价:¥{{ oilItem.otherPrice|numberFliter}}</text> -->
|
||||
<PriceList :price="price" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PriceList from '@/components/PriceList/PriceList.vue'
|
||||
export default {
|
||||
components: {
|
||||
PriceList
|
||||
},
|
||||
props: {
|
||||
oilItem: {
|
||||
type: Object,
|
||||
default () {}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
price: []
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.calcPrice()
|
||||
},
|
||||
filters: {
|
||||
numberFliter(value) {
|
||||
value = value-1+1
|
||||
if(value){
|
||||
return value.toFixed(2)
|
||||
}else{
|
||||
return '0.00'
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
calcPrice() {
|
||||
if (this.oilItem.sitePrice) {
|
||||
this.price.push({
|
||||
price: this.oilItem.sitePrice,
|
||||
color: 'red',
|
||||
name: '星油油价',
|
||||
className1: 'red',
|
||||
className2: 'btn-red',
|
||||
})
|
||||
}
|
||||
if (this.oilItem.enterprisePrice) {
|
||||
this.price.push({
|
||||
price: this.oilItem.enterprisePrice,
|
||||
color: 'red',
|
||||
name: '企业油价',
|
||||
className1: 'red',
|
||||
className2: 'btn-red',
|
||||
})
|
||||
}
|
||||
|
||||
if (this.oilItem.wjyPrice) {
|
||||
this.price.push({
|
||||
price: this.oilItem.wjyPrice,
|
||||
color: '#f7b400',
|
||||
name: '万金油价',
|
||||
className1: 'yellow',
|
||||
className2: 'btn-yellow',
|
||||
})
|
||||
}
|
||||
if (this.oilItem.lvPrice) {
|
||||
this.price.push({
|
||||
price: this.oilItem.lvPrice,
|
||||
color: '#ff5200',
|
||||
name: '老吕油价',
|
||||
className1: 'laolv',
|
||||
className2: 'btn-laolv',
|
||||
})
|
||||
}
|
||||
// if (this.oilItem.otherPrice) {
|
||||
// this.price.push({
|
||||
// price: this.oilItem.otherPrice,
|
||||
// color: 'black',
|
||||
// name: '市场价',
|
||||
// className1: 'laolv',
|
||||
// className2: 'btn-laolv',
|
||||
// })
|
||||
// }
|
||||
if (this.oilItem.marketPrice) {
|
||||
this.price.push({
|
||||
price: this.oilItem.marketPrice,
|
||||
color: '#ff5200',
|
||||
name: '发改委价',
|
||||
className1: 'laolv',
|
||||
className2: 'btn-laolv',
|
||||
})
|
||||
}
|
||||
if (this.oilItem.sitePrice) {
|
||||
this.price.push({
|
||||
price: this.oilItem.sitePrice,
|
||||
color: '#ff5200',
|
||||
name: '油机价',
|
||||
className1: 'laolv',
|
||||
className2: 'btn-laolv',
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
375
components/plate-number-picker/plate-number-picker.vue
Normal file
375
components/plate-number-picker/plate-number-picker.vue
Normal file
@@ -0,0 +1,375 @@
|
||||
<template>
|
||||
<view class="cu-modal bottom-modal " :class="modalName">
|
||||
<view class="cu-dialog">
|
||||
<view class="cu-bar bg-white solid-top shadow-top">
|
||||
<view class="action text-green" @tap="hideModal">确定</view>
|
||||
<view class="action text-blue" @tap="deleteInput">删除</view>
|
||||
</view>
|
||||
<view class="padding-xs">
|
||||
<view class="grid " v-if="showPlateList">
|
||||
<view class="padding-sm margin-xs solid bg-white" v-for="item in ChineseList" @tap="select(item)" :key="item.id">
|
||||
<text class="text-lg">
|
||||
{{item.name}}
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="grid " v-if="showInputList">
|
||||
<view class="padding-sm margin-xs solid bg-white" v-for="item in inputList" @tap="selectText(item)" :key="item.id">
|
||||
<text class="text-lg">
|
||||
{{item.name}}
|
||||
</text>
|
||||
</view>
|
||||
<view class="padding-sm margin-xs solid bg-orange light" @tap="clearAll">
|
||||
<text>
|
||||
重输
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
// modalName: 'bottomModal',
|
||||
modalName: {
|
||||
type: String,
|
||||
default: ''
|
||||
},
|
||||
showPlateList: {
|
||||
type: Boolean,
|
||||
default: true
|
||||
},
|
||||
showInputList: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
carNumber: '',
|
||||
plateNo: '',
|
||||
plateText: '',
|
||||
ChineseList: [{
|
||||
name: '京',
|
||||
id: 1
|
||||
},
|
||||
{
|
||||
name: '津',
|
||||
id: 2
|
||||
},
|
||||
{
|
||||
name: '冀',
|
||||
id: 3
|
||||
},
|
||||
{
|
||||
name: '晋',
|
||||
id: 4
|
||||
},
|
||||
{
|
||||
name: '蒙',
|
||||
id: 5
|
||||
},
|
||||
{
|
||||
name: '辽',
|
||||
id: 6
|
||||
},
|
||||
{
|
||||
name: '吉',
|
||||
id: 7
|
||||
},
|
||||
{
|
||||
name: '黑',
|
||||
id: 8
|
||||
},
|
||||
{
|
||||
name: '沪',
|
||||
id: 9
|
||||
},
|
||||
{
|
||||
name: '苏',
|
||||
id: 10
|
||||
},
|
||||
{
|
||||
name: '浙',
|
||||
id: 11
|
||||
},
|
||||
{
|
||||
name: '皖',
|
||||
id: 12
|
||||
},
|
||||
{
|
||||
name: '闽',
|
||||
id: 13
|
||||
},
|
||||
{
|
||||
name: '赣',
|
||||
id: 14
|
||||
},
|
||||
{
|
||||
name: '鲁',
|
||||
id: 15
|
||||
},
|
||||
{
|
||||
name: '豫',
|
||||
id: 16
|
||||
},
|
||||
{
|
||||
name: '鄂',
|
||||
id: 17
|
||||
},
|
||||
{
|
||||
name: '湘',
|
||||
id: 18
|
||||
},
|
||||
{
|
||||
name: '粤',
|
||||
id: 19
|
||||
},
|
||||
{
|
||||
name: '桂',
|
||||
id: 20
|
||||
},
|
||||
{
|
||||
name: '琼',
|
||||
id: 21
|
||||
},
|
||||
{
|
||||
name: '渝',
|
||||
id: 22
|
||||
},
|
||||
{
|
||||
name: '川',
|
||||
id: 23
|
||||
},
|
||||
{
|
||||
name: '贵',
|
||||
id: 24
|
||||
},
|
||||
{
|
||||
name: '云',
|
||||
id: 25
|
||||
},
|
||||
{
|
||||
name: '藏',
|
||||
id: 26
|
||||
},
|
||||
{
|
||||
name: '陕',
|
||||
id: 27
|
||||
},
|
||||
{
|
||||
name: '甘',
|
||||
id: 28
|
||||
},
|
||||
{
|
||||
name: '青',
|
||||
id: 29
|
||||
},
|
||||
{
|
||||
name: '宁',
|
||||
id: 30
|
||||
},
|
||||
{
|
||||
name: '新',
|
||||
id: 31
|
||||
}
|
||||
],
|
||||
inputList: [{
|
||||
name: '1',
|
||||
id: 1
|
||||
},
|
||||
{
|
||||
name: '2',
|
||||
id: 2
|
||||
},
|
||||
{
|
||||
name: '3',
|
||||
id: 3
|
||||
},
|
||||
{
|
||||
name: '4',
|
||||
id: 4
|
||||
},
|
||||
{
|
||||
name: '5',
|
||||
id: 5
|
||||
},
|
||||
{
|
||||
name: '6',
|
||||
id: 6
|
||||
},
|
||||
{
|
||||
name: '7',
|
||||
id: 7
|
||||
},
|
||||
{
|
||||
name: '8',
|
||||
id: 8
|
||||
},
|
||||
{
|
||||
name: '9',
|
||||
id: 9
|
||||
},
|
||||
{
|
||||
name: '0',
|
||||
id: 10
|
||||
},
|
||||
{
|
||||
name: 'A',
|
||||
id: 11
|
||||
},
|
||||
{
|
||||
name: 'B',
|
||||
id: 12
|
||||
},
|
||||
{
|
||||
name: 'C',
|
||||
id: 13
|
||||
},
|
||||
{
|
||||
name: 'D',
|
||||
id: 14
|
||||
},
|
||||
{
|
||||
name: 'E',
|
||||
id: 15
|
||||
},
|
||||
{
|
||||
name: 'F',
|
||||
id: 16
|
||||
},
|
||||
{
|
||||
name: 'G',
|
||||
id: 17
|
||||
},
|
||||
{
|
||||
name: 'H',
|
||||
id: 18
|
||||
},
|
||||
{
|
||||
name: 'I',
|
||||
id: 19
|
||||
},
|
||||
{
|
||||
name: 'J',
|
||||
id: 20
|
||||
},
|
||||
{
|
||||
name: 'K',
|
||||
id: 21
|
||||
},
|
||||
{
|
||||
name: 'L',
|
||||
id: 22
|
||||
},
|
||||
{
|
||||
name: 'M',
|
||||
id: 23
|
||||
},
|
||||
{
|
||||
name: 'N',
|
||||
id: 24
|
||||
},
|
||||
{
|
||||
name: 'O',
|
||||
id: 25
|
||||
},
|
||||
{
|
||||
name: 'P',
|
||||
id: 26
|
||||
},
|
||||
{
|
||||
name: 'Q',
|
||||
id: 27
|
||||
},
|
||||
{
|
||||
name: 'R',
|
||||
id: 28
|
||||
},
|
||||
{
|
||||
name: 'S',
|
||||
id: 29
|
||||
},
|
||||
{
|
||||
name: 'T',
|
||||
id: 30
|
||||
},
|
||||
{
|
||||
name: 'U',
|
||||
id: 31
|
||||
},
|
||||
{
|
||||
name: 'V',
|
||||
id: 32
|
||||
},
|
||||
{
|
||||
name: 'W',
|
||||
id: 33
|
||||
},
|
||||
{
|
||||
name: 'X',
|
||||
id: 34
|
||||
},
|
||||
{
|
||||
name: 'Y',
|
||||
id: 35
|
||||
},
|
||||
{
|
||||
name: 'Z',
|
||||
id: 36
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
plateText: {
|
||||
immediate: true,
|
||||
handler(newVal, oldVal) {
|
||||
this.plateText = newVal
|
||||
if(!newVal){
|
||||
this.showPlateList = true
|
||||
this.showInputList = false
|
||||
}
|
||||
},
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
clearAll() {
|
||||
this.$emit('clearAll')
|
||||
},
|
||||
select(item) {
|
||||
this.$emit('selectName', item.name)
|
||||
},
|
||||
selectText(item) {
|
||||
this.$emit('selectNo', item.name)
|
||||
},
|
||||
deleteInput() {
|
||||
this.$emit('onDeleteInput')
|
||||
},
|
||||
hideModal() {
|
||||
this.$emit('hideModal')
|
||||
},
|
||||
onDeleteInput() {
|
||||
this.$emit('onDeleteInput')
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.cu-modal {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.shadow-top {
|
||||
box-shadow: 0px -3px 0px rgba(26, 26, 26, 0.1);
|
||||
}
|
||||
</style>
|
||||
46
components/service-hotline.vue
Normal file
46
components/service-hotline.vue
Normal file
@@ -0,0 +1,46 @@
|
||||
<template>
|
||||
<!-- 客服热线 -->
|
||||
<view class="">
|
||||
|
||||
<!-- <view class="round text-center">
|
||||
<button class="cu-btn round bg-main-oil" open-type='contact'>
|
||||
<text class="cuIcon-servicefill padding-right-xs"></text>
|
||||
联系在线客服</button>
|
||||
</view> -->
|
||||
<view class="round text-center">
|
||||
<!-- <button class="cu-btn oil-main-btn-color" open-type="contact" @contact="onContact"> -->
|
||||
<!-- <text class="text-grey text-sm">打开会话</text> -->
|
||||
<!-- </button> -->
|
||||
<view class="cu-btn round bg-main-oil" @click="callHotline">
|
||||
<text class="cuIcon-servicefill padding-right-xs"></text>
|
||||
联系客服
|
||||
</view>
|
||||
</view>
|
||||
<view class="color-999 text-center padding" @tap="callHotline">
|
||||
全国统一客服/投诉热线:
|
||||
<text class="text-red">
|
||||
4008-56-5355
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
// key: value
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
callHotline() {
|
||||
uni.makePhoneCall({
|
||||
phoneNumber: '4008-56-5355'
|
||||
})
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
||||
362
components/uni-load-more/uni-load-more.vue
Normal file
362
components/uni-load-more/uni-load-more.vue
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user