From b37bca8f7a6cdae798e74f14b51936e3a6a9637c Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期四, 29 八月 2024 22:42:14 +0800 Subject: [PATCH] update 售后问题 --- pages/login/supplier-login.vue | 1175 ++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 732 insertions(+), 443 deletions(-) diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue index 96c7a4a..ea5734f 100644 --- a/pages/login/supplier-login.vue +++ b/pages/login/supplier-login.vue @@ -1,498 +1,787 @@ <template> - <view class="main-container login-container img100 relative" style="margin-top: 0rpx;"> - <!-- background-image:url('@/static/images/supplier/login/bg.png') --> + <view class="main-container login-container img100 relative" style="margin-top: 0rpx;min-height: 100vh;"> + <!-- background-image:url('@/static/images/supplier/login/bg.png') --> - <image class="component-bg" - src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png" - mode="scaleToFill"/> - <view class="t-login top-bg"> - <view class="nav-title">登录</view> - <view class="login"> - <form class="cl"> - <view class="t-a titles-top"> - <view class="title-1">HELLO</view> - <view class="title-2">欢迎登录<span class="title-3">花满芫</span> - <!-- #ifdef PUB_SUPPLIER --> - <span>供应商管理平台</span> - <!-- #endif --> - <!-- #ifdef PUB_PARTNER --> - <span>合伙人管理平台</span> - <!-- #endif --> - </view> - </view> - <view class="t-a input form-input" v-if="loginType=='pwd'"> - <!-- <input type="text" name="userName" placeholder="请输入账号" v-model="userName" /> --> - <u-input placeholder="请输入账号" :border="false" v-model="userName"></u-input> + <image class="component-bg" + src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png" + mode="scaleToFill" /> + <view class="t-login top-bg"> + <view class="nav-title">登录</view> + <view class="login"> + <form class="cl"> + <view class="t-a titles-top"> + <view class="title-1">HELLO</view> + <view class="title-2">欢迎登录<span class="title-3">花满芫</span> + <!-- #ifdef PUB_SUPPLIER --> + <span>供应商管理平台</span> + <!-- #endif --> + <!-- #ifdef PUB_PARTNER --> + <span>合伙人管理平台</span> + <!-- #endif --> + </view> + </view> + <view class="t-a input form-input" v-if="loginType=='pwd'"> + <!-- <input type="text" name="userName" placeholder="请输入账号" v-model="userName" /> --> + <u-input placeholder="请输入账号" :border="false" v-model="userName"></u-input> - </view> - <view class="t-a input form-input" v-if="loginType=='pwd'"> - <!-- <input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" /> --> - <u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input> - </view> - <view class="t-a input form-input" v-if="loginType=='code'"> + </view> + <view class="t-a input form-input" v-if="loginType=='pwd'"> + <u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input> + </view> + <view class="t-a input form-input" v-if="loginType=='code'"> - <!-- <input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" /> - <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> - {{getCodeText}} - </view> --> - <u-input placeholder="请输入手机号" :border="false" v-model="phoneNumber"> - <template slot="suffix"> - <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> - {{ getCodeText }} - </view> - </template> - </u-input> - </view> + <u-input placeholder="请输入手机号" :border="false" v-model="phoneNumber"> + <template slot="suffix"> + <view class="get-code" :style="{'color':getCodeBtnColor}" @click.stop="getCode()"> + {{ getCodeText }} + </view> + </template> + </u-input> + </view> - <view class="t-a form-input" v-if="loginType=='code'"> - <!-- <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" /> --> - <u-input placeholder="请输入手机验证码" :border="false" v-model="smsCode"></u-input> + <view class="t-a form-input" v-if="loginType=='code'"> + <u-input placeholder="请输入手机验证码" :border="false" v-model="smsCode"></u-input> - </view> + </view> - <button @tap="login()" class="bottom-button">登 录</button> + <view class="flex flex-wrap-normal" v-if="true"> + <view :style="{'margin-top': '24rpx','margin-right': '12rpx','font-size':'24rpx'}" + @click="protocal=!protocal" class="component-radio" :class="[protocal?'cur':'']"> - <view class="flex"> - <view class="topic-font" v-if="loginType=='pwd'" @click="loginType='code'">手机验证码登录</view> - <view class="topic-font" v-if="loginType=='code'" @click="loginType='pwd'">账号密码登录</view> + </view> + <!-- /pages/help/content?id=新手帮助 --> + <!-- 用户协议,隐私政策、卖家入驻协议、合伙人入驻协议 --> - <view class="topic-font m-l-a m-r-0" @click="toReg">前往注册</view> + <!-- #ifdef PUB_PARTNER --> + <view class="topic-gray"> + 请仔细阅读<span class="t-red" @click="goto('/pages/help/content?id=用户协议',false)">《用户协议》</span>、 + <span class="t-red" @click="goto('/pages/help/content?id=隐私政策',false)">《隐私政策》</span> + 、<span class="t-red" @click="goto('/pages/help/content?id=合伙人入驻协议',false)">《合伙人入驻协议》</span> + 如您同意该指引,请勾选开始使用本小程序 + </view> + <!-- #endif --> + <!-- #ifdef PUB_SUPPLIER --> + <view class="topic-gray"> + 请仔细阅读<span class="t-red" @click="goto('/pages/help/content?id=用户协议',false)">《用户协议》</span>、 + <span class="t-red" @click="goto('/pages/help/content?id=隐私政策',false)">《隐私政策》</span> + 、<span class="t-red" @click="goto('/pages/help/content?id=卖家入驻协议',false)">《卖家入驻协议》</span> + 如您同意该指引,请勾选开始使用本小程序 + </view> + <!-- #endif --> + <!-- #ifdef PUB_CUSTOMER --> + <view class="topic-gray"> + 请仔细阅读<span class="t-red" @click="goto('/pages/help/content?id=用户协议',false)">《用户协议》</span>和 + <span class="t-red" @click="goto('/pages/help/content?id=隐私政策',false)">《隐私政策》</span> + 如您同意该指引,请勾选开始使用本小程序 + </view> + <!-- #endif --> - <!-- #ifdef PUB_CUSTOMER --> - <view class="topic-font m-l-a m-r-0" @click="toHome">返回首页</view> - <!-- #endif --> - </view> + </view> - </form> - </view> - </view> - </view> + + + + + <button @tap="login()" class="bottom-button">登 录</button> + + <view class="flex"> + <view class="topic-font" v-if="loginType=='pwd'&&apitype!=='loginAdmin'" + @click="loginType='code'">手机验证码登录</view> + <view class="topic-font" v-if="loginType=='code'&&apitype!=='loginAdmin'" + @click="loginType='pwd'">账号密码登录</view> + + <view class="topic-font m-l-a m-r-0" v-if="apitype!=='loginAdmin'" @click="toReg">前往注册</view> + + <!-- #ifdef PUB_CUSTOMER --> + <view class="topic-font m-l-a m-r-0" @click="toHome" v-if="!source">返回首页</view> + <view class="topic-font m-l-a m-r-0" @click="backpage" v-if="source==='jump'">返回上一页</view> + + <!-- #endif --> + <!-- #ifdef PUB_PARTNER --> + <view class="topic-font m-l-a m-r-0" @click="()=>{ + if(apitype==='loginPartner'){ + apitype = 'loginAdmin' + loginType = 'pwd' + }else{ + apitype = 'loginPartner' + } + }"> + 切换为{{apitype!=='loginPartner'?'合伙人':'质检人员'}}登录 + </view> + <!-- #endif --> + </view> + + </form> + </view> + <!-- <view v-if="optionsStr"> + {{optionsStr}} + </view> --> + </view> + </view> </template> <script> -// import util from '@/utils/util.js' -// import gzmzApi from '@/api/gzmzApi.js' -// import myCache from '@/utils/myCache.js' -export default { - // props: { - // // apitype: 'loginSupplier', - // apitype: { - // type: String, - // default () { - // // #ifdef PUB_SUPPLIER - // return 'loginSupplier' - // // #endif - // // #ifdef PUB_PARTNER - // return 'loginPartner' - // // #endif - // // #ifdef PUB_CUSTOMER - // return 'loginCustomer' - // // #endif - // // return 'loginPartner' - // } - // }, - // }, - data() { - return { - openId: '-1', - userName: '', - password: '', - // userName: '', - // password: '', + export default { + async onLoad(options) { + this.source = options.source || '' + this.sharePartnerUserId = options.sharePartnerUserId || '' + // #ifdef PUB_CUSTOMER + var query = options.q && decodeURIComponent(options.q) || '' + var querydto = {} + if (query) { + try { + var keyvalues = query.split("?")[1].split("&") + for (var item of keyvalues) { + var tarr = item.split("=") + querydto[tarr[0]] = tarr[1] + } + } catch (e) { + console.error('error', e) + } + } + try { + if (!querydto.partnerUserId) { + if (options.query && options.query.scene) { + //说明是特殊小程序二维码扫码跳转的 + var keyvalues = decodeURIComponent(options.query.scene).split("&") + for (var item of keyvalues) { + var tarr = item.split("=") + querydto[tarr[0]] = tarr[1] + } + } + } - phoneNumber: '', - smsCode: '', + } catch (e) { + console.error('error2', e) + } - checked: false, - loginType: 'pwd', //pwd和code,密码和验证码登录 - pcfvalue: undefined, - getCodeText: '获取验证码', - getCodeBtnColor: "#20613D", - getCodeisWaiting: false, - Timer: undefined, - // #ifdef PUB_SUPPLIER - apitype: 'loginSupplier', - // #endif - // #ifdef PUB_PARTNER - apitype: 'loginPartner', - // #endif - // #ifdef PUB_CUSTOMER - apitype: 'loginCustomer', - // #endif - // return 'loginPartner' - }; - }, - methods: { - async getCode() { - console.log('getCode') - uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。 - if (this.getCodeisWaiting) { - return; - } - if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //校验手机号码是否有误 - this.$message.showToast('请填写正确手机号码') - return false; - } - this.getCodeText = "发送中..." //发送验证码 - this.getCodeisWaiting = true; - this.getCodeBtnColor = "#000" //追加样式,修改颜色 - //示例用定时器模拟请求效果 - //setTimeout(()用于在指定的毫秒数后调用函数或计算表达式 - const { - code - } = await this.$http.request('post', '/api/sms/send/code', { - data: { - tel: this.phoneNumber, - userType: this.apitype.replace("login", "").toLowerCase() - } - }) - if (code == 0) { - uni.showToast({ - title: '验证码已发送', - icon: "none" - }); - this.setTimer(); //调用定时器方法 - } else { - this.getCodeText = "获取验证码" //发送验证码 - this.getCodeisWaiting = false; - this.getCodeBtnColor = "#20613D"; - } - // setTimeout(() => { - // uni.showToast({ - // title: '验证码已发送', - // icon: "none" - // }); //弹出提示框 - // //示例默认1234,生产中请删除这一句。 - // // this.code = '1234'; //发送验证码,进行填入 - // this.setTimer(); //调用定时器方法 - // }, 1000) - }, - //setTimer: 需要每隔一段时间执行一件事的的时候就需要使用SetTimer函数 - setTimer() { - let holdTime = 60; //定义变量并赋值 - this.getCodeText = "重新获取(60)" - //setInterval()是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。 - //setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。 - this.Timer = setInterval(() => { - if (holdTime <= 0) { - this.getCodeisWaiting = false; - this.getCodeBtnColor = "#20613D"; - this.getCodeText = "获取验证码" - clearInterval(this.Timer); //清除该函数 - return; //返回前面 - } - this.getCodeText = "重新获取(" + holdTime + ")" - holdTime--; - }, 1000) - }, - toHome(){ - uni.redirectTo({ - url: '/pages/home/home' - }) - }, - toReg() { - // uni.switchTab({ - // url: '/pages/index/index' - // }) - var addstr = '' - // #ifdef PUB_PARTNER - addstr = '?source=step' - uni.navigateTo({ - url: '/sub_pages/partner/partner-info/partner-info' + addstr - }) - // #endif - // #ifdef PUB_SUPPLIER - uni.redirectTo({ - url: '/pages/login/supplier-reg' - }) - // #endif - // #ifdef PUB_CUSTOMER - addstr = '?source=step' - uni.navigateTo({ - url: '/sub_pages/customer/customer-info/customer-info' + addstr - }) - // #endif - }, - changeAll(e) { - this.pcfvalue = e.detail.value[0] - }, - async login() { - uni.showLoading({ - title: '登陆中' - }); - var that = this; - if (this.loginType == 'pwd') { - if (!that.userName) { - uni.showToast({ - title: '请输入用户名', - icon: 'none' - }); - return; - } - if (!that.password) { - uni.showToast({ - title: '请输入密码', - icon: 'none' - }); - return; - } - } - if (this.loginType == 'code') { - if (!that.phoneNumber) { - uni.showToast({ - title: '请输入手机号', - icon: 'none' - }); - return; - } - if (!that.smsCode) { - uni.showToast({ - title: '请输入手机验证码', - icon: 'none' - }); - return; - } - } - // if (this.pcfvalue == undefined) { - // util.showMyToast('必须勾选《用户服务协议》及《隐私政策》'); - // return; - // } - let post = { - username: this.userName, - password: this.password, - tel: this.phoneNumber, - smsCode: this.smsCode - // openId: '123456789' - } - // const { - // code - // } = await this.$http.request('get', '/api/login/admin') - const resp = await this.$store.dispatch(this.apitype, post); - // uni.hideLoading() - if (resp.code === 0) { + console.log('options query111', options, querydto) + // this.optionsStr = JSON.stringify(options) || '' + if (querydto.partnerUserId) { + //通过接口获取名称,兼容,url上不能放中文的情况 - // myCache.cache("userToken", res.data.accessToken) - // let userRes = await gzmzApi.getMemberInfo(); - // if (userRes.status) { - // myCache.cache("userInfo", JSON.stringify(userRes.data)) - // } - // setTimeout(() => { - // uni.navigateBack(); - // }, 1000); - } else { - // uni.showToast({ - // title: '登录失败!', - // icon: 'none' - // }); - return; - } - }, - tc1(id) { - uni.navigateTo({ - url: '/pages/users/xieyi?id=' + id, - }); - } - } -}; + if (this.$storage.getItem('token')) { + console.log('to login 1') + this.$message.showLoading() + //稍微等一会,避免currentInfo还在同步 + let tmp = this + setTimeout(async () => { + try { + tmp.$message.hideLoading() + if (tmp.currentInfo && tmp.currentInfo.id || tmp.$storage.getItem('token')) { + await tmp.$store.dispatch('getCurrentInfo'); + //已经登录的直接判断,并且绑定 + tmp.$nextTick(async () => { + if (!tmp.currentInfo.customerDTO) { + tmp.$message.showToast( + '您尚未完善信息无法绑定') + setTimeout(() => { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, 500) + return + } else { + if (tmp.currentInfo.customerDTO + .partnerId) { + tmp.$message.showToast( + '您已绑定,请联系客服解除绑定') + setTimeout(() => { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, 500) + return + } else { + //前往绑定页面 + //直接绑定 + //调用接口绑定 + tmp.$message.showLoading() + const { + code, + data + } = await tmp.$http.request('post', + '/api/customer/bind/partner', { + data: { + partnerUserId: querydto + .partnerUserId + } + }) + tmp.$message.hideLoading() + if (code == 0) { + tmp.$message.showToast(`绑定合伙人成功`) + await tmp.$store.dispatch('getCurrentInfo') + //跳转到个人页面 + setTimeout(() => { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, 500) + + } + + } + } + }) + + + + //这种已经登录的 + //确定是注册绑定还是重新绑定 + // tmp.$nextTick(() => { + // var tt = { + // title: '提示:您已登录,是直接用该账号绑定,还是退出并注册新账号绑定合伙人', + // content: '', + // showCancel: true, + // cancelText: '直接绑定', + // cancelColor: '#000000', + // confirmText: '退出注册', + // confirmColor: '#20613D' + // } + // uni.showModal({ + // ...tt, + // success: async (res) => { + + // if (res.confirm) { + // //清空登录信息, + // this.$store.commit('updateLogin', + // false) + // setTimeout(() => { + // uni.navigateTo({ + // url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + // }, 200) + // } + // if (res.cancel) { + // if (!tmp.currentInfo.customerDTO) { + // tmp.$message.showToast( + // '您尚未完善信息无法绑定') + // return + // } else { + // if (tmp.currentInfo.customerDTO + // .partnerId) { + // tmp.$message.showToast( + // '您已绑定,请联系客服解除绑定') + // return + // } else { + // //前往绑定页面 + // uni.reLaunch({ + // url: `/pages/user/supplier-user?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + // } + // } + // } + // }, + // fail(res) { + // console.log('res uni model', res) + // } + // }) + + // }) + + + } else { + console.log('to login 3') + //退出登录了,或者失效了 + // uni.navigateTo({ + // url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + if (!querydto.partnerUserName) { + tmp.$message.showLoading() + const resname = await tmp.$http.request('get', + '/api/customer/partner/name', { + params: { + id: querydto.partnerUserId + } + }) + tmp.$message.hideLoading() + if (resname.code == 0) { + querydto.partnerUserName = resname.data || '' + } + + } + uni.navigateTo({ + url: `/pages/login/supplier-reg?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + }) + } + } catch (e2) { + console.log('to login error', e2) + } + }, 2000) + + } else { + if (!querydto.partnerUserName) { + this.$message.showLoading() + const resname = await this.$http.request('get', '/api/customer/partner/name', { + params: { + id: querydto.partnerUserId + } + }) + this.$message.hideLoading() + if (resname.code == 0) { + querydto.partnerUserName = resname.data || '' + } + + } + // console.log('to login 2', + // `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // ) + // uni.navigateTo({ + // url: `/sub_pages/customer/customer-info/customer-info?source=step&partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + // }) + uni.navigateTo({ + url: `/pages/login/supplier-reg?partnerUserId=${querydto.partnerUserId}&partnerUserName=${querydto.partnerUserName}` + }) + } + + + } + // #endif + + }, + onShareAppMessage() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + onShareTimeline() { + let that = this; + var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO && + that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || '' + var url = + `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数 + return { + title: "花满芫", + path: url, + } + }, + data() { + return { + optionsStr: '', + openId: '-1', + userName: '', + password: '', + // userName: '', + // password: '', + + phoneNumber: '', + smsCode: '', + source: '', //来源 + sharePartnerUserId: '', //分享跳转登录的id + + checked: false, + loginType: 'pwd', //pwd和code,密码和验证码登录 + pcfvalue: undefined, + getCodeText: '获取验证码', + getCodeBtnColor: "#20613D", + getCodeisWaiting: false, + Timer: undefined, + protocal:false, + // #ifdef PUB_SUPPLIER + apitype: 'loginSupplier', + // #endif + // #ifdef PUB_PARTNER + apitype: 'loginPartner', + // #endif + // #ifdef PUB_CUSTOMER + apitype: 'loginCustomer', + // #endif + // return 'loginPartner' + }; + }, + methods: { + async getCode() { + console.log('getCode') + uni.hideKeyboard() //隐藏已经显示的软键盘,如果软键盘没有显示则不做任何操作。 + if (this.getCodeisWaiting) { + return; + } + if (!(/^1(3|4|5|6|7|8|9)\d{9}$/.test(this.phoneNumber))) { //校验手机号码是否有误 + this.$message.showToast('请填写正确手机号码') + return false; + } + this.getCodeText = "发送中..." //发送验证码 + this.getCodeisWaiting = true; + this.getCodeBtnColor = "#000" //追加样式,修改颜色 + //示例用定时器模拟请求效果 + //setTimeout(()用于在指定的毫秒数后调用函数或计算表达式 + const { + code + } = await this.$http.request('post', '/api/sms/send/code', { + data: { + tel: this.phoneNumber, + userType: this.apitype.replace("login", "").toLowerCase() + } + }) + if (code == 0) { + uni.showToast({ + title: '验证码已发送', + icon: "none" + }); + this.setTimer(); //调用定时器方法 + } else { + this.getCodeText = "获取验证码" //发送验证码 + this.getCodeisWaiting = false; + this.getCodeBtnColor = "#20613D"; + } + // setTimeout(() => { + // uni.showToast({ + // title: '验证码已发送', + // icon: "none" + // }); //弹出提示框 + // //示例默认1234,生产中请删除这一句。 + // // this.code = '1234'; //发送验证码,进行填入 + // this.setTimer(); //调用定时器方法 + // }, 1000) + }, + //setTimer: 需要每隔一段时间执行一件事的的时候就需要使用SetTimer函数 + setTimer() { + let holdTime = 60; //定义变量并赋值 + this.getCodeText = "重新获取(60)" + //setInterval()是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。 + //setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。 + this.Timer = setInterval(() => { + if (holdTime <= 0) { + this.getCodeisWaiting = false; + this.getCodeBtnColor = "#20613D"; + this.getCodeText = "获取验证码" + clearInterval(this.Timer); //清除该函数 + return; //返回前面 + } + this.getCodeText = "重新获取(" + holdTime + ")" + holdTime--; + }, 1000) + }, + toHome() { + uni.reLaunch({ + url: '/pages/home/home' + }) + }, + toReg() { + // uni.switchTab({ + // url: '/pages/index/index' + // }) + var addstr = '' + // #ifdef PUB_PARTNER + addstr = '?source=step' + uni.navigateTo({ + url: '/sub_pages/partner/partner-info/partner-info' + addstr + }) + // #endif + // #ifdef PUB_SUPPLIER + uni.reLaunch({ + url: '/pages/login/supplier-reg' + }) + // #endif + // #ifdef PUB_CUSTOMER + // addstr = '?source=step' + // uni.navigateTo({ + // url: '/sub_pages/customer/customer-info/customer-info' + addstr + // }) + uni.reLaunch({ + url: '/pages/login/supplier-reg' + }) + // todo 如果是有分享id的,可能需要提前进行绑定 + + + // #endif + }, + changeAll(e) { + this.pcfvalue = e.detail.value[0] + }, + async login() { + if(!this.protocal){ + this.$message.showToast('请同意用户协议') + return + } + uni.showLoading({ + title: '登陆中' + }); + var that = this; + if (this.loginType == 'pwd') { + if (!that.userName) { + uni.showToast({ + title: '请输入用户名', + icon: 'none' + }); + return; + } + if (!that.password) { + uni.showToast({ + title: '请输入密码', + icon: 'none' + }); + return; + } + that.phoneNumber = '' + } + if (this.loginType == 'code') { + if (!that.phoneNumber) { + uni.showToast({ + title: '请输入手机号', + icon: 'none' + }); + return; + } + if (!that.smsCode) { + uni.showToast({ + title: '请输入手机验证码', + icon: 'none' + }); + return; + } + } + // if (this.pcfvalue == undefined) { + // util.showMyToast('必须勾选《用户服务协议》及《隐私政策》'); + // return; + // } + let post = { + username: this.userName, + password: this.password, + tel: this.phoneNumber, + smsCode: this.smsCode + // openId: '123456789' + } + // const { + // code + // } = await this.$http.request('get', '/api/login/admin') + const resp = await this.$store.dispatch(this.apitype, post); + // uni.hideLoading() + + if (resp.code === 0) { + + // myCache.cache("userToken", res.data.accessToken) + // let userRes = await gzmzApi.getMemberInfo(); + // if (userRes.status) { + // myCache.cache("userInfo", JSON.stringify(userRes.data)) + // } + // setTimeout(() => { + // uni.navigateBack(); + // }, 1000); + + + + } else { + // uni.showToast({ + // title: '登录失败!', + // icon: 'none' + // }); + return; + } + + }, + tc1(id) { + uni.navigateTo({ + url: '/pages/users/xieyi?id=' + id, + }); + } + } + }; </script> <style lang="scss" scoped> -.form-input { - background-color: #f8f7fc; - border-radius: 50rpx; - margin-bottom: 50rpx; - border: 1px solid #e9e9e9; + .form-input { + background-color: #f8f7fc; + border-radius: 50rpx; + margin-bottom: 50rpx; + border: 1px solid #e9e9e9; - /deep/ .u-input { - padding-left: 60rpx !important; - padding-right: 40rpx !important; - } + /deep/ .u-input { + padding-left: 60rpx !important; + padding-right: 40rpx !important; + } - /deep/ input { - height: 70rpx; - line-height: 70rpx; + /deep/ input { + height: 70rpx; + line-height: 70rpx; - } + } -} + } </style> <style lang="scss" scoped> -@import './login.scss'; + @import './login.scss'; -.main-container { - margin: 20px 0; -} + .main-container { + margin: 20px 0; + } -.img-a { - position: absolute; - width: 100%; - top: -150rpx; - right: 0; -} + .img-a { + position: absolute; + width: 100%; + top: -150rpx; + right: 0; + } -.img-b { - position: absolute; - width: 50%; - bottom: 0; - left: -120rpx; -} + .img-b { + position: absolute; + width: 50%; + bottom: 0; + left: -120rpx; + } -.to-home { - margin-top: 30rpx; - font-size: 30rpx; - color: #5af; - display: flex; - flex-direction: row-reverse; -} + .to-home { + margin-top: 30rpx; + font-size: 30rpx; + color: #5af; + display: flex; + flex-direction: row-reverse; + } -.t-login { - width: 100%; - margin: 0 auto; - font-size: 28rpx; - color: #000; -} + .t-login { + width: 100%; + margin: 0 auto; + font-size: 28rpx; + color: #000; + } -.t-login .bg { - width: 100%; - position: relative; -} + .t-login .bg { + width: 100%; + position: relative; + } -.t-login .login { - width: 650rpx; - margin: 60rpx auto; - margin-top: 0rpx; - font-size: 28rpx; - color: #000; -} + .t-login .login { + width: 650rpx; + margin: 60rpx auto; + margin-top: 0rpx; + font-size: 28rpx; + color: #000; + } -.t-login button { - font-size: 28rpx; - background: #5677fc; - color: #fff; - height: 90rpx; - line-height: 90rpx; - border-radius: 50rpx; - box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2); -} + .t-login button { + font-size: 28rpx; + background: #5677fc; + color: #fff; + height: 90rpx; + line-height: 90rpx; + border-radius: 50rpx; + box-shadow: 0 5px 7px 0 rgba(86, 119, 252, 0.2); + } -.t-login input { - padding: 0 20rpx 0 60rpx; - height: 90rpx; - line-height: 90rpx; - margin-bottom: 50rpx; - background: #f8f7fc; - border: 1px solid #e9e9e9; - font-size: 28rpx; - border-radius: 50rpx; -} + .t-login input { + padding: 0 20rpx 0 60rpx; + height: 90rpx; + line-height: 90rpx; + margin-bottom: 50rpx; + background: #f8f7fc; + border: 1px solid #e9e9e9; + font-size: 28rpx; + border-radius: 50rpx; + } -.t-login .t-a { - position: relative; + .t-login .t-a { + position: relative; - .get-code { - // position: absolute; - // right: 40rpx; - // top: 25rpx; - } -} + .get-code { + // position: absolute; + // right: 40rpx; + // top: 25rpx; + } + } -.t-login .t-a .icon { - width: 40rpx; - height: 40rpx; - position: absolute; - left: 24rpx; - top: 14rpx; - margin-right: 20rpx; -} + .t-login .t-a .icon { + width: 40rpx; + height: 40rpx; + position: absolute; + left: 24rpx; + top: 14rpx; + margin-right: 20rpx; + } -.t-login .t-a .line { - width: 2rpx; - height: 40rpx; - background-color: #dedede; - position: absolute; - top: 28rpx; - left: 98rpx; -} + .t-login .t-a .line { + width: 2rpx; + height: 40rpx; + background-color: #dedede; + position: absolute; + top: 28rpx; + left: 98rpx; + } -.t-login .t-b { - text-align: left; - font-size: 46rpx; - color: #000; - padding: 300rpx 0 30rpx 0; - font-weight: bold; -} + .t-login .t-b { + text-align: left; + font-size: 46rpx; + color: #000; + padding: 300rpx 0 30rpx 0; + font-weight: bold; + } -.t-login .t-b2 { - text-align: left; - font-size: 32rpx; - color: #aaaaaa; - padding: 0rpx 0 120rpx 0; -} + .t-login .t-b2 { + text-align: left; + font-size: 32rpx; + color: #aaaaaa; + padding: 0rpx 0 120rpx 0; + } -.t-login .t-c { - position: absolute; - right: 22rpx; - top: 22rpx; - background: #5677fc; - color: #fff; - font-size: 24rpx; - border-radius: 50rpx; - height: 50rpx; - line-height: 50rpx; - padding: 0 25rpx; - z-index: 999; -} + .t-login .t-c { + position: absolute; + right: 22rpx; + top: 22rpx; + background: #5677fc; + color: #fff; + font-size: 24rpx; + border-radius: 50rpx; + height: 50rpx; + line-height: 50rpx; + padding: 0 25rpx; + z-index: 999; + } -.t-login .t-d { - text-align: center; - color: #999; - margin: 80rpx 0; -} + .t-login .t-d { + text-align: center; + color: #999; + margin: 80rpx 0; + } -.t-login .t-e { - text-align: center; - width: 250rpx; - margin: 80rpx auto 0; -} + .t-login .t-e { + text-align: center; + width: 250rpx; + margin: 80rpx auto 0; + } -.t-login .t-g { - float: left; - width: 50%; -} + .t-login .t-g { + float: left; + width: 50%; + } -.t-login .t-e image { - width: 50rpx; - height: 50rpx; -} + .t-login .t-e image { + width: 50rpx; + height: 50rpx; + } -.t-login .t-f { - text-align: center; - margin: 200rpx 0 0 0; - color: #666; -} + .t-login .t-f { + text-align: center; + margin: 200rpx 0 0 0; + color: #666; + } -.t-login .t-f text { - margin-left: 20rpx; - color: #aaaaaa; - font-size: 27rpx; -} + .t-login .t-f text { + margin-left: 20rpx; + color: #aaaaaa; + font-size: 27rpx; + } -// .t-login .uni-input-placeholder { -// color: #000; -// } + // .t-login .uni-input-placeholder { + // color: #000; + // } -.cl { - zoom: 1; -} + .cl { + zoom: 1; + } -.cl:after { - clear: both; - display: block; - visibility: hidden; - height: 0; - content: '\20'; -} + .cl:after { + clear: both; + display: block; + visibility: hidden; + height: 0; + content: '\20'; + } </style> \ No newline at end of file -- Gitblit v1.9.3