kaiguan-zfb/pages/login/login.vue

285 lines
5.9 KiB
Vue
Raw Normal View History

2024-03-13 10:54:22 +08:00
<template>
<view class="page">
2024-06-11 18:03:16 +08:00
<u-navbar :is-back="false" :title="tittxt" :border-bottom="false" :background="bgc" title-color='#fff'
title-size='36' height='36'>
2024-03-13 10:54:22 +08:00
</u-navbar>
<view class="imgbox">
2024-05-10 17:37:36 +08:00
<image src="https://api.ccttiot.com/smartmeter/img/static/uCqHftk2W2zEPX03DLcb" mode=""></image>
2024-03-13 10:54:22 +08:00
</view>
<view class="tip">
2024-05-10 17:37:36 +08:00
欢迎来到共享开关
2024-03-13 10:54:22 +08:00
</view>
<view class="inputbox">
<view class="box1" v-if="!dlflag">
2024-03-13 10:54:22 +08:00
<view class="input_txt" style="width: 536rpx;font-size: 24rpx;line-height: 32rpx;">
2024-05-10 17:37:36 +08:00
您暂未授权共享开关小程序获取你的信息将无法正常使用小程序的功能如需要正常使用请点击授权按钮打开头像昵称等信息的授权
2024-03-13 10:54:22 +08:00
</view>
2024-06-11 18:03:16 +08:00
<button class="button" open-type="getPhoneNumber" @getphonenumber="getPhoneNumber"
style="margin-left: -10rpx;">
2024-03-13 10:54:22 +08:00
授权登录
</button>
<view class="">
<view class="buttons" style="margin-top: 50rpx;margin-left: -10rpx;" @click="btnshoudong">
账号密码登录
</view>
<view class="buttons" style="margin-top: 50rpx;margin-left: -10rpx;" @click="btnbudl">
暂不授权登录
</view>
</view>
2024-06-14 18:51:43 +08:00
</view>
<!-- 账号密码登录 -->
<view class="zhangh" v-if="dlflag">
<view class="tit">
账号密码登录
</view>
<input type="text" v-model="zh" placeholder="请输入你的账号" />
<input type="text" v-model="mm" placeholder="请输入你的密码" />
<view class="mmdl" @click="btndl">
登录
</view>
<view class="mmdl" @click="dlflag = false" style="background-color: #fff;border: 1px solid #efefef;color: #000;margin-top: 20rpx;">
取消
</view>
</view>
2024-03-13 10:54:22 +08:00
</view>
</view>
</template>
<script>
export default {
data() {
return {
bgc: {
backgroundColor: "#7D86EF",
},
2024-06-11 18:03:16 +08:00
tittxt: "授权登录",
chooseType: true,
usertype: '',
2024-06-14 18:51:43 +08:00
login: false,
id:'',
dlflag:false,
zh:'',
mm:''
2024-06-14 18:51:43 +08:00
}
},
onLoad(option) {
if(option.id){
this.id = option.id
2024-03-13 10:54:22 +08:00
}
},
2024-07-17 17:59:51 +08:00
// 分享到好友(会话)
onShareAppMessage: function () {
return {
title: '创想物联',
path: '/pages/shouye/index'
}
},
// 分享到朋友圈
onShareTimeline: function () {
return {
title: '创想物联',
query: '',
path: '/pages/shouye/index'
}
},
2024-03-13 10:54:22 +08:00
methods: {
// 账号密码登录
btndl(){
let data = {
username:this.zh,
password:this.mm
}
this.$u.post("/app/auth/login", data).then(res => {
if(res.code == 200){
wx.setStorageSync('token', res.token);
this.ceshi()
}else{
uni.showToast({
title: res.msg,
icon: 'none',
duration: 2000,
})
}
})
},
btnshoudong(){
this.dlflag = true
},
2024-06-11 18:03:16 +08:00
userType(num) {
this.chooseType = false
this.login = true
if (num == 1) {
this.usertype = '01'
} else {
this.usertype = '00'
2024-03-13 10:54:22 +08:00
}
},
getPhoneNumber(e) {
2024-06-11 18:03:16 +08:00
let that = this;
console.log("eeeeeeee", e);
const wxLoginAsync = () => {
return new Promise((resolve, reject) => {
wx.login({success(res) {
if (res.code) {
let data = {
2024-05-10 17:37:36 +08:00
loginCode: res.code,
2024-06-11 18:03:16 +08:00
mobileCode: e.detail.code,
}
resolve(data);
} else {
reject(res.errMsg)
}
},fail(err) {
reject(err)
}
})
})
}
wxLoginAsync().then(async (data) => {
this.$u.post("/app/auth/wxLogin", data).then((res) => {
if (res.code == 200) {
2024-03-13 10:54:22 +08:00
wx.setStorageSync('token', res.token);
that.ceshi()
2024-06-11 18:03:16 +08:00
}
})
}).catch((err) => {
console.error(err)
})
2024-03-13 10:54:22 +08:00
},
async ceshi() {
this.$u.get("/app/user/userInfo").then((res) => {
2024-06-14 18:51:43 +08:00
if(this.id == 1){
uni.navigateBack()
}else{
2024-07-16 15:00:10 +08:00
uni.reLaunch({
2024-06-14 18:51:43 +08:00
url: '/pages/shouye/index'
})
}
2024-06-11 18:03:16 +08:00
})
2024-03-13 10:54:22 +08:00
},
2024-06-14 18:51:43 +08:00
btnbudl(){
2024-07-16 15:00:10 +08:00
uni.reLaunch({
2024-06-14 18:51:43 +08:00
url: '/pages/shouye/index'
})
}
2024-03-13 10:54:22 +08:00
}
}
</script>
2024-06-11 18:03:16 +08:00
<style lang="scss">
page {
2024-03-13 10:54:22 +08:00
background: #FFFFFF;
}
.zhangh{
width: 562rpx;
text-align: center;
.tit{
font-size: 40rpx;
color: #000;
margin-bottom: 30rpx;
}
input{
width: 562rpx;
height: 90rpx;
margin-top: 20rpx;
border-radius: 20rpx;
background-color: #eeefee;
text-align: center;
padding-left: 30rpx;
box-sizing: border-box;
text-align: left;
}
.mmdl{
width: 562rpx;
height: 96rpx;
background: #8883F0;
border-radius: 52rpx 52rpx 52rpx 52rpx;
font-weight: 500;
font-size: 36rpx;
color: #FFFFFF;
line-height: 96rpx;
margin-top: 50rpx;
}
}
.buttons{
width: 562rpx;
text-align: center;
padding-bottom: 5rpx;
box-sizing: border-box;
color: #ccc;
}
2024-03-13 10:54:22 +08:00
.page {
2024-06-11 18:03:16 +08:00
position: relative;
/* 添加相对定位 */
2024-03-13 10:54:22 +08:00
}
.imgbox {
width: 750rpx;
height: 576rpx;
z-index: 0;
image {
width: 750rpx;
height: 576rpx;
}
}
.tip {
width: 204rpx;
position: absolute;
top: 400rpx;
left: 30rpx;
font-weight: 500;
font-size: 48rpx;
color: #FFFFFF;
line-height: 66rpx;
}
.inputbox {
2024-06-11 18:03:16 +08:00
position: absolute;
/* 或者 fixed根据你的需求 */
top: 700rpx;
/* 调整这里来控制距离顶部的距离 */
width: 750rpx;
/* 调整输入框的宽度 */
2024-03-13 10:54:22 +08:00
padding: 100rpx 0;
2024-06-11 18:03:16 +08:00
background: #fff;
/* 设置背景颜色,这里是红色的半透明 */
border-radius: 50rpx;
/* 设置圆角 */
z-index: 999;
/* 设置 z-index确保在其他内容上方显示 */
2024-03-13 10:54:22 +08:00
padding-left: 104rpx;
2024-06-11 18:03:16 +08:00
.input_txt {
2024-03-13 10:54:22 +08:00
font-weight: 400;
font-size: 32rpx;
color: #3D3D3D;
line-height: 44rpx;
}
2024-06-11 18:03:16 +08:00
.button {
2024-03-13 10:54:22 +08:00
margin-top: 64rpx;
display: flex;
justify-content: center;
align-items: center;
width: 562rpx;
height: 96rpx;
background: #8883F0;
border-radius: 52rpx 52rpx 52rpx 52rpx;
2024-06-11 18:03:16 +08:00
2024-03-13 10:54:22 +08:00
font-weight: 500;
font-size: 36rpx;
color: #FFFFFF;
}
}
2024-06-11 18:03:16 +08:00
</style>