| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- const {
- default: api
- } = require("../../js/api");
- const utils = require('../../utils/util')
- Page({
- data: {
- isLoggedIn: false,
- site:{},
- userInfo: {},
- scanTitle: '扫码加油',
- scanTip: '请扫描加油机键盘上的二维码',
- isDriver:''
- },
- /**
- * 生命周期函数--监听页面加载
- */
- onLoad(options) {
- },
- onShow(){
- this.getSiteInfo()
- },
- switchTomonitoringScreen() {
- wx.navigateTo({
- url:'/pages/driver/monitoringScreen/monitoringScreen',
- fail: (err) => {
- console.error('跳转失败', err);
- // 如果是tab页,可以使用switchTab
- if (err.errMsg.includes('tab page')) {
- wx.switchTab({
- url: page
- });
- } else {
- // 尝试使用 redirectTo
- wx.redirectTo({
- url: page
- });
- }
- }
- });
- },
- switchToDriver() {
- const app = getApp();
- // 假设全局用户角色存储在 app.globalData.userRole 中
- // 这里模拟切换:如果当前是 'admin'(司机端),则切为普通用户,反之亦然
- const currentRole = app.globalData.userRole || 'user';
- const newRole = currentRole === 'admin' ? 'user' : 'admin';
-
- // 更新全局数据
- app.globalData.userRole = newRole;
-
- // 更新当前页面的 data 中的 userRole,以便底部 tab-bar 刷新
- this.setData({ userRole: newRole });
-
- // 可选:根据新角色刷新页面数据(如重新获取站点信息等)
- // 例如调用 this.updateTabs() 重新生成底部导航
- // this.updateTabs();
-
- // 提示用户切换成功
- app.globalData.isDriver = 'admin';
- wx.navigateTo({
- url:'/pages/driver/jieban/jieba',
- fail: (err) => {
- console.error('跳转失败', err);
- // 如果是tab页,可以使用switchTab
- if (err.errMsg.includes('tab page')) {
- wx.switchTab({
- url: page
- });
- } else {
- // 尝试使用 redirectTo
- wx.redirectTo({
- url: page
- });
- }
- }
- });
- },
- /** 获取站点信息 */
- getSiteInfo(){
- api.request_GetSiteInfo().then(res => {
- if(res.data.statusCode == 203) {
- console.log("获取站点信息失败",res)
- return
- }
- const app = getApp();
- console.log("站点信息",res)
- var formatePhone = utils.formatPhone(res.data.data.userInfo.userPhoneNumber);
- app.globalData.userInfo = res.data.data.userInfo;
- console.log("站点信息 app.globalData.userInfo",app.globalData.userInfo)
- debugger
- //var isdeiver = res.data.data.userInfo.isDriver == 'admin' ? true : false;
- this.setData({
- isLoggedIn: true,
- isDriver:res.data.data.userInfo.isDriver,
- site:res.data.data.site,
- userInfo: {
- userAddress:res.data.data.userInfo.userAddress,
- userAvatarUrl:res.data.data.userInfo.userAvatarUrl,
- userPhoneNumber:formatePhone,
- userName:res.data.data.userInfouserName
- },
- scanTitle: '扫码加油',
- scanTip: '请扫码加油机键盘上的二维码'
- })
- }).catch(err => {
- console.log("获取站点信息失败",err)
- })
- },
- onChooseAvatar(e) {
- debugger
- const { avatarUrl } = e.detail; // 头像临时路径
- this.setData({
- isLoggedIn: true,
- site:res.data.data.site,
- userInfo: {
- userAddress:'',
- userAvatarUrl:avatarUrl,
- userPhoneNumber:'',
- userName:''
- },
- scanTitle: '扫码加油',
- scanTip: '请扫码加油机键盘上的二维码'
- })
- // 上传头像到服务器(可选)
- },
- toLoginOrOrderPage: function () {
- if (!this.data.isLoggedIn) {
- wx.navigateTo({
- url: '../login/login'
- })
- } else {
- wx.navigateTo({
- url: '../history/history?paymentMode=' + this.data.site.paymentMode,
- })
- }
- },
- // 打开扫码功能
- scanCode: function () {
- wx.showLoading({
- title: '正在跳转',
- })
- const that = this;
- wx.scanCode({
- success(res) {
- console.log("扫码内容",res.result)
- const scanStr = res.result;
- if(scanStr.includes('yuwxapp')) {
- const id = scanStr.split('yuwxapp?id=')[1];
- wx.redirectTo({
- url: '../quantify/quantify?id=' + id,
- fail(err){
- wx.showToast({
- title: '跳转页面失败',
- icon: 'none'
- });
- }
- })
- return
- }
- if(scanStr.includes('wxapp')) {
- const id = scanStr.split('wxapp?id=')[1];
- wx.redirectTo({
- url: '../TransactionPage/TransactionPage?id=' + id,
- fail(err){
- wx.showToast({
- title: '跳转页面失败',
- icon: 'none'
- });
- }
- })
- }
-
-
- },
- fail(err) {
- console.error('扫码失败:', err);
- wx.showToast({
- title: '扫码失败',
- icon: 'none'
- });
- }
- });
- }
- });
|