柒零 1 рік тому
батько
коміт
e4efb2a922

+ 31 - 9
app.js

@@ -10,7 +10,7 @@ App({
     // logs.unshift(Date.now())
     // wx.setStorageSync('logs', logs)
     // this.globalData.selectedTabIndex = wx.getStorageSync("selectedTabIndex") || 0;
-    
+
     // 登录
     wx.login({
       success: res => {
@@ -24,18 +24,18 @@ App({
           success: function (loginRes) {
             // 处理服务器返回的结果  
             console.log('登录获取结果:', loginRes.data);
-            if (loginRes.data) { 
+            if (loginRes.data) {
               wx.setStorageSync("openid", loginRes.data.openid);
               wx.setStorageSync("token", loginRes.data.token);
               wx.setStorageSync("unionid", loginRes.data.unionid);
 
-
+              // 判断扫码控制权限
               wx.request({
                 url: `${homeApi_empower}/wxstatus`,
                 data: {
                   unionid: wx.getStorageSync('unionid'),
                   openid: wx.getStorageSync('openid'),
-                  token: wx.getStorageSync('token') ,
+                  token: wx.getStorageSync('token'),
                 },
                 method: 'POST',
                 success: function (intervalRes) {
@@ -43,17 +43,39 @@ App({
                   console.log('intervalRes.data=' + JSON.stringify(intervalRes.data));
                   //empower.js? [sm]:152 intervalRes.data={"st":"success","status":"0"}
                   if (intervalRes.data && intervalRes.data.st && intervalRes.data.status && intervalRes.data.st == 'success' && intervalRes.data.status == '1') {
-                    wx.setStorageSync('hasAuth', true);
+                    wx.setStorageSync('hasHotelAuth', true);
                     wx.setStorageSync('hotelEmpower', intervalRes.data.hotel);
                     wx.setStorageSync('roomEmpower', intervalRes.data.room);
                   } else {
-                    wx.setStorageSync('hasAuth', false);
+                    wx.setStorageSync('hasHotelAuth', false);
                   }
                 },
                 fail: function (error) {
 
                 }
               });
+              // 判断今日睡眠报告权限
+              wx.request({
+                url: 'https://aipush.aidsleep.cn/srpwithrange',
+                method: 'POST',
+                data: {
+                  token: "89835e65993fee4a6a6cbbe4c271da51e5521822934e13769e61cadabaed72c3" || wx.getStorageSync('token'),
+                  udi: wx.getStorageSync('unionid'),
+                  pg: 1,
+                  lm: 1
+                },
+                success: (res) => {
+                  var loadData = res.data.data;
+                  if ((Array.isArray(loadData) && loadData.length > 0) || (loadData && !Array.isArray(loadData)) ) {
+                    wx.setStorageSync('hasReportAuth', true);
+                  } else {
+                    wx.setStorageSync('hasReportAuth', false);
+                  }
+                },
+                fail: () => {
+                  wx.setStorageSync('hasReportAuth', false);
+                }
+              });
 
             }
           }
@@ -61,10 +83,10 @@ App({
       }
     })
   },
-onShow(){
-},
+  onShow() {
+  },
   globalData: {
     userInfo: null,
-    selectedTabIndex:0
+    selectedTabIndex: 0
   }
 })

+ 5 - 24
componets/authorized-login-dialog/authorizedLoginDialog.js

@@ -271,9 +271,6 @@ Component({
               console.log('loginRes.data.back.openid=' + loginRes.data.back.openid);
               wx.setStorageSync('unionid', loginRes.data.back.unionid);
               wx.setStorageSync('openid', loginRes.data.back.openid);
-              // 获取后台授权
-              // that.startInterval();
-              // 可以在这里提示用户进行手机号授权  
               that.setData({
                 disableCommitBtn: false,
                 unionid: loginRes.data.back.unionid,
@@ -290,6 +287,8 @@ Component({
               })
               wx.setStorageSync('hasAuth', true);
               that.triggerEvent('authorizationSuccessful', true);
+              // 获取后台授权
+              that.startInterval();
             } else {
               that.setData({ showLoading: false });
               wx.showToast({
@@ -332,38 +331,20 @@ Component({
           method: 'POST',
           success: function (intervalRes) {
             that.setData({ showLoading: false });
+            that.clearInterval();
             console.log('intervalRes=' + JSON.stringify(intervalRes));
             console.log('intervalRes.data=' + JSON.stringify(intervalRes.data));
-            //empower.js? [sm]:152 intervalRes.data={"st":"success","status":"0"}
             if (intervalRes.data && intervalRes.data.st && intervalRes.data.status && intervalRes.data.st == 'success' && intervalRes.data.status == '1') {
-              wx.setStorageSync('hasAuth', true);
+              wx.setStorageSync('hasHotelAuth', true);
               wx.setStorageSync('hotelEmpower', intervalRes.data.hotel);
               wx.setStorageSync('roomEmpower', intervalRes.data.room);
-              that.setData({
-                disableCommitBtn: false,
-              });
-              wx.showToast({
-                title: '后台授权成功',
-                icon: 'none'
-              });
-
-              that.clearInterval();
-              that.triggerEvent('authorizationSuccessful', true);
             } else {
-              that.clearInterval();
-              wx.showToast({
-                title: '授权失败,请先办理入住',
-                icon: 'none'
-              });
+              wx.setStorageSync('hasHotelAuth', false);
             }
           },
           fail: function (error) {
             that.setData({ showLoading: false });
             that.clearInterval();
-            wx.showToast({
-              title: '后台授权失败',
-              icon: 'none'
-            });
           }
         });
       }, 3000);

+ 21 - 1
pages/index/index.js

@@ -98,7 +98,6 @@ Page({
     var hasAuth = wx.getStorageSync("hasAuth");
     switch (index - 0) {
       case 0:
-      case 1:
         // need Login
         if (hasAuth) {
           this.toPage(index);
@@ -148,8 +147,29 @@ Page({
     switch (index - 0) {
       case 0:
       case 1:
+      case 2:
+      case 3:
         // need Login
         if (hasAuth) {
+          if (index == 0 || index == 1) {
+            var hasHotelAuth = wx.getStorageSync("hasHotelAuth");
+            if (!hasHotelAuth) {
+              this.setData({
+                showTipsB:true
+              })
+              return
+            }
+          }
+          if (index == 2) {
+            var hasReportAuth = wx.getStorageSync("hasReportAuth");
+            var unionid = wx.getStorageSync("unionid");
+            if (!hasReportAuth || !unionid) {
+              this.setData({
+                showTipsA: true
+              })
+              return
+            }
+          }
           this.toCardPage(index);
         } else {
           this.showDialog();

+ 2 - 2
subpages/sleepReport/sleepReport.js

@@ -174,7 +174,7 @@ Page({
         startdate: startdateStr,
         enddate: enddateStr,
         token: "89835e65993fee4a6a6cbbe4c271da51e5521822934e13769e61cadabaed72c3" || wx.getStorageSync('token'),
-        udi: wx.getStorageSync('unionid'),
+        udi: wx.getStorageSync('unionid') ,
         pg: that.data.page,
         lm: 20
       },
@@ -183,7 +183,7 @@ Page({
         var mDataTemp = that.data.mData || [];
         var loadData = res.data.data;
 
-        if (res.data.data) {
+        if ((loadData && !Array.isArray(loadData))) {
           for (const key in loadData) {
             if (Object.prototype.hasOwnProperty.call(loadData, key)) {
               const element = loadData[key];