Merge branch 'dev'

yj-dev
杨杰 3 years ago
commit e7481ee8d2
  1. 4
      App.vue
  2. 18
      Utils/Api.js
  3. 484
      components/QS-tabs/QS-tabs.vue
  4. 1
      components/yy-video-player/yy-video-player.nvue
  5. 10
      pages.json
  6. 18
      pages/goods/coupons-info-details/coupons-info-details.vue
  7. 2
      pages/goods/goods.vue
  8. 80
      pages/goods/refuel-confirm/refuel-confirm.vue
  9. 186
      pages/goods/refuel-details/refuel-details.vue
  10. 4
      pages/goods/refuel-succes/refuel-succes.vue
  11. 9
      pages/goods/refuel/refuel.vue
  12. 53
      pages/order/confirmation.vue
  13. 4
      pages/pay/payment/payment.vue
  14. 109
      pages/tabBar/home/home.vue
  15. 10
      pages/tabBar/user/user.vue
  16. 16
      pages/user/agentCoupons/agentCoupons.vue
  17. 12
      pages/user/cardDes/cardDes.vue
  18. 40
      pages/user/deposit/deposit.vue
  19. 60
      pages/user/mineCouponsDestails/mineCouponsDestails.vue
  20. 386
      pages/user/minePromotion/minePromotion.vue
  21. 8
      pages/user/order_details/order_details.vue
  22. 25
      pages/user/order_list/order_list.vue
  23. 205
      pages/userLogin/userLogin.vue
  24. 6
      subPages/Phone-recharge-details/Phone-recharge-details.vue
  25. 251
      subPages/recharge-centre/recharge-centre.vue
  26. BIN
      subPages/static/union5.jpg
  27. BIN
      subPages/static/upay3.jpg
  28. 146
      subPages/trade-union-recharge/trade-union-recharge.vue
  29. 34
      subPages/union-card-success/union-card-success.vue
  30. 107
      subPages/unionComfirmation/unionComfirmation.vue
  31. 2
      subPages/unionPay-orderList/unionPay-orderList.vue
  32. 8
      uni.scss

@ -32,7 +32,9 @@
//ID
storeid:'',
//
storename:''
storename:'',
//
accountId:''
},
onLaunch: function() {
},

@ -27,6 +27,10 @@ export const setUserPayPwd = params => {
export const updateUserPayPwd = params => {
return POST('POST', `${base}/highUser/updateUserPayPwd`, params).then(res => res.data);
}
//经纬度转换
export const findByLatAndLng = params => {
return POST('GET', `${base}/common/findByLatAndLng`, params).then(res => res.data);
}
//获取用户信息
export const findUser = params => {
@ -177,7 +181,10 @@ export const getGasStoreList = params => {
export const getGasDetailByStoreKey = params => {
return POST('GET', `${base}/highGas/getGasDetailByStoreKey`, params).then(res => res.data);
}
//团油距离限制
export const getDictionaryByCodeTypeOl = params => {
return POST('GET', `${base}/common/getDictionaryByCodeTypeOl`, params).then(res => res.data);
}
//获取已开通的省份
export const getDredgeProvince = params => {
return POST('GET', `${base}/common/getDredgeProvince`, params).then(res => res.data);
@ -238,6 +245,10 @@ export const hltUnionCardPay = params => {
export const bindHuiLianTongCard = params => {
return POST('POST', `${base}/highUserCard/bindHuiLianTongCard`, params).then(res => res.data);
}
//手机短信登录
export const loginByTel = params => {
return POST('POST', `${base}/wechat/loginByTel`, params).then(res => res.data);
}
/**
* 工会卡
*/
@ -342,7 +353,10 @@ export const generateCode = params => {
export const highremark = params => {
return POSTBREST('POST', `${brestBase}/highCouponAgent/remark`, params).then(res => res.data);
}
//查询兑换码
export const getAgentConvertCodeCount = params => {
return POSTBREST('GET', `${brestBase}/highCouponAgent/getAgentConvertCodeCount`, params).then(res => res.data);
}
// 查看二维码
export const getCodeById = params => {
return POSTBREST('GET', `${brestBase}/highCouponAgent/getCodeById`, params).then(res => res.data);

@ -0,0 +1,484 @@
<template>
<view class="QS-tabs" :style="{
'z-index': zIndex,
'font-size': getFontSize + 'rpx',
'background-color': getBgColor,
'transition-duration': getDuration + 's'
}">
<scroll-view scroll-x class="QS-tabs-scroll" :scroll-left="left" scroll-with-animation :style="{
'z-index': (Number(zIndex) + 1)
}">
<view class="QS-tabs-scroll-box">
<!-- 循环tabs -->
<view class="QS-tabs-scroll-item" :style="{
'height':'100rpx',
'line-height': getHeight + 'rpx',
'min-width': getWidth + 'rpx',
'padding': '0 ' + space + 'rpx',
'color': index===getCurrent?getActiveColor:getDefaultColor,
'font-weight': activeBold&&index===getCurrent?'bold':'',
'transition-duration': getDuration + 's',
'z-index': (Number(zIndex) + 2)
}"
v-for="(item, index) in getTabs" :key="index" @tap="emit(index)" :id="preId + index">
<!-- line1 -->
<view v-if="animationMode==='line1'" class="boxStyle" :style="getDurationStyle +( index===getCurrent?getActiveStyle:getDefaultStyle)"></view>
{{item.name || item}}
</view>
<!-- itemBackground -->
<view v-if="hasItemBackground" class="itemBackgroundBox" :style="{
'height': getHeight + 'rpx',
'width': (isLine3&&tabsInfo[animationFinishCurrent]?tabsInfo[animationFinishCurrent].width:tabsInfo[getCurrent].width) + 'px',
'z-index': Number(zIndex) + 1,
'transition-duration': getDuration + 's',
'left': (tabsInfo[getCurrent]?tabsInfo[getCurrent].left:0) + 'px'
}">
<view class="itemBackground" :style="'transition-duration:' + getDuration + 's;' +
'background-color:' + getItemBackgroundColor + ';' +
'box-shadow: 0 0 5rpx 5rpx ' + getItemBackgroundColor + ';' +
itemBackgroundStyle + ';'" />
</view>
<!-- line2 -->
<view v-if="animationMode==='line2'" class="boxStyle2" :style="getLinezIndex + getDurationStyle +
'width:' + lW + 'px;' +
'background-color:' + (lineColor||getActiveColor) + ';' +
line2Style + ';' +
'left:' + line2Dx + 'px;'" />
<view v-if="animationMode==='line3'" class="boxStyle2" :style="getLinezIndex +
'width:' + lW + 'px;' +
'background-color:' + (lineColor||getActiveColor) + ';' +
line2Style + ';' +
'left:' + getLine3Dx + 'px'" />
</view>
</scroll-view>
</view>
</template>
<script>
const {
windowWidth
} = uni.getSystemInfoSync();
const preId = 'QSTabsID_';
export default {
props: {
tabs: { //
type: Array,
default () {
return [];
}
},
current: { // index
type: Number,
default: 0
},
height: { //QS-tabs
type: [String, Number],
default: 80
},
minWidth: { //tab //v1.4
type: [String, Number],
default: 250
},
fontSize: { //
type: [String, Number],
default: 30
},
duration: { //, s
type: [String, Number],
default: .5
},
activeColor: { //
type: String,
default: '#33cc33'
},
defaultColor: { //
type: String,
default: '#888'
},
animationLineWidth: { //线
type: [String, Number],
default: 20
},
line2Style: { //line2线
type: String,
default: 'height: 8rpx;border-radius: 4rpx;'
},
animationMode: { //
type: String,
default: 'line1'
},
autoCenter: { //
type: Boolean,
default: true
},
autoCenterMode: { //
type: String,
default: 'component'
},
activeStyle: { //line1
type: String,
default: 'bottom:0;left:50%;transform: translate(-50%,-100%);height: 8rpx;border-radius:4rpx;'
},
defaultStyle: { //line1
type: String,
default: 'bottom:0;left:50%;transform: translate(-50%,-100%);height: 8rpx;border-radius:4rpx;'
},
backgroundColor: { //
type: String,
default: 'rgba(255,255,255,0)'
},
hasItemBackground: { //
type: Boolean,
default: false
},
itemBackgroundColor: { //
type: String,
default: 'rgba(255,255,255,0)'
},
itemBackgroundStyle: { //
type: String,
default: ''
},
zIndex: { //cssz-index
type: [String, Number],
default: 99
},
swiperWidth: { //line3, swiper, rpx
type: [String, Number],
default: 750
},
space: { //tab
type: [String, Number],
default: '0'
},
activeBold: { //tab
type: Boolean,
default: true
},
lineColor: { //line
type: String,
default: ''
}
},
computed: {
isLine3() {
return this.animationMode === 'line3';
},
getCurrent() {
const current = Number(this.current);
if (current > (this.getTabs.length - 1)) {
return (this.getTabs.length - 1)
}
return current;
},
getTabs() {
return this.tabs;
},
getHeight() {
return Number(this.height);
},
getWidth() {
return Number(this.minWidth);
},
getFontSize() {
return this.fontSize;
},
getDuration() {
return Number(this.duration);
},
getBgColor() {
const defaultColor = this.backgroundColor || 'rgba(255,255,255,0)';
if (this.getTabs[this.getCurrent] instanceof Object) {
return this.getTabs[this.getCurrent].backgroundColor || defaultColor;
} else {
return defaultColor;
}
},
getItemBackgroundColor() {
const defaultColor = this.itemBackgroundColor || 'rgba(255,255,255,0)';
if (this.getTabs[this.getCurrent] instanceof Object) {
return this.getTabs[this.getCurrent].itemBackgroundColor || defaultColor;
} else {
return defaultColor;
}
},
getDurationStyle() {
return `transition-duration: ${this.getDuration}s;`
},
getActiveColor() {
let activeColor;
if (this.getTabs[this.getCurrent] instanceof Object) {
if (this.getTabs[this.getCurrent].activeColor) {
activeColor = this.getTabs[this.getCurrent].activeColor;
} else {
activeColor = this.activeColor;
}
} else {
activeColor = this.activeColor;
}
return activeColor;
},
getDefaultColor() {
let defaultColor;
if (this.getTabs[this.getCurrent] instanceof Object) {
if (this.getTabs[this.getCurrent].defaultColor) {
defaultColor = this.getTabs[this.getCurrent].defaultColor;
} else {
defaultColor = this.defaultColor;
}
} else {
defaultColor = this.defaultColor;
}
return defaultColor;
},
getActiveStyle() {
return `width:${this.animationLineWidth}%;background-color:${this.getActiveColor};${this.activeStyle};`;
},
getDefaultStyle() {
return `width:0;background-color:${this.getActiveColor};${this.defaultStyle};`;
},
getLinezIndexNum() {
return Number(this.zIndex) + 2;
},
getLinezIndex() {
return `z-index: ${this.getLinezIndexNum};`;
},
getLine3Dx() {
return Number(this.line3Dx) + Number(this.line3AddDx);
}
},
watch: {
current(n, o) {
this.change(n);
},
tabs() {
this.init();
}
},
data() {
return {
left: 0,
tabsInfo: [],
line2Width: Number(this.animationLineWidth),
setTimeoutFc: null,
componentsWidth: 0,
animationFinishCurrent: this.current,
pxWidth: 0,
lW: 0,
sW: 0,
preId,
line3Dx: 0,
line3AddDx: 0,
line2Dx: 0
}
},
// #ifndef H5
onReady() {
this.init();
},
// #endif
// #ifdef H5
mounted() {
this.init();
},
// #endif
methods: {
init() {
this.countPx();
let view = uni.createSelectorQuery().in(this);
for (let i = 0; i < this.tabs.length; i++) {
view.select('#' + preId + i).boundingClientRect();
}
view.exec((res) => {
const arr = [];
for (let i = 0; i < res.length; i++) {
arr.push(res[i]);
}
this.tabsInfo = arr;
this.countLine2Dx();
this.countLine3Dx();
let _this = this;
_this.getQuery(() => {
_this.countScrollX();
});
})
},
countLine2Dx() {
if (this.animationMode === 'line2') {
const tab = this.tabsInfo[this.getCurrent];
if(tab) this.line2Dx = tab.left + tab.width / 2 - this.lW / 2;
}
},
countLine3Dx() {
if (this.animationMode === 'line3') {
const tab = this.tabsInfo[this.animationFinishCurrent];
if(tab) this.line3Dx = tab.left + tab.width / 2 - this.lW / 2;
}
},
countPx() {
const w = uni.upx2px(this.getWidth);
this.pxWidth = w;
this.lW = (w * (Number(this.animationLineWidth) / 100))+72.5;
this.sW = uni.upx2px(Number(this.swiperWidth));
},
emit(index) {
this.$emit('change', index);
},
change() {
this.countScrollX();
if (this.animationMode === 'line2') {
this.line2Width = 2;
if (this.setTimeoutFc) clearTimeout(this.setTimeoutFc);
this.setTimeoutFc = setTimeout(() => {
this.line2Width = this.animationLineWidth;
}, this.getDuration * 1000 * 3 / 5);
this.countLine2Dx();
}
},
getQuery(cb) {
try {
let view = uni.createSelectorQuery().in(this).select('.QS-tabs');
view.fields({
size: true
}, data => {
if (data) {
this.componentsWidth = data.width;
if (cb && typeof cb === 'function') cb(data);
} else {
this.retryGetQuery(cb);
}
}).exec();
} catch (e) {
//TODO handle the exception
this.componentsWidth = windowWidth;
}
},
retryGetQuery(cb) {
try {
let view = uni.createSelectorQuery().select('.QS-tabs');
view.fields({
size: true
}, data => {
if (data) {
this.componentsWidth = data.width;
} else {
this.componentsWidth = windowWidth;
}
if (cb && typeof cb === 'function') cb(data);
}).exec();
} catch (e) {
//TODO handle the exception
this.componentsWidth = windowWidth;
}
},
countScrollX() {
if (this.autoCenter) {
let tab;
if(this.isLine3) {
tab = this.tabsInfo[this.animationFinishCurrent];
}else{
tab = this.tabsInfo[this.getCurrent];
}
if(tab) {
let tabCenter = tab.left + tab.width/2;
let fatherWidth;
if (this.autoCenterMode === 'window') {
fatherWidth = windowWidth;
} else {
fatherWidth = this.componentsWidth;
}
this.left = tabCenter - fatherWidth / 2;
}
}
},
setDx(dx) {
const tab = this.tabsInfo[dx>0?(this.animationFinishCurrent + 1):(this.animationFinishCurrent - 1)];
this.line3AddDx = dx / this.sW * (tab?tab.width:this.pxWidth);
},
setFinishCurrent(current) {
this.line3AddDx = 0;
this.animationFinishCurrent = current;
this.countLine3Dx();
}
}
}
</script>
<style scoped>
view,
scroll-view {
box-sizing: border-box;
}
.QS-tabs {
width: 100%;
transition-property: background-color, color;
}
.QS-tabs::-webkit-scrollbar {
display: none;
width: 0 !important;
height: 0 !important;
-webkit-appearance: none;
background: transparent;
}
.QS-tabs-scroll {
width: 100%;
white-space: nowrap;
position: relative;
}
.QS-tabs-scroll-box {
position: relative;
display: flex;
white-space: nowrap !important;
display: block !important;
}
.QS-tabs-scroll-item {
position: relative;
display: inline-block;
text-align: center;
transition-property: background-color, color, font-weight;
}
.content {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.boxStyle {
pointer-events: none;
position: absolute;
transition-property: all;
}
.boxStyle2 {
pointer-events: none;
position: absolute;
bottom: 0;
transition-property: all;
transform: translateY(-100%);
}
.itemBackgroundBox {
pointer-events: none;
position: absolute;
top: 0;
transition-property: left, background-color;
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
}
.itemBackground {
height: 100%;
width: 100%;
transition-property: all;
}
</style>

@ -46,7 +46,6 @@ export default {
},
processBarColor:{
type:String,
default:"#39BFFD"
}
},
data() {

@ -639,6 +639,16 @@
"navigationBarTextStyle": "white"
}
}, {
"path": "union-card-success/union-card-success",
"style": {
"navigationBarTitleText": "充值成功",
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#0083f5",
"backgroundColorTop": "#0083f5",
"navigationBarTextStyle": "white"
}
}
]
}],

@ -27,19 +27,27 @@
备注:{{couponDesInfo.couponAgentCode.remark}}</view>
<view class="line1 mart15"></view>
<view class="width100" v-if="couponDesInfo.highUserCoupon">
<view class="width90 mart10 fcor666" v-if="couponDesInfo.highUserCoupon.status != 0">核销码(商户扫客户)</view>
<view class="mart20 fotct fcorred font15 marb20" v-if="couponDesInfo.highUserCoupon.status != 0">
<view class="width100" v-if="couponDesInfo.couponAgentCode.type == 1">
<view class="width90 mart10 fcor666">核销码(商户扫客户)</view>
<view class="mart20 fotct fcorred font15 marb20">
请告知加油员用码商支付</view>
<view class="width90 mart20 fotct" v-if="couponDesInfo.highUserCoupon.status != 0">
<view class="width90 mart20 fotct">
<image class="coupon-qr" :src="imageUrl+'couponCode/'+couponDesInfo.couponCode.ext1"></image>
</view>
</view>
<view class="width90" v-else>
<view class="width90" v-if="couponDesInfo.couponAgentCode.status !=3 && couponDesInfo.couponAgentCode.type != 1">
<view class="width90 mart10 fcor666" >点击下方复制按钮,复制兑换码发送用户</view>
<view class="mart30 fotct font18 marb20 fcor666">{{couponDesInfo.couponAgentCode.convertCode}}</view>
<view class="btn90w mart40" @click="copycont(couponDesInfo.couponAgentCode.convertCode)">复制兑换码</view>
</view>
<!-- <view class="width90" v-if="couponDesInfo.couponCode.status ==3 && couponDesInfo.couponAgentCode.type != 1">
<view class="mart20 fotct fcorred font15 marb20">
请告知加油员用码商支付</view>
<view class="width90 mart20 fotct">
<image class="coupon-qr" :src="imageUrl+'couponCode/'+couponDesInfo.couponCode.ext1"></image>
</view>
<view class="mart30 fotct font18 marb20 fcor666">{{couponDesInfo.couponAgentCode.convertCode}}</view>
</view> -->
<view class="height60"></view>
</view>
</template>

@ -22,7 +22,7 @@
</view>
<!-- 商品主图轮播 -->
<view class="swiper-box">
<swiper circular="true" autoplay="true" @change="swiperChange">
<swiper circular="true" autoplay="true" style="height: 188px;" @change="swiperChange">
<swiper-item v-for="(swiper,index) in swiperList" :key="index">
<image mode="widthFix" :src="imageUrl+swiper" @click="perImage(swiper)"></image>
</swiper-item>

@ -36,16 +36,27 @@
<view class="mart10 heightl60 paddleft10 fcor333 fontwig6 font18 width100 backcorfff">支付方式</view>
<view class="line1"></view>
<view class="width100 backcorfff">
<!-- <view class="height50 width100 backcorfff" @tap="paytype='weixin'">
<!-- <view class="height50 width100 backcorfff" @tap="paytype='jifen'">
<view class="width50 flleft fcor333 fontwig6 font16" style="padding-left: 4%;">
微信支付
积分支付
</view>
<view class="width40 flright fotrt paddtright10 font15 fontwig6 fcor666 alijun"
style="align-items: center;">
<radio :checked="paytype=='weixin'" color="#0083f5" />
<radio :checked="paytype=='jifen'" color="#0083f5" />
</view>
</view>
<view class="width94 line1 mart5 marb5"></view> -->
<view class="line1"></view>
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='jifen'">
<view class="width60 flleft fontwig6">
积分支付
</view>
<view class="flright width30 fotct">
<radio :checked="paytype=='jifen'" color="#0083f5" />
</view>
</view>
<view class="line1"></view>
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='weixin'">
<view class="width60 flleft fontwig6">
@ -56,7 +67,7 @@
</view>
</view>
<view class="line1"></view>
<!-- <view class="line1"></view>
<view class="heightl60 paddleft10 fcor666 width100 backcorfff" @tap="paytype='gonghuika'">
<view class="width60 flleft fontwig6">
汇联通工会卡<text class="font14 fcor666 margle">余额: {{tongCardPrice}}</text>
@ -64,7 +75,7 @@
<view class="flright width30 fotct">
<radio :checked="paytype=='gonghuika'" @click="changeRiado()" color="#0083f5" />
</view>
</view>
</view> -->
</view>
<view class="width100 mart15 fcor333 font16 fontwig6 paddleft10">重要说明</view>
@ -81,7 +92,7 @@
<button class="reBtn flright" @click="orderToPay">去支付</button>
</view>
<ssPaymentPassword ref="paymentPassword" :mode="1" @submit="submitHandle"/>
<ssPaymentPassword ref="paymentPassword" :mode="1" @submit="submitHandle" />
</view>
</template>
@ -90,7 +101,8 @@
getOrderById,
orderToPay,
getHuiLianTongCardBalance,
hltUnionCardPay
hltUnionCardPay,
orderToGoldPay
} from '../../../Utils/Api.js';
import ssPaymentPassword from '../../../components/sanshui-payment-password/index.vue';
let app = getApp();
@ -125,13 +137,13 @@
let that = this;
that.paytype = '';
that.user = app.globalData.userInfo;
that.getHuiLianTongCardBalance();
// that.getHuiLianTongCardBalance();
},
methods: {
//
submitHandle(e) {
this.PaymentPassword = e.value;
if(this.PaymentPassword == ''){
if (this.PaymentPassword == '') {
uni.showToast({
title: '请勿手动关闭弹窗',
icon: 'none',
@ -142,6 +154,36 @@
uni.showLoading({
title: '支付中...'
})
if (this.paytype == 'jifen') {
let params = {
"orderId": this.orderNo,
"password": this.PaymentPassword
}
orderToGoldPay(params).then(res => {
uni.hideLoading();
if (res.return_code == '000000') {
uni.showToast({
title: '支付成功'
})
uni.reLaunch({
url: '/pages/goods/refuel-succes/refuel-succes?id=' + this.orderNo
});
return;
}
if (res.return_code == '102130') {
uni.navigateTo({
url: '../../login/updatePas/updatePas'
})
return;
}
uni.showToast({
title: res.return_msg,
icon: 'none'
})
})
return;
}
let params = {
"orderId": this.orderNo,
"cardNo": this.user.hltCardNo.cardNo,
@ -154,7 +196,7 @@
title: '支付成功'
})
uni.reLaunch({
url: '/pages/goods/refuel-succes/refuel-succes?id=' +this.orderNo
url: '/pages/goods/refuel-succes/refuel-succes?id=' + this.orderNo
});
return;
}
@ -252,7 +294,8 @@
title: '支付成功'
})
uni.reLaunch({
url: '/pages/goods/refuel-succes/refuel-succes?id=' +that.orderNo
url: '/pages/goods/refuel-succes/refuel-succes?id=' +
that.orderNo
});
},
fail: function(err) {
@ -276,7 +319,7 @@
})
return;
}
if(that.paytype == 'gonghuika'){
if (that.paytype == 'gonghuika') {
if (!that.user.isSetPayPwd) {
uni.navigateTo({
url: '../../login/updatePas/updatePas'
@ -300,9 +343,20 @@
}
that.$refs.paymentPassword.modalFun('show');
}
if (that.paytype == 'jifen') {
if (!that.user.isSetPayPwd) {
uni.navigateTo({
url: '../../login/updatePas/updatePas'
})
return;
}
that.$refs.paymentPassword.modalFun('show');
}
},
payRequest: function(self) {
let that = this;
let that = this;
uni.showLoading({
title: '支付中...'
})

@ -2,7 +2,7 @@
<view>
<image mode="widthFix" class="width100" :src="storeList.gasLogoSmall"></image>
<view class="height100p titlecon backcorfff">
<view class="height60 paddtop25 width90">
<view class="height75 paddtop25 width90">
<view class="flleft width80p">
<view class="width100 text1 font18 fontwig6 fcor333">{{storeList.gasName}}</view>
<view class="width100 font14 fcor666 mart5">{{storeList.gasAddress}}</view>
@ -65,8 +65,8 @@
<view class="width90 mart15 font16 fcor666">加油金额</view>
<view class="width90 height40 mart10" style="border: 1px solid #f2f2f2;">
<view class="width8 flleft"></view>
<input type="digit" class="font16 width60 flleft height40" placeholder="输入金额" v-model="inputMoney"
@blur="Listeningfocus" maxlength="6" />
<input type="digit" class="font16 width60 flleft height40" placeholder="输入金额(保留1位小数)" v-model="inputMoney"
@blur="Listeningfocus" />
<view class="width30 height40 flright font14 fcor999 fotct"
style="border-left: 1px solid #f2f2f2;line-height: 40px;">
{{litre}}L
@ -82,17 +82,17 @@
<!-- 底部按钮 -->
<view class="footer">
<view class="flleft padleft15 font15 fcoreb5">
合计: <text class="font24">{{totalPrice}}</text><text
class="font12 fcor666" v-if="priceVip != priceOfficial">优惠约:{{discountPrice}}</text>
合计: <text class="font24">{{totalPrice}}</text><text class="font12 fcor666"
v-if="priceVip != priceOfficial">优惠约:{{discountPrice}}</text>
</view>
<!-- #ifdef MP -->
<button class="reBtn flright" v-if="user.phone == null" @click="jumpPhone">去支付</button>
<button class="reBtn flright" v-else @click="toPay">去支付</button>
<button class="reBtn flright" v-if="user.phone == null" @click="jumpPhone">去支付</button>
<button class="reBtn flright" v-else @click="postionIng">去支付</button>
<!-- #endif -->
<!-- #ifdef H5 -->
<button class="reBtn flright" v-if="user.phone == null" @click="jumpH5Bding">去支付</button>
<button class="reBtn flright" v-else @click="toPay">去支付</button>
<button class="reBtn flright" v-else @click="postionIng">去支付</button>
<!-- #endif -->
</view>
@ -123,7 +123,8 @@
<script>
import {
getGasDetailByStoreKey,
addOrder
addOrder,
getDictionaryByCodeTypeOl
} from '../../../Utils/Api.js';
import wybPopup from '../../../components/wyb-popup/wyb-popup.vue';
let app = getApp();
@ -174,13 +175,21 @@
totalPrice: '0.00',
discountPrice: '0.00',
gasGunList: [],
oilType: ''
oilType: '',
distance: 9999, //
xzMoney: '300', //
isTyAgent: false //
}
},
onLoad(options) {
this.store_key = options.id;
this.counId = options.desId;
if (app.globalData.accountId) {
this.isTyAgent = true;
}
this.getGasDetailByStoreKey();
this.getDictionaryByCodeTypeOl();
this.getDictionaryByCodeTypeMoney();
},
onShow() {
this.user = app.globalData.userInfo;
@ -208,27 +217,29 @@
let params = {
storeKey: this.store_key,
latitude: app.globalData.latitude,
longitude: app.globalData.longitude
longitude: app.globalData.longitude,
isTyAgent: this.isTyAgent
}
getGasDetailByStoreKey(params).then(res => {
uni.hideLoading();
if (res.return_code == '000000') {
this.storeList = res.return_data;
this.oilNo = res.return_data.oilPriceList[0].oilNoName;
this.priceVip = res.return_data.oilPriceList[0].priceVip;
this.priceGun = res.return_data.oilPriceList[0].priceGun;
this.priceOfficial = res.return_data.oilPriceList[0].priceOfficial;
this.detailList = res.return_data.oilPriceList;
this.oilType = res.return_data.oilPriceList[0].oilType;
this.gasGunList = res.return_data.gasGunList;
for (var i = 0; i < res.return_data.gasGunList.length; i++) {
if (this.oilNo == res.return_data.gasGunList[i].oilNoName) {
this.gunnumber.push(res.return_data.gasGunList[i])
this.gunNo = res.return_data.gasGunList[i].gunNo;
this.gasOilNo = res.return_data.gasGunList[i].oilNo;
if(!this.oilNo){
this.oilNo = res.return_data.oilPriceList[0].oilNoName;
this.priceVip = res.return_data.oilPriceList[0].priceVip;
this.priceGun = res.return_data.oilPriceList[0].priceGun;
this.priceOfficial = res.return_data.oilPriceList[0].priceOfficial;
this.detailList = res.return_data.oilPriceList;
this.oilType = res.return_data.oilPriceList[0].oilType;
this.gasGunList = res.return_data.gasGunList;
for (var i = 0; i < res.return_data.gasGunList.length; i++) {
if (this.oilNo == res.return_data.gasGunList[i].oilNoName) {
this.gunnumber.push(res.return_data.gasGunList[i])
this.gunNo = res.return_data.gasGunList[i].gunNo;
this.gasOilNo = res.return_data.gasGunList[i].oilNo;
}
}
}
} else {
uni.showToast({
title: res.return_msg,
@ -243,7 +254,28 @@
}
})
},
//
getDictionaryByCodeTypeOl() {
let datas = {
codeType: 'MILEAGE_LIMIT'
}
getDictionaryByCodeTypeOl(datas).then(res => {
if (res.return_code == '000000') {
this.distance = res.return_data.codeValue;
}
})
},
//
getDictionaryByCodeTypeMoney() {
let datas = {
codeType: 'TY_PRICE_LIMIT'
}
getDictionaryByCodeTypeOl(datas).then(res => {
if (res.return_code == '000000') {
this.xzMoney = res.return_data.codeValue;
}
})
},
//
changeValue(item) {
this.gunnumber = [];
@ -270,7 +302,7 @@
select(amount) {
this.inputMoney = amount.price;
this.litre = parseFloat(amount.price / this.priceGun).toFixed(2);
this.totalPrice = parseFloat(amount.price / this.priceGun * this.priceVip).toFixed(2);
this.totalPrice = parseFloat(amount.price / this.priceGun * this.priceVip).toFixed(1);
if (this.priceVip != this.priceGun) {
let gbprice = parseFloat(this.litre * this.priceOfficial).toFixed(2);
this.discountPrice = parseFloat(gbprice - this.inputMoney).toFixed(2);
@ -284,33 +316,119 @@
},
//
Listeningfocus() {
var a = /^[0-9]+(\.[0-9]{1})?$/;
var b = /^[0-9]+(.[0-9]{1})?$/;
if (this.inputMoney == '' || this.inputMoney < 10 || !(b.test(this.inputMoney)) || !(a.test(this
.inputMoney))) {
uni.showToast({
title: '请输入正确加油金额',
icon: "none",
duration: 2000
});
this.totalPrice = '0.00';
this.discountPrice = '0.00';
this.litre = '';
return;
}
// let inputs = this.inputMoney.split('.');
// if (inputs[1] != undefined && inputs[1].length > 1) {
// uni.showToast({
// title: '1',
// icon: "none",
// duration:2000
// });
// return;
// }
if (this.inputMoney > this.xzMoney) {
uni.showToast({
title: '加油金额不能超过' + this.xzMoney + '元',
icon: "none",
duration: 2000
});
this.inputMoney = this.xzMoney;
}
//
this.litre = parseFloat(this.inputMoney / this.priceOfficial).toFixed(2);
this.totalPrice = parseFloat(this.inputMoney / this.priceOfficial * this.priceVip).toFixed(2);
this.totalPrice = parseFloat(this.inputMoney / this.priceOfficial * this.priceVip).toFixed(1);
if (this.priceVip != this.priceOfficial) {
let gbprice = parseFloat(this.litre * this.priceOfficial).toFixed(2);
this.discountPrice = parseFloat(gbprice - this.totalPrice).toFixed(0);
this.discountPrice = parseFloat(gbprice - this.totalPrice).toFixed(1);
}
//
// this.litre = parseFloat(this.inputMoney / this.priceGun).toFixed(2);
// this.totalPrice = parseFloat(this.inputMoney / this.priceGun * this.priceVip).toFixed(2);
// if (this.priceVip != this.priceGun) {
// let gbprice = parseFloat(this.litre * this.priceGun).toFixed(2);
// this.discountPrice = parseFloat(gbprice - this.totalPrice).toFixed(0);
// }
},
//
jumpPhone(){
jumpPhone() {
uni.navigateTo({
url:'../../userLogin/userLogin'
url: '../../userLogin/userLogin'
})
},
/**
* 定位
*/
postionIng() {
let that = this;
if (that.inputMoney == '' || that.inputMoney < 10) {
uni.showToast({
title: '请输入正确金额',
icon: "none",
duration: 2000
});
return;
}
uni.getLocation({
type: 'wgs84',
success: function(res) {
app.globalData.latitude = res.latitude;
app.globalData.longitude = res.longitude;
that.getGasDetailByStoreKey();
setTimeout(() => {
that.toPay();
}, 500);
},
fail: (err) => {
uni.showToast({
title: '请打开设置里面的位置信息',
icon: "none",
duration: 2000
});
}
})
},
//
toPay() {
if (this.inputMoney == '' || this.inputMoney < 1) {
if (this.storeList.distance > this.distance) {
uni.showToast({
title: '请在' + this.distance + '公里内进行下单',
icon: "none",
duration: 3000
});
return;
}
if (this.inputMoney == '' || this.inputMoney < 10) {
uni.showToast({
title: '请输入正确金额',
icon: "none"
icon: "none",
duration: 2000
});
return false;
return;
}
uni.showLoading({
title: '提交订单中...'
})
let goods = {
"identificationCode":app.globalData.identificationCode,
"identificationCode": app.globalData.identificationCode,
"isTyAgent": this.isTyAgent,
"highChildOrderList": [{
"goodsType": 3,
"goodsId": this.counId,

@ -68,9 +68,9 @@
<text class="paddtright10">{{orderInfo.deductionPrice}}</text>
</view>
</view>
<view class="width90 font13 fcor999 mart10">
<!-- <view class="width90 font13 fcor999 mart10">
*本站不支持电子发票,如需发票请到加油站前台索取
</view>
</view> -->
</view>
</template>

@ -306,11 +306,15 @@
],
onilName: '92#',
latitudeful:'',
longitudeful:''
longitudeful:'',
isTyAgent: false //
}
},
onLoad() {
let that = this;
if (app.globalData.accountId) {
that.isTyAgent = true;
}
uni.getLocation({
type: 'wgs84',
success: function(res) {
@ -396,7 +400,8 @@
latitude: this.latitudeful,
longitude: this.longitudeful,
pageNum: pagenum,
pageSize: this.pageSize
pageSize: this.pageSize,
isTyAgent: this.isTyAgent
}
getGasStoreList(params).then(res => {
if (res.return_code == '000000') {

@ -90,12 +90,12 @@
<view class="width94 comorder mart10">
<view class="height50 width100 backcorfff">
<view class="width50 flleft fcor333 fontwig6 font16" style="padding-left: 4%;">
支付方式
<view class="width100 flleft fcor333 fontwig6 font16" style="padding-left: 4%;">
支付方式 <text class="jfrecharge" @click="jumpdeposits" v-if="couponList.payType == 1 || couponList.payType == 2 || couponList.payType==3 || couponList.payType== 4">积分充值</text>
</view>
</view>
<view class="width94 line1 mart5 marb5"></view>
<view class="height50 width100 backcorfff" v-if="couponList.payType == 2 || couponList.payType==3 "
<view class="height50 width100 backcorfff" v-if="couponList.payType == 1 || couponList.payType == 2 || couponList.payType==3 || couponList.payType== 4"
@tap="paytype='jinbi'">
<view class="width70 flleft fcor333 fontwig6 font16 text1" style="padding-left: 4%;">
积分支付<text class="font14 fcor666 margle">可用积分: {{user.gold}}</text>
@ -105,7 +105,7 @@
<radio :checked="paytype=='jinbi'" color="#0083f5" />
</view>
</view>
<view class="width94 line1 mart5 marb5" v-if="couponList.payType == 2 || couponList.payType==3 "></view>
<view class="width94 line1 mart5 marb5" v-if="couponList.payType == 1 || couponList.payType == 2 || couponList.payType==3 || couponList.payType== 4"></view>
<view class="height50 width100 backcorfff" @tap="paytype='weixin'"
v-if="couponList.payType == 1 || couponList.payType==3 ">
<view class="width50 flleft fcor333 fontwig6 font16" style="padding-left: 4%;">
@ -116,8 +116,8 @@
<radio :checked="paytype=='weixin'" color="#0083f5" />
</view>
</view>
<view class="width94 line1 mart5 marb5" v-if="couponList.payType == 1 || couponList.payType==3 "></view>
<view class="height50 width100 backcorfff" @tap="paytype='gonghuika'">
<view class="width94 line1 mart5 marb5" v-if="couponList.payType == 1 || couponList.payType==3"></view>
<view class="height50 width100 backcorfff" @tap="paytype='gonghuika'" v-if="couponList.payType== 4">
<view class="width70 flleft fcor333 fontwig6 font16 text1" style="padding-left: 4%;">
汇联通工会卡<text class="font14 fcor666 margle">可用余额: {{tongCardPrice}}</text>
</view>
@ -168,10 +168,10 @@
<image mode="widthFix" class="flleft" :src="imageUrl+items.highDiscount.discountImg"></image>
<view class="tcrig">
<view class="yhprice">
<radio :checked="items.highDiscount.id == memDiscountId" color="#0083f5" />
<radio :checked="items.id == memDiscountId" color="#0083f5" />
</view>
<view class="font16 fontwig6 fcor333 text1">{{items.highDiscount.discountName}}</view>
<view class="font13 fcor999 mart5">有效期至{{items.highDiscount.salesEndTime | formatDate('-')}}</view>
<view class="font13 fcor999 mart5">有效期至{{items.useEndTime | formatDate('-')}}</view>
</view>
</view>
@ -228,7 +228,8 @@
tongCardPrice: 0,
storeId: '',
isDiscont: false,
coupondiscountid:''
coupondiscountid: '',
orderDetails:'' //
};
},
@ -309,7 +310,7 @@
this.$refs.popup.show();
},
radioChanges(item) {
if (this.memDiscountId == item.highDiscount.id) { //
if (this.memDiscountId == item.id) { //
this.memDiscountId = '';
this.coupondiscountid = '';
this.paytheprice = this.couponList.discountPrice;
@ -317,16 +318,16 @@
this.isDiscont = false;
} else { //
this.isDiscont = true;
this.memDiscountId = item.highDiscount.id;
this.memDiscountId = item.id;
this.coupondiscountid = item.id;
if (item.highDiscount.discountType == 1) {
//
this.deductionPrice = item.highDiscount.discountPrice;
this.paytheprice = this.couponList.salesPrice - this.deductionPrice;
this.paytheprice = parseFloat(this.couponList.salesPrice - this.deductionPrice).toFixed(2);
} else if (item.highDiscount.discountType == 2) {
//
this.deductionPrice = item.highDiscount.discountPrice;
this.paytheprice = this.couponList.salesPrice - this.deductionPrice;
this.paytheprice = parseFloat(this.couponList.salesPrice - this.deductionPrice).toFixed(2);
} else if (item.highDiscount.discountType == 3) {
//
this.deductionPrice = parseFloat(this.couponList.salesPrice - (this.couponList.salesPrice *
@ -415,6 +416,10 @@
})
return;
}
if(this.orderDetails){
this.orderToPay(this.orderDetails);
return;
}
uni.showLoading({
title: '提交订单中...'
})
@ -442,6 +447,7 @@
// })
this.jumpType = res.return_data.highChildOrderList[0].ext1;
this.orderId = res.return_data.id;
this.orderDetails = res.return_data;
this.orderToPay(res.return_data);
} else {
uni.hideLoading();
@ -732,6 +738,12 @@
});
});
},
//
jumpdeposits(){
uni.navigateTo({
url:'../user/deposit/deposit'
})
}
}
}
@ -917,7 +929,7 @@
align-items: center;
.sum {
width: 50%;
width: 68%;
font-size: 18px;
margin-right: 10upx;
display: flex;
@ -930,7 +942,7 @@
}
.btn {
padding: 0 50rpx;
padding: 0 45rpx;
height: 80rpx;
background-color: #0083f5;
color: #fff;
@ -943,6 +955,17 @@
}
}
.jfrecharge {
background-color: #0083f5;
padding: 5px 20rpx;
color: #fff;
margin-left: 50%;
justify-content: center;
align-items: center;
font-size: 30rpx;
border-radius: 40rpx;
}
.goods-list {
width: 100%;
padding: 0;

@ -18,7 +18,7 @@
</view>
<view class="content">
<view class="pay-list">
<view class="row" @tap="paytype='jinbi'" v-if="pryType == 2 || pryType==3 ">
<view class="row" @tap="paytype='jinbi'" v-if="(pryType == 2 || pryType==3) && goodsType != 1">
<view class="left">
<image src="../../../static/img/jfx.png"></image>
</view>
@ -29,7 +29,7 @@
<radio :checked="paytype=='jinbi'" color="#0083f5" />
</view>
</view>
<view class="row" @tap="paytype='gonghuika'" v-if="goodsType != 2">
<view class="row" @tap="paytype='gonghuika'" v-if="goodsType != 2 && goodsType != 8">
<view class="left">
<image style="border-radius: 50%;" src="../../../static/img/ghkpay.png"></image>
</view>

@ -65,7 +65,6 @@
</view>
</swiper-item>
</swiper>
<image mode="widthFix" style="margin-top: 30px;width: 90%;margin-left: 5%;" v-for="(row, index) in homeCateList"
:key="index" @click="jumphuafei(row)" :src="imageUrl+row.imgData"></image>
<!-- 赠券 -->
@ -89,7 +88,9 @@
<button open-type="contact">
<image :src="imagewxUrl+imgadres4" mode="widthFix" class="xfimg"></image>
</button>
<view class="height60"></view>
<view class="height40"></view>
<!-- <official-account bindload="bindload" binderror="binderror"></official-account> -->
<!-- <view class="height20"></view> -->
</view>
</template>
@ -104,7 +105,8 @@
getTPigKFCToken,
getTPigCinemaToken,
getCmsContent,
getMembershipLevel
getMembershipLevel,
findByLatAndLng
} from "../../../Utils/Api.js"; //api
import wybPopup from '../../../components/wyb-popup/wyb-popup.vue';
let app = getApp();
@ -185,8 +187,8 @@
}
},
onLoad(options) {
app.globalData.accountId = options.accountId;
let that = this;
// 1.wxcode
// #ifdef MP
uni.login({
@ -346,7 +348,7 @@
success: function(res) {
app.globalData.latitude = res.latitude;
app.globalData.longitude = res.longitude;
that.getUserLocation(res.longitude, res.latitude);
// that.findByLatAndLng(res.longitude, res.latitude);
// #ifdef MP
uni.request({
url: 'https://apis.map.qq.com/ws/geocoder/v1/?location=' + res.latitude +
@ -368,14 +370,47 @@
that.getCmsContentcmshome();
that.getCmsContentcmsContent();
},
fail() {
fail(err) {
uni.hideLoading()
}
})
//#endif
},
fail: (err) => {
if (err.errCode == 2) {
uni.showToast({
title: '请开启系统定位',
duration: 3000,
icon: 'none'
})
}
}
})
},
//
findByLatAndLng(item, item1) {
let that = this;
let datas = {
lng: item,
lat: item1
}
findByLatAndLng(datas).then(res => {
if (res.return_code == '000000') {
that.city = res.return_data.result.addressComponent.province;
app.globalData.cityName = res.return_data.result.addressComponent
.province;
app.globalData.cityId = res.return_data.result.addressComponent.adcode;
// app.globalData.cityId = '500100';
that.getCouponListArea();
that.getCouponListgold();
uni.hideLoading();
that.getCmsContent();
that.getCmsAactibity();
that.getCmsContentcmshome();
that.getCmsContentcmsContent();
}
});
},
//H5 openId
getH5AccessToken(item) {
let params = {
@ -449,7 +484,6 @@
})
.catch(err => {
uni.hideLoading()
console.log(err);
});
},
@ -488,8 +522,8 @@
return;
}
this.productListleg = res.return_data.total;
}else{
this.productList = [];
} else {
this.productList = [];
}
})
},
@ -510,8 +544,8 @@
return;
}
this.goldproductListleg = res.return_data.total;
}else{
this.productList = [];
} else {
this.productList = [];
}
})
},
@ -581,18 +615,18 @@
//
toCategory(item) {
if (!app.globalData.userInfo.phone) {
uni.navigateTo({
url: '../../userLogin/userLogin'
})
return;
}
if (!app.globalData.userInfo) {
uni.navigateTo({
url: '../../userLogin/userLogin'
})
return;
}
// if (!app.globalData.userInfo.phone) {
// uni.navigateTo({
// url: '../../userLogin/userLogin'
// })
// return;
// }
// if (!app.globalData.userInfo) {
// uni.navigateTo({
// url: '../../userLogin/userLogin'
// })
// return;
// }
if (item.title == '在线加油') {
uni.navigateTo({
url: item.ext1
@ -628,18 +662,18 @@
},
//
jumphuafei(item) {
if (!app.globalData.userInfo) {
uni.navigateTo({
url: '../../userLogin/userLogin'
})
return;
}
if (!app.globalData.userInfo.phone) {
uni.navigateTo({
url: '../../userLogin/userLogin'
})
return;
}
// if (!app.globalData.userInfo) {
// uni.navigateTo({
// url: '../../userLogin/userLogin'
// })
// return;
// }
// if (!app.globalData.userInfo.phone) {
// uni.navigateTo({
// url: '../../userLogin/userLogin'
// })
// return;
// }
if (item.title == '汇联通') {
uni.navigateTo({
url: '/pages/goods/goods-list/goods-list?id=2'
@ -678,7 +712,7 @@
}
if (item.title == '优惠券包') {
uni.navigateTo({
url:'../../../subPages/coupon-package/coupon-package'
url: '../../../subPages/coupon-package/coupon-package'
})
return;
}
@ -706,7 +740,7 @@
height: 440px;
}
.xfimg{
.xfimg {
width: 80rpx;
bottom: 60rpx;
position: fixed;
@ -1182,6 +1216,7 @@
height: 180rpx;
margin-left: 14rpx;
margin-top: 14rpx;
float: left;
}
.orange-content .swiper-item .img {

@ -24,18 +24,18 @@
<!-- #ifdef MP -->
<button class="erweima fotct aliitem font14" v-if="user == null" open-type="getPhoneNumber"
@getphonenumber="loginByPhone">
<image src="../../../static/img/jingbi.png"></image> 充值金额
<image src="../../../static/img/jingbi.png"></image> 充值积分
</button>
<button class="erweima fotct aliitem font14" v-else @click="toDeposit">
<image src="../../../static/img/jingbi.png"></image> 充值金额
<image src="../../../static/img/jingbi.png"></image> 充值积分
</button>
<!-- #endif -->
<!-- #ifdef H5 -->
<button class="erweima fotct aliitem font14" v-if="user.phone == null" @click="jumpH5Bding">
<image src="../../../static/img/jingbi.png"></image> 充值金额
<image src="../../../static/img/jingbi.png"></image> 充值积分
</button>
<button class="erweima fotct aliitem font14" v-else @click="toDeposit">
<image src="../../../static/img/jingbi.png"></image> 充值金额
<image src="../../../static/img/jingbi.png"></image> 充值积分
</button>
<!-- #endif -->
</view>
@ -231,7 +231,7 @@
},
{
url: '../../login/login?id=2',
text: '我的推广',
text: '代理商登录',
img: 'user/renw.png'
}

@ -31,9 +31,9 @@
<button class="flright backcorf06 fcorfff font15 agent_btn mart10" @click="generateCode(agent.id)"
v-if="typeId == 1 && typeid == 2">生成兑换码</button>
<button class="flright backcorf06 fcorfff font15 agent_btn mart10" @click="jumpCouponDes(agent.id)"
v-if="typeId == 2 && typeid == 2">查看详情</button>
v-if="typeId == 2 && (typeid == 2 || typeid == 3) ">查看详情</button>
<view class="agent_ts font15 fcor333 fotlt text1"
v-if="typeId == 2 && typeid == 2 && agent.remark !=null ">
v-if="typeId == 2 && (typeid == 2 || typeid == 3) && agent.remark !=null ">
备注:{{agent.remark}}</view>
</view>
</view>
@ -155,11 +155,19 @@
type: 1,
pageSize: this.pageSize
}
} else {
} else if(this.typeid == 2){
params = {
pageNum: pagenum,
couponId: this.couponId,
status: '2,3',
status: 2,
type: 2,
pageSize: this.pageSize
}
}else if(this.typeid == 3){
params = {
pageNum: pagenum,
couponId: this.couponId,
status: 3,
type: 2,
pageSize: this.pageSize
}

@ -6,6 +6,7 @@
<view class="cardlabel font18 fcorfff fontwig6" style="top: 80px;">余额 : {{tongCardPrice}}</view>
</view>
<view class="btnw50 font20 fontlet" @click="selectCards()">查询明细</view>
<view class="btnw50 font20 fontlet" @click="unionCardPay()">充值余额</view>
<view class="btnw50 font20 fontlet" @click="delUserCard()" v-if="user.hltCardNo">解绑</view>
</view>
</template>
@ -20,7 +21,7 @@
data() {
return {
user: '',
tongCardPrice:0,
tongCardPrice: 0,
imagewxUrl: app.globalData.imageWxImg,
imgadres: 'cards.jpg',
}
@ -94,11 +95,18 @@
}
getHuiLianTongCardBalance(params).then(res => {
if (res.return_code == '000000') {
this.tongCardPrice = res.return_data.balance;
this.tongCardPrice = res.return_data.balance;
}
});
},
//
unionCardPay() {
uni.navigateTo({
url: '../../../subPages/trade-union-recharge/trade-union-recharge?cardId=' + this.user
.hltCardNo.cardNo + '&RechargeType=1'
})
}
}
}
</script>

@ -36,17 +36,6 @@
</view>
<view class="content">
<view class="pay-list">
<!-- <view class="row" @tap="paytype='alipay'">
<view class="left">
<image src="/static/img/alipay.png"></image>
</view>
<view class="center">
支付宝支付
</view>
<view class="right">
<radio :checked="paytype=='alipay'" color="#0083f5" />
</view>
</view> -->
<view class="row" @tap="paytype='wxpay'">
<view class="left">
<image :src="imagewxUrl+imgadres"></image>
@ -85,11 +74,11 @@
data() {
return {
inputAmount: '', //
amountList: [10, 50, 100], //3
amountList: [100, 200, 300, 500, 800, 1000], //3
paytype: 'wxpay', //
user: "",
imagewxUrl: app.globalData.imageWxImg,
imgadres:'wxpay.png'
imgadres: 'wxpay.png'
};
},
onLoad() {
@ -126,7 +115,7 @@
title: '正在提交订单...'
})
let goods = {
"identificationCode":app.globalData.identificationCode,
"identificationCode": app.globalData.identificationCode,
"highChildOrderList": [{
"goodsType": 2,
"goodsId": app.globalData.userInfo.id,
@ -214,10 +203,10 @@
jweixin.chooseWXPay({
appId: self.return_data.appId,
timestamp: self.return_data
.timeStamp, // jssdk使timestamp使timeStampS
.timeStamp, // jssdk使timestamp使timeStampS
nonceStr: self.return_data.nonceStr, // 32
package: self.return_data
.package, // prepay_idprepay_id=***
.package, // prepay_idprepay_id=***
signType: 'MD5', // 'SHA1'使'MD5'
paySign: self.return_data.sign, //
success: function(res) {
@ -271,19 +260,22 @@
width: 100%;
.list {
display: flex;
display: flow-root;
justify-content: space-between;
padding: 20upx 0;
.box {
width: 30%;
height: 120upx;
height: 120rpx;
float: left;
margin-left: 3.333%;
margin-top: 20px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 10upx;
box-shadow: 0upx 5upx 20upx rgba(0, 0, 0, 0.05);
font-size: 36upx;
border-radius: 10rpx;
box-shadow: 0rpx 5rpx 20rpx rgba(0, 0, 0, 0.05);
font-size: 36rpx;
background-color: #f1f1f1;
color: 333;
@ -295,14 +287,14 @@
}
.num {
margin-top: 10upx;
margin-top: 20upx;
display: flex;
justify-content: flex-end;
align-items: center;
.text {
padding-right: 10upx;
font-size: 30upx;
font-size: 40upx;
}
.input {
@ -315,7 +307,7 @@
input {
margin: 0 20upx;
height: 60upx;
font-size: 30upx;
font-size: 40upx;
color: #0083f5;
justify-content: flex-end;
align-items: center;

@ -33,40 +33,57 @@
</view>
<view class="info" v-else>
<view class="price">
<image style="width: 15px;height: 15px;vertical-align: sub;"
src="../../../static/img/jfx.png">
<image style="width: 15px;height: 15px;vertical-align: sub;" src="../../../static/img/jfx.png">
</image>{{ product.highCoupon.discountPrice*100}}
</view>
<view class="slogan" v-if="product.highCoupon.discountPrice !== product.highCoupon.salesPrice">
<image style="width: 15px;height: 15px;vertical-align: sub;"
src="../../../static/img/jfh.png">
<image style="width: 15px;height: 15px;vertical-align: sub;" src="../../../static/img/jfh.png">
</image>{{ product.highCoupon.salesPrice*100}}
</view>
</view>
</view>
</view>
<!-- <view class="width90 mart40 fcor666" v-if="videourl != ''">视频教程</view>
<view class="btnplay" @click="playvideo" v-if="videourl != ''">播放视频教学</view>
<view class="width80 mart20 marb30" v-if="isplayvideo">
<yy-video-player :auto-play="false" :url="imageUrl+imagedess1" :poster="poster" :show-back-btn="true">
</yy-video-player>
</view> -->
<view class="width90 mart40 fcor666" v-if="videourl != ''">临时通知</view>
<view class="alijus mart20 marb30" v-if="videourl != ''">
<image mode="widthFix" :src="imageUrl+imagedess2"></image>
</view>
</view>
</template>
<script>
import {
getCouponByDiscount,
getDiscountByUserDiscountId
getDiscountByUserDiscountId,
getCmsContent
} from '../../../Utils/Api.js';
import xiaoVideoElement from '../../../components/yy-video-player/yy-video-player.nvue'
let app = getApp();
export default {
components: {
xiaoVideoElement
},
data() {
return {
minecoupones: [],
imageUrl: app.globalData.imgUrl,
imagewxUrl: app.globalData.imageWxImg,
imgadres:'noorder.png',
imgadres: 'noorder.png',
imagedess1: '/CMS/html/11641540903873.mp4',
imagedess2: '/CMS/html/notice1.png',
pageNum: 1,
pageSize: 10,
isNoMoreData: false,
couponsDetails: '',
salesEndTime: '',
couponId: ''
couponId: '',
videourl: '', //
isplayvideo: false //
}
},
filters: {
@ -90,8 +107,21 @@
onLoad(option) {
this.couponId = option.id;
this.getDiscountByUserDiscountId();
this.getCmsContentvideo();
},
methods: {
//
getCmsContentvideo() {
let params = {
regionId: app.globalData.cityId,
categoryCode: 'CMS_H5_VIDEO'
}
getCmsContent(params).then(res => {
if (res.return_code == '000000') {
this.videourl = res.return_data;
}
});
},
//
getDiscountByUserDiscountId() {
let params = {
@ -124,6 +154,10 @@
// uni.navigateTo({
// url: '../../goods/goods?id='+e
// });
},
//
playvideo() {
this.isplayvideo = true;
}
}
}
@ -197,4 +231,16 @@
color: #FFFFFF;
border-radius: 0px;
}
.btnplay {
width: 120px;
text-align: center;
height: 40px;
line-height: 40px;
color: #FFFFFF;
background-color: #089bf5;
border-radius: 5px;
margin-left: 5%;
margin-top: 20px;
}
</style>

@ -1,6 +1,6 @@
<template>
<view>
<view class="promotion_bg backcorf06 width100 height90 fcorfff fotct font24 fontspec10">我的推广</view>
<view class="promotion_bg backcorf06 width100 height90 fcorfff fotct font24 fontspec10">代理商平台</view>
<view class="promotion_dt width90 height100p backcorfff" @click="jumpRunWater">
<view class="width100 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
@ -18,148 +18,228 @@
<view class="width50 flright font15 fcor666 fontwig6 fotrt">今日流水</view>
</view>
</view>
<!-- <view class="mart70">
<QSTabs ref="tabs" :tabs="tabs" animationMode="line2" :current="current" @change="change"
activeColor="#089bf5" lineColor="#089bf5" minWidth="374">
</QSTabs>
<view class="line1"></view>
</view> -->
<!-- // -->
<view class="width100 mart80">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">库存管理</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
</view>
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
剩余库存({{mineproList.laveStockCount}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{mineproList.surplusCountPrice}}
<view class="width100" v-if="current == 0">
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">库存管理</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
</view>
<!-- //:class="[index==0?'colorfe':'']" -->
<view v-if="minepros == ''" class="width90">暂无数据</view>
<view v-for="(mers,index) in minepros" :key="mers.id" class="pro_mok marb10 colore7"
@click="jumpAgent(1,mers.couponId,1)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.stockCount}}
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
剩余库存({{agentList.laveStockCount}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{agentList.surplusCountPrice}}
</view>
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.stockCount}}
<!-- //:class="[index==0?'colorfe':'']" -->
<view v-if="minepros == ''" class="width90">暂无数据</view>
<view v-for="(mers,index) in minepros" :key="mers.id" class="pro_mok marb10 colore7"
@click="jumpAgent(1,mers.couponId,1)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.stockCount}}
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.stockCount}}
</view>
</view>
</view>
</view>
<!-- // -->
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">销售统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
</view>
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
已销售({{mineproList.soldCount}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{mineproList.salesCountPrice}}
<!-- // -->
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">销售统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
</view>
<view v-if="minepros == ''" class="width90">暂无数据</view>
<!-- // -->
<view v-for="(mers,index) in minepros" :key="mers.id" class="pro_mok marb10 colore9"
@click="jumpAgent(2,mers.couponId,1)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.salesCount}}
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
已销售({{agentList.soldCount}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{agentList.salesCountPrice}}
</view>
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.salesCount}}
<view v-if="minepros == ''" class="width90">暂无数据</view>
<!-- // -->
<view v-for="(mers,index) in minepros" :key="mers.id" class="pro_mok marb10 colore9"
@click="jumpAgent(2,mers.couponId,1)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.salesCount}}
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.salesCount}}
</view>
</view>
</view>
</view>
<!-- 销核码兑换库存 -->
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">销核码兑换</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
<!-- 兑换码库存 -->
<view class="width100 mart80" v-if="current == 1">
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">销售统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
</view>
</view>
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
待使用({{codeList.laveStockCount}})
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
待销售({{couponList.noSalesNum}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{couponList.noSalesPrice}}
</view>
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{codeList.surplusCountPrice}}
<view v-if="couponCont == ''" class="width90">暂无数据</view>
<view v-for="(mers,index) in couponCont" :key="mers.id" class="pro_mok marb10 colore7"
@click="jumpAgent(1,mers.couponId,2)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.stockCount}}
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.stockCount}}
</view>
</view>
</view>
<!-- //:class="[index==0?'colorfe':'']" -->
<view v-if="minepros == ''" class="width90">暂无数据</view>
<view v-for="(mers,index) in checkcodeList" :key="mers.id" class="pro_mok marb10 colore7"
@click="jumpAgent(1,mers.couponId,2)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
<!-- 兑换码统计 -->
<!-- <view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">销售统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.stockCount}}
</view> -->
<view class="promotion_kc width90 mart20">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
已销售({{couponList.salesNum}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{couponList.salesPrice}}
</view>
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.stockCount}}
<view v-if="couponCont == ''" class="width90">暂无数据</view>
<!-- // -->
<view v-for="(mers,index) in couponCont" :key="mers.id" class="pro_mok marb10 colore9"
@click="jumpAgent(2,mers.couponId,2)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.noUsedNum}}
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.noUsedPrice}}
</view>
</view>
</view>
</view>
<!-- 销核码兑换销售 -->
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">销核码统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
<view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">使用统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
</view>
</view>
<view class="promotion_kc width90 mart10">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
已使用({{codeList.soldCount}})
<view class="promotion_kc width90 mart20">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
待使用({{couponList.noUsedNum}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{couponList.noUsedPrice}}
</view>
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{codeList.salesCountPrice}}
<view v-if="couponCont == ''" class="width90">暂无数据</view>
<view v-for="(mers,index) in couponCont" :key="mers.id" class="pro_mok marb10 colore7"
@click="jumpAgent(2,mers.couponId,2)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.noUsedNum}}
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.noUsedPrice}}
</view>
</view>
</view>
<view v-if="minepros == ''" class="width90">暂无数据</view>
<!-- // -->
<view v-for="(mers,index) in checkcodeList" :key="mers.id" class="pro_mok marb10 colore9"
@click="jumpAgent(2,mers.couponId,2)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
<!-- 兑换码统计 -->
<!-- <view class="width100 mart20">
<view class="width90 mart10 fcor333 font14 fontwig6 height22">
<view class="promotion_xg flleft"></view>
<view class="promotion_mixg flleft" style="margin-left: -6px;"></view>
<view class="flleft promotoin_text font16" style="margin-top: -2px;">使用统计</view>
<view class="promotion_mixg flleft"></view>
<view class="promotion_xg flleft" style="margin-left: -6px;"></view>
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.salesCount}}
</view> -->
<view class="promotion_kc width90 mart20">
<image class="flleft pro_img mart15 margle" :src="imagewxUrl+imgadres">
</image>
<view class="pro_cont paddtop15">
<view class="flleft font16 fcor333 fontwig6 pro_title">
已使用({{couponList.usedNum}})
</view>
<view class="pro_price fotrt fcor333 font15 fontwig6">
总计 ¥{{couponList.usedPrice}}
</view>
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.salesPrice*mers.salesCount}}
<view v-if="couponCont == ''" class="width90">暂无数据</view>
<!-- // -->
<view v-for="(mers,index) in couponCont" :key="mers.id" class="pro_mok marb10 colore9"
@click="jumpAgent(2,mers.couponId,3)">
<view class="width100 font14 fcor333 fontwig6 fotct paddtop10">
面额{{mers.salesPrice}}
</view>
<view class="width100 font14 fcor999 fotct mart10">
{{mers.usedNum}}
</view>
<view class="width100 font15 fcor333 fontwig6 fotct mart10">
{{mers.usedPrice}}
</view>
</view>
</view>
</view>
@ -169,51 +249,92 @@
<script>
import {
getAgentCount
getAgentCount,
getAgentConvertCodeCount
} from "../../../Utils/Api.js";
import QSTabs from '../../../components/QS-tabs/QS-tabs.vue';
let app = getApp();
export default {
components: {
QSTabs
},
data() {
return {
imagewxUrl: app.globalData.imageWxImg,
imgadres: 'wenj.png',
agentList: [], //
minepros: [], //
mineproList: [], //
checkcodeList: [], //
codeList: [] //
couponList:[], //
couponCont:[], //
tabs: ["销售码", "兑换码"], //
current: 1, //
}
},
onLoad() {
// this.getAgentCount(1);
// this.getAgentConvertCodeCount();
},
onShow() {
this.getAgentCount(1);
this.getAgentCount(2);
this.getAgentConvertCodeCount();
},
methods: {
//
getAgentCount(item) {
uni.showLoading({
title: '加载中'
})
let datas = {
type: item
}
getAgentCount(datas).then(res => {
uni.hideLoading();
if (res.return_code == '000000') {
this.agentList = res.return_data;
if (item == 1) {
this.minepros = res.return_data.list;
this.mineproList = res.return_data;
} else {
this.checkcodeList = res.return_data.list;
this.codeList = res.return_data
}
this.minepros = res.return_data.list;
} else {
this.agentList = [];
this.minepros = [];
uni.showToast({
title: res.return_msg,
icon: "none"
icon: "none",
duration: 2000
})
}
})
},
//
getAgentConvertCodeCount() {
uni.showLoading({
title: '加载中'
})
getAgentConvertCodeCount().then(res => {
uni.hideLoading();
if (res.return_code == '000000' && res.return_data) {
this.couponList = res.return_data;
this.couponCont = res.return_data.list;
} else {
uni.showToast({
title: res.return_msg,
icon: "none",
duration: 2000
})
this.couponList = [];
this.couponCont = [];
}
});
},
//
change(index) {
this.$refs.tabs.setFinishCurrent(index);
this.swiperCurrent = index;
this.current = index;
if (index == 0) {
this.getAgentCount(1);
} else {
this.getAgentConvertCodeCount();
}
},
//
jumpRunWater() {
uni.navigateTo({
@ -226,6 +347,7 @@
url: '../agentCoupons/agentCoupons?id=' + item + '&couponsId=' + items + '&typeid=' + itemtype
})
},
//
toPage(page) {
uni.navigateTo({
url: '../../login/resetpasswd'

@ -106,7 +106,7 @@
<view class="right" v-else>
<image style="width: 15px;height: 15px;vertical-align: sub;"
src="../../../static/img/jfx.png">
</image>{{recinfo.totalPrice*100}}
</image>{{recinfo.totalPrice * 10 * 10}}
</view>
</view>
<view class="row" v-if="recinfo.payPrice">
@ -119,7 +119,7 @@
<view class="right" v-else>
<image style="width: 15px;height: 15px;vertical-align: sub;"
src="../../../static/img/jfx.png">
</image>{{recinfo.payPrice*100}}
</image>{{recinfo.payPrice* 10 * 10}}
</view>
</view>
<view class="row" v-if="recinfo.payRealPrice">
@ -132,7 +132,7 @@
<view class="right" v-else>
<image style="width: 15px;height: 15px;vertical-align: sub;"
src="../../../static/img/jfx.png">
</image>{{recinfo.payRealPrice*100}}
</image>{{recinfo.payRealPrice * 10 * 10}}
</view>
</view>
<view class="row" v-if="recinfo.deductionPrice">
@ -145,7 +145,7 @@
<view class="right" v-else>
<image style="width: 15px;height: 15px;vertical-align: sub;"
src="../../../static/img/jfx.png">
</image>{{recinfo.deductionPrice*100}}
</image>{{recinfo.deductionPrice * 10 * 10}}
</view>
</view>
<view class="row">

@ -15,34 +15,39 @@
<view class="row" v-for="(row,index) in orderList" :key="index">
<view class="width96 height40" @click="jumpDetails(row.id)">
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 1 || row.highChildOrderList[0].goodsType == 2">
<image src="../../../static/img/order2.png" style="width: 50rpx;height: 50rpx;"></image>
v-if="row.highChildOrderList[0].goodsType == 1">
<image src="../../../static/img/order2.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
卡券订单
</view>
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 2">
<image src="../../../static/img/order2.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
积分充值
</view>
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 7">
<image src="../../../static/img/order9.png" style="width: 50rpx;height: 50rpx;"></image>
<image src="../../../static/img/order9.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
优惠券包
</view>
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 3">
<image src="../../../static/img/order4.png" style="width: 50rpx;height: 50rpx;"></image>
<image src="../../../static/img/order4.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
团油订单
</view>
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 5">
<image src="../../../static/img/order5.png" style="width: 50rpx;height: 50rpx;"></image>
<image src="../../../static/img/order5.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
电影票
</view>
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 4">
<image src="../../../static/img/order3.png" style="width: 50rpx;height: 50rpx;"></image>
<image src="../../../static/img/order3.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
KFC
</view>
<view class="width50 flleft aliitem fotlt font16"
v-if="row.highChildOrderList[0].goodsType == 6">
<image src="../../../static/img/order1.png" style="width: 50rpx;height: 50rpx;"></image>
话费充值
v-if="row.highChildOrderList[0].goodsType == 8">
<image src="../../../static/img/ghkpay.png" class="marglerig" style="width: 50rpx;height: 50rpx;"></image>
工会卡充值
</view>
<view class="width50 flright fotrt fcor666 font15">
{{row.createTime | formatDate('-')}}
@ -66,7 +71,7 @@
<view class="font16 fontwig6 text1 fcor333 aliitem" style="justify-content: flex-end;"
v-else>
<image style="width: 15px;height: 15px;" src="../../../static/img/jfx.png">
</image>{{row.payPrice*100}}
</image>{{row.payPrice * 10 * 10}}
</view>
<view class="fotrt font15 text1 fcor999 mart5">{{typeText[row.orderStatus]}}</view>
</view>

@ -1,19 +1,44 @@
<template>
<view>
<image mode="widthFix" class="width90 mart20" v-if="user && user.infoCompleteStatus == 1" :src="imagewxUrl+imgadres"></image>
<image mode="widthFix" class="width90 mart20" v-if="!user" :src="imagewxUrl+imgadres1"></image>
<!-- #ifdef MP -->
<view class="mart30 width90 height50 fcorfff backcor008 fotct btns font16 fontlet" v-if="user && user.infoCompleteStatus == 1" @click="getuserinfo">
授权并登录</view>
<button class="mart30 width90 height50 fcorfff backcor008 fotct btns font16 fontlet" v-if="!user"
open-type="getPhoneNumber" @getphonenumber="loginByPhone">授权手机号</button>
<!-- <button class="mart30 width90 height50 fcorfff backcor008 fotct btns font16" v-if="user.phone && user"
<view v-if="type == 1">
<image mode="widthFix" class="width90 mart20" v-if="user && user.infoCompleteStatus == 1"
:src="imagewxUrl+imgadres"></image>
<image mode="widthFix" class="width90 mart20" v-if="!user" :src="imagewxUrl+imgadres1"></image>
<!-- #ifdef MP -->
<view class="mart30 width90 height50 fcorfff backcor008 fotct btns font16 fontlet"
v-if="user && user.infoCompleteStatus == 1" @click="getuserinfo">
授权并登录</view>
<button class="mart30 width90 height50 fcorfff backcor008 fotct btns font16 fontlet" v-if="!user"
open-type="getPhoneNumber" @getphonenumber="loginByPhone">授权手机号</button>
<view class="mart20 width90 font15 fcor666 fotct" @click="updateStu(2)">手机短信登录</view>
<!-- <button class="mart30 width90 height50 fcorfff backcor008 fotct btns font16" v-if="user.phone && user"
@click="reqmessage">授权获取消息通知</button> -->
<!-- #endif -->
<!-- #ifdef H5 -->
<button class="mart30 width90 height50 fcorfff backcor008 fotct btns font16"
@click="getH5userinfo">授权并登录</button>
<!-- #endif -->
<!-- #endif -->
<!-- #ifdef H5 -->
<button class="mart30 width90 height50 fcorfff backcor008 fotct btns font16"
@click="getH5userinfo">授权并登录</button>
<!-- #endif -->
</view>
<view v-if="type == 2">
<view class="logo">
<view class="img">
<image mode="widthFix"
src="">
</image>
</view>
</view>
<view class="form re" style="top:200rpx;">
<view class="username">
<view class="get-code" style="color: #676767;" @click.stop="getCode()">{{getCodeText}}</view>
<input placeholder="请输入手机号" v-model="phoneNumber" placeholder-style="color: #676767;" />
</view>
<view class="code">
<input placeholder="请输入验证码" v-model="code" placeholder-style="color: #676767;" />
</view>
<view class="btn mart50" @tap="doReg">立即登录</view>
<view class="width90 marb20 font15 fcor666 fotct" @click="updateStu(1)">微信授权登录</view>
</view>
</view>
</view>
</template>
@ -21,7 +46,10 @@
const app = getApp();
import {
getUserInfo,
loginByPhone
loginByPhone,
HandleCode,
loginByTel,
sendSmsCode
} from "../../Utils/Api.js"
export default {
data() {
@ -30,9 +58,33 @@
imagewxUrl: app.globalData.imageWxImg,
imgadres: 'login.png',
imgadres1: 'loginphone.png',
phoneNumber: "",
code: '',
getCodeText: '获取验证码',
getCodeisWaiting: false,
type: 1 //
}
},
onLoad() {
// #ifdef MP
if (!app.globalData.openId) {
uni.login({
provider: 'weixin',
success: function(loginRes) {
app.globalData.code = loginRes.code;
//
let params = {
code: app.globalData.code
}
HandleCode(params).then(res => {
if (res.return_code == '000000') {
app.globalData.openId = res.return_data.openId;
}
})
},
})
}
// #endif
this.user = app.globalData.userInfo;
},
methods: {
@ -65,12 +117,13 @@
data: res.return_data.uniqueCode
})
if (res.return_data.object.highUser.infoCompleteStatus == 0) {
uni.navigateBack({
})
uni.navigateBack({})
}
} else {
uni.showToast({
title: res.return_msg
title: res.return_msg,
duration: 2000,
icon: 'none'
})
}
});
@ -86,7 +139,7 @@
},
//
loginByPhone(PhoneNumber) {
if(PhoneNumber.detail.iv == undefined){
if (PhoneNumber.detail.iv == undefined) {
uni.showToast({
title: "用户取消授权",
icon: "none"
@ -120,10 +173,15 @@
key: "token",
data: res.return_data.uniqueCode
})
if(res.return_data.object.highUser.infoCompleteStatus == 0){
uni.navigateBack({
})
if (res.return_data.object.highUser.infoCompleteStatus == 0) {
uni.navigateBack({})
}
} else {
uni.showToast({
title: res.return_msg,
icon: "none",
duration: 2000
});
}
});
},
@ -132,11 +190,116 @@
url: '/pages/login/register'
})
},
//
updateStu(item) {
this.type = item;
},
//
getCode() {
uni.hideKeyboard()
if (this.getCodeisWaiting) {
return;
}
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) {
uni.showToast({
title: '请填写正确手机号码',
icon: "none"
});
return false;
}
uni.showLoading({
title: '发送中...'
})
let params = {
phone: this.phoneNumber
}
sendSmsCode(params).then(res => {
if (res.return_code == '000000') {
this.getCodeisWaiting = true;
uni.showToast({
title: '验证码已发送',
icon: "none"
});
this.setTimer();
} else {
uni.hideLoading()
}
})
},
setTimer() {
let holdTime = 60;
this.getCodeText = "重新获取(60)"
this.Timer = setInterval(() => {
if (holdTime <= 0) {
this.getCodeisWaiting = false;
this.getCodeBtnColor = "#ffffff";
this.getCodeText = "获取验证码"
clearInterval(this.Timer);
return;
}
this.getCodeText = "重新获取(" + holdTime + ")"
holdTime--;
}, 1000)
},
//
doReg() {
uni.hideKeyboard()
//
if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) {
uni.showToast({
title: '请填写正确手机号码',
icon: "none"
});
return false;
}
if (!this.code) {
uni.showToast({
title: '请填写验证码',
icon: "none"
});
return false;
}
uni.showLoading({
title: '提交中...'
})
let params = {
phone: this.phoneNumber,
smsCode: this.code
}
loginByTel(params).then(res => {
uni.hideLoading()
if (res.return_code == '000000') {
app.globalData.token = res.return_data.uniqueCode;
app.globalData.userInfo = res.return_data
.object
.highUser;
uni.setStorage({
key: "user",
data: res.return_data
.object
.highUser
})
uni.setStorage({
key: "token",
data: res.return_data.uniqueCode
})
uni.navigateBack({})
} else {
uni.showToast({
title: res.return_msg,
icon: "none"
});
}
})
},
}
}
</script>
<style lang="scss">
@import "../../static/css/login.scss";
.btns {
border-radius: 6px;
}

@ -32,15 +32,15 @@
</view>
<view class="width90 mart15 height22">
<view class="flleft fcor333 width50 font15">订单总额</view>
<view class="flright fcor666 width50 fotrt font13">{{phoneorderdes.orderPrice}}</view>
<view class="flright fcor666 width50 fotrt font13">{{phoneorderdes.orderPrice == null ? '0': phoneorderdes.orderPrice}}</view>
</view>
<view class="width90 mart15 height22">
<view class="flleft fcor333 width50 font15">优惠</view>
<view class="flright fcor666 width50 fotrt font13">{{phoneorderdes.deductionPrice}}</view>
<view class="flright fcor666 width50 fotrt font13">{{phoneorderdes.deductionPrice == null ? '0': phoneorderdes.deductionPrice}}</view>
</view>
<view class="width90 mart15 height22">
<view class="flleft fcor333 width50 font15">实际支付金额</view>
<view class="flright fcor666 width50 fotrt font13">{{phoneorderdes.payRealPrice}}</view>
<view class="flright fcor666 width50 fotrt font13">{{phoneorderdes.payRealPrice == null ? '0': phoneorderdes.payRealPrice}}</view>
</view>
<view class="width100 height90"></view>
<button class="coupne-btn width100" @click="toUser">个人中心</button>

@ -3,59 +3,107 @@
<view class="width100 height100p backcorf06">
<view class="block">
<view class="content height60">
<input type="number" class="my flleft font18 fcorfff" placeholder-style="color:#ffffff;"
placeholder="请输入充值号码" v-model="inputPhone" />
<input type="number" class="my flleft font18 fcorfff" maxlength="11"
placeholder-style="color:#ffffff;" placeholder="请输入充值号码" v-model="inputPhone" />
</view>
<view class="line1 width100 backcorfff"></view>
</view>
</view>
<view class="width90 font16 fcor333 fontwig6 mart40">
<view class="mart5">
<QSTabs ref="tabs" :tabs="tabs" animationMode="line2" :current="current" @change="change"
activeColor="#089bf5" lineColor="#089bf5" minWidth="374">
</QSTabs>
</view>
<view class="width90 font16 fcor333 fontwig6 mart20">
选择金额
</view>
<view class="list">
<view class="box" :class="{'on':item.id == inputAmountId}" v-for="(item,index) in amountList" :key="index"
@click="select(item)">
<view class="heTitle">{{item.price}}</view>
<view class="font13 fcoreb5 fontwig6" v-if="item.status != 2 && item.discount != 100">{{item.discount}} </view>
<view class="font13 fcor999" v-if="item.status == 2">已售空</view>
</view>
</view>
<view class="mart5 width90 font18 fcor333 fontwig6">
话费充值温馨提示
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">1:</view>
<view style="margin-left: 5%;">慢充话费与营业厅充值一样只是到账时间稍长充值过程中可能出现分批到账的情况但是总金额不会少请耐心等待</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">2:</view>
<view style="margin-left: 5%;">此业务为话费慢充日常72小时内到账如遇月初月末高峰期或系统更新到账时间会有一定延迟敬请谅解急单勿拍</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">3:</view>
<view style="margin-left: 5%;">目前仅支持(移动联通电信三网号段)
运营商黑名单号码(长期欠费或非实名制认证)携号转网空号虚拟卡如165.167.170.171.162等等虚拟号段副卡号码或做过某些特殊套餐绑定的卡暂不支持充值请勿下单</view>
充值说明
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">4:</view>
<view style="margin-left: 5%;">停机号码需要额外补缴欠费后慢充话费才能到账<text
class="fcoreb5">此服务为虚拟充值类服务无特殊情况不支持退款下单前请确认充值的号码无误</text></view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">5:</view>
<view style="margin-left: 5%;">空号错号充值后不支持退款请您务必核对确认号码无误后再进行充值非空号欠费可充欠费1个月导致空号的不能充值损失自负无法退款</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">6:</view>
<view style="margin-left: 5%;"><text
class="fcoreb5">本充值业务不提供发票</text>如需发票请在运营商手机客户端储开取电子发票也可以凭身份证到运营商实体营业厅打印发票</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">7:</view>
<view style="margin-left: 5%;">如遇系统维护充值失败将72小时后原路退款到付款账户 </view>
<view v-if="current == 0">
<view class="mart5 width80 font14 fcoreb5 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">1:</view>
<view style="margin-left: 5%;">
此业务为话费慢充日常5个工作日内到账如遇月初月末运营商高峰期或系统更新到账时间会有一定延迟敬请谅解充值失败后系统会自动为您退款至原账户急单请选择6小时到账充值端口感谢您的支持
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">2:</view>
<view style="margin-left: 5%;">慢充话费与营业厅充值一样只是到账时间稍长充值过程中可能出现分批到账的情况但是总金额不会少请耐心等待</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">3:</view>
<view style="margin-left: 5%;">
目前仅支持(移动联通电信三网号段)运营商黑名单号码(长期欠费或非实名制认证)携号转网空号虚拟卡(如165167170171162等等虚拟号段)副卡号码或做过某些特殊套餐绑定的卡暂不支持充值请勿下单
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">4:</view>
<view style="margin-left: 5%;">停机号码需要额外补缴欠费后慢充话费才能到账<text
class="fcoreb5">此服务为虚拟充值类服务无特殊情况不支持退款下单前请确认充值的号码无误</text></view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">5:</view>
<view style="margin-left: 5%;">空号错号充值后不支持退款请您务必核对确认号码无误后再进行充值非空号欠费可充欠费1个月导致空号的不能充值损失自负无法退款
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">6:</view>
<view style="margin-left: 5%;"><text
class="fcoreb5">本充值业务不提供发票</text>如需发票请在运营商手机客户端储开取电子发票也可以凭身份证到运营商实体营业厅打印发票</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">7:</view>
<view style="margin-left: 5%;">如遇系统维护充值失败将72小时后原路退款到付款账户 </view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6 marb40" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">8:</view>
<view style="margin-left: 5%;">请登录所属运营商app手机营业厅查看充值号码的到账情况如金额有出入或未到账请截图充值记录明细反馈给客服录明细反馈给客服</view>
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6 marb40" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">8:</view>
<view style="margin-left: 5%;">请登录所属运营商app手机营业厅查看充值号码的到账情况如金额有出入或未到账请截图充值记录明细反馈给客服</view>
<view v-if="current == 1">
<view class="mart5 width80 font14 fcoreb5 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">1:</view>
<view style="margin-left: 5%;">
充值后6小时内到账请耐心等待如遇月初月末运营商充值压力大充值失败后系统会为您自动再提交一次如二次充值仍然失败系统将会自动为您退款至原账户请悉知
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">2:</view>
<view style="margin-left: 5%;">
目前仅支持(移动联通电信三网号段)运营商黑名单号码(长期欠费或非实名制认证)携号转网空号虚拟卡(如165167170171162等等虚拟号段)副卡号码或做过某些特殊套餐绑定的卡暂不支持充值请勿下单
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">3:</view>
<view style="margin-left: 5%;">停机号码需要额外补缴欠费后慢充话费才能到账此服务为虚拟充值类服务无特殊情况不支持退款下单前请确认充值的号码无误</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">4:</view>
<view style="margin-left: 5%;">空号错号充值后不支持退款请您务必核对确认号码无误后再进行充值非空号欠费可充欠费1个月导致空号的不能充值损失自负无法退款</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">5:</view>
<view style="margin-left: 5%;"><text
class="fcoreb5">本充值业务不提供发票</text>如需发票请在运营商手机客户端储开取电子发票也可以凭身份证到运营商实体营业厅打印发票</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">6:</view>
<view style="margin-left: 5%;">如遇系统维护充值失败将72小时后原路退款到付款账户
</view>
</view>
<view class="mart5 width80 font14 fcor999 fontwig6" style="list-style-type: decimal;">
<view style="width: 5%;" class="flleft">7:</view>
<view style="margin-left: 5%;">请登录所属运营商app(手机营业厅)查看充值号码的到账情况如金额有出入或未到账请截图充值记录明细反馈给客服录明细反馈给客服</view>
</view>
</view>
<view class="height100p"></view>
<view class="bombtn width94 font16">
@ -70,12 +118,16 @@
var jweixin = require('jweixin-module');
// #endif
let app = getApp();
import QSTabs from '../../components/QS-tabs/QS-tabs.vue';
import {
getListOutRechargePrice,
addOrderPay,
orderToUNionPay
} from '../../Utils/Api.js';
export default {
components: {
QSTabs
},
data() {
return {
typeId: '',
@ -86,37 +138,69 @@
codesVlues: '',
amountList: [],
price: '',
amoutstatus:''
amoutstatus: '',
tabs: ["5个工作日", "6小时到账"], //
current: 0, //
swiperCurrent: 2
}
},
onLoad(options) {
this.typeId = options.id;
if (this.typeId == 1) {
uni.setNavigationBarTitle({
title: '中国移动'
})
this.amoutType = 2;
this.getListOutRechargePrice(2);
return;
}
if (this.typeId == 2) {
uni.setNavigationBarTitle({
title: '中国电信'
})
this.amoutType = 1;
this.getListOutRechargePrice(1);
return;
if (!app.globalData.userInfo) {
if (this.typeId == 1) {
uni.setNavigationBarTitle({
title: '中国移动'
})
this.amoutType = 2;
this.getListOutRechargePrice(2);
return;
}
if (this.typeId == 2) {
uni.setNavigationBarTitle({
title: '中国电信'
})
this.amoutType = 1;
this.getListOutRechargePrice(1);
return;
}
if (this.typeId == 3) {
uni.setNavigationBarTitle({
title: '中国联通'
})
this.amoutType = 3;
this.getListOutRechargePrice(3);
return;
}
}
if (this.typeId == 3) {
uni.setNavigationBarTitle({
title: '中国联通'
})
this.amoutType = 3;
this.getListOutRechargePrice(3);
return;
},
onShow() {
this.amountList = [];
if (app.globalData.userInfo) {
if (this.typeId == 1) {
uni.setNavigationBarTitle({
title: '中国移动'
})
this.amoutType = 2;
this.getListOutRechargePrice(2);
return;
}
if (this.typeId == 2) {
uni.setNavigationBarTitle({
title: '中国电信'
})
this.amoutType = 1;
this.getListOutRechargePrice(1);
return;
}
if (this.typeId == 3) {
uni.setNavigationBarTitle({
title: '中国联通'
})
this.amoutType = 3;
this.getListOutRechargePrice(3);
return;
}
}
},
methods: {
select(amoutinfos) {
@ -125,7 +209,21 @@
this.inputAmountId = amoutinfos.id;
this.amoutstatus = amoutinfos.status;
},
//
change(index) {
this.$refs.tabs.setFinishCurrent(index);
this.current = index;
this.inputAmount = '';
this.inputAmountId = '';
this.amoutstatus = '';
if (index == 0) {
this.swiperCurrent = 2;
this.getListOutRechargePrice(this.amoutType);
} else {
this.swiperCurrent = 1;
this.getListOutRechargePrice(this.amoutType);
}
},
/**
* 查询价格
*/
@ -133,7 +231,7 @@
uni.showLoading({
title: '加载中...'
})
let showType;
let showType;
// #ifdef H5
showType = 2;
// #endif
@ -143,12 +241,15 @@
let params = {
type: item,
regionId: app.globalData.cityId,
showType: showType
showType: showType,
rechargeType: this.swiperCurrent
}
getListOutRechargePrice(params).then(res => {
uni.hideLoading()
if (res.return_code == '000000') {
if (res.return_code == '000000' && res.return_data) {
this.amountList = res.return_data;
} else {
this.amountList = [];
}
})
},
@ -158,10 +259,10 @@
*/
addOrderPay() {
let that = this;
if(that.amoutstatus == 2){
if (that.amoutstatus == 2) {
uni.showToast({
title: '当前面值已售空',
duration:2000,
duration: 2000,
icon: "none"
});
return;
@ -169,7 +270,15 @@
if (that.inputPhone == '') {
uni.showToast({
title: '请输入充值号码',
duration:2000,
duration: 2000,
icon: "none"
});
return;
}
if (that.inputPhone.length != 11) {
uni.showToast({
title: '请输入正确充值号码',
duration: 2000,
icon: "none"
});
return;
@ -177,7 +286,7 @@
if (that.inputAmount == '') {
uni.showToast({
title: '请选择价格',
duration:2000,
duration: 2000,
icon: "none"
});
return false;
@ -199,7 +308,7 @@
url: '../unionComfirmation/unionComfirmation?orderPrice=' + that.price +
'&payPrice=' + that.inputAmount + '&rechargeContent=' + that.inputPhone +
'&rechargeModel=' + that.amoutType + '&agentKey=' + that.codesVlues +
'&objectId=' + that.inputAmountId
'&objectId=' + that.inputAmountId + '&rechargeType=' + that.swiperCurrent
})
}
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 KiB

After

Width:  |  Height:  |  Size: 153 KiB

@ -3,8 +3,10 @@
<view class="block">
<view class="content">
<view class="my">
我的账户余额 {{tongCardPrice}} ( 1:100)
充值账号
</view>
<input class="my" disabled="true" style="border-bottom: solid 1upx #eee;" placeholder="请输入充值账号"
v-model="cardId" />
</view>
</view>
<view class="block">
@ -19,14 +21,14 @@
{{amount}}
</view>
</view>
<view class="num">
<!-- <view class="num">
<view class="text">
自定义充值金额
</view>
<view class="input">
<input type="number" v-model="inputAmount" />
<input type="number" maxlength="4" v-model="inputAmount" />
</view>
</view>
</view> -->
</view>
</view>
</view>
@ -36,17 +38,6 @@
</view>
<view class="content">
<view class="pay-list">
<!-- <view class="row" @tap="paytype='alipay'">
<view class="left">
<image src="/static/img/alipay.png"></image>
</view>
<view class="center">
支付宝支付
</view>
<view class="right">
<radio :checked="paytype=='alipay'" color="#0083f5" />
</view>
</view> -->
<view class="row" @tap="paytype='wxpay'">
<view class="left">
<image :src="imagewxUrl+imgadres"></image>
@ -86,88 +77,83 @@
data() {
return {
inputAmount: '', //
amountList: [10, 50, 100], //3
amountList: [50, 100, 150], //3
paytype: 'wxpay', //
user: "",
imagewxUrl: app.globalData.imageWxImg,
imgadres: 'wxpay.png',
tongCardPrice: 0
tongCardPrice: 0,
cardId: '', //
typevas: ''
};
},
onLoad() {
this.user = app.globalData.userInfo;
onLoad(options) {
this.cardId = options.cardId;
this.typevas = options.RechargeType;
},
onShow() {
if (this.user.isSetHltCard) {
this.getHuiLianTongCardBalance();
}
this.user = app.globalData.userInfo;
},
methods: {
//
getHuiLianTongCardBalance() {
let params = {
cardNo: this.user.hltCardNo.cardNo
}
getHuiLianTongCardBalance(params).then(res => {
if (res.return_code == '000000') {
this.tongCardPrice = res.return_data.balance;
}
});
},
select(amount) {
this.inputAmount = amount;
},
doDeposit() {
if (!this.user.isSetHltCard) {
if (!this.cardId) {
uni.showToast({
title: '请输入充值工会卡',
icon: 'none',
title: '当前账号还未绑定,前往绑定',
duration: 2000,
success() {
setTimeout(() => {
uni.navigateTo({
url: '../../pages/user/bindingCard/bindingCard'
})
}, 1000)
}
});
return;
}
if (parseFloat(this.inputAmount).toString() == "NaN") {
uni.showToast({
title: '请输入正确金额',
icon: 'none'
});
return;
}
if (this.inputAmount <= 0) {
uni.showToast({
title: '请输入大于0的金额',
icon: 'none'
});
return;
}
if (parseFloat(this.inputAmount).toFixed(2) != parseFloat(this.inputAmount)) {
uni.showToast({
title: '最多只能输入两位小数哦~',
icon: 'none'
duration: 2000
});
return;
}
// if (parseFloat(this.inputAmount).toString() == "NaN") {
// uni.showToast({
// title: '',
// icon: 'none',
// duration: 2000
// });
// return;
// }
// if (this.inputAmount <= 0) {
// uni.showToast({
// title: '0',
// icon: 'none',
// duration: 2000
// });
// return;
// }
// if (this.inputAmount > 2000) {
// uni.showToast({
// title: '2000',
// icon: 'none',
// duration: 2000
// });
// return;
// }
// if (parseFloat(this.inputAmount).toFixed(2) != parseFloat(this.inputAmount)) {
// uni.showToast({
// title: '~',
// icon: 'none',
// duration: 2000
// });
// return;
// }
uni.showLoading({
title: '正在提交订单...'
})
let goods = {
let datas = {
"identificationCode": app.globalData.identificationCode,
"memCardNo": this.cardId,
"highChildOrderList": [{
"goodsType": 2,
"goodsType": 8,
"goodsId": app.globalData.userInfo.id,
"saleCount": 1,
"goodsPrice": this.inputAmount
}]
}
addOrder(goods).then(res => {
let that = this;
addOrder(datas).then(res => {
uni.hideLoading();
if (res.return_code == '000000') {
///
@ -197,8 +183,15 @@
duration: 2000,
success() {
setTimeout(() => {
uni.navigateBack({
})
if (that.typevas == 'Hlt') {
uni.navigateTo({
url: '../union-card-success/union-card-success?price=' +
that
.inputAmount
})
} else {
uni.navigateBack({})
}
}, 1000)
}
});
@ -217,7 +210,9 @@
// #endif
} else {
uni.showToast({
title: '支付失败'
title: '支付失败',
duration: 2000,
icon: 'none'
})
}
})
@ -225,7 +220,9 @@
} else {
uni.showToast({
title: res.return_msg
title: res.return_msg,
icon: 'none',
duration: 2000
});
}
})
@ -304,11 +301,10 @@
.content {
.my {
width: 100%;
height: 120upx;
height: 100upx;
display: flex;
align-items: center;
font-size: 30upx;
border-bottom: solid 1upx #eee;
font-size: 34upx;
}
.amount {

@ -0,0 +1,34 @@
<template>
<view>
<image src="../static/coupsucces.png" mode="widthFix" class="sucimg mart40"></image>
<view class="width90 clor4cd964 mart30 font18 fotct">支付成功</view>
<view class="width90 fcor333 mart30 font48 fotct">¥ {{sucprice}}</view>
</view>
</template>
<script>
export default {
data() {
return {
sucprice:''
}
},
onLoad(options) {
this.sucprice = options.price;
},
methods: {
}
}
</script>
<style lang="less">
.sucimg {
width: 20%;
margin-left: 40%;
}
.clor4cd964 {
color: #76b554;
}
</style>

@ -27,7 +27,7 @@
</view>
<!-- #ifdef MP -->
<view class="width94 line1 mart5 marb5"></view>
<view class="height50 width100 backcorfff" @click="showPopup()">
<view class="height50 width100 backcorfff" v-if="reType == 2" @click="showPopup()">
<view class="width50 flleft fcor333 fontwig6 font16" style="padding-left: 4%;">
优惠抵扣<text class="yhqky">{{OrderPreList.length}}张可用</text>
</view>
@ -81,6 +81,7 @@
</view>
</view>
</view>
<image :src="imagewxUrl+imgadres1" class="width100 mart20 marb30" mode="widthFix"></image>
<view class="width100 height60"></view>
<view class="footer">
<view class="settlement">
@ -161,6 +162,8 @@
couponList: [],
UserNormalDiscountList: [],
imageUrl: app.globalData.imgUrl,
imagewxUrl: app.globalData.imageWxImg,
imgadres1: 'arrive_time_img.jpeg',
deductionPrice: '0.00',
paytheprice: '',
radioStatus: true,
@ -180,7 +183,8 @@
rechargeModel: '',
agentKey: '',
objectId: '',
OrderPreList: []
OrderPreList: [],
reType: '' //
};
},
@ -192,6 +196,7 @@
this.rechargeModel = options.rechargeModel;
this.agentKey = options.agentKey;
this.objectId = options.objectId;
this.reType = options.rechargeType;
},
onShow() {
let that = this;
@ -266,7 +271,7 @@
if (item.discountType == 1) {
//
this.deductionPrice = item.discountPrice;
this.payPrice = this.paytheprice- this.deductionPrice;
this.payPrice = this.paytheprice - this.deductionPrice;
} else if (item.discountType == 2) {
//
@ -317,7 +322,8 @@
});
},
toPay() {
if (this.paytype == '') {
let that = this;
if (that.paytype == '') {
uni.showToast({
title: '请选择支付方式',
icon: 'none',
@ -325,36 +331,42 @@
})
return;
}
uni.showLoading({
title: '提交订单中...'
})
let params = {
"memDiscountId": this.memDiscountId,
"orderPrice": this.orderPrice,
"payPrice": this.payPrice,
"rechargeContent": this.rechargeContent,
"rechargeModel": this.rechargeModel,
"agentKey": this.agentKey,
"objectId": this.objectId,
"identificationCode": app.globalData.identificationCode
}
addOrderPay(params).then(res => {
if (res.return_code == '000000') {
uni.hideLoading();
this.orderId = res.return_data.id;
uni.requestSubscribeMessage({
tmplIds: ['ZO6kC3oJv0zj9QzL0htsF-mM9vAElcgPZEcUGglxsoU'],
success(res) {
uni.showLoading({
title: '提交订单中...'
})
let params = {
"orderId": res.return_data.id,
"openId": app.globalData.openId
"memDiscountId": that.memDiscountId,
"orderPrice": that.orderPrice,
"payPrice": that.payPrice,
"rechargeContent": that.rechargeContent,
"rechargeModel": that.rechargeModel,
"agentKey": that.agentKey,
"objectId": that.objectId,
"identificationCode": app.globalData.identificationCode
}
this.orderToUNionPay(params);
} else {
uni.hideLoading();
uni.showToast({
title: res.return_msg,
icon: 'none',
duration: 2000
});
}
addOrderPay(params).then(res => {
if (res.return_code == '000000') {
uni.hideLoading();
that.orderId = res.return_data.id;
let params = {
"orderId": res.return_data.id,
"openId": app.globalData.openId
}
that.orderToUNionPay(params);
} else {
uni.hideLoading();
uni.showToast({
title: res.return_msg,
icon: 'none',
duration: 2000
});
}
})
},
fail(res) {},
})
},
//
@ -430,6 +442,21 @@
}
})
} else if (that.paytype == 'jinbi') {
if (that.user.gold < that.payPrice * 100) {
uni.showToast({
icon: 'none',
title: '积分不足',
duration: 2000,
success() {
setTimeout(() => {
uni.navigateTo({
url: '../../pages/user/deposit/deposit'
})
}, 1000)
}
});
return;
}
if (!that.user.isSetPayPwd) {
uni.navigateTo({
url: '../../pages/login/updatePas/updatePas'
@ -438,6 +465,14 @@
}
that.$refs.paymentPassword.modalFun('show');
} else if (that.paytype == 'gonghuika') {
if (that.tongCardPrice < that.payPrice) {
uni.showToast({
icon: 'none',
title: '工会卡余额不足',
duration: 2000,
});
return;
}
if (!that.user.isSetPayPwd) {
uni.navigateTo({
url: '../../pages/login/updatePas/updatePas'
@ -522,8 +557,9 @@
uni.showToast({
title: '支付成功'
})
uni.switchTab({
url: '../../pages/tabBar/user/user'
uni.reLaunch({
url: '../Phone-recharge-details/Phone-recharge-details?id=' +
this.orderId
})
return;
}
@ -535,7 +571,8 @@
}
uni.showToast({
title: res.return_msg,
icon: 'none'
icon: 'none',
duration: 2000
})
})

@ -24,7 +24,7 @@
</view>
<view class="width96 line1 mart10"></view>
<view class="width96 height60 mart10" @click="jumpDetails(row.id)">
<view class="width96 height60 mart10">
<view class="width70 flleft fotlt ">
<view class="font16 fontwig6 text1 fcor333">
{{row.remarks}}

@ -400,6 +400,10 @@ $uni-font-size-paragraph:30upx;
height: 70px;
}
.height75 {
height: 75px;
}
.height80 {
height: 80px;
}
@ -487,6 +491,10 @@ $uni-font-size-paragraph:30upx;
.mart80{
margin-top: 80px;
}
.mart70{
margin-top: 70px;
}
.mart60{
margin-top: 60px;
}

Loading…
Cancel
Save