From c3c67ee9e88c579e8ac784821ab41f58d0372ebb Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 11 六月 2024 15:46:34 +0800
Subject: [PATCH] 最新版本
---
h5/pages/staffLogin/login.vue | 80 ++++++++++++++++++++++++++++++++--------
1 files changed, 64 insertions(+), 16 deletions(-)
diff --git a/h5/pages/staffLogin/login.vue b/h5/pages/staffLogin/login.vue
index bbdbe35..f6252d7 100644
--- a/h5/pages/staffLogin/login.vue
+++ b/h5/pages/staffLogin/login.vue
@@ -6,32 +6,51 @@
<view class="login_list">
<view class="login_list_item">
<image src="@/static/login_ic_phone@2x.png" mode="widthFix" />
- <input
- v-model="form.account"
- maxlength="18"
- placeholder="璐﹀彿"
- />
+ <input v-model="form.username" maxlength="18" placeholder="璐﹀彿" />
</view>
<view class="login_list_item">
<image src="@/static/login_ic_password@2x.png" mode="widthFix" />
<input v-model="form.password" type="password" placeholder="瀵嗙爜" />
</view>
+ <view class="login_list_item">
+ <image src="@/static/ic_captcha.png" mode="widthFix"></image>
+ <input v-model="form.code" placeholder="楠岃瘉鐮�" type="text" />
+ <image
+ @click="initCaptcha"
+ :src="captcha.image"
+ class="captcha"
+ mode="widthFix"
+ />
+ </view>
</view>
<view class="login_btn">
<view class="login_btn_n" @click="onLogin">绔嬪嵆鐧诲綍</view>
- <view class="for_psd">蹇樿瀵嗙爜</view>
+ <view @click="$jump('/pages/staffLogin/forgetPsd')" class="for_psd"
+ >蹇樿瀵嗙爜</view
+ >
</view>
<view class="deal_wrap">
<checkbox @change="dealChange" />
<text>鐧诲綍鍗冲悓鎰�</text>
- <text class="deal">銆婂畨娉扮墿娴佺敤鎴峰崗璁��</text>
+ <text class="deal" @click="isShowProtocol = true"
+ >銆婂畨娉扮墿娴佺敤鎴峰崗璁��</text
+ >
</view>
+ <!-- -->
+ <u-popup
+ :show="isShowProtocol"
+ @close="isShowProtocol = false"
+ mode="center"
+ >
+ <view class="modal">111</view>
+ </u-popup>
</view>
</template>
<script>
-import { loginPost } from '@/api'
+import { loginPost, loginCaptcha, getUserInfo } from '@/api'
+import { mapState, mapMutations } from 'vuex'
export default {
name: 'login',
@@ -40,32 +59,55 @@
form: {
account: '',
password: '',
- }
+ },
+ isShowProtocol: false,
+ captcha: {}
}
},
- created() {
+ onLoad() {
+ this.initCaptcha()
},
methods: {
+ ...mapMutations(["setToken", "setUserInfo"]),
dealChange(e) {
console.log(e)
},
+ initCaptcha() {
+ loginCaptcha().then(res => {
+ this.captcha = res.data
+ })
+ },
+
onLogin() {
const { form } = this
- if (!form.account) return uni.showToast({
- title: '璐﹀彿鍚庝笉鑳戒负绌�',
+ if (!form.username) return uni.showToast({
+ title: '璐﹀彿涓嶈兘涓虹┖',
icon: 'none'
})
if (!form.password) return uni.showToast({
title: '瀵嗙爜涓嶈兘涓虹┖',
icon: 'none'
})
+ if (!form.code) return uni.showToast({
+ title: '楠岃瘉鐮佷笉鑳戒负绌�',
+ icon: 'none'
+ })
loginPost({
...form,
+ uuid: this.captcha.uuid,
openId: this.$store.state.openId
}).then(res => {
- console.log('res', res);
+ if (res.code === 200) {
+ this.setToken(res.data)
+ getUserInfo().then(ress => {
+ this.setUserInfo(ress.data)
+ uni.redirectTo({
+ url: "/pages/staff/index"
+ })
+ })
+ }
})
}
}
@@ -125,6 +167,9 @@
width: 40rpx;
height: 40rpx;
}
+ .captcha {
+ width: 200rpx;
+ }
input {
flex: 1;
height: 100%;
@@ -140,7 +185,7 @@
box-sizing: border-box;
margin-top: 80rpx;
.for_psd {
- color: #279baa;
+ color: $uni-color-primary;
margin-top: 40rpx;
width: 140rpx;
text-align: center;
@@ -149,7 +194,7 @@
.login_btn_n {
width: 100%;
height: 98rpx;
- background: #279baa;
+ background: $uni-color-primary;
box-shadow: 0rpx 12rpx 24rpx 0rpx rgba(39, 155, 170, 0.2);
display: flex;
align-items: center;
@@ -167,8 +212,11 @@
text-align: center;
bottom: 108rpx;
.deal {
- color: #279baa;
+ color: $uni-color-primary;
}
}
}
+.modal {
+ padding: 32rpx;
+}
</style>
--
Gitblit v1.9.3