You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

198 lines
520 KiB

9 months ago
<template>
<view class="logo">
<image src="../../static/img/logo-one.png" mode="" class="logo-one"></image>
<view class="form">
<view class="userName-form">
<input placeholder="请输入用户名" class="userName" @input="inputHandle('account',$event)"
:value="dataForm.account" />
<image src="../../static/img/user.png" mode="" class="user-icon"></image>
<uni-icons type="clear" size="25" color="#717171" class="clear-icon" @click="clearInput('account')"
v-show="dataForm.account.length > 0"></uni-icons>
</view>
<view class="password-form">
<input placeholder="请输入密码" class="password" @input="inputHandle('password',$event)"
:value="dataForm.password" />
<image src="../../static/img/password.png" mode="" class="password-icon"></image>
<uni-icons type="clear" size="25" color="#717171" class="clear-icon" @click="clearInput('password')"
v-show="dataForm.password.length > 0"></uni-icons>
</view>
</view>
<view class="logo-button" @click="logoClick"> </view>
<uni-popup ref="alertDialog" type="dialog">
<uni-popup-dialog type="warn" confirmText="确定" title="提示" :content="messageText"></uni-popup-dialog>
</uni-popup>
<!-- <view class="webViewClass" style="height: 50vh;">
<web-view ref="webViewRef" @onPostMessage="messageData" v-if="webViewShow" :src="url" :fullscreen="false"
:webview-styles="webviewStyles" @load="pageLoadSuccess"></web-view>
</view> -->
</view>
</template>
<script>
import crypto from '@/utils/crypto.js'
export default {
data() {
return {
webViewShow:true,
webviewStyles: {
width: '200px',
height: '200px',
left:'100px',
// top:'-10000px'
top:'70px'
},
url:`${this.$portAdress.baseURL}?pdaTransfer`,
dataForm: {
account: '',
password: '',
captcha: 'hm',
uuid: 123456,
},
messageText: ''
}
},
mounted() {
},
methods: {
inputHandle(text, val) {
this.dataForm[text] = val.target.value
},
clearInput(text) {
this.dataForm[text] = ''
},
async logoClick() {
// console.log('11111111111',this.$portAdress.logo);
this.webViewShow = false
uni.showLoading({
title: '登陆中请稍等'
})
const res = await this.$baseAPI.request(this.$portAdress.logo, this.dataForm, 'post')
console.log('res登录',res);
if (res.code === 0) {
uni.setStorageSync('token', res.data.token)
uni.setStorageSync('userInfo', JSON.stringify(res.data.currentUser))
// 加密
let account = crypto.setAES(JSON.stringify(this.dataForm.account))
let password = crypto.setAES(JSON.stringify(this.dataForm.password))
console.log('加密',account,password);
uni.setStorageSync('userLoginAccount',account)
uni.setStorageSync('userLoginPassword',password)
// -----------------------------------------------------------
// 0:等待呼叫,1:呼叫中,2:术前,3:术中,4:术后,5离开
console.log("登录");
uni.hideLoading()
this.webViewShow = true
// console.log('url',`${this.$portAdress.baseURL}?pdaTransfer?account=${this.dataForm.account}&password=${this.dataForm.password}`);
// this.url = `${this.$portAdress.baseURL}/pdaTransfer?account=liucan&password=liucan`
this.url = `${this.$portAdress.baseURL}/pdaTransfer?account=${this.dataForm.account}&password=${this.dataForm.password}`
uni.navigateTo({
url: '/pages/patientList/index'
})
} else {
uni.hideLoading()
this.messageText = res.msg
this.$refs.alertDialog.open()
}
},
// 监听的参数
messageData(e) {
console.log('接收的H5参数', JSON.stringify(e.detail)) // 接收的参数
},
pageLoadSuccess() {
console.log('加载成功');
},
}
}
</script>
<style lang="less" scoped>
.logo {
position: relative;
width: 100vw;
height: 100vh;
background-size: 100vw 100vh;
background-color: #002648;
background-image: url(data:image/png;base64,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
.logo-one {
position: relative;
top: 200rpx;
left: 50%;
transform: translateX(-50%);
width: 96*2rpx;
height: 86*2rpx;
}
.form {
margin: 0 48rpx;
margin-top: 400rpx;
}
.userName-form,
.password-form {
position: relative;
input {
height: 96rpx;
line-height: 96rpx;
}
}
.userName,
.password {
background-color: #fff;
height: 96rpx;
border-radius: 8rpx;
padding-left: 100rpx;
}
.password {
margin-top: 32rpx;
}
.user-icon,
.password-icon {
width: 48rpx;
height: 48rpx;
}
.user-icon,
.password-icon {
position: absolute;
left: 26rpx;
top: 50%;
transform: translateY(-50%);
}
.clear-icon {
position: absolute;
z-index: 9;
right: 20rpx;
top: 50%;
transform: translateY(-50%);
}
.logo-button {
position: absolute;
margin: 0 48rpx;
bottom: 96rpx;
height: 96rpx;
width: 90vw;
line-height: 96rpx;
background: #001e3a;
border-radius: 108rpx;
color: #fff;
text-align: center;
}
.webViewClass {
position: fixed;
// left: -999999px;
// z-index: -99999;
}
}
</style>