20 Commits

Author SHA1 Message Date
xiaozhiyong
fb48168082 更新 2023-10-17 08:41:41 +08:00
xiaozhiyong
30b4c43aa9 更新 2023-09-28 09:46:17 +08:00
7433eedfa5 Merge pull request 'master' (#18) from master into xiaozy_大卫用户协议
Reviewed-on: #18
2023-09-28 01:03:12 +00:00
xiaozhiyong
9b42a95747 更新 2023-09-28 08:58:21 +08:00
8872666d1b Merge pull request '更新' (#17) from zyj into master
Reviewed-on: #17
2023-09-27 08:24:56 +00:00
1c588d3c35 更新 2023-09-27 16:24:23 +08:00
xiaozhiyong
417411a5b8 更新 2023-09-22 10:27:27 +08:00
657988e982 Merge pull request 'zyj' (#16) from zyj into master
Reviewed-on: #16
2023-09-21 08:33:37 +00:00
6d88cd5659 更新 2023-09-21 16:32:48 +08:00
xiaozhiyong
1546317dfe Merge branch 'master' into xiaozy_大卫用户协议 2023-09-21 15:06:36 +08:00
eade32dca7 百川更新 2023-09-20 16:04:55 +08:00
xiaozhiyong
26b68ada34 更新 2023-09-08 10:06:11 +08:00
d7d1fc5ae5 Merge pull request '1' (#15) from caolc into master
Reviewed-on: #15
2023-09-08 02:00:17 +00:00
caolc
8f9efeb7cd 1 2023-09-08 09:54:09 +08:00
8b5ffefc5d Merge pull request 'caolc' (#14) from caolc into master
Reviewed-on: #14
2023-08-11 01:48:25 +00:00
caolc
0f2e0f33ea Merge branch 'master' of http://121.196.213.68:3000/caoliancun/MP-XiaoXing into caolc 2023-08-11 09:47:58 +08:00
xiaozhiyong
0f949e85bb 更新 2023-08-01 09:11:37 +08:00
xiaozhiyong
76ff369846 更新 2023-07-29 10:00:33 +08:00
xiaozhiyong
152794b45e 更新 2023-07-24 10:11:16 +08:00
9d07f97783 Merge pull request 'caolc' (#13) from caolc into master
Reviewed-on: #13
2023-07-06 06:11:36 +00:00
13 changed files with 665 additions and 257 deletions

View File

@@ -24,6 +24,7 @@
// sort: "juli", //类型String 必有字段 备注:// 智能排序 ( price价格最低 juli距离最近 ) 默认距离排序
siteName: '',
clientBelong:'BAICHUAN',
bcDisable:'ENABLE',
...uni.getStorageSync('location'),
// ...this.filterData
// siteBrand: this.siteName ? '' : this.filterDatas

37
App.vue
View File

@@ -99,10 +99,22 @@
if (view.route != 'pages/index/startPage/startPage' && view.route.indexOf('BagAuth') == -1) {
const token = uni.getStorageSync('Authorization')
const openid = uni.getStorageSync('openid')
let jumpUrl = '/BagAuth/pages/login/login?loginType=true'
let urlTarget = this.obtainUrlPathParameterTarget(view.$page.fullPath)
console.log('urlTarget',urlTarget)
let target = {}
if(urlTarget.q) {
let originLink = decodeURIComponent(decodeURIComponent(urlTarget.q))
target = this.obtainUrlPathParameterTarget(originLink)
target.siteId && (jumpUrl += `?scanningParams=${decodeURIComponent(urlTarget.q)}`)
}
if (token && openid) {
if(!white.includes(view.route)){
this.getAmount()
}
this.getAmount()
// if(!white.includes(view.route)){
// this.getAmount()
// }
onlineTimer = setTimeout(() => {
if (this.loginStatus == 'offline') {
uni.clearStorageSync()
@@ -113,7 +125,7 @@
success: function(res) {
if (res.confirm) {
uni.redirectTo({
url: '/BagAuth/pages/login/login?loginType=true'
url: jumpUrl
})
}
},
@@ -125,6 +137,9 @@
}, 1000)
} else {
target.siteId && uni.redirectTo({
url: jumpUrl
})
// loginTimer = setTimeout(() => {
// uni.showModal({
// title: '请您登录',
@@ -146,6 +161,20 @@
// }
})
},
obtainUrlPathParameterTarget(url) {
let target = {}
if(url.includes('?')) {
let paramsText = url.split("?")[1]
let paramsArr = paramsText.split("&")
paramsArr.forEach(item => {
target[item.split('=')[0]] = item.split('=')[1]
})
}
console.log('11target',target)
return target
},
// 是否token过期或ip更改
getAmount() {
clearTimeout(loginTimer)

View File

@@ -23,17 +23,17 @@
<view class="gray-text">加载中...</view>
</view>
<view class="margin-lg flex flex-direction text-center">
<button v-if=checked class="cu-btn round bg-main-oil lg text-lg" open-type="getPhoneNumber"
<button v-if="checked" class="cu-btn round bg-main-oil lg text-lg" open-type="getPhoneNumber"
@getphonenumber="decryptPhoneNumber">
<text class="cuIcon-weixin padding-right-xs"> </text>
<!-- <text class="cuIcon-weixin padding-right-xs"> </text> -->
<text>
微信用户一键登录
手机号快捷登录
</text>
</button>
<button v-else class="cu-btn round bg-main-oil lg text-lg" @click="$refs.popup.open('center')">
<text class="cuIcon-weixin padding-right-xs"> </text>
<!-- <text class="cuIcon-weixin padding-right-xs"> </text> -->
<text>
微信用户一键登录
手机号快捷登录
</text>
</button>
<!-- <button class="cu-btn margin-top round lg" @tap="refuseEmpower">
@@ -89,26 +89,27 @@
loginRes: {},
sessionKey: '',
nickName: '',
loginOut: uni.getStorageSync('loginOut') ? true : false
loginOut: uni.getStorageSync('loginOut') ? true : false,
scanningParams:null
}
},
onLoad(e) {
if(e.loginType){
this.loginType = Boolean(e.loginType);
console.log(e.loginType,'e.loginType')
}
uni.clearStorageSync()
// this.refreshLocation()
uni.login({
provider: 'weixin',
success: (loginRes) => {
console.log(loginRes, '+++++++')
const code = loginRes.code
this.onceCode = code
console.log(this.onceCode, '----------')
this.onceCode = code
oilIdentityApi.sendCode(this.onceCode).then(res => {
console.log(res, '++++++++++++++++')
if (res.code === 20000) {
if(e.scanningParams) {
// 用于扫码进入油站详情页面
this.scanningParams = e.scanningParams
}
this.sessionKey = res.data.sessionKey
uni.setStorageSync('openid', res.data.openId)
uni.setStorageSync('unionid', res.data.unionId)
@@ -125,7 +126,6 @@
}
}).catch(err => {
console.log(err)
uni.reLaunch({
url: '/BagAuth/pages/login/boforeLogin/boforeLogin',
fail: (err) => {
@@ -170,7 +170,7 @@
},
refuseEmpower() {
uni.navigateTo({
url: '/BagAuth/pages/login/oldLogin'
url: `/BagAuth/pages/login/oldLogin?scanningParams=${this.scanningParams}`
})
},
@@ -184,7 +184,6 @@
})
return
}
// console.log(e.detail)
if (e.detail.errMsg === 'getPhoneNumber:ok') {
const data1 = {
...e.detail,
@@ -204,7 +203,6 @@
bindLoginByPhone(data, url) {
if (this.count < 1) {
oilIdentityApi.bindLoginByPhone(data, url).then(res => {
console.log(res)
if (res.code == 20000) {
this.loginSuccess(res)
}
@@ -230,20 +228,23 @@
title: res.msg,
icon: 'none',
complete: (err) => {
// console.log(err)
}
})
}, 1000);
if(this.scanningParams) {
uni.redirectTo({
url: `/BagStation/pages/stationDetail/stationDetail?q=${this.scanningParams}`
})
return
}
// 这里有问题
uni.switchTab({
url: '/pages/tabbar/home/home'
})
}else{
console.log(this.loginType,'loginTypeloginTypeloginType')
if(!this.loginType){
this.refuseLogin()
}
console.log('禁摩登录i失败==================')
}
},
}

View File

@@ -170,7 +170,14 @@
count: 0,
loginRes: {},
checked: false,
next: false
next: false,
scanningParams:null
}
},
onLoad(options) {
if(options.scanningParams) {
// 用于扫码进入油站详情页面
this.scanningParams = options.scanningParams
}
},
onShow() {},
@@ -401,6 +408,12 @@
icon: 'none'
})
}, 1000);
if(this.scanningParams) {
uni.redirectTo({
url: `/BagStation/pages/stationDetail/stationDetail?q=${this.scanningParams}`
})
return
}
// 这里有问题
uni.switchTab({
url: '/pages/tabbar/home/home'

View File

@@ -1,5 +1,5 @@
<template>
<view @tap.stop='showMiniBtn = false' >
<view @tap.stop='showMiniBtn = false'>
<cu-custom class="main-totextbar bg-main-oil" :isBack="true" bgColor="bg-main-oil">
<block slot="backText">返回</block>
<block slot="content">订单支付结果</block>
@@ -13,14 +13,15 @@
<view class="qr-container ">
<view class="qrimg">
<view class="qrimg" @tap="newQrString">
<tki-qrcode ref="qrcode" cid="2" loadMake :val="val" :size="250" unit="upx"
background="#fff" foreground="#000" pdground="#000" :icon="iconUrl" iconSize="40" onval
:usingComponents="usingComponents" showLoading />
<tki-qrcode ref="qrcode" cid="2" loadMake :val="val" :size="250" unit="upx" background="#fff"
foreground="#000" pdground="#000" :icon="iconUrl" iconSize="40" onval
:usingComponents="usingComponents" showLoading />
</view>
</view>
</view>
<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>壳牌</text>
</view>
<view class="text-center padding-top text-sm margin-bottom">
@@ -38,12 +39,13 @@
<view class="padding-bottom-xs margin-bottom-xs dashed-bottom">
<view class="padding-tb-xs text-left" @tap="onCopy(order.orderSerialNumber)">
订单编号
<text class="fr">{{order.orderSerialNumber?order.orderSerialNumber:''}} <text class="cuIcon-copy padding-left-xs"></text></text>
<text class="fr">{{order.orderSerialNumber?order.orderSerialNumber:''}} <text
class="cuIcon-copy padding-left-xs"></text></text>
</view>
</view>
<view class="cu-list menu solid-bottom">
<view class="cu-item arrow" @tap="toDetail(order)">
<view class="cu-item " :class="order.bcDisable === 'DISABLE' ? '' :'arrow'"" @tap="toDetail(order)">
油站
<text class="fr">{{order.siteName?order.siteName:''}}</text>
</view>
@@ -87,7 +89,8 @@
</view>
<view class="padding-tb-xs text-left">
星油优惠
<text class="text-red fr">{{order.xoilDiscountAmount>0?order.xoilDiscountAmount:'xxx.x'|moneyFormat}}</text>
<text
class="text-red fr">{{order.xoilDiscountAmount>0?order.xoilDiscountAmount:'xxx.x'|moneyFormat}}</text>
</view>
<view class="padding-tb-xs text-left">
优惠券
@@ -96,12 +99,13 @@
<view class="padding-tb-xs text-left">
合计
<text class="text-red text-bold text-lg fr">{{order.payRealAmount>0?order.payRealAmount:'xxx.x' }}</text>
<text
class="text-red text-bold text-lg fr">{{order.payRealAmount>0?order.payRealAmount:'xxx.x' }}</text>
</view>
<view class="padding-tb-xs text-left">
支付方式
<text class=" fr" v-if='order.orderSource == "SXF_WECHAT_MINIAPPS" '>随行付支付</text>
<text class=" fr" v-else>{{order.payAccountType==0?'个人账户支付':'企业账户支付'}}</text>
</view>
<view class="padding-tb-xs text-left">
@@ -128,28 +132,31 @@
</view>
</view>
</view>
<view class="padding-md padding-right padding-left-xl text-right position-re" @tap.stop="showMiniBtn=true"
<view class="padding-md padding-right padding-left-xl text-right position-re" @tap.stop="showMiniBtn=true"
v-if="order.orderStatus == 1 ">
<view class="radius shadow mini-btn bg-white padding-xs flex-wrap position-ab ab-rihgt-bootm"
v-if="showMiniBtn">
v-if="showMiniBtn">
<!-- <view class="margin-bottom-sm ">
<button class="cu-btn nowrap bg-white" @tap="deleteOrder(item.orderSerialNumber)">删除</button>
</view> -->
<!-- <view class=" ">
<button class="cu-btn nowrap " @tap="showMiniBtn=false">收起</button>
</view> -->
<view class="margin-bottom-sm">
<button class="cu-btn nowrap bg-white" @tap="gotoInvoicing()">查看开票信息</button>
<view class="more-frame">
<button class="more-item nowrap bg-white " @tap="goDiscount()">优惠油站</button>
<button class="more-item nowrap bg-white " @tap="toRiskControl()">中交风控</button>
<button class="more-item nowrap bg-white " @tap="gotoInvoicing()">查看开票信息</button>
</view>
</view>
<text class="text-lg">更多</text>
</view>
</view>
<view class="padding bg-white fixed-bottom">
<view class="flex margin-bottom" v-if="order.orderStatus==0">
<button class="cu-btn block flex-sub lg bg-main-oil " @tap="makePay">立即支付</button>
<button class="cu-btn block flex-sub lg margin-left" @tap="cancelOrder">取消订单</button>
</view>
<button class=" cu-btn bg-white oil-main-color block flex-sub lg " open-type="contact"><text class="cuIcon-service padding-right-sm"></text>
<button class=" cu-btn bg-white oil-main-color block flex-sub lg " open-type="contact"><text
class="cuIcon-service padding-right-sm"></text>
在线客服</button>
<!-- <button class="cu-btn block lg margin-top " @tap="delOrder">删除订单</button> -->
</view>
@@ -158,7 +165,8 @@
<button class="cu-btn block flex-sub lg bg-main-oil " @tap="makePay">立即支付</button>
<button class="cu-btn block flex-sub lg margin-left" @tap="cancelOrder">取消订单</button>
</view>
<button class=" cu-btn bg-white oil-main-color block flex-sub lg " open-type="contact"><text class="cuIcon-service padding-right-sm"></text>
<button class=" cu-btn bg-white oil-main-color block flex-sub lg " open-type="contact"><text
class="cuIcon-service padding-right-sm"></text>
在线客服</button>
<!-- <button class="cu-btn block lg margin-top " @tap="delOrder">删除订单</button> -->
</view>
@@ -172,6 +180,7 @@
import oilSiteApi from '@/api/oil-site.js'
import tkiQrcode from "../pages/components/tki-qrcode/tki-qrcode.vue" //二维码生成器
import financelApi from '@/api/oil-finance.js'
import Financial from '@/api/Financial.js'
export default {
components: {
ThirdPartyVoucher,
@@ -180,8 +189,8 @@
data() {
return {
showMiniBtn: false,
showQr:false,
val:'',
showQr: false,
val: '',
showThirdResult: false,
id: '',
order: {},
@@ -212,35 +221,53 @@
}
}
},
watch:{
showMiniBtn:function(){
watch: {
showMiniBtn: function() {
// setTimeout(()=>{
// this.showMiniBtn = false
// },1000)
}
},
methods: {
goDiscount() {
uni.navigateTo({
url: '/Activity/pages/index/index'
})
},
toRiskControl() {
const user = uni.getStorageSync('user');
if (user) {
Financial.findHomePageReport({
customerId: user.id
}).then(res => {
if (res.data) {
uni.navigateTo({
url: `/Financial/pages/estimate/index?data=${encodeURIComponent(JSON.stringify(res.data))}`
})
} else {
uni.navigateTo({
url: '/Financial/pages/index?guide=1'
})
}
});
}
},
newQrString() {
this.getOrderQrCode()
},
getOrderQrCode(){
oilSiteApi.getOrderQrCode(this.order.orderSerialNumber).then( (res)=>{
console.log(res)
getOrderQrCode() {
oilSiteApi.getOrderQrCode(this.order.orderSerialNumber).then((res) => {
this.val = res.data
if(res.code == 40000){
this.showQr = false
}else if(res.code == 20000){
if (res.code == 40000) {
this.showQr = false
} else if (res.code == 20000) {
this.showQr = true
this.val =res.data.codeStr
this.val = res.data.codeStr
}
} )
})
},
gotoInvoicing() { //前往开票
console.log(this.order,'+++++++++++++')
financelApi.checkStatus(this.order.orderSerialNumber).then((res) => {
console.log('这里是check是否开发票')
console.log(res)
console.log(this.order.realAmount)
if (res.code == 20000) {
if (res.data.openInvoicMark === 'TO_INVOICED') {
uni.navigateTo({
@@ -250,7 +277,8 @@
} else {
uni.navigateTo({
url: '/BagStation/orderInvoicing/orderInvoicing?orderId=' + this.order
.orderSerialNumber + '&&customerId=' + this.order.customerId + '&&payRealAmount=' + this.order.payRealAmount +
.orderSerialNumber + '&&customerId=' + this.order.customerId +
'&&payRealAmount=' + this.order.payRealAmount +
'&&realAmount=' + this.order.realAmount + '&&code=' + 1
})
}
@@ -285,7 +313,7 @@
// }
// })
// },
// 三方支付结果弹窗结束
onCopy(id) {
uni.setClipboardData({
@@ -303,7 +331,7 @@
if (res.code == 20000) {
this.order = res.data
uni.setStorageSync('oilItem', res.data)
this.getOrderQrCode()
this.getOrderQrCode()
if (res.data.payMethod == 2) {
this.tyPayMethod = res.data.payMethod
// this.queryOrderStatusSq()
@@ -311,11 +339,12 @@
}
})
},
toDetail(item) {
var itemS = JSON.stringify(item)
uni.setStorageSync('siteInfo',itemS)
uni.navigateTo({
url: `/BagStation/pages/stationDetail/stationDetail`,
toDetail(item) {
if(item.bcDisable === 'DISABLE') return
var itemS = JSON.stringify(item)
uni.setStorageSync('siteInfo', itemS)
uni.navigateTo({
url: `/BagStation/pages/stationDetail/stationDetail`,
fail: (err) => {
// console.log(err)
},
@@ -367,7 +396,7 @@
}
},
onLoad(option) {
onLoad(option) {
this.id = option.id
this.getOrderInfo()
uni.showShareMenu()
@@ -381,7 +410,7 @@
moneyFormat(value) {
if (value != 'xxx.x') {
console.log(value)
return (parseInt(value * 100) / 100).toFixed(2)
return (parseInt(value * 100) / 100).toFixed(2)
} else {
return value
}
@@ -405,9 +434,9 @@
}
},
moneyFormath(value) {
console.log(value)
if (value != 'xxx.x') {
let number = parseFloat(value).toFixed(2)
console.log(value)
if (value != 'xxx.x') {
let number = parseFloat(value).toFixed(2)
return number
} else {
return value
@@ -449,19 +478,41 @@
}
</script>
<style scoped>.move-tops{
transform: translateY(-17px);
}
.bg-red{
background-color: red;
}
.text-centers {
text-align: center;
width: 90%;
margin: 0 auto;
border-radius: 7px;
overflow: hidden;
}
<style scoped lang="scss">
.more-frame {
height: 158rpx;
overflow-y: auto;
.more-item {
margin: 10rpx 0;
padding: 0 30rpx;
font-size: 28rpx;
height: 64rpx;
line-height: 64rpx;
text-align: center;
&::after {
border: none;
}
}
}
.move-tops {
transform: translateY(-17px);
}
.bg-red {
background-color: red;
}
.text-centers {
text-align: center;
width: 90%;
margin: 0 auto;
border-radius: 7px;
overflow: hidden;
}
.move-top {
margin-top: -2rem;
}
@@ -470,6 +521,7 @@
right: 110upx;
bottom: 10upx;
}
.move-top {
margin-top: -2rem;
}

View File

@@ -81,14 +81,150 @@
</uni-forms>
</view>
<view class="btn-box">
<view class="cu-btn width-50 text-lg height-80 padding text-center" @tap="backtodetail">
<view class="tip">功能暂时维护 详情请咨询客服电话<text style="color: #00BFFF;"
@click="arouse('13296360386')">13296360386</text></view>
<!-- <view class="cu-btn width-50 text-lg height-80 padding text-center" @tap="backtodetail">
取消
</view>
<view @tap="saveInvoicRecord"
class="cu-btn width-50 text-lg height-80 padding text-center bg-red text-white">
提交
</view>
</view> -->
</view>
<uni-popup ref="popup" :is-mask-click="false">
<view class="notice">
<view>用户协议</view>
<view>
<view>加油平台用户服务协议</view>
<view>
加油平台用户服务协议(以下简称本协议)是您与平台之间就注册加油平台用户账号及使用加油平台的各项服务等相关事宜所订立的协议<text
style="color: black; font-weight: 600;">为使用加油平台的服务您应当仔细阅读并遵守本服务协议下的全部内容特别是涉及免除或者责任限制的条款该类条款可能以黑体加粗或加下划线的形式提示您重点注意</text>除非您已阅读并接受本服务协议所有条款否则您将不能注册平台账号或使用平台的服务如您不同意本服务条款的任意内容请勿注册或使用平台的服务并应立即停止注册程序如您对本服务协议的内容(特别是涉及免除或者责任限制的条款)有任何疑义可随时按照本服务协议中列明的联系方式与平台联系加油平台将根据您的要求为您进一步解释和说明相关内容<text
style="color: black; font-weight: 600;">如您点击我已知晓或我已同意加油平台用户服务协议"并通过注册程序或其他任何方式使用或接受加油平台的任何服务,即视为您已阅读并同意本服务协议,自愿接受本服务协议的所有内容的约束。请您在决定注册或使用服务前再次确认您已知悉并完全理解本服务协议的所有内容。</text>
一、协议的主体与范围
1.本协议主体。
“加油平台”签约主体视您所使用的具体服务而定。本协议项下“加油平台”是指加油平台旗下运营或提供您所使用的相关具体服务的相关主体的统称,您可在相关服务的具体服务条款或说明文件中查看上述主体的名称和信息。“用户”是指使用加油平台相关服务的使用人,在本协议中更多称呼为""。
2.本协议范围。
(1)本《加油平台用户服务协议》文本;
<text
style="color: black; font-weight: 600;">(2)《加油平台隐私政策》,您在注册加油平台账号前,应仔细阅读《加油平台隐私政策》;</text>
(3)具体服务的服务条款、活动规则,您可在【相关具体服务的网站、页面或应用程序】中查阅此类专门服务条款、活动规则;
(4)
专项商品或服务规则,您应根据自身需要,通过加油平台进行跳转等方式,自愿选择接受独立第三方服务商及部分关联第三方服务商所提供的服务,您将在使用该等第三方服务前对相应的用户授权协议予以同意确认,以作为您和加油平台平台之间就该等第三方服务的使用所涉及的相关事项的权利义务依据。
您理解并同意:上述【协议内容】之间如存在不一致之处,以时间上最新发布的内容为准,发布时间相同的,以本款【协议内容】中所包含的组成部分的序号倒序排列为准;上述【协议内容】中所述的协议、政策、条款与规则构成本服务协议不可分割的组成部分,共同适用于您所使用的加油平台服务。
3.您理解并同意:根据国家法律法规变化、运营需要或为提升服务质量的目的,加油平台将在必要的时候对上述各项协议、条款与规则不时地进行修改更新,并通过在网页或移动客户端上发出公告、站内信等合理、醒目的方式向您进行提前通知,上述修改更新内容将在相关更新说明中指定的日期开始实施;您应当及时查阅并了解相关更新修改内容,如您不同意相关更新修改内容,可停止使用相关更新修改内容所涉及的服务,此情形下,变更事项对您不产生效力;如您在上述更新修改内容实施后继续使用所涉及的服务,将视为您已同意各项更新修改内容。
4.本协议适用于网页端、移动客户端(包括IOS、安卓及已有或未来将新增的任何其他移动客户端)等各类平台或媒介中加油平台所提供的各项服务。您知悉并理解,为享受上述相关服务,您必须自行提供相关上网设备(如:个人电脑、手机、平板电脑或其他设备)并自行负担相关网络使用和商品服务支付所产生的有关费用。
二、账号的注册与使用
1.账号的注册
(1)您知悉并承诺,您必须为符合中华人民共和国法律规定的具有完全民事权利和民事行为能力,能够独立承担民事责任的自然人、法人及其他组织。若您不具备前述主体资格,加油平台有权注销(永久冻结)您的注册账号,相关法律责任由您及您的监护人自行承担。
(2)您应遵循诚实信用、合法善意的原则,向平台提交相关注册资料,相关注册资料应当遵守法律法规、社会主义制度、国家利益、公民合法权益、公序良俗、信息真实等原则,不应提交任何违法或不良信息,相关资料如有变动,您应及时更新。如果因您所提供的注册资料不合法、不真实、不准确或未及时更新,从而导致相关法律责任或不利后果的,您将承担相应的法律责任及不利后果。
(3)因国家法律法规、监管要求及特定门类的服务(如金融服务等)需要,您有可能需要在注册或使用该等服务的特定环节中填写真实的身份信息,并需通过相关验证流程后方可使用服务,如您填写的身份信息不完整、不真实或未通过验证,将导致您无法使用该服务、损害自身、他人利益或造成其他不利后果,该等后果将由您予以承担。
2.账号的使用
(1)您应对您账号项下的所有行为(包括但不限于在线签署任何协议,浏览、购买、支付、点评)所产生的一切后果负责,通过您的账号所发生的上述各项行为将视为您本人的真实意思表示。
(2)为保证相关账号安全,未经平台的书面同意,您不应将平台上所注册的账号借给他人使用,否则您应当承担由此产生的全部责任,平台保留拒绝提供相应服务、冻结或收回注册账号或终止本服务协议的权利,并可要求您对平台所承受的损失予以赔偿。
(3)您可以使用注册账号时填写登记的并获得系统审核通过的账号密码登录加油平台。为了您的使用便利,平台将适时提供指纹识别、人脸识别等更为安全便捷的登录方式,平台可根据相关法律法规、监管要求、用户体验、风险控制等因素对登录方式予以适时调整或增减,或在具体业务门类的用户服务条款等规定中予以进一步细化或调整。
(4)鉴于网络服务的特殊性,加油平台无义务审核是否是您本人使用用户名及密码,平台仅审核用户名及密码是否与数据库中保存的一致,任何人只要输入的用户名及密码与数据库中保存的一致,即可凭借该组用户名及密码登录并获得平台所提供的各类服务,所以即使账户登录行为并非您本人所为,加油平台将不承担因此而产生的任何责任。
3.账号的保管和找回
(1)您应自行负责并妥善、正确地保管、使用、维护您的加油平台账号和密码,并对您的账号和密码采取必要和有效的保密措施。非因平台法定过错导致的任何遗失、泄露、被篡改、被盗以及其他因保管、使用、维护不当而造成的损失,您应自行承担。
(2)因您个人原因导致的账号信息遗失,如需找回本账号信息,请按照本账号找回流程提供相应的信息,并确保提供的信息合法真实有效,若提供的信息不符合要求,无法通过加油平台安全验证,平台有权拒绝提供账号找回服务。
(3)如您发现任何人不当使用您的账号或有任何其它可能危及您账号安全的情形时,您应当立即以有效方式通知加油平台,以便平台暂停相关服务。您理解平台对您的请求采取行动需要合理时间,平台对在采取行动前已经产生的后果(包括但不限于您的任何损失)以及采取行动后非可归责于加油平台的后果不承担任何责任。
(4)您不得恶意注册加油平台账号,请勿赠与、借用、租用、有偿或无偿转让或售卖本账号或者以其他方式许可非初始申请注册人使用本账号,平台有权对上述行为进行独立判断并处理,您应当自行承担由此产生的一切责任,同时平台保留追究上述行为人法律责任的权利。且由此产生的一切责任均由您承担。
(5)若您有以下行为之一,加油平台有权暂时中止或永久终止您对账号的使用或收回您的加油平台账号,中断或终止向您继续提供加油平台的产品及/或服务,且无需承担任何责任:
1)根据您的主动申请;
2)您违反本协议的内容的;
3)根据加油平台必须遵守的法律法规、监管政策;
4)加油平台有理由认为您的使用行为对加油平台及/或他人的合法权益造成(或可能造成)侵害的;
5)您的账号连续180天未进行使用的。
4.账户注销
您可以联系我们申请注销账号。您注销账号后,我们将停止为您提供服务,并依据您的要求,除法律法规另有规定外,删除您的个人信息或对其进行匿名化处理。您无法再使用本账号,也将无法找回您加油平台账号中及与账号相关的任何内容或信息。
三、加油平台服务内容
1.加油平台完全按照其发布的服务条款和操作规则通过加油平台等在各种形态(包括未来技术发展出现的新的服务形态)向您提供各类服务,包括但不限于在线加油服务、优惠券包消费等,具体服务内容、收费规则等由平台根据实际情况提供,请您在使用前仔细了解相关内容。
2.广告与第三方链接
(1)您知悉并同意,平台在提供服务的过程中,在符合法律法规的前提下,保留以各种方式投放商业性广告(包括广告链接)或其他任何类型的商业信息的权利(包括但不限于在平台的任何位置上投放广告)。
(2)在符合法律法规的前提下,平台有权自主决定广告投放的形式、位置、内容而不受任何第三方的干预。
(3)您同意平台可以通过电子邮件、电子短信或其他方式向您发送商品促销或其他相关商业信息,同时平台会为您提供退订方式。
(4)平台服务可能会提供与其他互联网网站或资源进行链接。加油平台会依照法律规定对广告商履行相关义务,但您知悉并同意,这些广告商和广告内容非由加油平台控制,您对广告信息应审慎判断其真实性、可靠性。您通过平台的产品与/或服务与广告商或广告主进行任何形式的行为或产生任何形式的纠纷,由您自行负责与解决,除法律法规规定由广告发布者承担的责任外,平台不承担任何额外责任,但根据需要会依法提供必要的协助。
四、服务使用规则
服务使用的基本原则:
1)您在使用加油平台的产品及/或服务的过程中,应遵守法律法规及其他规范性文件,包括但不限于《中华人民共和国民法典》《中华人民共和国保守国家秘密法》、《中华人民共和国著作权法》、《中华人民共和国计算机信息系统安全保护条例》、《计算机软件保护条例》、《互联网电子公告服务管理规定》、《中华人民共和国网络安全法》、《信息网络传播权保护条例》等;应遵守公共秩序,尊重社会公德,不得危害网络安全,不得利用网络从事危害国家安全、荣誉和利益,煽动颠覆国家政权、推翻社会主义制度,煽动分裂国家、破坏国家统一,宣扬恐怖主义、极端主义,宣扬民族仇恨、民族歧视,传播暴力、淫秽色情信息,编造、传播虚假信息扰乱经济秩序和社会秩序,以及侵害他人名誉、隐私、知识产权和其他合法权益等活动。在任何情况下,平台一旦合理地认为您存在或可能存在上述行为的,可以在任何时候,不经事先通知中止或终止向您提供加油平台服务。
2)平台服务将仅限于您在平台明确授权的其他平台上进行使用,任何以破解、转译、转录等非法或未经加油平台明确允许的手段将平台服务与加油平台平台或其他平台授权的平台相分离的行为,均不属于本协议中约定的平台服务。平台保留追究侵权行为人的法律责任及索赔的权利。
3)您知悉并同意,平台仅提供相关的平台网络服务,除此之外与相关服务有关的设备(如个人电脑、手机、及其他与接入互联网或移动网有关的装置)及所需的费用(如为接入互联网而支付的电话费及上网费、为使用移动网而支付的手机费)均应由您自行负担。您需理解并同意,使用本服务时会耗用终端设备和带宽等资源。
4)您确认,您在平台上按照服务流程所确认的交易状态,将成为平台为您进行相关交易或操作的不可撤销的指令。您同意相关指令的执行时间以平台在系统中进行实际操作的时间为准。您同意平台有权依据本协议及平台相关纠纷处理规则等约定对相关事项进行处理。您未能及时对交易状态进行修改、确认或未能提交相关申请所引起的任何纠纷或损失由您自行负责,平台不承担任何责任。
2.虚拟资产的使用规则:
1)加油平台服务项下的虚拟资产包括但不限于助力金、优惠券等您通过免费或付费方式,在遵守一定使用规则前提下获得的;
2)虚拟资产的定价、获得途径、方式、数量、使用方法、有效期限等所有内容以平台公布、实际展示、说明为准;
3)因平台的自身发展、运营情况而自行决定停止虚拟资产等相关平台服务或者平台丧失运营资格的情况下,以现金方式直接取得的虚拟资产,可以依照平台的相关规则,按照现金购买价格等价退款;但通过推广、营销活动等而非由现金方式直接获得的虚拟资产,不予退还或补偿。
4.付款与发票
1)您同意并认可加油平台平台现行公示或未来更新的有关服务价格标准,您可以在加油平台平台上查看相关价格。在您下订单时,请您仔细确认所购服务的名称、价格、数量、型号等信息。
2)由于受市场变化及各种以合理商业努力难以控制因素的影响,平台无法避免您提交的订单信息中出现缺货、价格标示错误等情况;如您的订单出现以上情况,您有权取消订单,服务/产品提供方亦有权自行取消订单,若您已经付款,则为您办理退款。
3)您在平台可以使用您的第三方电子支付账户(包括但不限于微信支付账户或支付宝支付账户)进行支付。处理您使用服务相关的付款时,除了受到本协议的约束之外,还要受电子支付服务商及信用卡/借记卡发卡行的条款和政策的约束。平台对于电子支付服务商或银行发生的错误不承担责任。
<text
style="color: red; font-weight: 600;">4)在您提出开具发票的要求时,平台将为您开具发票,具体发票开具及申请规则,请参见平台所列示的开票说明。请特别注意,部分交易后的发票将由服务/产品提供方为您开具并已明示于相关交易界面;请您在下单时予以注意并在交易成功后及时向服务/产品提供方索要发票。
(若因需要开具发票时,平台将为您开具发票,但您需补足加油时的优惠差价,补足差价后,平台将为您开具发票,具体发票开具及申请规则,请参见加油平台平台所列示的开票说明。请特别注意,部分交易后的发票将由服务/产品提供方为您开具并已明示于相关交易界面;请您在下单时予以注意)</text>
5)平台提供订单管理功能您可以随时通过手机应用端自助查询近6个月的订单情况。针对平台在线加油服务您应在完成加油后再下单支付如您对加油订单有任何异议应当在下单后48小时内联系平台并配合平台提供该笔订单的相关信息(包括但不限于您的个人信息、加油消费情况等)以便对您提出的异议进行核实和处理;逾期反馈的,可能会出现无法核实、无法退单等情形,届时由您自行承担相应不利后果。
5.服务费收取规则
本协议服务费是指您使用加油平台时,平台向您收取的合理服务费用,具体规则如下:
1)当您下单加油时,您将按照当前订单享受的直降优惠、平台优惠券两项合计优惠金额支付服务费。平台发放的满减券、折扣券及您通过淘宝店铺等三方渠道购买的优惠券,在使用时,均应支付服务费;而会员红包、商家优惠券、助力金额外折扣金额不涉及服务费的支付。
2)当每单笔订单合计优惠金额(直降优惠+平台优惠券+加油金)≥2元时将按照合计优惠金额的10%支付(保留小数点后两位)服务费服务费金额最高不超过5元。
3)部分加油站服务费金额固定为1元您可在支付明细中进行查看。
4)服务费策略将根据市场实际情况进行相关调整,调整后,将明示于交易页面;平台始终秉承“为用户节约加油消费”的宗旨进行服务费策略的制定。
5)若您对服务费金额存疑或不认可,可选择放弃交易。
6)服务费规则未尽事宜,请咨询平台客服。
6.加油平台有权基于交易安全等方面的考虑不时设定涉及交易的相关事项,包括但不限于交易限额、交易次数等,您了解前述设定可能会对交易造成一定不便,对此没有异议。如果平台发现了因系统故障或其他任何原因导致的处理错误,无论有利于平台还是有利于您,平台都有权纠正该错误。您应根据平台向您发出的有关纠正错误的通知的具体要求返还多收的款项或进行其他操作。您理解并同意,您因前述处理错误而多付或少付的款项均不计利息,平台不承担因前述处理错误而导致的任何损失或责任。
五、服务变更、中断或终止
1.您理解加油平台需要定期或不定期地对提供服务的相关设备或网络进行检修或者维护,如因此类情况而造成服务在合理时间内的中断,平台无需为此承担任何责任,但应尽可能事先进行通告。
2.无论本协议是否有其他约定,若发生下列任何一种情形,平台有权随时中断或终止向您提供本协议项下的服务而无需对您或任何第三方承担任何责任或义务,且如果给平台带来损失,平台将保留对您起诉的权利:
(1)您提供的个人资料不真实;
(2)您违反本协议中约定的使用规则及不时的更新、平台不时发布及更新的相关操作规则及要求;
(3)您恶意操作、诋毁、损害平台声誉;
(4)利用平台服务有从事违反国家法律法规的行为。
(5)在(4)的情况下,如有关政府主管部门要求平台配合相关调查、采取相关监管、处罚措施,平台将全力配合,因此给您带来的操作不能、操作不便等,平台不承担任何责任。
六、用户行为规范与责任承担
1.您应在遵守本协议、法律法规及其他规范性文件的前提下访问和使用平台服务。您同意,您不会进行或利用平台服务进行下列活动(也不为他人进行下列活动提供便利和支持):
(1)通过不正当手段或以违反诚实信用原则的方式(如利用规则漏洞、利用系统漏洞、滥用会员身份、黑色产业、投机等违背平台服务的初衷的方式)获取、使用平台服务;
(2)从事侵犯平台或他人合法权益的活动或违法犯罪活动,包括为上述活动提供帮助;
(3)未经平台及他人(如涉及)事先明确书面许可,自行或委托他人以任何方式(包括但不限于机器人软件、蜘蛛软件、爬虫软件等任何自动程序、脚本、软件)获取平台的服务、内容、数据(包括但不限于业务数据和用户的个人信息);
(4)规避、移除、更改、阻碍、破坏或以其他方式扰乱平台用于保护平台服务的安全措施;
(5)未经平台明确授权,采用收费或免费的方式,在任何公开场合全部或部分展示平台服务/或平台服务内容(但如您的上述行为不构成侵权的除外);
(6)通过侵犯第三人合法权益、作弊、扰乱系统、实施网络攻击、恶意套现、刷信誉、批量注册、用机器注册平台账户、用机器模拟客户端等手段进行交易或参加平台或其所授权的第三方发布的任何活动。
(7)其他未经平台明示授权许可或违反本协议、法律法规或监管政策、侵犯平台及/或他人合法权益的行为。
2.如您在使用平台服务过程中涉及上述行为中的一项或多项,则需要对自己的行为承担法律责任。承担法律责任的形式包括但不限于:对受到侵害者进行赔偿,以及在平台首先承担了因您的行为导致的行政处罚或侵权损害赔偿责任等损失(含诉讼费、律师费等相关法律程序费用)后,您应立即给予平台等额的赔偿。此外,根据具体违法违规情形,平台有权作出独立判断,立即暂停或终止对您提供部分或全部服务,包括锁定、注销、删除帐号等措施。
3.您知悉并理解,如果平台发现您的上述违法违规行为,依据相关法律法规的规定,平台有权或有义务立即停止相关服务,删除或屏蔽相关违规信息、服务评价,并视情况进行调查取证,保存有关记录,或向国家有关机关举报。同时,平台有权自主删除、屏蔽含有该内容的任何数据信息。平台将根据国家相关法律法规要求,对依法删除、屏蔽的数据信息予以记录、保存。
4.除非在特定服务条款或规则中您与平台另有约定或平台另行予以书面同意,您将确保本服务协议下的服务仅为您个人非商业性质的使用。未经平台书面同意,您不得使用未经平台授权的任何插件、外挂或第三方工具对本服务协议下的服务进行干扰、破坏、修改或施加其他影响。
七、知识产权
1.平台提供的服务中包含的任何文本、图片、图形、音频和/或视频资料均受版权、商标和/或其它财产所有权法律的保护,未经相关权利人同意,上述资料均不得用于任何商业目的。
2.平台为提供服务而使用的任何软件(包括但不限于软件中所含的任何图像、照片、动画、录像、录音、音乐、文字和附加程序、随附的帮助材料)的一切权利均属于该软件的著作权人,未经该软件的著作权人许可,您不得对该软件进行反向工程(reverseengineer)、反向编译(decompile)或反汇编(disassemble)。
<text style="color: black; font-weight: 600;">八、隐私保护
1.保护您隐私是平台的一项基本政策,平台保证不对外公开或向第三方提供单个您的注册资料及您在使用网络服务时存储在加油平台的非公开内容,但下列情况除外:
(1)事先获得您的明确授权;
(2)根据有关的法律法规要求;
(3)按照相关政府主管部门的要求;
(4)为维护社会公众的利益;
(5)为维护加油平台的合法权益。</text>
九、责任限制
1.本协议中的任何内容均不影响您作为用户始终有权享有的不能以协议约定方式同意改变或放弃的任何法定权利。本协议及本协议中包含的所有免责和责任限制条款仅适用于法律法规允许的最大限度内。
2.您知悉并同意,除本协议另有约定或法律法规另有规定外,平台服务乃按"现状"提供,平台不对提供的服务(含技术和信息)作出任何明示或暗示的承诺或保证,包括但不限于质量、稳定、正确、及时、完整、连贯、安全,但平台承诺将不断提升服务质量及服务水平,为用户提供更加优质的服务。
3.除法律法规另有规定外,不论是否预见,便利加油仅对平台提供的服务承担法律允许的最大范围的责任,因服务导致的任何间接、附带、衍生或惩罚性的损失和/或损害及利润损失、商业信誉、业务机会、数据或其他有形或无形损失,平台不承担任何责任。便利加油亦不对任何第三方的诽谤、犯罪或其他非法行为承担责任,亦不赔偿因此造成的您的任何损失。
4.平台仅承担本协议明确约定的直接责任。除法律法规另有规定或本协议另有约定,在任何情况下,平台对本协议所承担的赔偿责任总额不超过平台因向您提供服务而收取的服务费总额。
十、通知和联系方式
1.本协议项下平台对于用户所有的通知均可通过网页公告、站内信、电子邮件、手机短信或常规的信件传送等方式进行,该等通知于发送之日视为已送达您。
2.如您对本协议或使用平台服务相关的事宜有任何问题(包括问题咨询、投诉等),平台专门为您提供了多种反馈通道,希望为您提供满意的解决方案:
(1)在线客服/其他在线意见反馈通道:您可与平台上产品功能页面的在线客服联系或者在线提交意见反馈;
(2)人工客服通道:您可以拨打平台的客服电话与平台联系。
平台会在收到您的反馈后尽快向您答复。
十一、其他条款
1.本协议适用中华人民共和国法律。因本协议引起的或与本协议有关的任何争议,各方应友好协商解决;协商不成的,任何一方均可将有关争议提交至被告所在地有管辖权法院管辖。
2.如果本协议中的任何条款无论因何种原因完全或部分无效或不具有执行力,或违反任何适用的法律,则该条款被视为无效,但本协议的其余条款仍应有效并且有约束力。
3.平台在法律允许最大范围对本协议拥有解释权与修改权。
</view>
</view>
<view class="button-group">
<view @tap="back">取消</view>
<view :style="{color:noticeInstance.countdown == 0 ? '#576B95' : '#d3d3d3'}" @tap="iKnow">
{{noticeInstance.confirmText}}
</view>
</view>
</view>
</uni-popup>
</view>
</template>
@@ -113,19 +249,23 @@
invoicBankNumber: '', //银行账号
remark: '', //发票备注
invoicEmail: '', //电子邮箱,
orderSerialNumber: '' ,//订单编号
clientBelong:'BAICHUAN'
orderSerialNumber: '', //订单编号
clientBelong: 'BAICHUAN'
},
noticeInstance: {
content: '',
countdown: 5,
confirmText: '我已知晓5s'
}
}
},
onLoad(options) {
console.log(options);
this.noticeInit()
this.Invoicing.orderSerialNumber = options.orderId
this.orderId = options.orderId
this.Invoicing.customerId = options.customerId
let realAmount = options.payRealAmount
console.log(realAmount,'++++++++++++')
let realAmount = options.payRealAmount
this.code = options.code
if (options.code == 2) {
this.getchange(realAmount)
@@ -135,6 +275,32 @@
},
methods: {
arouse(phone) {
uni.makePhoneCall({
phoneNumber: phone
})
},
noticeInit() {
let timer = setInterval(() => {
this.noticeInstance.countdown--
if (this.noticeInstance.countdown == 0) {
this.noticeInstance.confirmText = '我已知晓'
clearInterval(timer)
return
}
this.noticeInstance.confirmText = `我已知晓(${this.noticeInstance.countdown}s`
}, 1000)
this.$refs.popup.open('center')
},
back() {
uni.navigateBack()
},
iKnow() {
if (this.noticeInstance.countdown) {
return
}
this.$refs.popup.close()
},
backtodetail() {
uni.switchTab({
url: '../../pages/tabbar/order/orderList/orderList'
@@ -144,19 +310,19 @@
console.log(realAmount)
let _that = this
financelApi.getRecordByOrderId(this.orderId).then((res) => {
console.log('这里是修改处')
console.log(res)
_that.realAmount = parseFloat(realAmount)
console.log(_that.realAmoun)
_that.Invoicing = res.data
})
},
saveInvoicRecord() {
console.log(this.code)
if (this.code == 1) {
console.log('这里是发布')
console.log(this.Invoicing)
financelApi.save( Object.assign(this.Invoicing,{invoicAmount:this.realAmount}) ).then((res) => {
financelApi.save(Object.assign(this.Invoicing, {
invoicAmount: this.realAmount
})).then((res) => {
if (res.code == 20000) {
if (res.data != null && res.data.remark != null) {
uni.showToast({
@@ -178,8 +344,10 @@
})
} else if (this.code == 2) {
console.log('这里是更新')
financelApi.orderUpdate(Object.assign(this.Invoicing,{invoicAmount:this.realAmount})).then((res) => {
financelApi.orderUpdate(Object.assign(this.Invoicing, {
invoicAmount: this.realAmount
})).then((res) => {
console.log(res)
if (res.code == 20000) {
if (res.data != null && res.data.remark != null) {
@@ -208,6 +376,72 @@
</script>
<style>
.tip {
width: 100%;
text-align: center;
height: 80rpx;
color: red;
}
.notice {
position: relative;
padding: 50rpx;
width: 600rpx;
height: 900rpx;
border-radius: 25rpx;
background: #fff;
}
.notice>view:nth-of-type(1) {
font-size: 36rpx;
text-align: center;
}
.notice>view:nth-of-type(2) {
margin-top: 30rpx;
overflow-y: auto;
padding-left: 16rpx;
height: 75%;
font-size: 28rpx;
}
.button-group {
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 100rpx;
/* background-color: pink; */
}
.button-group::before {
content: "";
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 90%;
height: 1rpx;
background: #d3d3d370;
}
.button-group::after {
content: "";
position: absolute;
top: 20rpx;
left: 50%;
width: 1rpx;
height: 60rpx;
background: #d3d3d370;
}
.button-group>view {
display: inline-block;
width: 50%;
text-align: center;
line-height: 100rpx;
}
.fixed-group {
display: flex;
justify-content: flex-start;

View File

@@ -32,7 +32,13 @@
<view class="padding-top-sm">
<text class="cu-tag line-yellow margin-right-xs" v-for="(itemy,index) in tagList" :key="index">{{itemy}}</text>
</view>
<view class="activity" v-if="siteInfo.activitySwitch">
<view class="content">
{{siteInfo.activityContent}}
</view>
</view>
</view>
</view>
</view>
</template>
@@ -43,6 +49,12 @@
channelList: {
type: Array,
default () {}
},
siteInfo:{
type: Object,
default: () => {
return {}
}
}
},
data() {
@@ -124,7 +136,7 @@
}
</script>
<style scoped>
<style scoped lang="scss">
.site-icon {
width: 2rem;
vertical-align: middle;
@@ -133,4 +145,19 @@
.my-tag {
padding: 0 12rpx;
}
.activity {
margin-top: 15rpx;
display: flex;
width: 45%;
border:2rpx solid #fbbd0850;
// border-radius: 10rpx;
.content {
flex: 1;
padding: 10rpx 20rpx;
line-height: 36rpx;
// min-height: 80rpx;
color: #fbbd08;
}
}
</style>

View File

@@ -65,7 +65,7 @@
</view>
<!-- 价格 -->
<price-tab @onChangeChannelCode="getChannelCode" @onChangePayQr="onChangePayQr" @onChangePay="onChangePay"
:channel-list="siteInfo.oilSiteChannelDetailsVos"></price-tab>
:channel-list="siteInfo.oilSiteChannelDetailsVos" :siteInfo="siteInfo"></price-tab>
<!-- 客户评价 -->
@@ -101,20 +101,15 @@
</view>
<!-- 底部去支付 -->
<view class="" >
<view class="btn bg-white placeholder-hidden">
<!-- <view class="btn bg-white placeholder-hidden">
<view class="flex bg-white padding flex-direction">
<button class="cu-btn block bg-main-oil lg" v-if="activePay" @tap="makePay">
<image class="site-icon margin-right-sm" :src="imgURL+'site-yz.png'" mode="widthFix">
</image>
一键支付
</button>
<!-- <button v-if="qrcodePay" class="cu-btn block bg-main-oil margin-tb-sm lg" @tap="siteQrPay">
<image class="site-icon margin-right-sm" :src="imgURL+'site-qr.png'" mode="widthFix">
</image>
二维码支付
</button> -->
</view>
</view>
</view> -->
<view class="btn bg-white fixed ">
<view class="flex bg-white padding flex-direction">
<button class="cu-btn block bg-main-oil lg" @tap="makePay">
@@ -122,11 +117,6 @@
</image>
一键支付
</button>
<!-- <button v-if="qrcodePay" class="cu-btn block bg-main-oil margin-tb-sm lg" @tap="siteQrPay">
<image class="site-icon margin-right-sm" :src="imgURL+'site-qr.png'" mode="widthFix">
</image>
二维码支付
</button> -->
</view>
</view>
</view>
@@ -185,14 +175,22 @@
}
},
onHide() {
console.log('这里是hiden')
this.innerAudioContext.stop()
this.innerAudioContext && this.innerAudioContext.stop()
},
onUnload() {
console.log('这里是卸载页面')
this.innerAudioContext.stop()
this.innerAudioContext && this.innerAudioContext.stop()
},
onLoad(option) {
if(option.q) {
let originLink = decodeURIComponent(option.q)
let target = this.obtainUrlPathParameterTarget(originLink)
if(target.siteId) {
this.siteId = target.siteId
this.getSiteInfo(target.siteId)
}
return
}
if (!option.item) {
let siteInfos = uni.getStorageSync('siteInfo')
var oilItem = JSON.parse(decodeURIComponent(siteInfos))
@@ -214,6 +212,17 @@
this.ContextAudio(this.audioUrl)
},
methods: {
obtainUrlPathParameterTarget(url) {
let target = {}
if(url.includes('?')) {
let paramsText = url.split("?")[1]
let paramsArr = paramsText.split("&")
paramsArr.forEach(item => {
target[item.split('=')[0]] = item.split('=')[1]
})
}
return target
},
// 生成音频文件
ContextAudio(url) {
this.innerAudioContext = uni.createInnerAudioContext();
@@ -223,12 +232,11 @@
console.log('开始播放');
});
this.innerAudioContext.onError((res) => {
console.log(res.errMsg);
console.log(res.errCode);
console.log(res);
});
},
backTohome() {
this.innerAudioContext.stop()
this.innerAudioContext && this.innerAudioContext.stop()
uni.switchTab({
url: '../../../pages/tabbar/home/home'
})
@@ -237,7 +245,7 @@
this.showtitle = false
},
gotoPay() {
this.innerAudioContext.stop()
this.innerAudioContext && this.innerAudioContext.stop()
uni.navigateTo({
url: `/BagStation/pages/makeOrder/makeOrder?siteId=${this.siteId}&activeCur=${this.activeCur}`
})
@@ -247,24 +255,30 @@
this.secondChannelCode = sec
},
siteQrPay() {
this.innerAudioContext.stop()
this.innerAudioContext && this.innerAudioContext.stop()
// let siteId =
uni.navigateTo({
url: `/BagStation/pages/stationDetail/stieQr?siteId=${this.siteId}&activeChannelCode=${this.activeChannelCode}&secondChannelCode=${this.secondChannelCode}`
})
},
getSiteInfo(id, item) {
console.log('进入获取油站信息');
let user = uni.getStorageSync('user');
let data2 = {
...uni.getStorageSync('location'),
siteId: id
siteId: id,
clientBelong: "BAICHUAN"
}
if (user) {
oilSiteApi.getSiteDetails(data2).then(res => {
console.log('进入获取油站信息getSiteDetails', res)
if (res.code == 20000) {
this.siteInfo = res.data
}else {
setTimeout(()=>{
uni.showToast({
title:res.msg,
icon:'none'
})
},1000)
}
})
} else {
@@ -274,36 +288,28 @@
},
makePay() {
let user = uni.getStorageSync('user');
if (this.activePay && user) {
if (this.siteInfo.juli > 1000) {
this.showtitle = true
} else {
this.innerAudioContext.stop()
uni.navigateTo({
url: `/BagStation/pages/makeOrder/makeOrder?siteId=${this.siteId}&activeCur=${this.activeCur}`
})
}
} else {
if(!user){
uni.showModal({
title: '请您登录',
content: "登录佰川加油才可以加油 |˛˙꒳​˙)♡",
confirmText: '去登陆',
success: (res) => {
if (res.confirm) {
uni.reLaunch({
url: '../../../BagAuth/pages/login/login?loginType=true'
})
}
if(!user){
uni.showModal({
title: '请您登录',
content: "登录佰川加油才可以加油 |˛˙꒳​˙)♡",
confirmText: '去登陆',
success: (res) => {
if (res.confirm) {
uni.reLaunch({
url: '../../../BagAuth/pages/login/login?loginType=true'
})
}
})
}else{
uni.showToast({
title:'暂无可选油品',
icon:'none'
})
}
}
})
return
}
if (this.siteInfo.juli > 1000) {
this.showtitle = true
} else {
this.innerAudioContext && this.innerAudioContext.stop()
uni.navigateTo({
url: `/BagStation/pages/makeOrder/makeOrder?siteId=${this.siteId}&activeCur=${this.activeCur}`
})
}
},
@@ -311,6 +317,7 @@
this.qrcodePay = val
},
onChangePay(val, active) {
console.log(val)
this.activePay = val
this.activeCur = active
},
@@ -329,10 +336,10 @@
},
goBack() {
this.innerAudioContext.stop()
uni.navigateBack({
})
// this.innerAudioContext.stop()
uni.switchTab({
url: '/pages/tabbar/home/home'
});
},
selectRadio() {
this.radio === 'A' ? this.radio = '' : this.radio = 'A'

View File

@@ -1,25 +1,34 @@
<template>
<view class="cu-item cur padding no-mr-border site-item" :style="{height:siteItem.oilProductCodeAndPrices?siteItem.oilProductCodeAndPrices.length>3?'220rpx !important':listHeight?listHeight + 'rpx !important':'': ''}">
<view class="cu-avatar radius lg "
:style="'background-image:url('+(siteItem.siteImages?siteItem.siteImages:defaultLogo)+');'">
</view>
<view class="content">
<!-- :style="{height:siteItem.oilProductCodeAndPrices?siteItem.oilProductCodeAndPrices.length>3?'220rpx !important':listHeight?listHeight + 'rpx !important':'': ''}" -->
<view class="site-item">
<view class="radius"
:style="'background-image:url('+(siteItem.siteImages?siteItem.siteImages:defaultLogo)+');'">
</view>
<view class="content">
<view class="action">
<view class="text-grey text-sm " style="padding-top: 6rpx;">
<!-- <my-icon iconName="sy-der-icon.png" class="padding-right-xs text-sm"></my-icon> -->
{{siteItem.juli|distanceFilter}}
</view>
</view>
<view>
<view class="text-cut text-black text-lg padding-right-sm ">{{siteItem.siteName}}</view>
<view class="text-cut text-black text-lg padding-right-sm ">{{siteItem.siteName}}</view>
</view>
<view class="listTages">
<!-- <view v-if="siteItem.siteLevel" class=" cu-tag round bg-self--dark-yellow yu-tag text-xs">{{siteItem.siteLevel}}</view> -->
<view class="cu-tag round bg-self-yellow yu-tag text-xs" :class="siteItem.channelCode=='XOIL'?'tag-red':''">{{siteItem.listTag|channelCodeFamt}}
<view class="cu-tag round bg-self-yellow yu-tag text-xs"
:class="siteItem.channelCode=='XOIL'?'tag-red':''">{{siteItem.listTag|channelCodeFamt}}
</view>
<view class="cu-tag round bg-self--dark-yellow yu-tag text-xs" v-show="first">距离最近</view>
</view>
<view class="">
<view class="text-cut color-666 text-sm ">
{{siteItem.address}}
</view>
<view class="">
<view class="text-cut color-666 text-sm ">
{{siteItem.address}}
</view>
</view>
<view class="text-gray flex" style="width: calc(100% + 30%);display: flex;flex-wrap: wrap;">
<view v-if="listHeight" class="youpin" style="" v-for="(item,index) in siteItem.oilProductCodeAndPrices">
<view class="text-gray flex" style="display: flex;flex-wrap: wrap;">
<view v-if="listHeight" class="youpin" style=""
v-for="(item,index) in siteItem.oilProductCodeAndPrices">
<view class="text-bold yellow-oil text-xl padding-right-xs">
{{item.oilProductCode}}
</view>
@@ -36,25 +45,25 @@
<view v-if="!listHeight" class="">
<text class="cu-tag oil-tag radius text-xs"
v-if="siteItem.oilSitePrice - siteItem.sitePrice>0">{{(siteItem.oilSitePrice - siteItem.sitePrice)|moneyFormat}}</text>
</view>
<view v-if="!listHeight" class="text-cut padding-left-sm text-lg">
<text class="text-delete color-333 text-sm padding-right-xs">
{{siteItem.oilSitePrice|moneyFormat}}/L
</view>
<view v-if="!listHeight" class="text-cut padding-left-sm text-lg">
<text class="text-delete color-333 text-sm padding-right-xs">
{{siteItem.oilSitePrice|moneyFormat}}/L
</text>
<!-- <my-icon iconName="¥.png" class="padding-right-xs icon-rectangle"></my-icon>
<!-- <my-icon iconName="¥.png" class="padding-right-xs icon-rectangle"></my-icon>
<my-icon iconName="f.png" class="padding-right-xs "></my-icon> -->
</view>
</view>
</view>
<view class="activity" v-if="siteItem.activitySwitch">
<view class="title">活动</view>
<view class="content">
{{siteItem.activityContent}}
</view>
</view>
</view>
<view class="action">
<view class="text-grey text-sm " style="padding-top: 6rpx;">
<!-- <my-icon iconName="sy-der-icon.png" class="padding-right-xs text-sm"></my-icon> -->
{{siteItem.juli|distanceFilter}}
</view>
</view>
</view>
</template>
@@ -70,47 +79,47 @@
type: Boolean,
default: false
},
listHeight:{
type:Number,
default:0
listHeight: {
type: Number,
default: 0
}
},
data() {
return {
starUrl: this.global.starUrl,
defaultLogo:'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/logo_default.png',
audioUrl:''
defaultLogo: 'https://publicxingyou.oss-cn-hangzhou.aliyuncs.com/mp-oil/logo_default.png',
audioUrl: ''
}
},
},
methods: {
},
filters: {
channelCodeFamt(value) {
console.log(value)
if (!value) {
return '未知'
// 渠道编码 ( XOIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
// switch (value) {
// case 'XOIL':
// return '星油'
// case 'WJY':
// return '万金油'
// case 'LV':
// return '老吕(找油网)'
// case 'TY':
// return '团油'
// case 'YDJY':
// return '一点加油(壳牌)'
// }
} else {
return value
}
},
channelCodeFamt(value) {
console.log(value)
if (!value) {
return '未知'
// 渠道编码 ( XOIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
// switch (value) {
// case 'XOIL':
// return '星油'
// case 'WJY':
// return '万金油'
// case 'LV':
// return '老吕(找油网)'
// case 'TY':
// return '团油'
// case 'YDJY':
// return '一点加油(壳牌)'
// }
} else {
return value
}
},
distanceFilter(value) {
if (value) {
return value > 1000 ? ((value / 1000).toFixed(2) + 'km') : (value + 'm')
}else{
} else {
return '0.00km'
}
},
@@ -125,20 +134,43 @@
}
</script>
<style scoped>
<style scoped lang="scss">
.site-item {
margin-bottom: 1.8rem;
align-items: flex-start !important;
height: 150rpx!important;
position: relative;
display: flex;
align-items: flex-start !important;
padding: 25rpx;
// margin-bottom: 1.8rem;
line-height: 1.5rem;
.content {
flex: 1;
overflow: hidden;
.action {
position: absolute;
right: 35rpx;
top: 24rpx;
}
}
>.radius {
margin-right: 30rpx;
width: 96rpx;
height: 96rpx;
font-size: 2em;
background-size: 100% 100%;
}
}
.yellow-oil{
.yellow-oil {
color: #e8775a;
}
.cu-avatar{
background-color: transparent !important;
}
.youpin{
.youpin {
border: 1px solid #e4e4e4;
display: flex;
border-radius: 5px;
@@ -146,7 +178,33 @@
margin-right: 5px;
margin-bottom: 5px;
}
.text-xl{
.text-xl {
font-size: 30rpx;
}
.activity {
display: flex;
width: 85%;
// padding: 10rpx 20rpx;
border: 2rpx solid #FF8C00;
border-radius: 10rpx;
.title {
width: 20%;
padding: 10rpx 0;
line-height: 36rpx;
text-align: center;
color: #FF8C00;
background: #FF8C0030;
}
.content {
flex: 1;
padding: 10rpx 20rpx;
line-height: 36rpx;
min-height: 80rpx;
color: #FFA500;
}
}
</style>

View File

@@ -75,7 +75,9 @@
params: { //类型Object 必有字段 备注:// 筛选对象
sort: "juli", //类型String 必有字段 备注:// 智能排序 ( price价格最低 juli距离最近 ) 默认距离排序
...uni.getStorageSync('location'),
...this.filterData
...this.filterData,
clientBelong:'BAICHUAN',
bcDisable:'ENABLE',
// siteBrand: "", // 备注:// 石油品牌 ( 1-中国石油 2-中国石化 3-壳牌 4-民营 5-中海油 6-京博 7-中化石油 8-其他 )
// channelCode: "", // 备注:// 渠道编码 ( OIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
// oilProductCode: "" // 备注:// 油号选择 ( 0# 92# 92#)

View File

@@ -201,18 +201,18 @@
data() {
return {
swiperArray: [
// {
// src:this.global.starUrl+'banner.png',
// link:''
// },
{
src:this.global.imgURL+'banner-baichuan.png',
link:''
},
// {
// src: 'https://xoil-public.oss-cn-beijing.aliyuncs.com/WMP-IMG/banner-2dwk.png',
// link: 'https://tengxun.hkzj168.com/?ChannelId=20220831152210221048473'
// },
{
src:'https://xoil-public.oss-cn-beijing.aliyuncs.com/baichuan_MP/banner_baichuan.png',
JumpPage:'/Activity/pages/index/index'
},
// {
// src:'https://xoil-public.oss-cn-beijing.aliyuncs.com/baichuan_MP/banner_baichuan.png',
// JumpPage:'/Activity/pages/index/index'
// },
],
listHeight: 160,
siteInfo: {
@@ -560,7 +560,8 @@
// siteBrand: "", // 备注:// 石油品牌 ( 1-中国石油 2-中国石化 3-壳牌 4-民营 5-中海油 6-京博 7-中化石油 8-其他 )
// channelCode: "", // 备注:// 渠道编码 ( OIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
// oilProductCode: "0#" // 备注:// 油号选择 ( 0# 92# 92#)
comprehensiveSort: 1
comprehensiveSort: 1,
bcDisable: 'ENABLE'
}
}
if (!uni.getStorageSync('user')) {

View File

@@ -384,16 +384,14 @@
siteName: this.siteName,
...uni.getStorageSync('location'),
// ...this.filterData
siteBrand: this.siteName ? '' : this.filterData
.siteBrand, // 备注:// 石油品牌 ( 1-中国石油 2-中国石化 3-壳牌 4-民营 5-中海油 6-京博 7-中化石油 8-其他 )
channelCode: this.siteName ? '' : this.filterData
.channelCode, // 备注:// 渠道编码 ( OIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
oilProductCode: this.siteName ? '' : this.filterData
.oilProductCode, // 备注:// 油号选择 ( 0# 92# 92#)
siteBrand: this.siteName ? '' : this.filterData.siteBrand, // 备注:// 石油品牌 ( 1-中国石油 2-中国石化 3-壳牌 4-民营 5-中海油 6-京博 7-中化石油 8-其他 )
channelCode: this.siteName ? '' : this.filterData.channelCode, // 备注:// 渠道编码 ( OIL星油 WJY万金油 LV老吕找油网 TY团油 YDJY一点加油壳牌)
oilProductCode: this.siteName ? '' : this.filterData.oilProductCode, // 备注:// 油号选择 ( 0# 92# 92#)
provinceCode: this.filterData.provinceCode,
cityCode: this.filterData.cityCode,
areaCode: this.filterData.areaCode,
distance: this.filterData.distance,
bcDisable:'ENABLE',
comprehensiveSort: this.filterData.comprehensiveSort ? this.filterData.comprehensiveSort : 1
}

View File

@@ -37,25 +37,17 @@ service.interceptors.request.use(
config.headers['dataSources'] = 'MP'
if (env === 'production') {
// 生产环境,加密,不输出任何东西
// 设置jsessionid和token
const JSESSIONID = utils.uuid()
config.headers['JSESSIONID'] = JSESSIONID
config.headers['token'] = utils.md5Salt(JSESSIONID)
// if ( encryptWhite.indexOf(config.url) < 0) {
// if (!notEncrypt && encryptWhite.indexOf(config.url) < 0) {
// 这是定义在哪的
const data = { // 用于存储加密
params: '' // 加密后的密文
}
// 要加密
data.params = utils.encrypt(JSON.stringify(config.data))
// console.log('参数', config.url, '参数加密前',config.data)
config.data = data
// }
} else {
console.log('\n\n-----------------------')
console.log('参数', config.url, '参数加密前', config.data)
url = config.url
}
@@ -78,15 +70,10 @@ service.interceptors.response.use(
if (env === 'production') {
// 生产环境,进行加密解密,不输出日志
if (res.encrypt == 1) {
// 加密的数据,需要解密
const dataParam = JSON.parse(utils.decrypt(res.data))
res.data = JSON.stringify(dataParam) === '{}' ? null : dataParam
// console.log('返回', response.config.url, '返回结果',res)
}
} else {
console.log('返回', response.config.url, '返回结果未加密', res)
console.log('-------------------------------------------\n\n')
}
}
uni.hideLoading()
if(response.config.url.indexOf('/oil-site/oilSiteOrderInfo/getOrderQrCode') === -1){
@@ -95,9 +82,7 @@ service.interceptors.response.use(
title: res.msg,
icon: "none"
})
}
}
return res
},