| | |
| | | <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> |
| | | prefixIconStyle="font-size: 22px;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> |
| | | prefixIconStyle="font-size: 22px;color: #909399"></u--input> |
| | | </view> |
| | | </view> |
| | | <view class="loginBtn"><u-button type="primary" :text="btnText == 1 ? '绑定' : '登录'" @click="submit()"></u-button></view> |
| | | <view class="loginBtn"><u-button type="primary" |
| | | :text="btnText == 1 ? '绑定' : '登录'" |
| | | @click="submit()"></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', |
| | | props: { |
| | | //0:正常,1:微信绑定 |
| | | btnText: { |
| | | type: Number, |
| | | default: 0 |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | username: '18804050607',// 客户 |
| | | // username: '18805080506',// 王楠(司机) |
| | | password: '123456', |
| | | remember: true, |
| | | baseUrl: '' |
| | | }; |
| | | }, |
| | | methods: { |
| | | ...mapMutations(['setUserTabbar']), |
| | | //登录 |
| | | async submit() { |
| | | uni.showLoading({ |
| | | title: '登录中...' |
| | | }); |
| | | //表单校验 |
| | | 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 } from '@/utils/status.js'; |
| | | export default { |
| | | name: 'userPassword', |
| | | props: { |
| | | //0:正常,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 => { |
| | | setToken(res.access_token); |
| | | setRefreshToken(res.refresh_token); |
| | | if (this.btnText == 0) { |
| | | 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); |
| | | setCustomerId(res.data.customerid); |
| | | }, |
| | | data() { |
| | | return { |
| | | username: '', // 客户 |
| | | // username:'13333333331',//货代 |
| | | // username: '13333333332',// 司机 |
| | | password: '', |
| | | remember: true, |
| | | baseUrl: '' |
| | | }; |
| | | }, |
| | | 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'; |
| | | //登录接口 |
| | | 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) { |
| | | 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) |
| | | setCustomerId(res.data.customerid); |
| | | setName(res.name); |
| | | uni.hideLoading(); |
| | | //跳转页面 |
| | | this.$nextTick(() => { |
| | | redirectHome(); |
| | | }); |
| | | }) |
| | | .catch(err => { |
| | | this.$u.toast('登录异常!'); |
| | | console.log(err); |
| | | }); |
| | | } else { |
| | | uni.hideLoading(); |
| | | //跳转页面 |
| | | this.$nextTick(() => { |
| | | redirectHome(); |
| | | }); |
| | | }).catch(err=>{ |
| | | this.$u.toast('登录异常!'); |
| | | console.log(err); |
| | | }); |
| | | this.$u.toast(res.msg); |
| | | } |
| | | } else { |
| | | uni.hideLoading(); |
| | | this.$u.toast(res.msg); |
| | | } |
| | | } else { |
| | | this.$nextTick(() => { |
| | | this.$reqPost('wxBind', { state: 'MINI', code: uni.getStorageSync('code') }, 'params').then(res => { |
| | | uni.hideLoading(); |
| | | if (res.code == 0) { |
| | | this.$u.toast('绑定成功!即将回到登录页!'); |
| | | setTimeout(() => { |
| | | uni.navigateBack(); |
| | | }, 1000); |
| | | } else { |
| | | this.$u.toast(res.msg ? res.msg : '绑定失败'); |
| | | uni.login({ |
| | | success: res => { |
| | | if (res.code) { |
| | | uni.setStorageSync('bindcode', res.code); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | }) |
| | | .catch(e => { |
| | | this.$u.toast(e); |
| | | }); |
| | | 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.$u.toast(e); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | @import 'index.scss'; |
| | | .dengluBtn { |
| | | margin-top: 80rpx; |
| | | } |
| | | </style> |
| | | @import 'index.scss'; |
| | | |
| | | .dengluBtn { |
| | | margin-top: 80rpx; |
| | | } |
| | | </style> |