@@ -16,7 +16,10 @@ Page({
|
||||
tabStatus: {
|
||||
coupon: !1,
|
||||
shop: !1
|
||||
}
|
||||
},
|
||||
showOneTimeOptions: !1,
|
||||
oneTimeOptions: [],
|
||||
oneTimeLoading: !1
|
||||
},
|
||||
bindViewTap: function () {
|
||||
wx.navigateTo({
|
||||
@@ -86,22 +89,22 @@ Page({
|
||||
}, 50);
|
||||
});
|
||||
});
|
||||
|
||||
e.globalData.devicecode = "1840001"; // 强制设置扫码状态
|
||||
},
|
||||
getData: function () {
|
||||
var a = this;
|
||||
// 获取首页数据
|
||||
t.request('/miniprogram/index/balance', {}, !0).then(function (e) {
|
||||
t.request('/miniprogram/index/balance', e.globalData.deviceData, !0).then(function (e) {
|
||||
a.setData({
|
||||
user: e.data || [],
|
||||
});
|
||||
// 存储进度订单
|
||||
wx.setStorageSync('progressorder', e.data.progressorder || []);
|
||||
});
|
||||
},
|
||||
load: function (e) {
|
||||
console.log(e);
|
||||
},
|
||||
openLocation: function(e) {
|
||||
openLocation: function (e) {
|
||||
var latitude = Number(e.currentTarget.dataset.latitude);
|
||||
var longitude = Number(e.currentTarget.dataset.longitude);
|
||||
var name = e.currentTarget.dataset.name;
|
||||
@@ -125,7 +128,19 @@ Page({
|
||||
}), (this.getData(), this.isneedUpload = !1);
|
||||
},
|
||||
toPage: function (t) {
|
||||
console.info(t);
|
||||
|
||||
if (t.currentTarget.dataset.phone) {
|
||||
|
||||
// 打开客服聊天窗口
|
||||
return wx.openCustomerServiceChat();
|
||||
|
||||
|
||||
// 增加打电话
|
||||
wx.makePhoneCall({
|
||||
phoneNumber: "" + t.currentTarget.dataset.phone
|
||||
});
|
||||
return;
|
||||
}
|
||||
var a = t.currentTarget.dataset, i = a.url, o = a.needlogin, n = a.showimg;
|
||||
if (console.log("showImg", n), i) {
|
||||
this.isneedUpload = !0;
|
||||
@@ -149,11 +164,13 @@ Page({
|
||||
success: function (i) {
|
||||
console.log(i), wx.showLoading({
|
||||
title: ""
|
||||
}), e.globalData.qrcode = i.result, t.request("/miniprogram/identify", i, !0).then(function (t) {
|
||||
console.log("data", t), wx.hideLoading(), e.globalData.devicecode = t.data.devicecode || e.globalData.devicecode,
|
||||
a.setData({
|
||||
isScan: !!t.data.devicecode
|
||||
});
|
||||
}), e.globalData.qrcode = i.result, t.request("/miniprogram/identify/index", i, !0).then(function (t) {
|
||||
console.log("data", t), wx.hideLoading(),
|
||||
e.globalData.deviceData = t.data || e.globalData.deviceData || {};
|
||||
e.globalData.devicecode = t.data.devicecode || e.globalData.devicecode;
|
||||
a.setData({
|
||||
isScan: !!t.data.devicecode
|
||||
});
|
||||
}).catch(function (e) {
|
||||
wx.hideLoading();
|
||||
});
|
||||
@@ -170,41 +187,140 @@ Page({
|
||||
e.globalData.needJumpUrl = !1, this.isneedUpload = !0;
|
||||
var t = this;
|
||||
if (console.log("this.isSubmit", this.isSubmit), this.isSubmit) return !1;
|
||||
if (t.data.user.money <= 0) return t.startup(), !1;
|
||||
if (t.data.user.money < 10) {
|
||||
if (this.isshowModal) return t.startup(), !1;
|
||||
this.isshowModal = !0, wx.showModal({
|
||||
wx.showActionSheet({
|
||||
itemList: ["单次消费", "立即启动"],
|
||||
success: function (res) {
|
||||
if (res.tapIndex === 0) {
|
||||
t.openOneTimeOptions();
|
||||
} else {
|
||||
if (t.data.user.money == 0) {
|
||||
wx.showModal({
|
||||
title: "提示",
|
||||
content: "您的洗车金额为0元,是否需要购买洗车金额?",
|
||||
confirmText: "去购买",
|
||||
cancelText: "取消",
|
||||
success: function (m) {
|
||||
if (m.confirm) {
|
||||
wx.navigateTo({
|
||||
url: "/pages/voucher/voucher"
|
||||
}), t.isneedUpload = !0;
|
||||
}
|
||||
}
|
||||
});
|
||||
return;
|
||||
}
|
||||
else if (t.data.user.money < 10) {
|
||||
wx.showModal({
|
||||
title: "提示",
|
||||
content: "洗车金额不足10元,是否需要购买洗车金额还是直接开机?",
|
||||
confirmText: "去购买",
|
||||
cancelText: "直接开机",
|
||||
success: function (m) {
|
||||
if (m.confirm) {
|
||||
wx.navigateTo({
|
||||
url: "/pages/voucher/voucher"
|
||||
}), t.isneedUpload = !0;
|
||||
} else {
|
||||
t.startup();
|
||||
}
|
||||
}
|
||||
});
|
||||
return;
|
||||
}
|
||||
t.startup();
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
openOneTimeOptions: function () {
|
||||
var a = this;
|
||||
if (a.data.oneTimeLoading) return !1;
|
||||
a.setData({ oneTimeLoading: !0 });
|
||||
|
||||
// 获取单次洗车配置
|
||||
t.request('/miniprogram/single/getAgentConfig', e.globalData.deviceData || {}, !0).then(function (res) {
|
||||
a.setData({
|
||||
oneTimeOptions: (res.data && Array.isArray(res.data)) ? res.data : (res.data && res.data.list ? res.data.list : []),
|
||||
showOneTimeOptions: !0,
|
||||
oneTimeLoading: !1
|
||||
});
|
||||
}).catch(function () {
|
||||
a.setData({ oneTimeLoading: !1 });
|
||||
});
|
||||
},
|
||||
closeOneTimeOptions: function () {
|
||||
this.setData({ showOneTimeOptions: !1 });
|
||||
},
|
||||
payOneTime: function (evt) {
|
||||
var a = this, i = evt.currentTarget.dataset.token;
|
||||
if (!i) return !1;
|
||||
wx.showLoading({ title: "" });
|
||||
t.request('/miniprogram/single/create', {
|
||||
token: i
|
||||
}, !0).then(function (res) {
|
||||
if (wx.hideLoading(), 200 != res.code) return wx.showModal({
|
||||
title: "提示",
|
||||
content: "账户余额小于10元,是否立即充值?",
|
||||
confirmText: "去充值",
|
||||
cancelText: "立即启动",
|
||||
success: function (e) {
|
||||
e.confirm ? (wx.navigateTo({
|
||||
url: "/pages/voucher/voucher"
|
||||
}), t.isneedUpload = !0) : t.startup();
|
||||
},
|
||||
fail: function (e) {
|
||||
console.log("fail:", e);
|
||||
content: res.message || ""
|
||||
}), !1;
|
||||
var r = res.data.result;
|
||||
var orderid = res.data.orderid;
|
||||
wx.requestPayment({
|
||||
timeStamp: r.timeStamp,
|
||||
nonceStr: r.nonceStr,
|
||||
package: r.package,
|
||||
signType: r.signType,
|
||||
paySign: r.paySign,
|
||||
success: function () {
|
||||
a.setData({ showOneTimeOptions: !1 });
|
||||
var poll = function () {
|
||||
t.request('/miniprogram/single/notify', {
|
||||
orderid: orderid
|
||||
}, !0).then(function (res) {
|
||||
if (200 == res.code) {
|
||||
wx.showModal({
|
||||
title: "提示",
|
||||
content: "支付成功"
|
||||
});
|
||||
wx.navigateTo({
|
||||
url: "/pages/voucher/voucher"
|
||||
});
|
||||
return;
|
||||
}
|
||||
}).catch(function (err) {
|
||||
if (err && err.code == 202) {
|
||||
setTimeout(poll, 1500);
|
||||
return;
|
||||
}
|
||||
if (err && err.code == 201) {
|
||||
wx.showModal({
|
||||
title: "提示",
|
||||
content: err.message || ""
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
poll();
|
||||
}
|
||||
});
|
||||
} else t.startup();
|
||||
}).catch(function () {
|
||||
wx.hideLoading();
|
||||
});
|
||||
},
|
||||
startup: function () {
|
||||
var a = this;
|
||||
wx.showModal({
|
||||
title: "提示",
|
||||
content: "你当前将要使用的机器编号是:".concat(e.globalData.devicecode, ",确认开机吗?"),
|
||||
content: "你当前将要使用的机器编号是:".concat(e.globalData.deviceData.title || e.globalData.deviceData.devicecode, ",确认开机吗?"),
|
||||
success: function (i) {
|
||||
i.confirm && (a.isSubmit = !0, wx.showLoading({
|
||||
title: "正在启动"
|
||||
}), t.request(e.globalData.config.machine.startup, {
|
||||
washcode: a.data.selectID
|
||||
}, !0).then(function (e) {
|
||||
}), t.request('/miniprogram/' + e.globalData.deviceData.type + '/startup', e.globalData.deviceData || {}, !0).then(function (e) {
|
||||
a.isSubmit = !1, wx.hideLoading(), 200 == e.code && (wx.showModal({
|
||||
title: "",
|
||||
content: e.message
|
||||
}), a.data.tmplIds.length > 0 && a.requestSubscribeMessage(), wx.redirectTo({
|
||||
url: "/pages/user/user"
|
||||
// url: "/pages/washing/washing"
|
||||
url: "/pages/index/index"
|
||||
}), a.isneedUpload = !0), 888 == e.code && (wx.navigateTo({
|
||||
url: "/pages/voucher/voucher"
|
||||
}), a.isneedUpload = !0);
|
||||
@@ -229,4 +345,4 @@ Page({
|
||||
});
|
||||
},
|
||||
onShareAppMessage: function () { }
|
||||
});
|
||||
});
|
||||
|
||||
@@ -6,19 +6,35 @@
|
||||
<view class="money">
|
||||
<my-money user="{{user}}"></my-money>
|
||||
<view class="marquee-wrap" wx:if="{{notice}}">
|
||||
<view bindtap="toPage" class="marquee-content" data-refresh="1" data-url="{{noticeurl}}"> {{notice}} </view>
|
||||
<view bindtap="toPage" class="marquee-content" data-refresh="1" data-url="{{noticeurl}}">
|
||||
{{notice}}
|
||||
</view>
|
||||
</view>
|
||||
<navigator class="washing" hoverClass="hover" url="/pages/washing/washing" wx:if="{{user.progressorder}}">
|
||||
<view class="l">您有一笔洗车订单进行中...</view>
|
||||
<view class="r">点击查看></view>
|
||||
</navigator>
|
||||
</view>
|
||||
<template is="pageList" data="{{urlList:urlList}}"></template>
|
||||
<template is="wangdianList" data="{{wangdianList:wangdianList}}"></template>
|
||||
<service-tel></service-tel>
|
||||
<view bindtap="toScan" class="scan-btn" wx:if="{{!isScan}}"><view class="sha">扫码启动</view></view>
|
||||
<view class="scan-btn two-btn" wx:if="{{isScan}}">
|
||||
<view bindtap="toPage" data-needlogin="true" data-refresh="" data-showimg="" data-url="singleStart/singleStart" class="two-btns danci">
|
||||
<view>单次启动</view>
|
||||
</view>
|
||||
<view bindtap="toStart" class="two-btns yue">
|
||||
<view>余额启动</view>
|
||||
</view>
|
||||
<view bindtap="toScan" class="scan-btn" wx:if="{{!isScan}}">
|
||||
<view class="sha">扫码启动</view>
|
||||
</view>
|
||||
</view>
|
||||
<view bindtap="toStart" class="scan-btn" wx:if="{{isScan}}">
|
||||
<view class="sha">立即启动</view>
|
||||
</view>
|
||||
<view class="one-time-modal" wx:if="{{showOneTimeOptions}}">
|
||||
<view class="one-time-inner">
|
||||
<view class="one-time-title">选择单次消费档位</view>
|
||||
<view class="one-time-tip">限单次洗车</view>
|
||||
<view class="one-time-list">
|
||||
<view class="one-time-item" wx:for="{{oneTimeOptions}}" wx:key="index" bindtap="payOneTime" data-token="{{item.token}}">
|
||||
<view>{{item.title}}</view>
|
||||
<view>支付{{item.actualprice}}元 · 洗车时间最长{{item.usetime}}分钟</view>
|
||||
</view>
|
||||
</view>
|
||||
<view bindtap="closeOneTimeOptions" class="one-time-cancel">取消</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -32,17 +32,6 @@
|
||||
position: static;
|
||||
}
|
||||
|
||||
.two-btn .two-btns {
|
||||
float: left;
|
||||
width: 50%;
|
||||
height: 126rpx;
|
||||
padding-top: 10rpx;
|
||||
}
|
||||
|
||||
.two-btns.yue {
|
||||
background-color: #f60;
|
||||
}
|
||||
|
||||
.start-btn-box .scan-subscribe {
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
@@ -129,7 +118,7 @@
|
||||
top: -20rpx;
|
||||
color: #fff;
|
||||
background-color: #0056A3;
|
||||
font-size: 24rpx;
|
||||
font-size: 22rpx;
|
||||
padding: 0 12rpx;
|
||||
line-height: 36rpx;
|
||||
border-radius: 0 0 0 20rpx;
|
||||
@@ -168,4 +157,69 @@
|
||||
right: 0;
|
||||
display: block;
|
||||
background-color: #37CE05;
|
||||
}
|
||||
}
|
||||
|
||||
.washing {
|
||||
justify-content: space-between;
|
||||
margin: 30rpx 0 0;
|
||||
padding: 20rpx 28rpx;
|
||||
display: flex;
|
||||
background-color: #0056A3;
|
||||
color: #fff;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
|
||||
.washing .l {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
/* 单次消费弹窗 */
|
||||
.one-time-modal {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
right: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
background: rgba(0,0,0,0.5);
|
||||
z-index: 1000;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.one-time-inner {
|
||||
width: 84%;
|
||||
background: #fff;
|
||||
border-radius: 16rpx;
|
||||
padding: 24rpx 24rpx 16rpx;
|
||||
box-shadow: 0 10rpx 30rpx rgba(0,0,0,.2);
|
||||
}
|
||||
.one-time-title {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #333;
|
||||
text-align: center;
|
||||
}
|
||||
.one-time-tip {
|
||||
font-size: 24rpx;
|
||||
color: #999;
|
||||
text-align: center;
|
||||
margin-top: 8rpx;
|
||||
}
|
||||
.one-time-list {
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.one-time-item {
|
||||
border: 1px solid #eee;
|
||||
border-radius: 12rpx;
|
||||
padding: 20rpx;
|
||||
margin-bottom: 16rpx;
|
||||
}
|
||||
.one-time-cancel {
|
||||
margin-top: 8rpx;
|
||||
background-color: #06a2b3;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
line-height: 80rpx;
|
||||
height: 80rpx;
|
||||
border-radius: 12rpx;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user