yangan
2024-08-05 1a92541e81f43ea9b544919400b0835bb2b7ee2b
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,12 +13,20 @@
            type="primary"
            text="微信一键登录"></u-button>
      </view>
      <view class="register"
         @click="registerClick"><text>注册</text></view>
    <!--  #endif  -->
      <view class="utils-block">
         <view @click="forgetPassword"><text>忘记密码?</text></view>
   <!--  #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"
@@ -52,6 +61,7 @@
            @confirm="bindWxConfirm"
            @cancel="bindWxCancel"></u-modal>
      </view>
    <!--  #endif  -->
   </view>
</template>
@@ -68,17 +78,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
@@ -103,8 +126,9 @@
               title: '加载中...'
            });
            wx.request({
               url: `https://api.weixin.qq.com/sns/jscode2session?appid=wx4a62fc1684c429a9&secret=ee90afe376cdcec2fdd947c0a4db961a&js_code=${code}&grant_type=authorization_code`,
               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',
@@ -125,6 +149,8 @@
                     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)
                        setCustomerId(res.data.customerid);
                        uni.hideLoading();
                        //跳转页面
@@ -156,11 +182,16 @@
         openPopup() {
            console.log('打开了');
         },
         registerClick() {
         forgetPassword() {
            uni.navigateTo({
               url: '/pages/register/register'
            });
         }
               url: '/pages/login/forgetPassword/forgetPassword'
            })
         },
         PrivacyAgreementHandle() {
            uni.navigateTo({
               url: '/pages/login/PrivacyAgreementText/PrivacyAgreementText'
            })
         },
      }
   };
</script>
@@ -168,33 +199,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 {
@@ -298,4 +322,4 @@
         }
      }
   }
</style>
</style>