yangan
2 天以前 5c63b1fccedfcd208f3434edb79926c206c3d26f
pages/login/login.vue
@@ -2,8 +2,9 @@
   <view class="login">
      <view class="logo">无人值守</view>
      <!--用户名密码登录-->
      <user-password :btnText="0" />
      <user-password :btnText="0" :userList="userList"/>
      <!-- 微信openid登录 -->
    <!--  #ifdef MP-WEIXIN  -->
      <view class="loginBtn">
         <u-button class="button"
            @click.stop="beforeLoginEvent"
@@ -12,17 +13,22 @@
            type="primary"
            text="微信一键登录"></u-button>
      </view>
      <!-- <view class="loginBtn">
         <u-button @click.stop="jumpBindBack"
            type="primary"
            text="一键绑定测试"></u-button>
      </view> -->
      <view class="register"
         @click="registerClick"><text>注册</text></view>
    <!--  #endif  -->
      <view class="utils-block">
         <!--  #ifdef MP-WEIXIN  -->
         <view @click="forgetPassword"><text>忘记密码?</text></view>
          <!--  #endif  -->
   <!--  #ifdef MP-WEIXIN  -->
         <view @click="PrivacyAgreementHandle"><text>新用户注册</text></view>
    <!--  #endif  -->
      </view>
      <view class="login-bottom-box">
         <view class="copyright">冀中能源无人值守微信小程序</view>
         <view class="copyright">沧州聚隆化工无人值守微信小程序</view>
         <view class="copyright">小程序仅供已拥有系统账号特定内部人员使用</view>
      </view>
    <!--  #ifdef MP-WEIXIN  -->
      <!-- 微信授权前的弹框 -->
      <view class="loginPopup">
         <u-popup :show="loginPopupShow"
@@ -57,6 +63,7 @@
            @confirm="bindWxConfirm"
            @cancel="bindWxCancel"></u-modal>
      </view>
    <!--  #endif  -->
   </view>
</template>
@@ -73,17 +80,30 @@
            // 绑定微信模态框
            bindWxModelShow: false,
            bindWxModelTitle: '提示',
            bindWxContent: '如果已拥有系统账号,可以直接跳转绑定微信页面'
            bindWxContent: '如果已拥有系统账号,可以直接跳转绑定微信页面',
            appid: "",
            secret: "",
            userList:[]
         };
      },
      components: {
         userPassword
      },
      onShow() {
         this.userList=uni.getStorageSync('userList')?JSON.parse(uni.getStorageSync('userList')):[];
      },
      methods: {
         ...mapMutations(['setUserTabbar', 'changeisLogin']),
         getAppidAndSercet() {
            this.$reqGet('getAppidAndSercet').then(res => {
               this.appid = res.data.appid;
               this.secret = res.data.secret
            })
         },
         // 访问wx.login,获取code
         beforeLoginEvent() {
            this.loginPopupShow = true;
            this.getAppidAndSercet();
         },
         wxLogin() {
            // 获取登录用户code
@@ -107,16 +127,17 @@
            uni.showLoading({
               title: '加载中...'
            });
            wx.request({
               url: `https://api.weixin.qq.com/sns/jscode2session?appid=wx4a62fc1684c429a9&secret=ee90afe376cdcec2fdd947c0a4db961a&js_code=${code}&grant_type=authorization_code`,
               success(res) {
                  uni.setStorageSync('openid', res.data.openid);
                  // uni.showToast({
                  //    title: '成功获取测试openid',
                  //    icon: 'none'
                  // });
               }
            });
            // wx.request({
            //    url: `https://api.weixin.qq.com/sns/jscode2session?appid=${this.appid}&secret=${this.secret}&js_code=${code}&grant_type=authorization_code`,
            //    success(res) {
            //       console.log(res, 'openid');
            //       uni.setStorageSync('openid', res.data.openid);
            //       // uni.showToast({
            //       //    title: '成功获取测试openid',
            //       //    icon: 'none'
            //       // });
            //    }
            // });
            this.$nextTick(() => {
               apiLoginWx({ code: code }).then(res => {
                  if (res.code != 1) {
@@ -130,6 +151,9 @@
                     this.$reqGet('getUserEntity').then(res => {
                        this.setUserTabbar(res.data.type);
                        uni.setStorageSync('roleType', res.data.type);
                        uni.setStorageSync("userId", res.data.userId)
                        uni.setStorageSync("carNo", res.data.carNo)
                        uni.setStorageSync("isFirstMeet", false)
                        setCustomerId(res.data.customerid);
                        uni.hideLoading();
                        //跳转页面
@@ -141,6 +165,8 @@
                     this.$u.toast(res.msg);
                     this.bindWxModelShow = true;
                  }
               }).catch((err) => {
                  this.loginPopupShow = false;
               });
            });
            this.loginPopupShow = false;
@@ -161,17 +187,16 @@
         openPopup() {
            console.log('打开了');
         },
         registerClick() {
         forgetPassword() {
            uni.navigateTo({
               url: '/pages/register/register'
            });
         },
         // 此方法只进行绑定测试,后期通过扫码解决
         jumpBindBack() {
            uni.navigateTo({
               url: '/pages/bindBackground/bindBackground'
               url: '/pages/login/forgetPassword/forgetPassword'
            })
         }
         },
         PrivacyAgreementHandle() {
            uni.navigateTo({
               url: '/pages/login/PrivacyAgreementText/PrivacyAgreementText'
            })
         },
      }
   };
</script>
@@ -179,33 +204,26 @@
<style lang="scss">
   @import 'index.scss';
   .PrivacyAgreement {
      color: rgb(60, 156, 255)
   }
   .login {
      // height: 100vh;
      // display: flex;
      // align-items: center;
      // .loginBtn {
      //   margin: 0 auto;
      //   width: 80%;
      //   .u-button {
      //     .u-icon {
      //       .u-icon__icon {
      //         font-size: vww(20) !important;
      //       }
      //     }
      //   }
      //   .u-button--success {
      //     border-style: none;
      //   }
      // }
      .loginBtn {
         margin-top: vww(20);
         .u-button {
            width: 80%;
         }
      }
      .utils-block {
         width: 80%;
         margin: vww(20) auto;
         display: flex;
         justify-content: space-between;
         color: #497bff;
         font-size: vww(17);
      }
      .logo {
@@ -309,4 +327,4 @@
         }
      }
   }
</style>
</style>