From e52e720168541aa02e0326a505d251f42828aedf Mon Sep 17 00:00:00 2001 From: 819527061@qq.com <123456> Date: 星期二, 30 七月 2024 11:14:08 +0800 Subject: [PATCH] 添加复磅申请及质检同意功能 --- pages/login/userPassword.vue | 217 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 143 insertions(+), 74 deletions(-) diff --git a/pages/login/userPassword.vue b/pages/login/userPassword.vue index 92bd04f..74029aa 100644 --- a/pages/login/userPassword.vue +++ b/pages/login/userPassword.vue @@ -2,100 +2,169 @@ <view> <view class="list"> <view class="list-call"> - <u--input - v-model="username" + <u--input v-model="username" clearable maxlength="32" type="text" - placeholder="璇疯緭鍏ョ敤鎴峰悕" + placeholder="璇疯緭鍏ユ墜鏈哄彿" prefixIcon="account" - prefixIconStyle="font-size: 22px;color: #909399" - ></u--input> + fontSize='40' + prefixIconStyle="font-size: 25px;color: #909399"></u--input> </view> <view class="list-call"> - <u--input - v-model="password" + <u--input v-model="password" clearable maxlength="32" type="password" placeholder="璇疯緭鍏ュ瘑鐮�" prefixIcon="lock" - prefixIconStyle="font-size: 22px;color: #909399" - ></u--input> + fontSize='40' + prefixIconStyle="font-size: 25px;color: #909399"></u--input> </view> </view> - <view class="loginBtn"><u-button type="primary" text="鐧诲綍" @click="submit()"></u-button></view> + <view class="loginBtn"><u-button type="primary" + :text="btnText == 1 ? '缁戝畾' : '鐧诲綍'" + @click="submit()" + :loading="submitLoading" + ></u-button></view> </view> </template> <script> -import { apiLoginPassword } from '@/api/publicInterface.js'; -import { mapMutations } from 'vuex'; -import { setToken, setRefreshToken, setUsernameKey, setCustomerId, redirectHome } from '@/utils/status.js'; -export default { - name: 'userPassword', - data() { - return { - // username: 'appUser', - // username:'siJi1', - username:'siJi2', - password: '123456', - remember: true, - baseUrl: '' - }; - }, - methods: { - ...mapMutations(['setUserTabbar']), - //鐧诲綍 - async submit() { - //琛ㄥ崟鏍¢獙 - if (this.username.length === 0) { - this.$u.toast('璇疯緭鍏ヨ处鍙�'); - return; + import { apiLoginPassword } from '@/api/publicInterface.js'; + import { mapMutations } from 'vuex'; + import { setName, setToken, setRefreshToken, setUsernameKey, setCustomerId, redirectHome,setUserId } from '@/utils/status.js'; + export default { + name: 'userPassword', + props: { + //0:姝e父锛�1锛氬井淇$粦瀹� + btnText: { + type: Number, + default: 0 } - if (this.password.length === 0) { - this.$u.toast('璇疯緭鍏ュ瘑鐮�'); - return; - } - let grant_type = 'password' - //鐧诲綍鎺ュ彛 - await apiLoginPassword({ - username: this.username, - password: this.password, - grant_type, - scope: 'server' - }) - .then(res => { - this.$u.toast('鎭枩鎮紝鐧诲綍鎴愬姛锛�'); - - // 鐧婚檰鎴愬姛锛屽瓨鍌ㄧ浉鍏充俊鎭� - setToken(res.access_token); - setRefreshToken(res.refresh_token); - setUsernameKey(res.username); - - //鏌ヨ鐢ㄦ埛璇︾粏淇℃伅骞跺偍瀛� - this.$reqGet('getUserEntity').then(res => { - this.setUserTabbar(res.data.type); - uni.setStorageSync('roleType', res.data.type); - setCustomerId(res.data.customerid); - - //璺宠浆椤甸潰 - this.$nextTick(() => { - redirectHome(); - }); - }); - }) - .catch(e => { - this.$u.toast(e); + }, + data() { + return { + username: '', // 瀹㈡埛 + // username:'13333333331',//璐т唬 + // username: '13333333332',// 鍙告満 + password: '', + remember: true, + baseUrl: '', + submitLoading: false + }; + }, + methods: { + ...mapMutations(['setUserTabbar']), + //鐧诲綍 + async submit() { + uni.showLoading({ + title: '鐧诲綍涓�...' }); + //琛ㄥ崟鏍¢獙 + if (this.username.length === 0) { + this.$u.toast('璇疯緭鍏ヨ处鍙�'); + return; + } + if (this.password.length === 0) { + this.$u.toast('璇疯緭鍏ュ瘑鐮�'); + return; + } + let grant_type = 'password'; + //鐧诲綍鎺ュ彛 + this.submitLoading = true + await apiLoginPassword({ + username: this.username, + password: this.password, + grant_type, + scope: 'server' + }) + .then(res => { + setToken(res.access_token); + setRefreshToken(res.refresh_token); + if (this.btnText == 0) { + this.submitLoading = false + if (res.code != 1) { + // 鐧婚檰鎴愬姛锛屽瓨鍌ㄧ浉鍏充俊鎭� + setToken(res.access_token); + setRefreshToken(res.refresh_token); + setUsernameKey(res.username); + //鏌ヨ鐢ㄦ埛璇︾粏淇℃伅骞跺偍瀛� + this.$reqGet('getUserEntity') + .then(res => { + this.$u.toast('鐧诲綍鎴愬姛'); + this.setUserTabbar(res.data.type); + uni.setStorageSync('roleType', res.data.type); + uni.setStorageSync("userId", res.data.userId) + uni.setStorageSync("userInfo", res.data) + setCustomerId(res.data.customerid); + setUserId(res.data.userId); + setName(res.name); + uni.hideLoading(); + if(res.data.forcePassword == 1) { //forcePassword涓�1寮哄埗淇敼瀵嗙爜 + uni.navigateTo({ + url: `/pages/login/resetPassword/resetPassword?userInfo=${JSON.stringify(res.data)}` + }) + }else { + //璺宠浆椤甸潰 + this.$nextTick(() => { + redirectHome(); + }); + } + }) + .catch(err => { + this.$u.toast('鐧诲綍寮傚父锛�'); + console.log(err); + }); + } else { + uni.hideLoading(); + this.$u.toast(res.msg); + } + } else { + uni.login({ + success: res => { + if (res.code) { + uni.setStorageSync('bindcode', res.code); + } + } + }); + if (uni.getStorageSync('bindcode')) { + this.$reqPost('wxBind', { state: 'MINI', code: uni.getStorageSync('bindcode') }, + 'params').then(res => { + uni.hideLoading(); + if (res.code == 0) { + this.$u.toast('缁戝畾鎴愬姛锛佸嵆灏嗗洖鍒扮櫥褰曢〉锛�'); + setTimeout(() => { + uni.navigateBack(); + }, 1000); + } else { + this.$u.toast(res.msg ? res.msg : '缁戝畾澶辫触'); + } + }); + } + } + }) + .catch(e => { + this.submitLoading = false + this.$u.toast(e); + }); + } } - } -}; + }; </script> -<style lang="scss"> -@import 'index.scss'; -.dengluBtn { - margin-top: 80rpx; -} +<style lang="scss" + scoped> + @import 'index.scss'; + + .dengluBtn { + margin-top: 80rpx; + } + + /deep/.loginBtn { + .u-button { + font-size: 40rpx !important; + letter-spacing: 10rpx; + } + } </style> -- Gitblit v1.9.1