|
- const extConfig = wx.getExtConfigSync ? wx.getExtConfigSync() : {}
- let app = getApp();
- let config = require("../../config/config.js");
- let Http = require("../../utils/HttpBasics");
- let Util = require("../../utils/util");
- const imgurl = require("../../utils/imgurl");
- Page({
- data: {
- parkUrl: imgurl.park.url,
- jianUrl: imgurl.jian.url,
- qidaiUrl: imgurl.qidai.url,
- addUrl: imgurl.add.url,
- quanUrl: imgurl.quan.url,
- cheUrl: imgurl.che.url,
- ruleUrl: imgurl.rule.url,
- wentiUrl: imgurl.wenti.url,
- park: null,
- carList: [],
- payList: [],
- addCar: null,
- tcq: 2,
- flag: "",
- extraData: {},
- desc: '',
- title: '',
- indicatorDots: true,
- autoplay: false,
- interval: 5000,
- duration: 1000,
- current: 0,
- stopFees: {},
- scroll: true,
- ifHaveCarModular:"",
- canIUse: wx.canIUse("navigator")
- },
- /**
- * 车牌轮播滑动
- */
- onSlideChangeEnd: function (e) {
- var that = this;
- /**
- * 获得当前的车牌号码
- */
- var listCardNum = (that.data.carList)[e.detail.current].carNumber;
- that.setData({
- listCardNum: listCardNum
- });
- /**
- * 获得停车费用
- */
- if (that.data.scroll) {
- that.getStopFee(listCardNum);
- }
- },
-
- //停车费用为0
- paySuccess:function(){
- wx.showModal({
- title: '支付成功',
- content: '请尽快离场',
- showCancel:false
- })
- },
-
- gotomange: function () {
- wx.navigateTo({
- url: '/pages/managelicenseplate/managelicenseplate',
- })
- },
- bindfail: function (res) {
- console.log(res)
- },
- gotoetcp: function () {
- wx.navigateToMiniProgram({
- appId: that.data.etcpAppId,
- extraData: this.data.extraData,
- envVersion: 'release',
- path: "pages/main/main",
- })
- },
- showquan: function () {
- wx.navigateTo({
- url: '/pages/passCar/couponList/couponList',
- })
- },
- gotodetail: function (e) {
- wx.showModal({
- title: '缴费规则',
- content: e.target.dataset.rule,
- showCancel: false,
- })
- },
- onShow: function (options) {
- var that = this;
- that.setData({
- etcpAppId: extConfig.attr.etcpAppId,
- etcpVersion: extConfig.attr.etcpVersion,
- etcpCallbackUrl: extConfig.attr.etcpCallbackUrl,
- ifHaveCarModular: extConfig.attr.ifHaveCarModular
- })
- if (app.globalData.token) {
- that.getList();
- that.init();
- } else {
- that.init();
- }
- /**
- * 只有用户选择了优惠券
- * 才会进行券和车牌的绑定
- */
- if (wx.getStorageSync("chosed") && that.data.quanid) {
- that.getStopFee(that.data.listCardNum);
- that.bindCoupon(that.data.quanid);
- wx.setStorage({
- key: 'chosed',
- data: '',
- })
- };
- if (app.globalData.token) {
- that.initUsrCarList();
- }
-
- if (that.data.addCar) {
- // 绑车牌
- if (app.globalData.carLogin) {
- that.bindCar(that.data.addCar);
- } else {
- that.bindCar(that.data.addCar);
- }
- that.setData({
- addCar: null
- });
- }
- },
- onLoad: function (options) {
- var that = this;
- /**
- * 获得分享小程序的
- * title
- * desc
- */
- Http.get({
- url: config.api.getWeapNote,
- data: {
- appId: config.weapp.AppId,
- }
- })
- .then(res => {
- let weapNote = JSON.parse(res.data.weapNote);
- that.setData({
- desc: weapNote.carpage.desc,
- title: weapNote.carpage.title
- })
- })
- .catch(err => {
- console.log(err);
- })
- // 登录
- var scene = decodeURIComponent(options.scene);
- that.setData({
- scene: scene
- });
- if (app.globalData.token) { } else {
- app.getLocation();
- that.userLogin()
- }
- },
- /**
- * 用户登录
- */
- userLogin: function () {
- var that = this;
- // 登录
- wx.login({
- success: ({
- code
- }) => {
- wx.getSystemInfo({
- success: function (res) {
- that.setData({
- systemInfo: JSON.stringify(res)
- })
- }
- })
- var usrdata = {
- appId: config.weapp.AppId,
- code: code,
- sceneAddress: app.globalData.sceneAddress,
- scene: that.data.scene,
- systemInfo: that.data.systemInfo
- };
- if (app.globalData.locationInfo) {
- usrdata = {
- appId: config.weapp.AppId,
- code: code,
- sceneAddress: app.globalData.sceneAddress,
- latitude: "" + app.globalData.locationInfo.latitude,
- longitude: "" + app.globalData.locationInfo.longitude,
- scene: that.data.scene,
- systemInfo: that.data.systemInfo
- };
- }
- Http.post({
- url: config.api.login,
- data: usrdata
- })
- .then(res => {
- app.globalData.token = res.data.token;
- Http.setToken(res.data.token);
- that.checkUserCarStatus();
- // that.getUserInfo();
- that.getList();
- that.init();
- that.initUsrCarList();
- return Http.get({
- url: config.api.checkUserStatus,
- data: {}
- });
- })
- .then(res => {
- })
- .catch(err => {
- if (err.code == 11004) {
- // 用户昵称未授权
- wx.redirectTo({
- url: "/pages/getuserinfo/index"
- });
- } else {
- wx.showModal({
- title: '提示',
- content: err.errMsg,
- showCancel: false
- })
- }
- });
- }
- });
- },
- /**
- * 检查用户是否有车
- */
- checkUserCarStatus: function () {
- var that = this;
- Http.get({
- url: config.api.userCarCount,
- data: {}
- }).then(res => {
- if (res.data > 0) {
- // 用户名下有车
- app.globalData.phone = res.data.phone;
- app.globalData.supportCar = true;
- // 共同登录
- that.userCarLogin();
- }
- })
- .catch(err => {
- })
- },
- /**
- * 获取用户信息
- */
- // getUserInfo: function () {
- // // 获取用户信息
- // wx.getSetting({
- // success: res => {
- // if (res.authSetting["scope.userInfo"]) {
- // // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
- // wx.getUserInfo({
- // success: res => {
- // // 可以将 res 发送给后台解码出 unionId
- // }
- // });
- // }
- // }
- // })
- // },
- jumpToAdd: function () {
- wx.navigateTo({
- url: `/pages/addPark/addPark?flags=managepalte`
- });
- },
- passc: function () {
- wx.navigateTo({
- url: '/pages/ques/ques',
- })
- },
-
-
- /**
- * 券绑定车牌
- */
- bindCoupon: function (quanid) {
- var that = this;
- /**
- * etcp
- */
- var etcpData = {
- etcpToken: app.globalData.etcpToken,
- carNumber: that.data.listCardNum,
- couponOrderId: quanid
- };
- /**
- * 停简单
- */
- var tjdData = {
- carNumber: that.data.listCardNum
- };
- var postCouponData = app.globalData.parkVendor == 1 ? etcpData : tjdData;
- Http.post({
- url: config.api.getCarCoupon,
- data: postCouponData
- })
- .then(res => {
- that.initUsrCarList();
- })
- .catch(err => {
- console.log(err)
- wx.showToast({
- title: err.message,
- icon: 'none',
- duration: 2000,
- mask: false
- });
- })
- },
- /**
- * 选择优惠券
- */
- gotoquan: function () {
- let that = this;
- if (that.data.quanid) {
- wx.navigateTo({
- url: `/pages/passCar/choicecoupon/choicecoupon?quanid=${that.data.quanid}`,
- })
- } else {
- wx.navigateTo({
- url: '/pages/passCar/choicecoupon/choicecoupon',
- })
- }
-
- },
-
- //获取名下停车券列表
- getList() {
- var that = this;
- Http.get({
- url: config.api.couponOrderCarList + "?type=5&couponOrderStatus=0",
- data: {
- pageNum: 1,
- pageSize: 8,
- couponOrderStatus: 0
- }
- }).then(res => {
- that.setData({
- couponList: res.data.list
- });
- })
- .catch(err => {
- console.log(err)
- })
- },
-
-
- /**
- * 共同登录
- */
- init: function (carNumber) {
- var that = this;
- app.parkInitCallback = token => {
- that.initPark();
- that.getParkStatus();
- if (!app.globalData.carLogin) {
- /**
- * 判断是否授权手机号
- */
- Http.get({
- url: config.api.checkPhoneStatus,
- data: {}
- })
- .then(res => {
- Http.post({
- url: config.api.carInit,
- data: {
- phone: app.globalData.phone
- }
- }).then(res => {
- app.globalData.carLogin = true;
- app.globalData.parkVendor = res.data.vendor;
- if (res.data.token) {
- app.globalData.etcpToken = res.data.token;
- }
- /**
- * 获得停车费用
- */
- that.initUsrCarList("flags");
- });
- })
- .catch(err => {
- if (err.code == 11005) {
- // 用户手机未授权
- /**
- * 将值传到用户手机号授权的页面
- *
- */
- wx.redirectTo({
- url: "/pages/getphoneInfo/index"
- });
- } else if (err.code == 11006) {
- // 用户手机已加密
- wx.redirectTo({
- url: "/pages/phoneinput/phoneinput"
- });
- } else {
- wx.showToast({
- title: err.errMsg,
- icon: 'none',
- duration: 2000,
- mask: false
- });
- }
- })
- }
- };
- if (app.globalData.token && app.globalData.token != null) {
- app.parkInitCallback(app.globalData.token);
- }
- },
-
- bindCar: function (carNum) {
- var that = this;
- // ETCP
- var etcpData = {
- etcpToken: app.globalData.etcpToken,
- carNumber: carNum
- };
- var tjdData = {
- carNumber: carNum
- };
- var postData = app.globalData.parkVendor == 1 ? etcpData : tjdData;
- Http.post({
- url: config.api.bindCar,
- data: postData
- })
- .then(res => {
- that.setData({
- addCar: null
- });
- that.initUsrCarList();
- wx.showModal({
- title: "提示",
- showCancel: false,
- content: "绑车牌成功!",
- success: function () { }
- });
- })
- .catch(error => {
- wx.showModal({
- title: "提示",
- showCancel: false,
- content: error.data.message,
- success: function () { }
- });
- });
- },
- /**
- * 车场信息获取
- */
- initPark: function () {
- var that = this;
- Http.get({
- url: config.api.getParkInfo,
- data: {}
- })
- .then(res => {
- that.setData({
- park: res.data
- })
- })
- .catch(err => {
- console.log(err);
- // wx.showToast({
- // title: err.message,
- // icon: 'none',
- // duration: 2000,
- // mask: false
- // });
- })
- },
-
- /**
- * 车场状态获取
- */
- getParkStatus: function () {
- var that = this;
- Http.get({
- url: config.api.getParkStatus,
- })
- .then(res => {
- console.log(res)
- })
- .catch(err => {
- console.log(err)
- // wx.showToast({
- // title: err.message,
- // icon:"none"
- // })
- })
- },
-
-
- /**
- * 绑定车获取
- */
- initUsrCarList: function (flag) {
- var that = this;
- Http.get({
- url: config.api.getUserCarList,
- data: {}
- }).then(res => {
- that.setData({
- carList: res.data
- });
- /**
- * flag ==flags
- * 表示从首页onShow进来的
- */
- if (flag == "flags" && res.data.length > 0) {
- var listCardNum = res.data[0].carNumber;
- that.setData({
- listCardNum: listCardNum
- })
- /**
- * 获得停车费用
- */
- that.getStopFee(listCardNum);
- }
- })
- .catch(err => {
- wx.showToast({
- title: err.message,
- icon: 'none',
- duration: 2000,
- mask: false
- });
- })
- },
-
- /**
- * 获得停车费用修改
- */
- getStopFee: function (carNumber) {
- let that = this;
- let postData =
- app.globalData.parkVendor == 1 ? {
- etcpToken: app.globalData.etcpToken,
- carNumber: carNumber
- } : {
- carNumber: carNumber,
- outCarId: outCarId
- };
- Http.post({
- url: config.api.getCarStopFee,
- data: postData
- })
- .then(res => {
- console.log(res)
- var extraDataStr = {
- params: {
- token: app.globalData.etcpToken,
- syncId: res.data.orderId,
- payType: 6, // 小程序支付
- CarNumber: carNumber,
- returnUrl: that.data.etcpCallbackUrl,
- source: "FUMAO-001",
- actionId: "1" //操作ID,1:小程序支付
- }
- };
- that.setData({
- extraData: extraDataStr,
- stopFees: res.data,
- timecha: Util.timecha(res.data.exitTime, res.data.entranceTime)
- });
- that.setData({
- scroll: true
- })
- })
- .catch(error => {
- that.setData({
- stopFees: {},
- scroll: true
- })
- });
- },
-
- /**
- * 下拉刷新
- */
- onPullDownRefresh: function (e) {
- let that = this;
- that.initUsrCarList("flags");
- wx.stopPullDownRefresh();
- },
- // 用户点击右上角分享
- onShareAppMessage: function () {
- return {
- title: this.data.title,
- desc: this.data.desc,
- success: function (res) {
- wx.showToast({
- title: "分享成功",
- duration: 1000,
- icon: "success"
- });
- }
- }
- }
- });
|