| | |
| | | <!-- 登录信息 --> |
| | | <view class="user-info"> |
| | | <view class="user-info-item shadow-warp"> |
| | | <view class="icons"><uni-icons type="person" size="20"></uni-icons></view> |
| | | <view class="icons"> |
| | | <uni-icons type="person" size="20"></uni-icons> |
| | | </view> |
| | | <text>账号:</text> |
| | | <input type="text" placeholder="请输入账号!" v-model="user.userName" |
| | | placeholder-style="font-size:14px;color:#ccc;"> |
| | | placeholder-style="font-size:14px;color:#ccc;"> |
| | | </view> |
| | | <view class="user-info-item shadow-warp"> |
| | | <view class="icons"><uni-icons type="locked" size="20"></uni-icons></view> |
| | | <view class="icons"> |
| | | <uni-icons type="locked" size="20"></uni-icons> |
| | | </view> |
| | | <text>密码:</text> |
| | | <input :password="!showPassword" v-model="user.password" placeholder="请输入密码!" |
| | | placeholder-style="font-size:14px;color:#ccc;"> |
| | | <view class="showPassword" v-if="showPassword" @click="changePassword"><uni-icons type="eye" size="20"></uni-icons></view> |
| | | <view class="showPassword" v-if="!showPassword" @click="changePassword"><uni-icons type="eye-slash" size="20"></uni-icons></view> |
| | | placeholder-style="font-size:14px;color:#ccc;"> |
| | | <view class="showPassword" v-if="showPassword" @click="changePassword"> |
| | | <uni-icons type="eye" size="20"></uni-icons> |
| | | </view> |
| | | <view class="showPassword" v-if="!showPassword" @click="changePassword"> |
| | | <uni-icons type="eye-slash" size="20"></uni-icons> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <!-- 登录按钮 --> |
| | |
| | | }, |
| | | } |
| | | }, |
| | | onLoad:function(){ |
| | | onLoad: function() { |
| | | this.user.userName = uni.getStorageSync('userName') |
| | | this.user.password = uni.getStorageSync('password') |
| | | // #ifdef APP-PLUS |
| | | var that=this |
| | | plus.runtime.getProperty( plus.runtime.appid, function ( wgtinfo ) { |
| | | that.version=wgtinfo.version |
| | | var that = this |
| | | plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) { |
| | | that.version = wgtinfo.version |
| | | }); |
| | | // #endif |
| | | |
| | | |
| | | this.getVersion() |
| | | |
| | | }, |
| | | methods: { |
| | | changePassword: function() { |
| | | this.showPassword = !this.showPassword; |
| | | this.showPassword = !this.showPassword; |
| | | }, |
| | | getVersion() { |
| | | let that = this; |
| | | uni.getSystemInfo({ |
| | | success: (res) => { |
| | | console.log(res.platform); |
| | | //检测当前平台,如果是安卓则启动安卓更新 |
| | | if (res.platform == "android") { |
| | | that.AndroidCheckUpdate(); |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | AndroidCheckUpdate() { |
| | | let that = this; |
| | | plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => { |
| | | that.version = wgtinfo.version //客户端版本号 |
| | | console.log('当前app版本信息:' + that.version); |
| | | }) |
| | | that.getUpdateVersion() |
| | | }, |
| | | getUpdateVersion() { |
| | | let that = this; |
| | | // 获取当前app版本信息 |
| | | return |
| | | that.$req.get("/appUpdate/queryUpdate", {}, {}).then(function(res) { |
| | | console.log('res.data:' + JSON.stringify(res.data)) |
| | | console.log("现在的版本" + that.version + "数据库版本" + res.data.data.version + "进入查找app版本"); |
| | | if (res.data.data.version > that.version) { |
| | | // 这里下载apkurl从/appUpdate/queryUpdate接口请求返回数据中获取 |
| | | that.downloadUrl = BaseUrl + '/' + res.data.data.androidUrl |
| | | // 是否强制更新(0 否;1 是) |
| | | that.isForceUpdate = res.data.data.isForceUpdate |
| | | uni.showModal({ |
| | | // 更新提醒 |
| | | title: '发现新版本,是否更新', |
| | | content: '此版本号:' + that.version + '\xa0\xa0\xa0' + '待更新版本号:' + res.data.data |
| | | .version, |
| | | success: res => { |
| | | if (res.confirm) { |
| | | that.downWgt(); //下载文件 |
| | | // that.showdownLine = true; |
| | | // plus.runtime.openURL(androidUrl) |
| | | } else if (res.cancel) { |
| | | console.log('that.isForceUpdate:' + that.isForceUpdate); |
| | | // 不更新强制退出app |
| | | if (that.isForceUpdate == 1) { |
| | | console.log('that.isForceUpdate1:' + that.isForceUpdate); |
| | | uni.showModal({ |
| | | // 更新提醒 |
| | | title: '发现新版本,是否更新', |
| | | content: '此版本为强制更新版本如不升级将退出APP', |
| | | success: res => { |
| | | if (res.confirm) { |
| | | console.log('不更新强制退出app'); |
| | | plus.runtime.quit(); |
| | | } else if (res.cancel) { |
| | | that.AndroidCheckUpdate(); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | //dtask.start(); |
| | | } |
| | | }).catch(error => { |
| | | uni.showToast({ |
| | | title: '调用请求失败', |
| | | mask: false, |
| | | duration: 5000, |
| | | icon: "none" |
| | | }); |
| | | }); |
| | | complete: () => {} |
| | | }, |
| | | onLogin() { |
| | | let that = this |
| | | uni.request({ |
| | | url: that.baseUrl + '/login.action', |
| | | fail(result) { |
| | | uni.showToast({icon:'error',title: '请求失败'}) |
| | | uni.showToast({ |
| | | icon: 'error', |
| | | title: '请求失败' |
| | | }) |
| | | }, |
| | | data: { |
| | | username:that.user.userName, |
| | | password:md5.hex_md5(that.user.password) |
| | | username: that.user.userName, |
| | | password: md5.hex_md5(that.user.password) |
| | | }, |
| | | header: { |
| | | "content-type": "application/json" |
| | | }, |
| | | success(result) { |
| | | if (result.statusCode === 404) { |
| | | uni.showToast({title: '登录失败', icon: "error"}) |
| | | if (result.statusCode === 404) { |
| | | uni.showToast({ |
| | | title: '登录失败', |
| | | icon: "error" |
| | | }) |
| | | return |
| | | } |
| | | let res = result.data |
| | | if (res.code === 200 ){ |
| | | if (res.code === 200) { |
| | | that.load.loading = true; |
| | | that.load.btnText = '登录中'; |
| | | uni.setStorageSync('token', res.data.token); |
| | | uni.setStorageSync('userName', that.user.userName); |
| | | uni.setStorageSync('password', that.user.password); |
| | | setTimeout(()=> { |
| | | uni.showToast({title: '登录成功'}) |
| | | setTimeout(()=> { |
| | | setTimeout(() => { |
| | | uni.showToast({ |
| | | title: '登录成功' |
| | | }) |
| | | setTimeout(() => { |
| | | uni.reLaunch({ |
| | | url: '../index/index' |
| | | }); |
| | | },300) |
| | | },700) |
| | | }, 300) |
| | | }, 700) |
| | | } else { |
| | | uni.showToast({title: res.msg}) |
| | | uni.showToast({ |
| | | title: res.msg |
| | | }) |
| | | } |
| | | }, |
| | | |
| | | |
| | | |
| | | |
| | | }) |
| | | }, |
| | | } |
| | |
| | | width: 100%; |
| | | min-height: 93.4vh; |
| | | } |
| | | |
| | | .logo { |
| | | width: 300px; |
| | | height: 163px; |
| | |
| | | margin-right: auto; |
| | | margin-bottom: 50rpx; |
| | | } |
| | | |
| | | .user-info { |
| | | display: flex; |
| | | align-items:center; |
| | | align-items: center; |
| | | flex-direction: column; |
| | | width: 100%; |
| | | height: 400rpx; |
| | | font-size: 14px; |
| | | letter-spacing:1px; |
| | | letter-spacing: 1px; |
| | | } |
| | | |
| | | .user-info-item { |
| | | display: flex; |
| | | width:650rpx; |
| | | width: 650rpx; |
| | | height: 100rpx; |
| | | line-height: 100rpx; |
| | | align-items:center; |
| | | align-items: center; |
| | | background-color: #fff; |
| | | margin-bottom: 30rpx; |
| | | font-size: 28rpx; |
| | | font-weight: 500; |
| | | } |
| | | .user-info-item>input{ |
| | | |
| | | .user-info-item>input { |
| | | width: 400rpx; |
| | | color:#606266; |
| | | color: #606266; |
| | | font-weight: 500; |
| | | caret-color:#606266; // 光标颜色 |
| | | caret-color: #606266; // 光标颜色 |
| | | } |
| | | |
| | | .icons { |
| | | margin-left: 20rpx; |
| | | margin-right: 18rpx; |
| | | } |
| | | |
| | | .showPassword { |
| | | position: absolute; |
| | | right: 10rpx; |
| | | } |
| | | |
| | | .shadow-warp { |
| | | position: relative; |
| | | box-shadow: 0 0 10upx rgba(0, 0, 0, 0.1); |
| | | } |
| | | |
| | | .shadow-warp:before, |
| | | .shadow-warp:after { |
| | | position: absolute; |
| | |
| | | transform: rotate(-3deg); |
| | | z-index: -1; |
| | | } |
| | | |
| | | .shadow-warp:after { |
| | | right: 20upx; |
| | | left: auto; |
| | | transform: rotate(3deg); |
| | | } |
| | | |
| | | .loging { |
| | | position: fixed; |
| | | bottom: 100rpx; |
| | | left:0; |
| | | right:0; |
| | | margin-left:auto; |
| | | margin-right:auto; |
| | | left: 0; |
| | | right: 0; |
| | | margin-left: auto; |
| | | margin-right: auto; |
| | | } |
| | | |
| | | .button { |
| | | color: #fff; |
| | | background-color: #409EFF; |
| | |
| | | height: 40px; |
| | | line-height: 40px; |
| | | } |
| | | button::after{border: initial;} |
| | | .button-hover { |
| | | color:#fff; |
| | | background-color:#6fc1ff; |
| | | |
| | | button::after { |
| | | border: initial; |
| | | } |
| | | |
| | | .button-hover { |
| | | color: #fff; |
| | | background-color: #6fc1ff; |
| | | } |
| | | |
| | | .version { |
| | | width: 100%; |
| | | position: fixed; |
| | | bottom: 30rpx; |
| | | left:0; |
| | | right:0; |
| | | margin-left:auto; |
| | | margin-right:auto; |
| | | left: 0; |
| | | right: 0; |
| | | margin-left: auto; |
| | | margin-right: auto; |
| | | text-align: center; |
| | | font-size: 10px; |
| | | color: #C0C4CC; |
| | | } |
| | | |
| | | .input { |
| | | display: block; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .uni-input { |
| | | height: 50rpx; |
| | | padding: 15rpx 25rpx; |
| | | line-height:50rpx; |
| | | font-size:28rpx; |
| | | background:#FFF; |
| | | line-height: 50rpx; |
| | | font-size: 28rpx; |
| | | background: #FFF; |
| | | flex: 1; |
| | | } |
| | | |
| | | </style> |
| | | </style> |