From ad05f0a84af868e16db55dda6688f0c539e7a670 Mon Sep 17 00:00:00 2001 From: xuxueyang <xuxy@fengyuntec.com> Date: 星期三, 28 八月 2024 17:06:44 +0800 Subject: [PATCH] 1 --- pages/login/supplier-reg.vue | 198 +++++++++++++++++++++++++++++++++++++------------ 1 files changed, 149 insertions(+), 49 deletions(-) diff --git a/pages/login/supplier-reg.vue b/pages/login/supplier-reg.vue index f493427..cd30f05 100644 --- a/pages/login/supplier-reg.vue +++ b/pages/login/supplier-reg.vue @@ -1,21 +1,20 @@ <template> <view> - <view v-if="source==='step'" style="padding: 20rpx 0rpx;color: red;;background-color: #e6e6e6;"> - <!-- #ifdef PUB_PARTNER --> - <view style="padding: 20rpx;text-align: center;background-color: #fff;">仅限花满芫合伙人入驻</view> - <!-- #endif -->e - - <view v-if="source==='step'" class="" style="background-color:#ffffff;padding: 20rpx;padding-top: 60rpx;"> - <u-steps current="1"> - <u-steps-item title="信息填写" class="u-steps-item"> - </u-steps-item> - <u-steps-item title="提交申请" class="u-steps-item"></u-steps-item> - </u-steps> - </view> - </view> - <view class="main-container login-container img100 relative" style="margin-top: 0rpx;"> + <view v-if="source==='step'" style="padding: 20rpx 0rpx;color: red;;background-color: #e6e6e6;"> + <!-- #ifdef PUB_PARTNER --> + <view style="padding: 20rpx;text-align: center;background-color: #fff;padding-top: 60rpx;">仅限花满芫合伙人入驻</view> + <!-- #endif --> + + <view v-if="source==='step'" class="" style="background-color:#ffffff;padding: 20rpx;padding-top: 60rpx;"> + <u-steps current="1"> + <u-steps-item title="信息填写" class="u-steps-item"> + </u-steps-item> + <u-steps-item title="提交申请" class="u-steps-item"></u-steps-item> + </u-steps> + </view> + </view> <image class="component-bg" src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/a5/a54508de179a4942918ecb2c5a4aa9f5bg.png" mode="scaleToFill" /> @@ -36,11 +35,15 @@ <view class="title-1">HELLO</view> <view class="title-2">欢迎入驻<span class="title-3">花满芫</span></view> <!-- #ifdef PUB_CUSTOMER --> - <view class="title-2">{{!partnerId?'未绑定合伙人':`已绑定${partnerName}`}}</view> + <view class="title-2">{{!partnerId?'未绑定合伙人':`已绑定合伙人-${partnerName}`}}</view> <!-- #endif --> </view> - + <!-- #ifdef PUB_CUSTOMER --> + <view class="t-a form-input"> + <u-input placeholder="请输入店铺名称" :border="false" v-model="regCustomerName"></u-input> + </view> + <!-- #endif --> <view class="t-a form-input" v-if="loginType=='code'"> <u-input placeholder="请输入手机号" :border="false" v-model="phoneNumber"> <template slot="suffix"> @@ -49,24 +52,55 @@ </view> </template> </u-input> - - <!-- <u-input type="text" name="userName" placeholder="请输入手机号" v-model="phoneNumber" - style="position: relative;z-index: 1;" /> --> - - </view> - <view class="t-a form-input" v-if="loginType=='code'"> - <!-- <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" - style="position: relative;z-index: 1;" /> --> + <view class="t-a form-input"> <u-input placeholder="请输入手机验证码" :border="false" v-model="smsCode"></u-input> - </view> <view class="t-a form-input" v-if="loginType=='code'"> <u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input> </view> + + <view class="flex flex-wrap-normal" + v-if="true"> + <view :style="{'margin-top': '40rpx','margin-right': '12rpx','font-size':'24rpx'}" + @click="protocal=!protocal" class="component-radio" :class="[protocal?'cur':'']"> + + </view> + <!-- /pages/help/content?id=新手帮助 --> + <!-- 用户协议,隐私政策、卖家入驻协议、合伙人入驻协议 --> + + <!-- #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 --> + + </view> + <!-- #ifndef PUB_CUSTOMER --> <button @tap="reg('')" class="bottom-button">注 册</button> @@ -74,8 +108,7 @@ <!-- #endif --> <!-- #ifdef PUB_CUSTOMER --> <!-- open-type="getUserInfo"--> - <button @tap="wxreg('')" - class="bottom-button">注 册</button> + <button @tap="wxreg('')" class="bottom-button">注 册</button> <!-- #endif --> @@ -83,20 +116,11 @@ <view class="topic-font m-l-0 m-r-a" @click="backInfoPage" v-if="source==='step'">返回上一步 </view> <!-- #ifdef PUB_CUSTOMER --> - <view class="topic-font m-l-a m-r-a" @click="scanPartnerCode" v-if="source==='step'">扫码绑定合伙人 - </view> + <!-- v-if="source==='step'" --> + <!-- <view class="topic-font m-l-0 m-r-a" @click="scanPartnerCode">扫码绑定合伙人 + </view> --> <!-- #endif --> <view class="topic-font m-l-a m-r-0" @click="toLogin">前往登录</view> - - </view> - <view class="flex flex-wrap-normal" - style="position: fixed;bottom: 40rpx;left: 40rpx;right: 40rpx;" v-if="false"> - <view :style="{'margin-top': '8rpx','margin-right': '12rpx','font-size':'24rpx'}" - @click="protocal=!protocal" class="component-radio" :class="[protocal?'cur':'']"> - - </view> - <view class="topic-gray" @click="toProtocol">请仔细阅读《花满芫合伙人供应商入口小程序隐私保护指引》如您同意该指引,请勾选开始使用本小程序 - </view> </view> </form> </view> @@ -128,6 +152,7 @@ getCodeisWaiting: false, Timer: undefined, protocal: false, + regCustomerName: '', source: '', // #ifdef PUB_SUPPLIER apitype: 'supplier', @@ -143,18 +168,59 @@ }, onLoad(options) { this.source = options.source || '' + // #ifdef PUB_CUSTOMER + var tjson = this.$storage.getItem('cache_customer_info') + if (tjson) { + var dto = JSON.parse(tjson) + if (dto.partnerUserId) { + this.partnerId = dto.partnerUserId || '' + this.partnerName = dto.partnerUserName || '佚名' + } + } + if (options.partnerUserId) { + this.partnerId = options.partnerUserId || '' + if (options.partnerUserName) { + this.partnerName = options.partnerUserName || '佚名' + } + //扫码过来的,自然要清除分享商品的id + this.$storage.removeItem('cache_sharePartnerUserId') + } + // #endif + }, methods: { async scanPartnerCode() { - await this.$message.confirm('确定要绑定合伙人吗?') + // await this.$message.confirm('确定要绑定合伙人吗?') //扫二维码确认 let that = this uni.scanCode({ success: async function(res) { console.log('条码内容:' + res.result); + if (!res.result) { + that.$message.showToast('未识别出信息,如果是微信小程序二维码,请微信扫码打开') + return + } var dto = undefined try { - dto = JSON.parse(res.result) + if (res.result && (res.result.startsWith('http://') || res.result.startsWith( + 'https://')) && res.result.indexOf( + 'partnerUserId') >= 0) { + var arr = res.result.split("?")[1].split("&") + dto = {} + for (var item of arr) { + var tarr = item.split("=") + if (tarr[1]) { + dto[tarr[0]] = tarr[1] + + } + } + dto['name'] = dto['partnerUserName'] || '' + dto['userId'] = dto['partnerUserId'] || '' + + } else { + dto = JSON.parse(res.result) + + } if (!!dto['userId']) { that.partnerName = dto['name'] || '' that.partnerId = dto['userId'] || '' @@ -250,7 +316,7 @@ }, 1000) }, toLogin() { - uni.redirectTo({ + uni.reLaunch({ url: '/pages/login/supplier-login' }) @@ -271,6 +337,10 @@ // }) // }, wxreg(e) { + if (!this.protocal) { + this.$message.showToast('请同意协议') + return; + } let tmp = this wx.login({ success: async res => { @@ -321,10 +391,16 @@ }); return; } - // if (this.pcfvalue == undefined) { - // util.showMyToast('必须勾选《用户服务协议》及《隐私政策》'); - // return; - // } + // #ifdef PUB_CUSTOMER + if (!that.regCustomerName) { + this.$message.showToast('店铺名称未填写') + return + } + // #endif + if (!this.protocal) { + this.$message.showToast('请同意协议') + return; + } let post = { tel: this.phoneNumber, smsCode: this.smsCode, @@ -346,11 +422,35 @@ return } var dto = JSON.parse(tjson) - dto.partnerId = this.partnerId || undefined + // dto.partnerId = this.partnerId || undefined + dto.partnerUserId = this.partnerId || undefined post.dto = dto - } - post.wxcode = wxcode + } else { + // #ifdef PUB_CUSTOMER + var dto = {} + dto.partnerUserId = this.partnerId || undefined + //如果没有绑定,有商品详情的分享合伙人id的话缓存的话,尝试用这个 + if (!dto.partnerUserId) { + try { + var sharePartnerUserId = this.$storage.getItem('cache_sharePartnerUserId') + if (sharePartnerUserId) { + //试图绑定 + this.$storage.removeItem('cache_sharePartnerUserId') + dto.partnerUserId = sharePartnerUserId + } + } catch (e) { + console.error('reg bind ', e) + } + } + dto.name = this.regCustomerName || '' + post.dto = dto + // #endif + } + + + post.wxcode = wxcode + console.log('reg dto', post) // const { // code // } = await this.$http.request('get', '/api/login/admin') -- Gitblit v1.9.3