310 lines
7.4 KiB
Vue
310 lines
7.4 KiB
Vue
<template>
|
|
<view class="container">
|
|
<view class="wrapper">
|
|
<!-- logo -->
|
|
<view class="titbox">
|
|
<view class="firtit">{{info.mobile_name}}</view>
|
|
<view class="sectit">实现线索到回款全流程管理</view>
|
|
</view>
|
|
<!-- 表单 -->
|
|
<view class="login-box">
|
|
<view class="input-item">
|
|
<view class="itemtit">手机号</view>
|
|
<view class="itembot">
|
|
<image class="phoneimg" :src="BASE_IMG_URL+'phone1.png'" mode=""></image>
|
|
<input
|
|
type="text"
|
|
placeholder="请输入账号"
|
|
placeholderStyle="color:#999;font-size:30rpx"
|
|
class="inp"
|
|
v-model="account"
|
|
>
|
|
</view>
|
|
</view>
|
|
<view class="input-item">
|
|
<view class="itemtit">密码</view>
|
|
<view class="itembot">
|
|
<image class="suoimg" :src="BASE_IMG_URL+'suo1.png'" mode=""></image>
|
|
<input class="inp" v-model="password" v-if="!showPassword" type="text" password placeholder="请输入密码" placeholder-class="pl" />
|
|
<input class="inp" v-model="password" v-if="showPassword" type="text" placeholder="请输入密码" placeholder-class="pl" />
|
|
<image :src="BASE_IMG_URL+'nosee1.png'" v-if="!showPassword" @click="showPassword = true" class="eayimg" mode=""></image>
|
|
<image :src="BASE_IMG_URL+'see1.png'" v-if="showPassword" @click="showPassword = false" class="eayimg" mode=""></image>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!-- 登录按钮 -->
|
|
<view class="btn_g" @tap="toLogin">登录</view>
|
|
<!-- <view class="freelogin" @click="freeLogin">暂不登录,进行演示</view> -->
|
|
</view>
|
|
|
|
<!-- <view class="priva_w">
|
|
<radio value="" color="#008EFF" @click.stop="selectAgree" :checked="readAndagree"/>请阅读并同意 <text @click.stop="showPrivacy = true">《隐私政策》</text>
|
|
</view>
|
|
|
|
<web-view src="https://testcrm.qingdong.vip/privacy.html" v-if="showPrivacy"></web-view> -->
|
|
|
|
<!-- 需要用户阅读 并同意隐私协议 -->
|
|
<uni-popup ref="privacyPopup" type="bottom" :safe-area="false" @touchmove.stop.prevent>
|
|
<view class="privacy_mask">
|
|
<view class="privacy_box">
|
|
<view class="priva_tit">隐私政策提示</view>
|
|
<view class="priva_tip">欢迎使用CRM客户管理软件</view>
|
|
<view class="priva_con">
|
|
我们将通过 <text @click="toOpenPrivacy">《隐私政策》</text> 帮助您了解我们收集、使用、存储和共享个人信息的情况。
|
|
未经您的单独同意,我们不会主动向任何第三方共享您的个人信息。
|
|
当您使用一些功能服务时,我们可能会在获得您的明示同意后,
|
|
从授权第三方处获取世章或向其提供信息。
|
|
</view>
|
|
<button open-type="agreePrivacyAuthorization" @agreeprivacyauthorization="handleAgreePrivacyAuthorization" class="agreebtn">同意并继续</button>
|
|
<view class="noagree">
|
|
<text @click="closePop">不同意</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</uni-popup>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import {
|
|
BASE_IMG_URL,
|
|
SIGN_NO
|
|
} from '@/util/api.js'
|
|
import { netNewLogin, defaultInfo, netlogin_text } from '@/api/login'
|
|
|
|
export default {
|
|
data() {
|
|
return {
|
|
BASE_IMG_URL:BASE_IMG_URL,
|
|
account:'',
|
|
showPassword:false,
|
|
password:'',
|
|
info:{},
|
|
showPrivacy:false,
|
|
readAndagree:false,
|
|
isAgreePrivacy:false, //弹出隐私协议
|
|
};
|
|
},
|
|
onShow() {
|
|
//获取默认头部信息
|
|
this.getDefInfo()
|
|
// #ifdef MP-WEIXIN
|
|
this.handlePrivacyStatus()
|
|
// #endif
|
|
},
|
|
methods: {
|
|
///////////////////////
|
|
//获取 隐私政策提示 判断是否已经同意隐私政策
|
|
handlePrivacyStatus() {
|
|
wx.getPrivacySetting({
|
|
success:(res)=>{
|
|
console.log(res,'000000')
|
|
if (res.needAuthorization){
|
|
// 需要弹出隐私协议
|
|
this.$refs.privacyPopup.open()
|
|
this.isAgreePrivacy = true
|
|
}else{
|
|
// 用户已经同意过隐私协议
|
|
this.isAgreePrivacy = false
|
|
}
|
|
}
|
|
})
|
|
},
|
|
toOpenPrivacy() {
|
|
wx.openPrivacyContract({})
|
|
},
|
|
handleAgreePrivacyAuthorization() {
|
|
this.isAgreePrivacy = false
|
|
this.$refs.privacyPopup.close()
|
|
},
|
|
showPrivacyPop() {
|
|
this.$refs.privacyPopup.open()
|
|
},
|
|
closePop() {
|
|
this.$refs.privacyPopup.close()
|
|
},
|
|
////////////////////////////
|
|
selectAgree() {
|
|
this.readAndagree = !this.readAndagree
|
|
},
|
|
getDefInfo() {
|
|
defaultInfo().then(res=>{
|
|
this.info = res.data
|
|
uni.setStorageSync('mapKey',res.data.map_key)
|
|
uni.setStorageSync('appid',res.data.appid)
|
|
uni.setStorageSync('NAME',res.data.mobile_name)
|
|
})
|
|
},
|
|
jump(path, query) {
|
|
this.$Router.push({
|
|
path: path,
|
|
query: query
|
|
});
|
|
},
|
|
toLogin() {
|
|
if(this.isAgreePrivacy){
|
|
this.$refs.privacyPopup.open()
|
|
return
|
|
}
|
|
if(!this.account){
|
|
uni.showToast({
|
|
title:'请填写账号',
|
|
icon:'none'
|
|
})
|
|
return
|
|
}
|
|
if(!this.password){
|
|
uni.showToast({
|
|
title:'请填写密码',
|
|
icon:'none'
|
|
})
|
|
return
|
|
}
|
|
// if(!this.readAndagree){
|
|
// uni.showToast({
|
|
// title:'请阅读并同意隐私政策',
|
|
// icon:'none'
|
|
// })
|
|
// return
|
|
// }
|
|
let params = {
|
|
account:this.account,
|
|
password:this.password
|
|
}
|
|
netNewLogin(params).then(res=>{
|
|
this.jumpPage(res)
|
|
})
|
|
},
|
|
//暂不登录
|
|
freeLogin() {
|
|
if(this.isAgreePrivacy){
|
|
this.$refs.privacyPopup.open()
|
|
return
|
|
}
|
|
// if(!this.readAndagree){
|
|
// uni.showToast({
|
|
// title:'请阅读并同意隐私政策',
|
|
// icon:'none'
|
|
// })
|
|
// return
|
|
// }
|
|
|
|
netlogin_text().then(res=>{
|
|
this.jumpPage(res)
|
|
})
|
|
},
|
|
jumpPage(res){
|
|
uni.setStorageSync('userinfo',res.data.userinfo)
|
|
uni.setStorageSync('token',res.data.userinfo.token)
|
|
uni.redirectTo({
|
|
url:'/pages/index/index'
|
|
})
|
|
}
|
|
}
|
|
};
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
.priva_w{
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
font-size:24rpx;
|
|
margin-top:80rpx;
|
|
color:#999;
|
|
radio{
|
|
transform: scale(0.7);
|
|
}
|
|
text{
|
|
color:$uni-text-color;
|
|
}
|
|
}
|
|
.freelogin{
|
|
text-align: center;
|
|
font-size:24rpx;
|
|
color:red;
|
|
margin-top:60rpx;
|
|
}
|
|
.wrapper {
|
|
padding-bottom: 40upx;
|
|
width: 100%;
|
|
margin-top:100rpx;
|
|
.titbox{
|
|
padding:40rpx 0 50rpx;
|
|
.firtit{
|
|
font-size:48rpx;
|
|
color:$uni-text-color;
|
|
font-weight: bold;
|
|
text-align: center;
|
|
}
|
|
.sectit{
|
|
font-size:32rpx;
|
|
color:#999999;
|
|
margin-top:30rpx;
|
|
text-align: center;
|
|
}
|
|
}
|
|
// 输入
|
|
.login-box {
|
|
margin:0 auto 100rpx;
|
|
.input-item {
|
|
padding:26rpx 30rpx;
|
|
border-bottom: 1rpx solid #c7c7c7;
|
|
width: 630rpx;
|
|
margin:0 auto 50rpx;
|
|
.itemtit{
|
|
font-size:30rpx;
|
|
color:#666666;
|
|
margin-bottom:50rpx;
|
|
}
|
|
.itembot{
|
|
display: flex;
|
|
justify-content: flex-start;
|
|
align-items: center;
|
|
}
|
|
.phoneimg{
|
|
width:41rpx;
|
|
height:40rpx;
|
|
}
|
|
.suoimg{
|
|
width:40rpx;
|
|
height:44rpx;
|
|
}
|
|
.inp {
|
|
width:460rpx;
|
|
margin-left:30rpx;
|
|
font-size: 28rpx;
|
|
}
|
|
.pl {
|
|
font-size:30rpx;
|
|
color: #999999;
|
|
}
|
|
.eayimg{
|
|
margin-left:30rpx;
|
|
width:33rpx;
|
|
height:33rpx;
|
|
}
|
|
}
|
|
}
|
|
.li_box{
|
|
margin:40rpx auto 0;
|
|
width:690rpx;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding:0 30rpx;
|
|
font-weight: 700;
|
|
.register{
|
|
font-size:26rpx;
|
|
color:#333333;
|
|
}
|
|
.forgot{
|
|
font-size:26rpx;
|
|
color:#333333;
|
|
}
|
|
}
|
|
// 登录
|
|
|
|
}
|
|
</style>
|