Compare commits

...

3 Commits

Author SHA1 Message Date
4422d72901 Merge branch 'master' of https://git.yuzhankeji.cn/zhangjing/douhuo-h5 2023-07-12 10:30:58 +08:00
9d6ba3efe0 最新代码,测试环境 2023-07-12 10:30:37 +08:00
850df0c9e6 测试环境 2023-07-11 14:53:48 +08:00
20 changed files with 8139 additions and 8139 deletions

View File

@@ -579,8 +579,8 @@
officialGeneral(){ officialGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webview/webCode' // url: 'https://web.douhuofalv.com/webview/webCode'
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {

View File

@@ -1,232 +1,232 @@
<template> <template>
<view class="content"> <view class="content">
<image @click="sheetClick" class="introduce-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/18/8110e4f3606a37358b60f39e026cc24f.jpg" mode="widthFix"></image> <image @click="sheetClick" class="introduce-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/18/8110e4f3606a37358b60f39e026cc24f.jpg" mode="widthFix"></image>
<!-- <view class="introduce-number"> <!-- <view class="introduce-number">
你有新的预约单 你有新的预约单
<view class="number"> <view class="number">
3 3
</view> </view>
</view> </view>
<view class="introduce-btn" @click="$Router.push({name: 'sheetIdcard'})"> <view class="introduce-btn" @click="$Router.push({name: 'sheetIdcard'})">
<view class="btn"> <view class="btn">
立即咨询 9.9 立即咨询 9.9
</view> </view>
</view> --> </view> -->
<view class="tipsBack" v-if="generalShow"></view> <view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow"> <view class="tipsCont" v-if="generalShow">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image> <image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image>
<view class="tipsWhite-top"> <view class="tipsWhite-top">
<view class="tipsWhite-name"> <view class="tipsWhite-name">
请您先关注抖火法律咨询公众号 请您先关注抖火法律咨询公众号
</view> </view>
<view class="tipsWhite-text"> <view class="tipsWhite-text">
关注后可立即下单 关注后可立即下单
</view> </view>
</view> </view>
<view class="tipsWhite-btn"> <view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false"> <view class="tipsWhite-btn-go" @click="generalShow = false">
稍后关注 稍后关注
</view> </view>
<view class="tipsWhite-btn-go" @click="judgeGeneral"> <view class="tipsWhite-btn-go" @click="judgeGeneral">
马上关注 马上关注
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { judgeReal } from '@/apis/interfaces/user' import { judgeReal } from '@/apis/interfaces/user'
import { authFollow } from '@/apis/interfaces/index' import { authFollow } from '@/apis/interfaces/index'
export default { export default {
data() { data() {
return { return {
generalShow: false // 公众号 generalShow: false // 公众号
} }
}, },
onLoad() { onLoad() {
}, },
methods: { methods: {
// 判断是否认证 // 判断是否认证
sheetClick() { sheetClick() {
judgeReal().then(res => { judgeReal().then(res => {
if(res.has_sign) { if(res.has_sign) {
if(!res.has_subscribe) { if(!res.has_subscribe) {
// 弹出公众号 // 弹出公众号
this.generalShow = true this.generalShow = true
} else { } else {
// 跳到咨询单 // 跳到咨询单
this.$Router.replace({name: 'sheetFeerCreate'}) this.$Router.replace({name: 'sheetFeerCreate'})
} }
return return
} }
// 跳到认证页面 // 跳到认证页面
this.$Router.replace({name: 'sheetIdcard'}) this.$Router.replace({name: 'sheetIdcard'})
}).catch( err => { }).catch( err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 状态 // 状态
judgeGeneral(){ judgeGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webview/webCode' // url: 'https://web.douhuofalv.com/webview/webCode'
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
// 关闭公众号 // 关闭公众号
this.generalShow = false this.generalShow = false
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
// page { // page {
// background-color: #446efe; // background-color: #446efe;
// } // }
.introduce-img { .introduce-img {
width: 100%; width: 100%;
display: inline-block; display: inline-block;
} }
.introduce-number { .introduce-number {
position: fixed; position: fixed;
right: $margin; right: $margin;
bottom: 180rpx; bottom: 180rpx;
z-index: 9; z-index: 9;
background-color: #ffffff; background-color: #ffffff;
border-radius: $radius * 5; border-radius: $radius * 5;
color: $mian-color; color: $mian-color;
font-size: $title-size-m; font-size: $title-size-m;
padding: 0 $padding; padding: 0 $padding;
line-height: 68rpx; line-height: 68rpx;
display: inline-block; display: inline-block;
box-shadow: 0 2rpx 10rpx rgba(218, 43, 86, .3); box-shadow: 0 2rpx 10rpx rgba(218, 43, 86, .3);
.number { .number {
position: absolute; position: absolute;
z-index: 10; z-index: 10;
top: -25rpx; top: -25rpx;
right: 0; right: 0;
border-radius: 50%; border-radius: 50%;
text-align: center; text-align: center;
background-color: $mian-color; background-color: $mian-color;
color: #ffffff; color: #ffffff;
width: 48rpx; width: 48rpx;
height: 48rpx; height: 48rpx;
line-height: 48rpx; line-height: 48rpx;
font-size: $title-size-sm; font-size: $title-size-sm;
text-align: center; text-align: center;
} }
} }
.introduce-btn { .introduce-btn {
position: fixed; position: fixed;
width: 100%; width: 100%;
left: 0; left: 0;
bottom: 0; bottom: 0;
text-align: center; text-align: center;
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
.btn { .btn {
background-color: #ffffff; background-color: #ffffff;
color: $mian-color; color: $mian-color;
font-weight: 600; font-weight: 600;
border-radius: $radius-sm; border-radius: $radius-sm;
width: 100%; width: 100%;
line-height: 90rpx; line-height: 90rpx;
font-size: $title-size; font-size: $title-size;
} }
} }
// 关注 // 关注
.tipsBack { .tipsBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 9; z-index: 9;
background-color: rgba(0, 0, 0, .8); background-color: rgba(0, 0, 0, .8);
} }
.tipsCont { .tipsCont {
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 10; z-index: 10;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
} }
.tipsWhite-top { .tipsWhite-top {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
} }
.tipsCont-img { .tipsCont-img {
width: 100%; width: 100%;
} }
.tipsWhite-name { .tipsWhite-name {
text-align: center; text-align: center;
color: #111111; color: #111111;
font-size: 34rpx; font-size: 34rpx;
font-weight: 600; font-weight: 600;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.tipsWhite-text { .tipsWhite-text {
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
line-height: 48rpx; line-height: 48rpx;
} }
.tipsWhite-btn { .tipsWhite-btn {
display: flex; display: flex;
padding: $padding 10rpx; padding: $padding 10rpx;
box-sizing: border-box; box-sizing: border-box;
.tipsWhite-btn-go { .tipsWhite-btn-go {
flex: 2; flex: 2;
color: #fff; color: #fff;
margin: 0 15rpx; margin: 0 15rpx;
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
text-align: center; text-align: center;
border: 2rpx solid #F6F6F6; border: 2rpx solid #F6F6F6;
background-color: #007df5; background-color: #007df5;
border-radius: $radius-m; border-radius: $radius-m;
&:first-child { &:first-child {
color: #333333; color: #333333;
background-color: #ffffff; background-color: #ffffff;
border: 2rpx solid #cccccc; border: 2rpx solid #cccccc;
} }
} }
} }
</style> </style>

View File

@@ -1,228 +1,228 @@
<template> <template>
<view class="content"> <view class="content">
<view class="sheet"> <view class="sheet">
<rich-text :nodes="articleContent"></rich-text> <rich-text :nodes="articleContent"></rich-text>
<!-- 立即咨询 --> <!-- 立即咨询 -->
<view class="lawyerBtn"> <view class="lawyerBtn">
<view class="lawyerBtn-name">您的心事我们</view> <view class="lawyerBtn-name">您的心事我们</view>
<!-- @click="$Router.push({name: 'indexSortpay', params:{id: lawyersData.lawyer_business_id, type:'business'}})" --> <!-- @click="$Router.push({name: 'indexSortpay', params:{id: lawyersData.lawyer_business_id, type:'business'}})" -->
<image class="lawyerBtn-img lawyerBtn-go" @click="sheetClick" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e1323131217b0ca7e1ed2e89a55a0740.png" mode="widthFix"></image> <image class="lawyerBtn-img lawyerBtn-go" @click="sheetClick" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e1323131217b0ca7e1ed2e89a55a0740.png" mode="widthFix"></image>
<image class="lawyerBtn-img lawyerBtn-see" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e4f37a76780df657cda85c242bfd792c.png" mode="widthFix"></image> <image class="lawyerBtn-img lawyerBtn-see" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e4f37a76780df657cda85c242bfd792c.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<!-- 关注 --> <!-- 关注 -->
<view class="tipsBack" v-if="generalShow"></view> <view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow"> <view class="tipsCont" v-if="generalShow">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image> <image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image>
<view class="tipsWhite-top"> <view class="tipsWhite-top">
<view class="tipsWhite-name"> <view class="tipsWhite-name">
请您先关注抖火法律咨询公众号 请您先关注抖火法律咨询公众号
</view> </view>
<view class="tipsWhite-text"> <view class="tipsWhite-text">
关注后可立即下单 关注后可立即下单
</view> </view>
</view> </view>
<view class="tipsWhite-btn"> <view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false"> <view class="tipsWhite-btn-go" @click="generalShow = false">
稍后关注 稍后关注
</view> </view>
<view class="tipsWhite-btn-go" @click="judgeGeneral"> <view class="tipsWhite-btn-go" @click="judgeGeneral">
马上关注 马上关注
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { businessDet, authFollow } from '@/apis/interfaces/index' import { businessDet, authFollow } from '@/apis/interfaces/index'
import { judgeReal } from '@/apis/interfaces/user' import { judgeReal } from '@/apis/interfaces/user'
export default { export default {
data() { data() {
return { return {
lawyersData : '', lawyersData : '',
articleContent : '', articleContent : '',
generalShow : false // 公众号 generalShow : false // 公众号
} }
}, },
onShow() { onShow() {
// 律师业务详情 // 律师业务详情
this.lawyersInfo() this.lawyersInfo()
}, },
methods: { methods: {
// 业务详情 // 业务详情
lawyersInfo() { lawyersInfo() {
businessDet(this.$Route.query.id).then(res => { businessDet(this.$Route.query.id).then(res => {
this.lawyersData = res this.lawyersData = res
this.articleContent= res.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;"') this.articleContent= res.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;"')
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 判断是否认证 // 判断是否认证
sheetClick() { sheetClick() {
judgeReal().then(res => { judgeReal().then(res => {
if(res.has_sign) { if(res.has_sign) {
if(!res.has_subscribe) { if(!res.has_subscribe) {
// 弹出公众号 // 弹出公众号
this.generalShow = true this.generalShow = true
} else { } else {
// 跳到咨询单 // 跳到咨询单
this.$Router.replace({name: 'sheetCreate'}) this.$Router.replace({name: 'sheetCreate'})
} }
return return
} }
// 跳到认证页面 // 跳到认证页面
this.$Router.replace({name: 'sheetIdcard'}) this.$Router.replace({name: 'sheetIdcard'})
}).catch( err => { }).catch( err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 状态 // 状态
judgeGeneral(){ judgeGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
url: 'https://web.douhuofalv.com/webview/webCode' // url: 'https://web.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
// 关闭公众号 // 关闭公众号
this.generalShow = false this.generalShow = false
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.sheet { .sheet {
width: 100%; width: 100%;
height: 100%; height: 100%;
position: relative; position: relative;
left: 0; left: 0;
top: 0; top: 0;
} }
.lawyerBtn { .lawyerBtn {
position: absolute; position: absolute;
z-index: 99; z-index: 99;
left: 0; left: 0;
bottom: $padding; bottom: $padding;
width: 100%; width: 100%;
padding: $padding - 10 $padding; padding: $padding - 10 $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
.lawyerBtn-name { .lawyerBtn-name {
font-size: $title-size-sm - 2; font-size: $title-size-sm - 2;
line-height: 60rpx; line-height: 60rpx;
opacity: .9; opacity: .9;
color: #fff; color: #fff;
} }
.lawyerBtn-img { .lawyerBtn-img {
display: block; display: block;
margin: 0 auto; margin: 0 auto;
} }
.lawyerBtn-go { .lawyerBtn-go {
width: 42%; width: 42%;
margin: 15rpx auto; margin: 15rpx auto;
} }
.lawyerBtn-see { .lawyerBtn-see {
width: 60%; width: 60%;
} }
} }
// 关注 // 关注
.tipsBack { .tipsBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 9; z-index: 9;
background-color: rgba(0, 0, 0, .8); background-color: rgba(0, 0, 0, .8);
} }
.tipsCont { .tipsCont {
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 10; z-index: 10;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
} }
.tipsWhite-top { .tipsWhite-top {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
} }
.tipsCont-img { .tipsCont-img {
width: 100%; width: 100%;
} }
.tipsWhite-name { .tipsWhite-name {
text-align: center; text-align: center;
color: #111111; color: #111111;
font-size: 34rpx; font-size: 34rpx;
font-weight: 600; font-weight: 600;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.tipsWhite-text { .tipsWhite-text {
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
line-height: 48rpx; line-height: 48rpx;
} }
.tipsWhite-btn { .tipsWhite-btn {
display: flex; display: flex;
padding: $padding 10rpx; padding: $padding 10rpx;
box-sizing: border-box; box-sizing: border-box;
.tipsWhite-btn-go { .tipsWhite-btn-go {
flex: 2; flex: 2;
color: #fff; color: #fff;
margin: 0 15rpx; margin: 0 15rpx;
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
text-align: center; text-align: center;
border: 2rpx solid #F6F6F6; border: 2rpx solid #F6F6F6;
background-color: #007df5; background-color: #007df5;
border-radius: $radius-m; border-radius: $radius-m;
&:first-child { &:first-child {
color: #333333; color: #333333;
background-color: #ffffff; background-color: #ffffff;
border: 2rpx solid #cccccc; border: 2rpx solid #cccccc;
} }
} }
} }
</style> </style>

View File

@@ -1,209 +1,209 @@
<template> <template>
<view class="content"> <view class="content">
<view class="point"> <view class="point">
<image class="point-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/280935db4a8ee4c0b17ddcb37f489b0f.png" mode="widthFix"></image> <image class="point-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/280935db4a8ee4c0b17ddcb37f489b0f.png" mode="widthFix"></image>
<view class="point-text"> <view class="point-text">
<view class="point-name"> <view class="point-name">
认证成功 认证成功
</view> </view>
<view class="point-tips"> <view class="point-tips">
<text>恭喜您已完成认证</text> <text>恭喜您已完成认证</text>
<text>专享更多安全保障,可进行选择咨询类型</text> <text>专享更多安全保障,可进行选择咨询类型</text>
</view> </view>
<view class="point-btn"> <view class="point-btn">
<view class="btn" @click="sheetClick"> <view class="btn" @click="sheetClick">
立即咨询 立即咨询
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="tipsBack" v-if="generalShow"></view> <view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow"> <view class="tipsCont" v-if="generalShow">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image> <image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image>
<view class="tipsWhite-top"> <view class="tipsWhite-top">
<view class="tipsWhite-name"> <view class="tipsWhite-name">
请您先关注抖火法律咨询公众号 请您先关注抖火法律咨询公众号
</view> </view>
<view class="tipsWhite-text"> <view class="tipsWhite-text">
关注后可立即下单 关注后可立即下单
</view> </view>
</view> </view>
<view class="tipsWhite-btn"> <view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false"> <view class="tipsWhite-btn-go" @click="generalShow = false">
稍后关注 稍后关注
</view> </view>
<view class="tipsWhite-btn-go" @click="judgeGeneral"> <view class="tipsWhite-btn-go" @click="judgeGeneral">
马上关注 马上关注
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { judgeReal } from '@/apis/interfaces/user' import { judgeReal } from '@/apis/interfaces/user'
import { authFollow } from '@/apis/interfaces/index' import { authFollow } from '@/apis/interfaces/index'
export default { export default {
data() { data() {
return { return {
generalShow: false // 公众号 generalShow: false // 公众号
} }
}, },
onLoad() { onLoad() {
}, },
methods: { methods: {
// 判断是否认证 // 判断是否认证
sheetClick() { sheetClick() {
judgeReal().then(res => { judgeReal().then(res => {
if(!res.has_subscribe) { if(!res.has_subscribe) {
// 弹出公众号 // 弹出公众号
this.generalShow = true this.generalShow = true
} else { } else {
// 跳到首页 // 跳到首页
this.$Router.replace({name: 'Index'}) this.$Router.replace({name: 'Index'})
} }
}).catch( err => { }).catch( err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 状态 // 状态
judgeGeneral(){ judgeGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webview/webCode', // url: 'https://web.douhuofalv.com/webview/webCode',
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
// 关闭公众号 // 关闭公众号
this.generalShow = false this.generalShow = false
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.point { .point {
text-align: center; text-align: center;
padding: 40% 0; padding: 40% 0;
.point-img { .point-img {
width: 50%; width: 50%;
margin: 0 auto 10rpx; margin: 0 auto 10rpx;
} }
.point-text { .point-text {
.point-name { .point-name {
font-size: $title-size + 14; font-size: $title-size + 14;
} }
.point-tips{ .point-tips{
margin: $margin + 20 0 $margin*3; margin: $margin + 20 0 $margin*3;
line-height: 52rpx; line-height: 52rpx;
text { text {
display: block; display: block;
color: #999999; color: #999999;
} }
} }
} }
.point-btn { .point-btn {
text-align: center; text-align: center;
.btn { .btn {
background-image: linear-gradient(to right, #da2b56, #FBAF3B); background-image: linear-gradient(to right, #da2b56, #FBAF3B);
display: inline-block; display: inline-block;
color: #ffffff; color: #ffffff;
border-radius: $radius-m; border-radius: $radius-m;
padding: 0 $padding; padding: 0 $padding;
line-height: 90rpx; line-height: 90rpx;
width: 70%; width: 70%;
} }
} }
} }
// 关注 // 关注
.tipsBack { .tipsBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 9; z-index: 9;
background-color: rgba(0, 0, 0, .8); background-color: rgba(0, 0, 0, .8);
} }
.tipsCont { .tipsCont {
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 10; z-index: 10;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
} }
.tipsWhite-top { .tipsWhite-top {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
} }
.tipsCont-img { .tipsCont-img {
width: 100%; width: 100%;
} }
.tipsWhite-name { .tipsWhite-name {
text-align: center; text-align: center;
color: #111111; color: #111111;
font-size: 34rpx; font-size: 34rpx;
font-weight: 600; font-weight: 600;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.tipsWhite-text { .tipsWhite-text {
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
line-height: 48rpx; line-height: 48rpx;
} }
.tipsWhite-btn { .tipsWhite-btn {
display: flex; display: flex;
padding: $padding 10rpx; padding: $padding 10rpx;
box-sizing: border-box; box-sizing: border-box;
.tipsWhite-btn-go { .tipsWhite-btn-go {
flex: 2; flex: 2;
color: #fff; color: #fff;
margin: 0 15rpx; margin: 0 15rpx;
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
text-align: center; text-align: center;
border: 2rpx solid #F6F6F6; border: 2rpx solid #F6F6F6;
background-color: #007df5; background-color: #007df5;
border-radius: $radius-m; border-radius: $radius-m;
&:first-child { &:first-child {
color: #333333; color: #333333;
background-color: #ffffff; background-color: #ffffff;
border: 2rpx solid #cccccc; border: 2rpx solid #cccccc;
} }
} }
} }
</style> </style>

View File

@@ -1,251 +1,251 @@
<template> <template>
<view class="content"> <view class="content">
<view class="idcard"> <view class="idcard">
<view class="idcardTitle"> <view class="idcardTitle">
<view class="idcardTitle-name"> <view class="idcardTitle-name">
身份认证 身份认证
</view> </view>
<view class="idcardTitle-tips"> <view class="idcardTitle-tips">
应监管要求请先进行身份认证 应监管要求请先进行身份认证
</view> </view>
</view> </view>
<view class="idcardImg"> <view class="idcardImg">
<view class="idcardImg-label" @click="updImg('frontCard')"> <view class="idcardImg-label" @click="updImg('frontCard')">
<image class="idcardImg-img" mode="widthFix" :src="frontCard.showpath ? frontCard.showpath : 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5ed55d77ed9c1e818a943cd7b4b7d28a.png'"></image> <image class="idcardImg-img" mode="widthFix" :src="frontCard.showpath ? frontCard.showpath : 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5ed55d77ed9c1e818a943cd7b4b7d28a.png'"></image>
<view class="idcardImg-text"> <view class="idcardImg-text">
点击上传正面 点击上传正面
</view> </view>
</view> </view>
<view class="idcardImg-label" @click="updImg('backCard')"> <view class="idcardImg-label" @click="updImg('backCard')">
<image class="idcardImg-img" mode="widthFix" :src="backCard.showpath ? backCard.showpath : 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/4a266e0dec95a3b15cf50ac58e37c478.png'"></image> <image class="idcardImg-img" mode="widthFix" :src="backCard.showpath ? backCard.showpath : 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/4a266e0dec95a3b15cf50ac58e37c478.png'"></image>
<view class="idcardImg-text"> <view class="idcardImg-text">
点击上传反面 点击上传反面
</view> </view>
</view> </view>
</view> </view>
<view class="idcardInfo"> <view class="idcardInfo">
<view class="idcardInfo-label"> <view class="idcardInfo-label">
<view class="idcardInfo-name"> <view class="idcardInfo-name">
姓名 姓名
</view> </view>
<view class="idcardInfo-input active"> <view class="idcardInfo-input active">
{{realData.name ? realData.name : '待自动输入'}} {{realData.name ? realData.name : '待自动输入'}}
</view> </view>
</view> </view>
<view class="idcardInfo-label"> <view class="idcardInfo-label">
<view class="idcardInfo-name"> <view class="idcardInfo-name">
身份证号 身份证号
</view> </view>
<view class="idcardInfo-input"> <view class="idcardInfo-input">
{{realData.id_card ? realData.id_card : '身份证号'}} {{realData.id_card ? realData.id_card : '身份证号'}}
</view> </view>
</view> </view>
<view class="idcardInfo-label"> <view class="idcardInfo-label">
<view class="idcardInfo-name"> <view class="idcardInfo-name">
有效期限 有效期限
</view> </view>
<view class="idcardInfo-input"> <view class="idcardInfo-input">
{{realData.expiration_date ? realData.expiration_date : '待自动输入'}} {{realData.expiration_date ? realData.expiration_date : '待自动输入'}}
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="idcardBtn"> <view class="idcardBtn">
<view class="idcardBtn-tips"> <view class="idcardBtn-tips">
<img src="@/static/imgs/card_ensure.png">个人信息安全保障中 <img src="@/static/imgs/card_ensure.png">个人信息安全保障中
</view> </view>
<button class="idcardBtn-go" type="default" :disabled="realData == ''" @click="faceClick">立即认证</button> <button class="idcardBtn-go" type="default" :disabled="realData == ''" @click="faceClick">立即认证</button>
</view> </view>
<!-- <view @click="$Router.push({name: 'Authsuccess'})">认证成功后会-临时跳转</view> --> <!-- <view @click="$Router.push({name: 'Authsuccess'})">认证成功后会-临时跳转</view> -->
</view> </view>
</template> </template>
<script> <script>
import { realName, faceUrl } from '@/apis/interfaces/user' import { realName, faceUrl } from '@/apis/interfaces/user'
import { uploads } from '@/apis/interfaces/uploading' import { uploads } from '@/apis/interfaces/uploading'
export default { export default {
data() { data() {
return { return {
// 身份证正面 // 身份证正面
frontCard:{ frontCard:{
showpath: '', showpath: '',
path : '' path : ''
}, },
// 身份证反面 // 身份证反面
backCard:{ backCard:{
showpath: '', showpath: '',
path : '' path : ''
}, },
realData : '', // 个人信息 realData : '', // 个人信息
authShortUrl: '' // 人脸识别地址-第三方 authShortUrl: '' // 人脸识别地址-第三方
} }
}, },
onLoad() {}, onLoad() {},
onShow() { onShow() {
}, },
methods: { methods: {
// 认证信息 // 认证信息
realInfo() { realInfo() {
realName({ realName({
front_card: this.frontCard.path, front_card: this.frontCard.path,
back_card : this.backCard.path, back_card : this.backCard.path,
redirect_url: "https://web.douhuofalv.com/sheet/authSuccess", // redirect_url: "https://web.douhuofalv.com/sheet/authSuccess",
// redirect_url: "https://web.douhuotest.douhuofalv.com/sheet/authSuccess" redirect_url: "https://web.douhuotest.douhuofalv.com/sheet/authSuccess"
}).then(res => { }).then(res => {
this.realData = res.certification this.realData = res.certification
this.authShortUrl = res.sign.authShortUrl this.authShortUrl = res.sign.authShortUrl
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 上传图片 // 上传图片
updImg(type){ updImg(type){
uni.chooseImage({ uni.chooseImage({
count : 1, count : 1,
success : path => { success : path => {
uploads([{ uploads([{
uri : path.tempFilePaths[0] uri : path.tempFilePaths[0]
}], { }], {
driver: "private-oss" driver: "private-oss"
}).then(res => { }).then(res => {
this[type].showpath = res.url[0] this[type].showpath = res.url[0]
this[type].path = res.path[0] this[type].path = res.path[0]
if(this.frontCard.path !=='' && this.backCard.path !=='') { if(this.frontCard.path !=='' && this.backCard.path !=='') {
// 获取认证信息 // 获取认证信息
this.realInfo(); this.realInfo();
} }
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
} }
}) })
}, },
// 人脸识别 // 人脸识别
faceClick() { faceClick() {
window.location.href = this.authShortUrl window.location.href = this.authShortUrl
// const newUrl = this.authShortUrl // const newUrl = this.authShortUrl
// let faceUrl= encodeURIComponent(newUrl) // let faceUrl= encodeURIComponent(newUrl)
// uni.navigateTo({ // uni.navigateTo({
// url: '/webview/webview?faceUrl=' + faceUrl // url: '/webview/webview?faceUrl=' + faceUrl
// }); // });
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.content { .content {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
height: 100vh; height: 100vh;
overflow-y: scroll; overflow-y: scroll;
} }
.idcard { .idcard {
background-color: #ffffff; background-color: #ffffff;
border-radius: $radius; border-radius: $radius;
box-sizing: border-box; box-sizing: border-box;
} }
.idcardTitle { .idcardTitle {
margin: 0 0 $margin + 20; margin: 0 0 $margin + 20;
line-height: 60rpx; line-height: 60rpx;
.idcardTitle-name { .idcardTitle-name {
color: $text-color; color: $text-color;
font-size: $title-size + 16; font-size: $title-size + 16;
font-weight: 600; font-weight: 600;
} }
.idcardTitle-tips { .idcardTitle-tips {
color: #7c8495; color: #7c8495;
font-size: $title-size-lg; font-size: $title-size-lg;
} }
} }
.idcardImg { .idcardImg {
display: flex; display: flex;
margin: $margin -15rpx; margin: $margin -15rpx;
.idcardImg-label { .idcardImg-label {
flex: 2; flex: 2;
text-align: center; text-align: center;
background-color: #fdf4f5; background-color: #fdf4f5;
padding: $padding $padding + 10 $padding + 58; padding: $padding $padding + 10 $padding + 58;
margin: 0 15rpx; margin: 0 15rpx;
position: relative; position: relative;
border-radius: $radius-sm; border-radius: $radius-sm;
overflow: hidden; overflow: hidden;
.idcardImg-img { .idcardImg-img {
width: 100%; width: 100%;
} }
.idcardImg-text { .idcardImg-text {
text-align: center; text-align: center;
position: absolute; position: absolute;
width: 100%; width: 100%;
background-color: $mian-color; background-color: $mian-color;
color: #ffffff; color: #ffffff;
left: 0; left: 0;
bottom: 0; bottom: 0;
line-height: 68rpx; line-height: 68rpx;
font-size: $title-size-m; font-size: $title-size-m;
opacity: .9; opacity: .9;
} }
} }
} }
.idcardInfo-label { .idcardInfo-label {
display: flex; display: flex;
line-height: 120rpx; line-height: 120rpx;
border-bottom: 2rpx solid #f5f5f5; border-bottom: 2rpx solid #f5f5f5;
&:last-child { &:last-child {
border: none; border: none;
} }
.idcardInfo-name { .idcardInfo-name {
flex: 1; flex: 1;
color: #637392; color: #637392;
} }
.idcardInfo-input { .idcardInfo-input {
color: #d2d5dd; color: #d2d5dd;
&.active { &.active {
color: #000000; color: #000000;
} }
} }
} }
.idcardBtn { .idcardBtn {
margin-top: $margin * 4; margin-top: $margin * 4;
text-align: center; text-align: center;
padding: 0 $padding; padding: 0 $padding;
box-sizing: border-box; box-sizing: border-box;
.idcardBtn-tips { .idcardBtn-tips {
color: #8091aa; color: #8091aa;
line-height: 90rpx; line-height: 90rpx;
font-size: $title-size-m; font-size: $title-size-m;
img { img {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
vertical-align: -10rpx; vertical-align: -10rpx;
margin-right: 5rpx; margin-right: 5rpx;
} }
} }
.idcardBtn-go { .idcardBtn-go {
background-color: $mian-color; background-color: $mian-color;
color: #ffffff; color: #ffffff;
border-radius: $radius * 3; border-radius: $radius * 3;
line-height: 90rpx; line-height: 90rpx;
font-size: $title-size + 2; font-size: $title-size + 2;
&[disabled] { &[disabled] {
background-color: #fdc5d3; background-color: #fdc5d3;
} }
} }
} }
</style> </style>

File diff suppressed because it is too large Load Diff

View File

@@ -1,217 +1,217 @@
<template> <template>
<view class="content"> <view class="content">
<view class="sheet"> <view class="sheet">
<image class="sheet-img" v-if="type == 1" src="https://cdn.douhuofalv.com/images/2022/11/30/cb0654de804d11905d2bb539e2fb5f24.jpg" mode="widthFix"></image> <image class="sheet-img" v-if="type == 1" src="https://cdn.douhuofalv.com/images/2022/11/30/cb0654de804d11905d2bb539e2fb5f24.jpg" mode="widthFix"></image>
<image class="sheet-img" v-else-if="type == 2" src="https://cdn.douhuofalv.com/images/2022/11/30/365f75baeaa1b4c5d041dce7f5ad6867.jpg" mode="widthFix"></image> <image class="sheet-img" v-else-if="type == 2" src="https://cdn.douhuofalv.com/images/2022/11/30/365f75baeaa1b4c5d041dce7f5ad6867.jpg" mode="widthFix"></image>
<image class="sheet-img" v-else src="https://cdn.douhuofalv.com/images/2022/11/30/007cf45b7138a2552f6a80ffa390c3ad.jpg" mode="widthFix"></image> <image class="sheet-img" v-else src="https://cdn.douhuofalv.com/images/2022/11/30/007cf45b7138a2552f6a80ffa390c3ad.jpg" mode="widthFix"></image>
<!-- 立即咨询 --> <!-- 立即咨询 -->
<view class="lawyerBtn"> <view class="lawyerBtn">
<view class="lawyerBtn-name">您的心事我们</view> <view class="lawyerBtn-name">您的心事我们</view>
<image class="lawyerBtn-img lawyerBtn-go" @click="sheetClick" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e1323131217b0ca7e1ed2e89a55a0740.png" mode="widthFix"></image> <image class="lawyerBtn-img lawyerBtn-go" @click="sheetClick" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e1323131217b0ca7e1ed2e89a55a0740.png" mode="widthFix"></image>
<image class="lawyerBtn-img lawyerBtn-see" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e4f37a76780df657cda85c242bfd792c.png" mode="widthFix"></image> <image class="lawyerBtn-img lawyerBtn-see" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/e4f37a76780df657cda85c242bfd792c.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<!-- 关注 --> <!-- 关注 -->
<view class="tipsBack" v-if="generalShow"></view> <view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow"> <view class="tipsCont" v-if="generalShow">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image> <image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image>
<view class="tipsWhite-top"> <view class="tipsWhite-top">
<view class="tipsWhite-name"> <view class="tipsWhite-name">
请您先关注抖火法律咨询公众号 请您先关注抖火法律咨询公众号
</view> </view>
<view class="tipsWhite-text"> <view class="tipsWhite-text">
关注后可立即下单 关注后可立即下单
</view> </view>
</view> </view>
<view class="tipsWhite-btn"> <view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false"> <view class="tipsWhite-btn-go" @click="generalShow = false">
稍后关注 稍后关注
</view> </view>
<view class="tipsWhite-btn-go" @click="judgeGeneral"> <view class="tipsWhite-btn-go" @click="judgeGeneral">
马上关注 马上关注
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { judgeReal } from '@/apis/interfaces/user' import { judgeReal } from '@/apis/interfaces/user'
import { authFollow } from '@/apis/interfaces/index' import { authFollow } from '@/apis/interfaces/index'
export default { export default {
data() { data() {
return { return {
type : '', type : '',
generalShow: false // 公众号 generalShow: false // 公众号
} }
}, },
onShow() { onShow() {
this.type = this.$Route.query.type this.type = this.$Route.query.type
}, },
methods: { methods: {
// 判断是否认证 // 判断是否认证
sheetClick() { sheetClick() {
judgeReal().then(res => { judgeReal().then(res => {
if(res.has_sign) { if(res.has_sign) {
if(!res.has_subscribe) { if(!res.has_subscribe) {
// 弹出公众号 // 弹出公众号
this.generalShow = true this.generalShow = true
} else { } else {
// 跳到咨询单 // 跳到咨询单
this.$Router.replace({name: 'sheetCreate'}) this.$Router.replace({name: 'sheetCreate'})
} }
return return
} }
// 跳到认证页面 // 跳到认证页面
this.$Router.replace({name: 'sheetIdcard'}) this.$Router.replace({name: 'sheetIdcard'})
}).catch( err => { }).catch( err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 状态 // 状态
judgeGeneral(){ judgeGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webview/webCode', // url: 'https://web.douhuofalv.com/webview/webCode',
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
// 关闭公众号 // 关闭公众号
this.generalShow = false this.generalShow = false
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.sheet { .sheet {
width: 100%; width: 100%;
height: 100%; height: 100%;
position: relative; position: relative;
left: 0; left: 0;
top: 0; top: 0;
.sheet-img { .sheet-img {
width: 100%; width: 100%;
} }
} }
.lawyerBtn { .lawyerBtn {
position: absolute; position: absolute;
z-index: 99; z-index: 99;
left: 0; left: 0;
bottom: $padding; bottom: $padding;
width: 100%; width: 100%;
padding: $padding - 10 $padding; padding: $padding - 10 $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
.lawyerBtn-name { .lawyerBtn-name {
font-size: $title-size-sm - 2; font-size: $title-size-sm - 2;
line-height: 60rpx; line-height: 60rpx;
opacity: .9; opacity: .9;
color: #fff; color: #fff;
} }
.lawyerBtn-img { .lawyerBtn-img {
display: block; display: block;
margin: 0 auto; margin: 0 auto;
} }
.lawyerBtn-go { .lawyerBtn-go {
width: 42%; width: 42%;
margin: 15rpx auto; margin: 15rpx auto;
} }
.lawyerBtn-see { .lawyerBtn-see {
width: 60%; width: 60%;
} }
} }
// 关注 // 关注
.tipsBack { .tipsBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 9; z-index: 9;
background-color: rgba(0, 0, 0, .8); background-color: rgba(0, 0, 0, .8);
} }
.tipsCont { .tipsCont {
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 10; z-index: 10;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
} }
.tipsWhite-top { .tipsWhite-top {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
} }
.tipsCont-img { .tipsCont-img {
width: 100%; width: 100%;
} }
.tipsWhite-name { .tipsWhite-name {
text-align: center; text-align: center;
color: #111111; color: #111111;
font-size: 34rpx; font-size: 34rpx;
font-weight: 600; font-weight: 600;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.tipsWhite-text { .tipsWhite-text {
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
line-height: 48rpx; line-height: 48rpx;
} }
.tipsWhite-btn { .tipsWhite-btn {
display: flex; display: flex;
padding: $padding 10rpx; padding: $padding 10rpx;
box-sizing: border-box; box-sizing: border-box;
.tipsWhite-btn-go { .tipsWhite-btn-go {
flex: 2; flex: 2;
color: #fff; color: #fff;
margin: 0 15rpx; margin: 0 15rpx;
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
text-align: center; text-align: center;
border: 2rpx solid #F6F6F6; border: 2rpx solid #F6F6F6;
background-color: #007df5; background-color: #007df5;
border-radius: $radius-m; border-radius: $radius-m;
&:first-child { &:first-child {
color: #333333; color: #333333;
background-color: #ffffff; background-color: #ffffff;
border: 2rpx solid #cccccc; border: 2rpx solid #cccccc;
} }
} }
} }
</style> </style>

File diff suppressed because it is too large Load Diff

View File

@@ -1,422 +1,422 @@
<template> <template>
<view class="content"> <view class="content">
<view class="paymentTop"> <view class="paymentTop">
<!-- v-if="applyData.status" --> <!-- v-if="applyData.status" -->
<view class="paymentTop-name"> <view class="paymentTop-name">
订单支付 订单支付
<text>与人方便,与己方便,珍惜时间,请先付款</text> <text>与人方便,与己方便,珍惜时间,请先付款</text>
</view> </view>
<img class="paymentTop-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/d9c965766807a6e1c57da11e069c8686.png"> <img class="paymentTop-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/d9c965766807a6e1c57da11e069c8686.png">
</view> </view>
<view class="paymentShow"> <view class="paymentShow">
<img class="paymentShow-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5ccd7b6473095bf0e55c21240ca2eb90.png"> <img class="paymentShow-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5ccd7b6473095bf0e55c21240ca2eb90.png">
<view class="paymentShow-text"> <view class="paymentShow-text">
<view class="paymentShow-top"> <view class="paymentShow-top">
<view class="paymentShow-top-name">订单名称<text>{{style == 'chajia' ? '补差价' : '咨询服务费'}}</text></view> <view class="paymentShow-top-name">订单名称<text>{{style == 'chajia' ? '补差价' : '咨询服务费'}}</text></view>
<view class="paymentShow-top-price">{{price}}</view> <view class="paymentShow-top-price">{{price}}</view>
</view> </view>
<view class="paymentShow-tips"> <view class="paymentShow-tips">
订单描述{{remark ? remark : '暂无描述'}} 订单描述{{remark ? remark : '暂无描述'}}
</view> </view>
<view class="paymentShow-top-name" style="margin-bottom: 10px; color: #9a9a9a;">支付方式</view> <view class="paymentShow-top-name" style="margin-bottom: 10px; color: #9a9a9a;">支付方式</view>
<view @click="payTypeVal = 'alipay'" class="paymentList-label"> <view @click="payTypeVal = 'alipay'" class="paymentList-label">
<image class="paymentList-img" :src="payTypeVal == 'alipay' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>支付宝银联商务 <image class="paymentList-img" :src="payTypeVal == 'alipay' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>支付宝银联商务
</view> </view>
<view @click="onUmsPay('mp')" class="paymentList-label"> <view @click="onUmsPay('mp')" class="paymentList-label">
<image class="paymentList-img" :src="payTypeVal == 'umsWx' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>微信支付银联商务 <image class="paymentList-img" :src="payTypeVal == 'umsWx' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>微信支付银联商务
</view> </view>
<view @click="payTypeVal = 'dgwxalipay'" class="paymentList-label"> <view @click="payTypeVal = 'dgwxalipay'" class="paymentList-label">
<image class="paymentList-img" :src="payTypeVal == 'dgwxalipay' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>支付宝汇付 <image class="paymentList-img" :src="payTypeVal == 'dgwxalipay' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>支付宝汇付
</view> </view>
<view @click="dgwxPay('mp')" class="paymentList-label"> <view @click="dgwxPay('mp')" class="paymentList-label">
<image class="paymentList-img" :src="payTypeVal == 'dgwx' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>微信支付(汇付) <image class="paymentList-img" :src="payTypeVal == 'dgwx' ? '/static/imgs/payCheck_active.png' : '/static/imgs/payCheck.png'" mode="widthFix"></image>微信支付(汇付)
</view> </view>
</view> </view>
</view> </view>
<view class="paymentBtn" v-if="payTypeVal == 'umsWx'"> <view class="paymentBtn" v-if="payTypeVal == 'umsWx'">
<!-- douhuotest dev=0是线上 dev=1是线下 --> <!-- douhuotest dev=0是线上 dev=1是线下 -->
<wx-open-launch-weapp <wx-open-launch-weapp
username="gh_918c81628d6f" username="gh_918c81628d6f"
:path="'pages/pay/pay?type=h5&dev=0&trade_id=' + tradeId + '&token=' + token" :path="'pages/pay/pay?type=h5&dev=1&trade_id=' + tradeId + '&token=' + token"
> >
<script type="text/wxtag-template"> <script type="text/wxtag-template">
<style> <style>
.gobtn { .gobtn {
width: 280px; width: 280px;
background-color: #da2b56; background-color: #da2b56;
color: #ffffff; color: #ffffff;
border-radius: 5px; border-radius: 5px;
height: 50px; height: 50px;
line-height: 50px; line-height: 50px;
font-size: 18px; font-size: 18px;
border: none; border: none;
} }
</style> </style>
<button type="default" class="gobtn">打开小程序收银台</button> <button type="default" class="gobtn">打开小程序收银台</button>
</script> </script>
</wx-open-launch-weapp> </wx-open-launch-weapp>
</view> </view>
<view class="paymentBtn" v-else-if="payTypeVal == 'dgwx'"> <view class="paymentBtn" v-else-if="payTypeVal == 'dgwx'">
<button type="default" class="paymentBtn-go" :disabled="disabled" @click="payChickDg"> <button type="default" class="paymentBtn-go" :disabled="disabled" @click="payChickDg">
打开小程序收银台 打开小程序收银台
</button> </button>
</view> </view>
<view class="paymentBtn" v-else> <view class="paymentBtn" v-else>
<button type="default" class="paymentBtn-go" :disabled="disabled" @click="payChick"> <button type="default" class="paymentBtn-go" :disabled="disabled" @click="payChick">
立即支付 立即支付
</button> </button>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import VConsole from 'vconsole'; import VConsole from 'vconsole';
const jweixin = require('jweixin-module'); const jweixin = require('jweixin-module');
import { applyPay, diffPay, authFollow } from '@/apis/interfaces/index' import { applyPay, diffPay, authFollow } from '@/apis/interfaces/index'
import { umsDiff, umsOrder, umsState, dgPay, diffDgPay } from '@/apis/interfaces/pay.js' import { umsDiff, umsOrder, umsState, dgPay, diffDgPay } from '@/apis/interfaces/pay.js'
export default { export default {
data() { data() {
return { return {
payTypeVal : 'alipay', // 支付方式 payTypeVal : 'alipay', // 支付方式
tradeId : '', // 查询id tradeId : '', // 查询id
jumpUrlDg : '', // 抖巩支付 jumpUrlDg : '', // 抖巩支付
getState : false, // 查询支付结果 getState : false, // 查询支付结果
token : '', // 用户token token : '', // 用户token
style : '', // 支付类型 style : '', // 支付类型
price : '', // 价格 price : '', // 价格
disabled : false // 按钮状态 disabled : false // 按钮状态
} }
}, },
onLoad() { onLoad() {
// new VConsole(); // new VConsole();
}, },
onShow() { onShow() {
if(this.getState && this.tradeId != ''){ if(this.getState && this.tradeId != ''){
this.getUmsState(this.tradeId) this.getUmsState(this.tradeId)
} }
this.token = this.$store.getters.getToken this.token = this.$store.getters.getToken
this.style = this.$Route.query.style this.style = this.$Route.query.style
this.price = this.$Route.query.price this.price = this.$Route.query.price
this.remark = this.$Route.query.remark this.remark = this.$Route.query.remark
}, },
methods: { methods: {
// 查询支付结果 // 查询支付结果
getUmsState(tradeId){ getUmsState(tradeId){
uni.showLoading({ uni.showLoading({
title: '查询支付结果...', title: '查询支付结果...',
mask : true mask : true
}) })
let outTime; let outTime;
let resNumb = 0; let resNumb = 0;
outTime = setInterval(() => { outTime = setInterval(() => {
if(resNumb >= 3){ if(resNumb >= 3){
clearInterval(outTime) clearInterval(outTime)
uni.showToast({ uni.showToast({
title: "查询支付结果失败", title: "查询支付结果失败",
icon : "none", icon : "none",
mask : true mask : true
}) })
return return
} }
umsState(tradeId).then(res => { umsState(tradeId).then(res => {
resNumb++ resNumb++
if(res.state === 'success'){ if(res.state === 'success'){
clearInterval(outTime) clearInterval(outTime)
uni.hideLoading() uni.hideLoading()
this.$Router.replace({name: 'sheetPoint'}) this.$Router.replace({name: 'sheetPoint'})
} }
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, 2000) }, 2000)
}, },
// 支付 // 支付
payChick(){ payChick(){
switch(this.payTypeVal){ switch(this.payTypeVal){
case '': case '':
uni.showToast({ uni.showToast({
title: '请选择支付方式', title: '请选择支付方式',
icon : 'none' icon : 'none'
}) })
break; break;
case 'wxpay': case 'wxpay':
this.payClick() this.payClick()
break; break;
case 'alipay': case 'alipay':
this.onUmsPay('mp_alipay') this.onUmsPay('mp_alipay')
break; break;
case 'dgwxalipay': case 'dgwxalipay':
this.dgwxPay('mp_alipay') this.dgwxPay('mp_alipay')
break; break;
} }
this.showPayMenu = false this.showPayMenu = false
}, },
// 抖供支付 // 抖供支付
payChickDg() { payChickDg() {
window.location.href = this.jumpUrlDg.scheme_code window.location.href = this.jumpUrlDg.scheme_code
}, },
// 第三方差价支付 // 第三方差价支付
onUmsPay(type){ onUmsPay(type){
let umsFun = this.style == 'chajia' ? umsDiff : umsOrder let umsFun = this.style == 'chajia' ? umsDiff : umsOrder
umsFun(this.$Route.query.id, {type}).then(res => { umsFun(this.$Route.query.id, {type}).then(res => {
this.getState = true this.getState = true
switch (type){ switch (type){
case 'mp': case 'mp':
this.tradeId = res.trade_id this.tradeId = res.trade_id
this.payTypeVal = 'umsWx' this.payTypeVal = 'umsWx'
break; break;
case 'mp_alipay': case 'mp_alipay':
this.tradeId = res.trade_id this.tradeId = res.trade_id
window.location.href = res.alipay window.location.href = res.alipay
break; break;
} }
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, },
// 斗拱支付 // 斗拱支付
dgwxPay(type){ dgwxPay(type){
uni.showLoading({ uni.showLoading({
title: '加载中...', title: '加载中...',
mask : true mask : true
}) })
let umsFun = this.style == 'chajia' ? dgPay : diffDgPay let umsFun = this.style == 'chajia' ? dgPay : diffDgPay
dgPay(this.$Route.query.id, {type, app_schema: 'weixin://'}).then(res => { dgPay(this.$Route.query.id, {type, app_schema: 'weixin://'}).then(res => {
let { params, trade_id } = res; let { params, trade_id } = res;
this.getState = true this.getState = true
uni.hideLoading() uni.hideLoading()
switch (type){ switch (type){
case 'mp': case 'mp':
this.tradeId = trade_id this.tradeId = trade_id
this.jumpUrlDg = JSON.parse(params.miniapp_data) this.jumpUrlDg = JSON.parse(params.miniapp_data)
this.payTypeVal = 'dgwx' this.payTypeVal = 'dgwx'
break; break;
case 'mp_alipay': case 'mp_alipay':
this.tradeId = trade_id this.tradeId = trade_id
// window.location.href = 'https://ds.alipay.com/?scheme=' + encodeURIComponent(params.jump_url) // window.location.href = 'https://ds.alipay.com/?scheme=' + encodeURIComponent(params.jump_url)
window.location.href = `https://ds.alipay.com/?scheme=` + encodeURIComponent(params.jump_url) window.location.href = `https://ds.alipay.com/?scheme=` + encodeURIComponent(params.jump_url)
this.payTypeVal = 'dgwxalipay' this.payTypeVal = 'dgwxalipay'
break; break;
} }
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, },
//咨询服务费 - 微信支付 //咨询服务费 - 微信支付
payClick() { payClick() {
let newOpenId = uni.getStorageSync('openId') let newOpenId = uni.getStorageSync('openId')
if(newOpenId) { if(newOpenId) {
let NewUrl = '' let NewUrl = ''
if(this.$Route.query.style == 'daijiao') { if(this.$Route.query.style == 'daijiao') {
NewUrl = applyPay NewUrl = applyPay
} else { } else {
NewUrl = diffPay NewUrl = diffPay
} }
NewUrl(this.$Route.query.id, { NewUrl(this.$Route.query.id, {
openid : newOpenId openid : newOpenId
}).then(res => { }).then(res => {
let wxConfig = JSON.parse(res.wechat) let wxConfig = JSON.parse(res.wechat)
jweixin.config({ jweixin.config({
appId: wxConfig.appId, appId: wxConfig.appId,
debug: false, debug: false,
jsApiList: ['chooseWXPay'], jsApiList: ['chooseWXPay'],
signature: wxConfig.signature, signature: wxConfig.signature,
nonceStr: wxConfig.nonceStr, nonceStr: wxConfig.nonceStr,
timestamp: wxConfig.timestamp, timestamp: wxConfig.timestamp,
}) })
jweixin.ready(() => { jweixin.ready(() => {
jweixin.chooseWXPay({ jweixin.chooseWXPay({
timestamp: wxConfig.timeStamp, timestamp: wxConfig.timeStamp,
nonceStr: wxConfig.nonceStr, nonceStr: wxConfig.nonceStr,
package: wxConfig.package, package: wxConfig.package,
signType: wxConfig.signType, signType: wxConfig.signType,
paySign: wxConfig.paySign, paySign: wxConfig.paySign,
success: payRes => { success: payRes => {
// 先跳支付成功 // 先跳支付成功
uni.showToast({ uni.showToast({
title: '支付成功', title: '支付成功',
icon: "none" icon: "none"
}) })
this.disabled = true this.disabled = true
setTimeout(()=>{ setTimeout(()=>{
this.$Router.replace({name: 'sheetPoint'}) this.$Router.replace({name: 'sheetPoint'})
},3000) },3000)
}, },
cancel: payCancel => { cancel: payCancel => {
// 跳到咨询单 // 跳到咨询单
this.$Router.replace({name: 'sheetIndex'}) this.$Router.replace({name: 'sheetIndex'})
}, },
fail: payfail => { fail: payfail => {
// 取消支付 // 取消支付
uni.showToast({ uni.showToast({
title: '取消支付', title: '取消支付',
icon: 'none' icon: 'none'
}) })
this.disabled = true this.disabled = true
setTimeout(()=>{ setTimeout(()=>{
this.$Router.replace({name: 'User'}) this.$Router.replace({name: 'User'})
},1000) },1000)
} }
}); });
}); });
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
return return
} }
// 获取微信授权信息-获取oppid // 获取微信授权信息-获取oppid
authFollow({ authFollow({
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price // url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.paymentTop { .paymentTop {
background-color: #dc7f8b; background-color: #dc7f8b;
padding: $padding * 2 $padding * 2 $padding * 4; padding: $padding * 2 $padding * 2 $padding * 4;
box-sizing: border-box; box-sizing: border-box;
display: flex; display: flex;
color: #ffffff; color: #ffffff;
.paymentTop-name { .paymentTop-name {
flex: 1; flex: 1;
font-size: $title-size + 10; font-size: $title-size + 10;
text { text {
margin-top: 20rpx; margin-top: 20rpx;
display: block; display: block;
font-size: $title-size-sm; font-size: $title-size-sm;
} }
} }
.paymentTop-img { .paymentTop-img {
width: 100rpx; width: 100rpx;
height: 100rpx; height: 100rpx;
} }
} }
.paymentShow { .paymentShow {
position: relative; position: relative;
top: -80rpx; top: -80rpx;
left: 0; left: 0;
width: 100%; width: 100%;
.paymentShow-img, .paymentShow-img,
.paymentShow-text{ .paymentShow-text{
position: absolute; position: absolute;
left: 30rpx; left: 30rpx;
top: 0; top: 0;
width: calc(100% - 60rpx); width: calc(100% - 60rpx);
} }
.paymentShow-text { .paymentShow-text {
padding: $padding $padding * 2 0; padding: $padding $padding * 2 0;
box-sizing: border-box; box-sizing: border-box;
} }
.paymentShow-top { .paymentShow-top {
display: flex; display: flex;
font-size: $title-size + 2; font-size: $title-size + 2;
line-height: 130rpx; line-height: 130rpx;
.paymentShow-top-name { .paymentShow-top-name {
flex: 1; flex: 1;
display: flex; display: flex;
color: #9a9a9a; color: #9a9a9a;
text { text {
color: #000000; color: #000000;
} }
} }
.paymentShow-top-price { .paymentShow-top-price {
color: $mian-color; color: $mian-color;
} }
} }
.paymentShow-tips { .paymentShow-tips {
margin-bottom: $margin + 10; margin-bottom: $margin + 10;
color: #9a9a9a; color: #9a9a9a;
font-size: $title-size-lg; font-size: $title-size-lg;
} }
.paymentShow-coupon { .paymentShow-coupon {
display: flex; display: flex;
.paymentTop-icon { .paymentTop-icon {
width: 42rpx; width: 42rpx;
height: 42rpx; height: 42rpx;
} }
.paymentTop-usable { .paymentTop-usable {
flex: 1; flex: 1;
margin-left: 20rpx; margin-left: 20rpx;
text { text {
display: block; display: block;
color: #9a9a9a; color: #9a9a9a;
font-size: $title-size-sm; font-size: $title-size-sm;
line-height: 48rpx; line-height: 48rpx;
} }
} }
} }
} }
.paymentList-label { .paymentList-label {
line-height: 80rpx; line-height: 80rpx;
display: flex; display: flex;
} }
.paymentList-icon { .paymentList-icon {
width: 40rpx; width: 40rpx;
height: 40rpx; height: 40rpx;
margin-right: $margin - 10; margin-right: $margin - 10;
} }
.paymentList-img { .paymentList-img {
width: 34rpx; width: 34rpx;
height: 34rpx; height: 34rpx;
margin-top: 22rpx; margin-top: 22rpx;
margin-right: $margin - 10; margin-right: $margin - 10;
} }
.paymentBtn { .paymentBtn {
position: fixed; position: fixed;
bottom: $margin * 2; bottom: $margin * 2;
left: 0; left: 0;
text-align: center; text-align: center;
padding: 0 $padding 100rpx; padding: 0 $padding 100rpx;
box-sizing: border-box; box-sizing: border-box;
width: 100%; width: 100%;
.paymentBtn-go { .paymentBtn-go {
width: 70% !important; width: 70% !important;
background-color: $mian-color; background-color: $mian-color;
color: #ffffff; color: #ffffff;
border-radius: 10rpx; border-radius: 10rpx;
line-height: 94rpx; line-height: 94rpx;
font-size: $title-size + 2; font-size: $title-size + 2;
&[disabled] { &[disabled] {
background-color: #eba5a5; background-color: #eba5a5;
} }
} }
} }
</style> </style>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,499 +1,499 @@
<template> <template>
<view class="content"> <view class="content">
<image class="expandImg" src="https://cdn.douhuofalv.com/images/2023/04/19/df2ecf6ece3e59de1d51c4ad09aa68f3.jpg" mode="widthFix"></image> <image class="expandImg" src="https://cdn.douhuofalv.com/images/2023/04/19/df2ecf6ece3e59de1d51c4ad09aa68f3.jpg" mode="widthFix"></image>
<view class="list"> <view class="list">
<view class="list-title"> <view class="list-title">
<view class="list-title-number">expand</view> <view class="list-title-number">expand</view>
<view class="list-title-name">法律服务拓展包</view> <view class="list-title-name">法律服务拓展包</view>
<view class="list-title-trim"></view> <view class="list-title-trim"></view>
</view> </view>
<view class="list-item"> <view class="list-item">
<!-- @click="seekClick(item.expand_id)" --> <!-- @click="seekClick(item.expand_id)" -->
<view class="list-label" v-for="(item, index) in entrustArr" :key="index"> <view class="list-label" v-for="(item, index) in entrustArr" :key="index">
<view class="list-label-name"> <view class="list-label-name">
{{item.title}} {{item.title}}
</view> </view>
<view class="list-label-price"><rich-text :nodes="item.content"></rich-text></view> <view class="list-label-price"><rich-text :nodes="item.content"></rich-text></view>
<!-- <view class="list-label-go">购买</view> --> <!-- <view class="list-label-go">购买</view> -->
<!-- data[0].order.status --> <!-- data[0].order.status -->
<view class="list-label-go" :class="{'hide': item.button_status === 2}" @click="onBtn(index)"> <view class="list-label-go" :class="{'hide': item.button_status === 2}" @click="onBtn(index)">
<text v-if="item.button_status === 0">购买</text> <text v-if="item.button_status === 0">购买</text>
<text v-if="item.button_status === 1">等待支付</text> <text v-if="item.button_status === 1">等待支付</text>
<text v-if="item.button_status === 2">待审核</text> <text v-if="item.button_status === 2">待审核</text>
<text v-if="item.button_status === 3">审核驳回</text> <text v-if="item.button_status === 3">审核驳回</text>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<image class="expandBttom" src="https://cdn.douhuofalv.com/images/2023/04/17/fc4cad00a630e3d69b3f486e9d2937e9.png" mode="widthFix"></image> <image class="expandBttom" src="https://cdn.douhuofalv.com/images/2023/04/17/fc4cad00a630e3d69b3f486e9d2937e9.png" mode="widthFix"></image>
<!-- 关注公众号 --> <!-- 关注公众号 -->
<view class="tipsBack" v-if="generalShow"></view> <view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow"> <view class="tipsCont" v-if="generalShow">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image> <image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image>
<view class="tipsWhite-top"> <view class="tipsWhite-top">
<view class="tipsWhite-name"> <view class="tipsWhite-name">
请您先关注抖火法律咨询公众号 请您先关注抖火法律咨询公众号
</view> </view>
<view class="tipsWhite-text"> <view class="tipsWhite-text">
关注后可立即下单 关注后可立即下单
</view> </view>
</view> </view>
<view class="tipsWhite-btn"> <view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false"> <view class="tipsWhite-btn-go" @click="generalShow = false">
稍后关注 稍后关注
</view> </view>
<view class="tipsWhite-btn-go" @click="judgeGeneral"> <view class="tipsWhite-btn-go" @click="judgeGeneral">
马上关注 马上关注
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<!-- 打款凭证弹出 --> <!-- 打款凭证弹出 -->
<view class="voucherBack" :class="{active : voucherState}"></view> <view class="voucherBack" :class="{active : voucherState}"></view>
<view class="voucherPop" :class="{active : voucherState}"> <view class="voucherPop" :class="{active : voucherState}">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="voucherPop-img" src="https://cdn.douhuofalv.com/images/2023/04/17/f4a3c45fe9aa7db143a362fc5b13b31d.png" mode="widthFix"></image> <image class="voucherPop-img" src="https://cdn.douhuofalv.com/images/2023/04/17/f4a3c45fe9aa7db143a362fc5b13b31d.png" mode="widthFix"></image>
<view class="voucherPop-title"> <view class="voucherPop-title">
<view class="voucherPop-name">支付提示</view> <view class="voucherPop-name">支付提示</view>
<view class="voucherPop-text">抱歉此订单不支持线上支付请上传打款凭证</view> <view class="voucherPop-text">抱歉此订单不支持线上支付请上传打款凭证</view>
<view class="voucherPop-btn"> <view class="voucherPop-btn">
<!-- @click="cancelPay" --> <!-- @click="cancelPay" -->
<view class="voucherPop-go" @click="voucherState = false"> <view class="voucherPop-go" @click="voucherState = false">
暂不支付 暂不支付
</view> </view>
<view class="voucherPop-go voucherPop-up" @click="clickOpen"> <view class="voucherPop-go voucherPop-up" @click="clickOpen">
上传凭证 上传凭证
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { judgeReal } from '@/apis/interfaces/user' import { judgeReal } from '@/apis/interfaces/user'
import { authFollow } from '@/apis/interfaces/index' import { authFollow } from '@/apis/interfaces/index'
import { expandsList } from '@/apis/interfaces/synthesis' import { expandsList } from '@/apis/interfaces/synthesis'
export default { export default {
data() { data() {
return { return {
entrustArr : [], //案件委托列表 entrustArr : [], //案件委托列表
generalShow : false, generalShow : false,
voucherState : false, // 上传凭证弹出// 公众号 voucherState : false, // 上传凭证弹出// 公众号
orderId : '', // 订单 ID orderId : '', // 订单 ID
orderType : '', // 订单类型 orderType : '', // 订单类型
orderPrice : '', // 订单金额 orderPrice : '', // 订单金额
} }
}, },
created() {}, created() {},
onShow() { onShow() {
// 获取-案件委托-列表 // 获取-案件委托-列表
this.yearServe(); this.yearServe();
}, },
methods: { methods: {
// 案件委托-列表 // 案件委托-列表
yearServe(){ yearServe(){
expandsList().then(res => { expandsList().then(res => {
this.entrustArr = res this.entrustArr = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, },
// 点击开通按钮 // 点击开通按钮
onBtn(index){ onBtn(index){
let obj = this.entrustArr[index] let obj = this.entrustArr[index]
if(obj.order === null){ if(obj.order === null){
this.seekClick(obj.expand_id) this.seekClick(obj.expand_id)
return return
} }
// 0 购买 1 待支付 2 待审核 3 驳回 // 0 购买 1 待支付 2 待审核 3 驳回
switch (obj.button_status){ switch (obj.button_status){
case 0: case 0:
this.seekClick(obj.expand_id) this.seekClick(obj.expand_id)
break; break;
case 1: case 1:
this.expressSheet(obj.order.expand_order_id, obj.order.order_type, obj.order.can, obj.order.price) this.expressSheet(obj.order.expand_order_id, obj.order.order_type, obj.order.can, obj.order.price)
break; break;
case 2: case 2:
uni.showToast({ uni.showToast({
title: '打款凭证审核中,请耐心等待', title: '打款凭证审核中,请耐心等待',
icon : 'none' icon : 'none'
}) })
break; break;
case 3: case 3:
this.$Router.push({ this.$Router.push({
name : 'VoucherOpen', name : 'VoucherOpen',
params : { params : {
payId : obj.order.offline_pays.offline_pay_id, payId : obj.order.offline_pays.offline_pay_id,
type : 'edit', type : 'edit',
orderId : obj.order.order_id, orderId : obj.order.order_id,
orderType : obj.order.order_type.replace(/\\/g, '-'), orderType : obj.order.order_type.replace(/\\/g, '-'),
price : obj.price price : obj.price
} }
}) })
break; break;
} }
}, },
// 选择支付方式 // 选择支付方式
expressSheet(id, type, can, price) { expressSheet(id, type, can, price) {
this.orderId = id this.orderId = id
this.orderType = type this.orderType = type
this.orderPrice = price this.orderPrice = price
uni.showActionSheet({ uni.showActionSheet({
itemList: ['线上支付', '线下支付'], itemList: ['线上支付', '线下支付'],
success: sheetRes => { success: sheetRes => {
if(sheetRes.tapIndex == 0) { if(sheetRes.tapIndex == 0) {
if(can.online) { if(can.online) {
this.$Router.push({name: 'FeePay', params: {id: id, orderType: type, price: price, payForm: 'service'}}) this.$Router.push({name: 'FeePay', params: {id: id, orderType: type, price: price, payForm: 'service'}})
return return
} }
this.voucherState = true this.voucherState = true
} else if (sheetRes.tapIndex == 1) { } else if (sheetRes.tapIndex == 1) {
this.$Router.push({name: 'VoucherOpen', params: {orderId: id, orderType: type, price: price}}) this.$Router.push({name: 'VoucherOpen', params: {orderId: id, orderType: type, price: price}})
} }
}, },
fail: sheetFail => {} fail: sheetFail => {}
}) })
}, },
// 上传凭证 // 上传凭证
clickOpen() { clickOpen() {
this.voucherState = false this.voucherState = false
this.$Router.push({name: 'VoucherOpen', params: {orderId: this.orderId, orderType: this.orderType, price: this.orderPrice}}) this.$Router.push({name: 'VoucherOpen', params: {orderId: this.orderId, orderType: this.orderType, price: this.orderPrice}})
}, },
// 立即咨询 // 立即咨询
seekClick(entrustId) { seekClick(entrustId) {
// 判断是否认证 // 判断是否认证
judgeReal().then(res => { judgeReal().then(res => {
if(res.has_sign) { if(res.has_sign) {
if(!res.has_subscribe) { if(!res.has_subscribe) {
// 弹出公众号 // 弹出公众号
this.generalShow = true this.generalShow = true
} else { } else {
// 跳到咨询表单页 // 跳到咨询表单页
this.$Router.push({ this.$Router.push({
name: 'ExpandWrite', name: 'ExpandWrite',
params: { params: {
entrustId entrustId
} }
}) })
} }
return return
} }
// 跳到认证页面 // 跳到认证页面
this.$Router.replace({name: 'sheetIdcard'}) this.$Router.replace({name: 'sheetIdcard'})
}).catch( err => { }).catch( err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 状态 // 状态
judgeGeneral(){ judgeGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webview/webCode' // url: 'https://web.douhuofalv.com/webview/webCode'
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
// 关闭公众号 // 关闭公众号
this.generalShow = false this.generalShow = false
}, },
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.content { .content {
background-color: #121d4c; background-color: #121d4c;
} }
.expandImg, .expandImg,
.expandBttom{ .expandBttom{
width: 100%; width: 100%;
display: block; display: block;
} }
.list { .list {
padding: 0 30rpx 30rpx; padding: 0 30rpx 30rpx;
box-sizing: border-box; box-sizing: border-box;
background-color: #121d4c; background-color: #121d4c;
.list-title { .list-title {
font-size: 36rpx; font-size: 36rpx;
margin-bottom: 40rpx; margin-bottom: 40rpx;
color: #ffffff; color: #ffffff;
.list-title-trim { .list-title-trim {
position: relative; position: relative;
left: 390rpx; left: 390rpx;
bottom: 28rpx; bottom: 28rpx;
background-color: #2f3aae; background-color: #2f3aae;
width: 35%; width: 35%;
height: 4rpx; height: 4rpx;
padding-left: 40rpx; padding-left: 40rpx;
box-sizing: border-box; box-sizing: border-box;
&::after { &::after {
position: absolute; position: absolute;
content: ''; content: '';
left: -50rpx; left: -50rpx;
top: -10rpx; top: -10rpx;
width: 20rpx; width: 20rpx;
height: 20rpx; height: 20rpx;
transform:rotate(45deg); transform:rotate(45deg);
background-color: #2f3aae; background-color: #2f3aae;
} }
} }
.list-title-number { .list-title-number {
font-weight: 600; font-weight: 600;
font-size: 58rpx; font-size: 58rpx;
background-image: -webkit-linear-gradient(top,#ffffff 40%, transparent 70%); background-image: -webkit-linear-gradient(top,#ffffff 40%, transparent 70%);
-webkit-background-clip:text; -webkit-background-clip:text;
-webkit-text-fill-color:transparent; -webkit-text-fill-color:transparent;
text-transform: uppercase; text-transform: uppercase;
} }
.list-title-name { .list-title-name {
font-size: 44rpx; font-size: 44rpx;
margin-top: -20rpx; margin-top: -20rpx;
width: 390rpx; width: 390rpx;
} }
} }
.list-item { .list-item {
position: relative; position: relative;
padding-left: 100rpx; padding-left: 100rpx;
box-sizing: border-box; box-sizing: border-box;
&::after { &::after {
position: absolute; position: absolute;
content: ''; content: '';
left: 10rpx; left: 10rpx;
top: 0; top: 0;
border-left: 4rpx dashed #3b46d6; border-left: 4rpx dashed #3b46d6;
width: 0; width: 0;
height: calc(100% - 64rpx); height: calc(100% - 64rpx);
} }
.list-label { .list-label {
background-image: linear-gradient(to right,#3d48dd, #1f2a6f); background-image: linear-gradient(to right,#3d48dd, #1f2a6f);
padding: 15rpx 40rpx 15rpx 90rpx; padding: 15rpx 40rpx 15rpx 90rpx;
box-sizing: border-box; box-sizing: border-box;
border-radius: 80rpx 15rpx 15rpx 80rpx; border-radius: 80rpx 15rpx 15rpx 80rpx;
margin-bottom: 30rpx; margin-bottom: 30rpx;
color: #ffffff; color: #ffffff;
position: relative; position: relative;
&::before { &::before {
position: absolute; position: absolute;
content: ''; content: '';
left: -88rpx; left: -88rpx;
top: calc(50% - 1rpx); top: calc(50% - 1rpx);
border-bottom: 4rpx dashed #3b46d6; border-bottom: 4rpx dashed #3b46d6;
width: 60rpx; width: 60rpx;
height: 0; height: 0;
} }
&::after { &::after {
position: absolute; position: absolute;
content: ''; content: '';
left: 40rpx; left: 40rpx;
top: calc(50% - 9rpx); top: calc(50% - 9rpx);
background-color: #091443; background-color: #091443;
width: 18rpx; width: 18rpx;
height: 18rpx; height: 18rpx;
border-radius: 50%; border-radius: 50%;
} }
.list-label-name { .list-label-name {
margin-bottom: 5rpx; margin-bottom: 5rpx;
} }
.list-label-price { .list-label-price {
line-height: 48rpx; line-height: 48rpx;
} }
.list-label-go { .list-label-go {
position: absolute; position: absolute;
right: 30rpx; right: 30rpx;
top: 35rpx; top: 35rpx;
background-image: -webkit-linear-gradient(40deg,#f1c593, #fef9f2); background-image: -webkit-linear-gradient(40deg,#f1c593, #fef9f2);
color: #12053d; color: #12053d;
display: inline-block; display: inline-block;
line-height: 54rpx; line-height: 54rpx;
padding: 0 30rpx; padding: 0 30rpx;
border-radius: 54rpx; border-radius: 54rpx;
font-size: 26rpx; font-size: 26rpx;
font-weight: 600; font-weight: 600;
&.hide{ &.hide{
opacity: .7; opacity: .7;
} }
} }
} }
} }
} }
// 关注 // 关注
.tipsBack { .tipsBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 9; z-index: 9;
background-color: rgba(0, 0, 0, .8); background-color: rgba(0, 0, 0, .8);
} }
.tipsCont { .tipsCont {
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 10; z-index: 10;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
} }
.tipsWhite-top { .tipsWhite-top {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
} }
.tipsCont-img { .tipsCont-img {
width: 100%; width: 100%;
} }
.tipsWhite-name { .tipsWhite-name {
text-align: center; text-align: center;
color: #111111; color: #111111;
font-size: 34rpx; font-size: 34rpx;
font-weight: 600; font-weight: 600;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.tipsWhite-text { .tipsWhite-text {
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
line-height: 48rpx; line-height: 48rpx;
} }
.tipsWhite-btn { .tipsWhite-btn {
display: flex; display: flex;
padding: $padding 10rpx; padding: $padding 10rpx;
box-sizing: border-box; box-sizing: border-box;
.tipsWhite-btn-go { .tipsWhite-btn-go {
flex: 2; flex: 2;
color: #fff; color: #fff;
margin: 0 15rpx; margin: 0 15rpx;
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
text-align: center; text-align: center;
border: 2rpx solid #F6F6F6; border: 2rpx solid #F6F6F6;
background-color: #007df5; background-color: #007df5;
border-radius: $radius-m; border-radius: $radius-m;
&:first-child { &:first-child {
color: #333333; color: #333333;
background-color: #ffffff; background-color: #ffffff;
border: 2rpx solid #cccccc; border: 2rpx solid #cccccc;
} }
} }
} }
// 打款凭证弹出 // 打款凭证弹出
.voucherBack { .voucherBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 99; z-index: 99;
background-color: rgba(0, 0, 0, .6); background-color: rgba(0, 0, 0, .6);
display: none; display: none;
&.active { &.active {
display: block; display: block;
} }
} }
.voucherPop { .voucherPop {
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 100; z-index: 100;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
display: none; display: none;
&.active { &.active {
display: -webkit-box; display: -webkit-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
position: relative; position: relative;
.voucherPop-img { .voucherPop-img {
position: absolute !important; position: absolute !important;
top: -80rpx; top: -80rpx;
right: calc(50% - 100rpx); right: calc(50% - 100rpx);
width: 200rpx; width: 200rpx;
} }
.voucherPop-title { .voucherPop-title {
box-sizing: border-box; box-sizing: border-box;
padding: 50rpx 70rpx; padding: 50rpx 70rpx;
margin-top: 100rpx; margin-top: 100rpx;
text-align: center; text-align: center;
.voucherPop-name { .voucherPop-name {
font-weight: 600; font-weight: 600;
font-size: 38rpx; font-size: 38rpx;
} }
.voucherPop-text { .voucherPop-text {
padding: 30rpx 0 35rpx; padding: 30rpx 0 35rpx;
line-height: 44rpx; line-height: 44rpx;
} }
.voucherPop-btn { .voucherPop-btn {
display: flex; display: flex;
.voucherPop-go { .voucherPop-go {
flex: 2; flex: 2;
text-align: center; text-align: center;
border: 2rpx solid #da2b56; border: 2rpx solid #da2b56;
color: #da2b56; color: #da2b56;
margin: 0 15rpx; margin: 0 15rpx;
line-height: 74rpx; line-height: 74rpx;
border-radius: 10rpx; border-radius: 10rpx;
background-color: #ffffff; background-color: #ffffff;
&.voucherPop-up { &.voucherPop-up {
background-color: #da2b56; background-color: #da2b56;
color: #ffffff; color: #ffffff;
} }
} }
} }
} }
} }
} }
</style> </style>

File diff suppressed because it is too large Load Diff

View File

@@ -61,7 +61,7 @@
<!-- web.douhuotest.douhuofalv dev=0是线上 dev=1是线下 --> <!-- web.douhuotest.douhuofalv dev=0是线上 dev=1是线下 -->
<wx-open-launch-weapp <wx-open-launch-weapp
username="gh_918c81628d6f" username="gh_918c81628d6f"
:path="'pages/pay/pay?type=h5&dev=0&trade_id=' + tradeId + '&token=' + token" :path="'pages/pay/pay?type=h5&dev=1&trade_id=' + tradeId + '&token=' + token"
> >
<script type="text/wxtag-template"> <script type="text/wxtag-template">
<style> <style>
@@ -349,8 +349,8 @@
// 获取微信授权信息-获取oppid // 获取微信授权信息-获取oppid
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price // url: 'https://web.douhuofalv.com/webWechat/index?id=' + this.$Route.query.id + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
// url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.orderId + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price url: 'https://web.douhuotest.douhuofalv.com/webWechat/index?id=' + this.orderId + '&style=' + this.$Route.query.style + '&price=' + this.$Route.query.price
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,492 +1,492 @@
<template> <template>
<view class="content"> <view class="content">
<view class="orderFixed"> <view class="orderFixed">
<view class="orderTab"> <view class="orderTab">
<view class="orderTab-item" :class="{active : yearType == 1}" @click="tabClick('1')"> <view class="orderTab-item" :class="{active : yearType == 1}" @click="tabClick('1')">
<text>个人年费单</text> <text>个人年费单</text>
</view> </view>
<view class="orderTab-item" :class="{active : yearType == 2}" @click="tabClick('2')"> <view class="orderTab-item" :class="{active : yearType == 2}" @click="tabClick('2')">
<text>企业年费单</text> <text>企业年费单</text>
</view> </view>
</view> </view>
<view class="orderState"> <view class="orderState">
<view class="orderState-item" :class="{active : yearStatus == 0}" @click="stateClick('0')"> <view class="orderState-item" :class="{active : yearStatus == 0}" @click="stateClick('0')">
<text>待支付</text> <text>待支付</text>
</view> </view>
<view class="orderState-item" :class="{active : yearStatus == 1}" @click="stateClick('1')"> <view class="orderState-item" :class="{active : yearStatus == 1}" @click="stateClick('1')">
<text>待签约</text> <text>待签约</text>
</view> </view>
<view class="orderState-item" :class="{active : yearStatus == 2}" @click="stateClick('2')"> <view class="orderState-item" :class="{active : yearStatus == 2}" @click="stateClick('2')">
<text>已签约</text> <text>已签约</text>
</view> </view>
<view class="orderState-item" :class="{active : yearStatus == 4}" @click="stateClick('4')"> <view class="orderState-item" :class="{active : yearStatus == 4}" @click="stateClick('4')">
<text>已退款</text> <text>已退款</text>
</view> </view>
</view> </view>
</view> </view>
<view class="list" v-if="yearArr.length > 0"> <view class="list" v-if="yearArr.length > 0">
<view class="listItem" v-for="(item, index) in yearArr" :key="index"> <view class="listItem" v-for="(item, index) in yearArr" :key="index">
<view class="listItem-no"> <view class="listItem-no">
订单号{{item.order_no}} 订单号{{item.order_no}}
</view> </view>
<view class="listItem-cont"> <view class="listItem-cont">
<view class="listItem-cont-label"> <view class="listItem-cont-label">
<view class="listItem-cont-name"> <view class="listItem-cont-name">
订单状态 订单状态
</view> </view>
<view class="listItem-cont-text listItem-cont-status"> <view class="listItem-cont-text listItem-cont-status">
{{item.status.text}} {{item.status.text}}
</view> </view>
</view> </view>
<view class="listItem-cont-label"> <view class="listItem-cont-label">
<view class="listItem-cont-name"> <view class="listItem-cont-name">
订单金额 订单金额
</view> </view>
<view class="listItem-cont-text listItem-cont-price"> <view class="listItem-cont-text listItem-cont-price">
{{item.total}} {{item.total}}
</view> </view>
</view> </view>
<view class="listItem-cont-label" v-if="item.can.lawyer_status != 0"> <view class="listItem-cont-label" v-if="item.can.lawyer_status != 0">
<view class="listItem-cont-name"> <view class="listItem-cont-name">
律师匹配 律师匹配
</view> </view>
<view class="listItem-cont-text listItem-cont-price"> <view class="listItem-cont-text listItem-cont-price">
<block v-if="item.can.lawyer_status == 1">待匹配律师</block> <block v-if="item.can.lawyer_status == 1">待匹配律师</block>
<block v-else-if="item.can.lawyer_status == 2">已匹配律师</block> <block v-else-if="item.can.lawyer_status == 2">已匹配律师</block>
</view> </view>
</view> </view>
<view class="listItem-cont-label"> <view class="listItem-cont-label">
<view class="listItem-cont-name"> <view class="listItem-cont-name">
下单时间 下单时间
</view> </view>
<view class="listItem-cont-text listItem-cont-price"> <view class="listItem-cont-text listItem-cont-price">
{{item.created_at}} {{item.created_at}}
</view> </view>
</view> </view>
</view> </view>
<view class="listItem-labor"> <view class="listItem-labor">
<view class="listItem-labor-time"> <view class="listItem-labor-time">
<view @click="operateMore(item.order_id)" v-if="item.can.cancel">更多</view> <view @click="operateMore(item.order_id)" v-if="item.can.cancel">更多</view>
</view> </view>
<view class="listItem-labor-btn"> <view class="listItem-labor-btn">
<view v-if="item.can.sign" @click="esignClick(item.order_id, item.order_type)" class="listItem-labor-go"> <view v-if="item.can.sign" @click="esignClick(item.order_id, item.order_type)" class="listItem-labor-go">
去签约 去签约
</view> </view>
<view v-if="item.can.pay_status == 1" @click="expressSheet(item.service_order_id, item.order_type, item.can, item.price)" class="listItem-labor-go"> <view v-if="item.can.pay_status == 1" @click="expressSheet(item.service_order_id, item.order_type, item.can, item.price)" class="listItem-labor-go">
去支付 去支付
</view> </view>
<view class="listItem-labor-go active" v-else-if="item.can.pay_status == 2">等待审核</view> <view class="listItem-labor-go active" v-else-if="item.can.pay_status == 2">等待审核</view>
<view class="listItem-labor-go" v-else-if="item.can.pay_status == 3" @click="$Router.push({name: 'VoucherOpen', params: {payId: item.offline_pays.offline_pay_id, orderId: item.service_order_id, price: item.price, orderType: item.order_type, type: 'edit'}})">审核驳回</view> <view class="listItem-labor-go" v-else-if="item.can.pay_status == 3" @click="$Router.push({name: 'VoucherOpen', params: {payId: item.offline_pays.offline_pay_id, orderId: item.service_order_id, price: item.price, orderType: item.order_type, type: 'edit'}})">审核驳回</view>
<view @click="$Router.push({name: 'YearConfirm', params: {servicesId: item.service_order_id}})" class="listItem-labor-go yellow"> <view @click="$Router.push({name: 'YearConfirm', params: {servicesId: item.service_order_id}})" class="listItem-labor-go yellow">
查看详情 查看详情
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="pack-center pages-hint" v-else> <view class="pack-center pages-hint" v-else>
<image src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/7ad417d0c215db601b8e1bead05c3a5e.png"></image> <image src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/7ad417d0c215db601b8e1bead05c3a5e.png"></image>
<view>暂无订单</view> <view>暂无订单</view>
</view> </view>
<!-- 打款凭证弹出 --> <!-- 打款凭证弹出 -->
<view class="voucherBack" :class="{active : voucherState}"></view> <view class="voucherBack" :class="{active : voucherState}"></view>
<view class="voucherPop" :class="{active : voucherState}"> <view class="voucherPop" :class="{active : voucherState}">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="voucherPop-img" src="https://cdn.douhuofalv.com/images/2023/04/17/f4a3c45fe9aa7db143a362fc5b13b31d.png" mode="widthFix"></image> <image class="voucherPop-img" src="https://cdn.douhuofalv.com/images/2023/04/17/f4a3c45fe9aa7db143a362fc5b13b31d.png" mode="widthFix"></image>
<view class="voucherPop-title"> <view class="voucherPop-title">
<view class="voucherPop-name">支付提示</view> <view class="voucherPop-name">支付提示</view>
<view class="voucherPop-text">抱歉此订单不支持线上支付请上传打款凭证</view> <view class="voucherPop-text">抱歉此订单不支持线上支付请上传打款凭证</view>
<view class="voucherPop-btn"> <view class="voucherPop-btn">
<view class="voucherPop-go" @click="voucherState = false"> <view class="voucherPop-go" @click="voucherState = false">
暂不支付 暂不支付
</view> </view>
<view class="voucherPop-go voucherPop-up" @click="clickOpen"> <view class="voucherPop-go voucherPop-up" @click="clickOpen">
上传凭证 上传凭证
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { yearOrder, esignUrl, yearCancel } from '@/apis/interfaces/synthesis' import { yearOrder, esignUrl, yearCancel } from '@/apis/interfaces/synthesis'
export default { export default {
data() { data() {
return { return {
yearType : 1, // 1 个人 2 企业 yearType : 1, // 1 个人 2 企业
yearStatus : 0, // 0 未付款 1 2 yearStatus : 0, // 0 未付款 1 2
yearArr : [], // 年费咨询单列表 yearArr : [], // 年费咨询单列表
orderId : '', // 订单 ID orderId : '', // 订单 ID
orderType : '', // 订单类型 orderType : '', // 订单类型
orderPrice : '', // 订单金额 orderPrice : '', // 订单金额
page : {}, // 分页信息 page : {}, // 分页信息
lodingStats : false, // 加载状态 lodingStats : false, // 加载状态
voucherState : false, // 上传凭证弹出 voucherState : false, // 上传凭证弹出
} }
}, },
created() { created() {
this.yearType = this.$Route.query.yearType || 1 this.yearType = this.$Route.query.yearType || 1
}, },
onShow() { onShow() {
// 获取-年费咨询单列表 // 获取-年费咨询单列表
this.yearServe(); this.yearServe();
}, },
methods: { methods: {
// 年费咨询单列表 // 年费咨询单列表
yearServe(page){ yearServe(page){
yearOrder({ yearOrder({
type : this.yearType, type : this.yearType,
status : this.yearStatus, status : this.yearStatus,
page: page || 1 page: page || 1
}).then(res => { }).then(res => {
let esArr = res.data let esArr = res.data
let list = this.yearArr, let list = this.yearArr,
newData = [] newData = []
if(page == 1 || page == undefined) list = [] if(page == 1 || page == undefined) list = []
newData = list.concat(esArr) newData = list.concat(esArr)
this.yearArr = newData this.yearArr = newData
this.page = res.page this.page = res.page
this.lodingStats = false this.lodingStats = false
uni.stopPullDownRefresh() uni.stopPullDownRefresh()
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, },
// 类型选择 // 类型选择
tabClick(type) { tabClick(type) {
this.yearType = type this.yearType = type
// 获取-年费咨询单列表 // 获取-年费咨询单列表
this.yearServe(); this.yearServe();
}, },
// 状态选择 // 状态选择
stateClick(state) { stateClick(state) {
this.yearStatus = state this.yearStatus = state
// 获取-年费咨询单列表 // 获取-年费咨询单列表
this.yearServe(); this.yearServe();
}, },
// 选择支付方式 // 选择支付方式
expressSheet(id, type, can, price) { expressSheet(id, type, can, price) {
this.orderId = id this.orderId = id
this.orderType = type this.orderType = type
this.orderPrice = price this.orderPrice = price
uni.showActionSheet({ uni.showActionSheet({
itemList: ['线上支付', '线下支付'], itemList: ['线上支付', '线下支付'],
success: sheetRes => { success: sheetRes => {
if(sheetRes.tapIndex == 0) { if(sheetRes.tapIndex == 0) {
if(can.online) { if(can.online) {
this.$Router.push({name: 'FeePay', params: {id: id, orderType: type, price: price, payForm: 'service'}}) this.$Router.push({name: 'FeePay', params: {id: id, orderType: type, price: price, payForm: 'service'}})
return return
} }
this.voucherState = true this.voucherState = true
} else if (sheetRes.tapIndex == 1) { } else if (sheetRes.tapIndex == 1) {
this.$Router.push({name: 'VoucherOpen', params: {orderId: id, orderType: type, price: price}}) this.$Router.push({name: 'VoucherOpen', params: {orderId: id, orderType: type, price: price}})
} }
}, },
fail: sheetFail => { fail: sheetFail => {
uni.showToast({ uni.showToast({
title: '取消支付', title: '取消支付',
icon : 'none' icon : 'none'
}) })
} }
}) })
}, },
// 上传凭证 // 上传凭证
clickOpen() { clickOpen() {
this.voucherState = false this.voucherState = false
this.$Router.push({name: 'VoucherOpen', params: {orderId: this.orderId, orderType: this.orderType, price: this.orderPrice}}) this.$Router.push({name: 'VoucherOpen', params: {orderId: this.orderId, orderType: this.orderType, price: this.orderPrice}})
}, },
// 去签约 // 去签约
esignClick(id,type) { esignClick(id,type) {
esignUrl({ esignUrl({
order_id : id, order_id : id,
order_type: type, order_type: type,
redirect_url: "https://web.douhuofalv.com/user/index", // redirect_url: "https://web.douhuofalv.com/user/index",
// redirect_url: "https://web.douhuotest.douhuofalv.com/user/index", redirect_url: "https://web.douhuotest.douhuofalv.com/user/index",
channel : 'h5', channel : 'h5',
app_scheme : '' app_scheme : ''
}).then(res => { }).then(res => {
window.location.href= res.sign_url window.location.href= res.sign_url
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 更多操作 // 更多操作
operateMore(id) { operateMore(id) {
wx.showActionSheet({ wx.showActionSheet({
itemList: ['取消订单'], itemList: ['取消订单'],
success: ()=> { success: ()=> {
wx.showModal({ wx.showModal({
title : '提示', title : '提示',
content : '是否取消订单', content : '是否取消订单',
success : res=> { success : res=> {
if (res.confirm) { if (res.confirm) {
yearCancel(id).then(res => { yearCancel(id).then(res => {
wx.showToast({ wx.showToast({
title:'取消成功', title:'取消成功',
icon:'none' icon:'none'
}) })
// 获取-年费咨询单列表 // 获取-年费咨询单列表
this.yearServe(); this.yearServe();
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
} }
} }
}) })
}, },
fail: err=> {} fail: err=> {}
}) })
}, },
// 页面相关事件处理函数--监听用户下拉动作 // 页面相关事件处理函数--监听用户下拉动作
onPullDownRefresh() { onPullDownRefresh() {
// 获取-年费咨询单列表 // 获取-年费咨询单列表
this.yearServe(); this.yearServe();
}, },
// 上拉加载 // 上拉加载
onReachBottom(){ onReachBottom(){
this.lodingStats = true this.lodingStats = true
let pageNumber = this.page.current let pageNumber = this.page.current
if(this.page.has_more){ if(this.page.has_more){
pageNumber++ pageNumber++
// 获取-年费咨询单列表 // 获取-年费咨询单列表
this.yearServe(pageNumber); this.yearServe(pageNumber);
} }
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.content { .content {
background-color: #f7f9fa; background-color: #f7f9fa;
overflow-y: scroll; overflow-y: scroll;
height: 100%; height: 100%;
position: absolute; position: absolute;
width: 100%; width: 100%;
} }
.orderFixed { .orderFixed {
position: fixed; position: fixed;
top: 44px; top: 44px;
left: 0; left: 0;
width: 100%; width: 100%;
z-index: 9; z-index: 9;
.orderTab { .orderTab {
height: 90rpx; height: 90rpx;
line-height: 90rpx; line-height: 90rpx;
background-color: white; background-color: white;
display: flex; display: flex;
.orderTab-item { .orderTab-item {
flex: 2; flex: 2;
text-align: center; text-align: center;
position: relative; position: relative;
color: #000000; color: #000000;
&::after { &::after {
position: absolute; position: absolute;
content: ''; content: '';
left: calc(50% - 25rpx); left: calc(50% - 25rpx);
bottom: 0; bottom: 0;
width: 50rpx; width: 50rpx;
height: 8rpx; height: 8rpx;
background-color: #da2b56; background-color: #da2b56;
display: none; display: none;
border-radius: 90rpx; border-radius: 90rpx;
} }
&.active { &.active {
font-weight: 600; font-weight: 600;
} }
&.active::after { &.active::after {
display: block; display: block;
} }
} }
} }
.orderState { .orderState {
display: flex; display: flex;
padding: 30rpx; padding: 30rpx;
box-sizing: border-box; box-sizing: border-box;
background-color: #f7f9fa; background-color: #f7f9fa;
.orderState-item { .orderState-item {
background-color: white; background-color: white;
line-height: 54rpx; line-height: 54rpx;
padding: 0 25rpx; padding: 0 25rpx;
border-radius: 54rpx; border-radius: 54rpx;
font-size: 28rpx; font-size: 28rpx;
margin-right: 30rpx; margin-right: 30rpx;
&.active { &.active {
background-color: #da2b56; background-color: #da2b56;
color: #ffffff; color: #ffffff;
} }
} }
} }
} }
.list { .list {
margin-top: 44px; margin-top: 44px;
padding: 130rpx 30rpx 0; padding: 130rpx 30rpx 0;
box-sizing: border-box; box-sizing: border-box;
.listItem { .listItem {
background-color: #ffffff; background-color: #ffffff;
border-radius: 10rpx; border-radius: 10rpx;
margin-bottom: 30rpx; margin-bottom: 30rpx;
.listItem-no { .listItem-no {
line-height: 90rpx; line-height: 90rpx;
padding: 0 30rpx; padding: 0 30rpx;
box-sizing: border-box; box-sizing: border-box;
border-bottom: 2rpx solid #eeeeee; border-bottom: 2rpx solid #eeeeee;
} }
.listItem-cont { .listItem-cont {
padding: 15rpx 30rpx; padding: 15rpx 30rpx;
box-sizing: border-box; box-sizing: border-box;
.listItem-cont-label { .listItem-cont-label {
display: flex; display: flex;
line-height: 60rpx; line-height: 60rpx;
color: #666666; color: #666666;
font-size: 28rpx; font-size: 28rpx;
.listItem-cont-name { .listItem-cont-name {
flex: 1; flex: 1;
} }
.listItem-cont-text { .listItem-cont-text {
color: #000000; color: #000000;
&.listItem-cont-status { &.listItem-cont-status {
color: #da2b56; color: #da2b56;
} }
&.listItem-cont-price { &.listItem-cont-price {
font-weight: 600; font-weight: 600;
} }
} }
} }
} }
.listItem-labor { .listItem-labor {
border-top: 2rpx solid #eeeeee; border-top: 2rpx solid #eeeeee;
line-height: 50rpx; line-height: 50rpx;
padding: 25rpx 30rpx; padding: 25rpx 30rpx;
box-sizing: border-box; box-sizing: border-box;
font-size: 26rpx; font-size: 26rpx;
display: flex; display: flex;
.listItem-labor-time { .listItem-labor-time {
flex: 1; flex: 1;
color: #999999; color: #999999;
} }
.listItem-labor-go { .listItem-labor-go {
display: inline-block; display: inline-block;
border: 2rpx solid #da2b56; border: 2rpx solid #da2b56;
color: #da2b56; color: #da2b56;
border-radius: 80rpx; border-radius: 80rpx;
padding: 0 20rpx; padding: 0 20rpx;
margin-left: 20rpx; margin-left: 20rpx;
&.active { &.active {
border-color: #dadada; border-color: #dadada;
color: #868686; color: #868686;
} }
&.yellow { &.yellow {
border-color: #ec7647; border-color: #ec7647;
color: #ec7647; color: #ec7647;
} }
} }
} }
} }
} }
// 打款凭证弹出 // 打款凭证弹出
.voucherBack { .voucherBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 99; z-index: 99;
background-color: rgba(0, 0, 0, .6); background-color: rgba(0, 0, 0, .6);
display: none; display: none;
&.active { &.active {
display: block; display: block;
} }
} }
.voucherPop { .voucherPop {
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 100; z-index: 100;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
display: none; display: none;
&.active { &.active {
display: -webkit-box; display: -webkit-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
position: relative; position: relative;
.voucherPop-img { .voucherPop-img {
position: absolute !important; position: absolute !important;
top: -80rpx; top: -80rpx;
right: calc(50% - 100rpx); right: calc(50% - 100rpx);
width: 200rpx; width: 200rpx;
} }
.voucherPop-title { .voucherPop-title {
box-sizing: border-box; box-sizing: border-box;
padding: 50rpx 70rpx; padding: 50rpx 70rpx;
margin-top: 100rpx; margin-top: 100rpx;
text-align: center; text-align: center;
.voucherPop-name { .voucherPop-name {
font-weight: 600; font-weight: 600;
font-size: 38rpx; font-size: 38rpx;
} }
.voucherPop-text { .voucherPop-text {
padding: 30rpx 0 35rpx; padding: 30rpx 0 35rpx;
line-height: 44rpx; line-height: 44rpx;
} }
.voucherPop-btn { .voucherPop-btn {
display: flex; display: flex;
.voucherPop-go { .voucherPop-go {
flex: 2; flex: 2;
text-align: center; text-align: center;
border: 2rpx solid #da2b56; border: 2rpx solid #da2b56;
color: #da2b56; color: #da2b56;
margin: 0 15rpx; margin: 0 15rpx;
line-height: 74rpx; line-height: 74rpx;
border-radius: 10rpx; border-radius: 10rpx;
background-color: #ffffff; background-color: #ffffff;
&.voucherPop-up { &.voucherPop-up {
background-color: #da2b56; background-color: #da2b56;
color: #ffffff; color: #ffffff;
} }
} }
} }
} }
} }
} }
</style> </style>

View File

@@ -1,432 +1,432 @@
<template> <template>
<view class="content"> <view class="content">
<view class="setupItem"> <view class="setupItem">
<view class="label" @click="albumClick"> <view class="label" @click="albumClick">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_01.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_01.png" mode="aspectFill"></image>
<view class="label-name-text">修改头像</view> <view class="label-name-text">修改头像</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-head" :src="avatar ? avatar : 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5641d82e94651198a0a2236f368ff9ba.png'" mode="aspectFill"></image> <image class="label-name-head" :src="avatar ? avatar : 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/5641d82e94651198a0a2236f368ff9ba.png'" mode="aspectFill"></image>
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="$Router.push({name: 'Modify'})"> <view class="label" @click="$Router.push({name: 'Modify'})">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_02.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_02.png" mode="aspectFill"></image>
<view class="label-name-text">修改密码</view> <view class="label-name-text">修改密码</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="$Router.push({name: 'Authsuccess'})" v-if="certification"> <view class="label" @click="$Router.push({name: 'Authsuccess'})" v-if="certification">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_03.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_03.png" mode="aspectFill"></image>
<view class="label-name-text">实名认证</view> <view class="label-name-text">实名认证</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="$Router.push({name: 'sheetIdcard'})" v-else> <view class="label" @click="$Router.push({name: 'sheetIdcard'})" v-else>
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_03.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_03.png" mode="aspectFill"></image>
<view class="label-name-text">实名认证</view> <view class="label-name-text">实名认证</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<!-- <view class="label" @click="$Router.push({name: 'Invite'})"> <!-- <view class="label" @click="$Router.push({name: 'Invite'})">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_03.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_03.png" mode="aspectFill"></image>
<view class="label-name-text">邀请码</view> <view class="label-name-text">邀请码</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> --> </view> -->
</view> </view>
<view class="setupItem"> <view class="setupItem">
<view class="label" @click="$Router.push({name: 'Referee'})"> <view class="label" @click="$Router.push({name: 'Referee'})">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_04.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_04.png" mode="aspectFill"></image>
<view class="label-name-text">我的伙伴</view> <view class="label-name-text">我的伙伴</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<view class="label-name-number" v-if="childrenCount">{{childrenCount}}</view> <view class="label-name-number" v-if="childrenCount">{{childrenCount}}</view>
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="$Router.push({name: 'SignLog'})"> <view class="label" @click="$Router.push({name: 'SignLog'})">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_08.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_08.png" mode="aspectFill"></image>
<view class="label-name-text">合同查看</view> <view class="label-name-text">合同查看</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="$Router.push({name: 'Parent'})"> <view class="label" @click="$Router.push({name: 'Parent'})">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_05.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_05.png" mode="aspectFill"></image>
<view class="label-name-text">业务联系人</view> <view class="label-name-text">业务联系人</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="delSubscribe" v-if="hasSubscribe"> <view class="label" @click="delSubscribe" v-if="hasSubscribe">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_07.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_07.png" mode="aspectFill"></image>
<view class="label-name-text">{{hasTitle}}</view> <view class="label-name-text">{{hasTitle}}</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
<view class="label" @click="followSubscribe" v-else> <view class="label" @click="followSubscribe" v-else>
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_07.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_07.png" mode="aspectFill"></image>
<view class="label-name-text">{{hasTitle}}</view> <view class="label-name-text">{{hasTitle}}</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
</view> </view>
<view class="setupItem"> <view class="setupItem">
<view class="label" @click="$Router.push({name: 'AppDown'})"> <view class="label" @click="$Router.push({name: 'AppDown'})">
<view class="label-name"> <view class="label-name">
<image class="label-name-img" src="/static/imgs/zK_06.png" mode="aspectFill"></image> <image class="label-name-img" src="/static/imgs/zK_06.png" mode="aspectFill"></image>
<view class="label-name-text">APP下载</view> <view class="label-name-text">APP下载</view>
</view> </view>
<view class="label-tips"> <view class="label-tips">
<image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image> <image class="label-name-arrow" src="/static/imgs/zK_arrow.png" mode="widthFix"></image>
</view> </view>
</view> </view>
</view> </view>
<view class="setupItem"> <view class="setupItem">
<view class="signOut" @click="outLogin"> <view class="signOut" @click="outLogin">
退出登录 退出登录
</view> </view>
</view> </view>
<!-- 关注公众号弹出 --> <!-- 关注公众号弹出 -->
<view class="tipsBack" v-if="generalShow"></view> <view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow"> <view class="tipsCont" v-if="generalShow">
<view class="tipsWhite"> <view class="tipsWhite">
<image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image> <image class="tipsCont-img" src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/06/06/6b1485847b45273618f8d922ceee889c.png" mode="widthFix"></image>
<view class="tipsWhite-top"> <view class="tipsWhite-top">
<view class="tipsWhite-name"> <view class="tipsWhite-name">
关注抖火法律咨询公众号 关注抖火法律咨询公众号
</view> </view>
<view class="tipsWhite-text"> <view class="tipsWhite-text">
关注后可立即下单 关注后可立即下单
</view> </view>
</view> </view>
<view class="tipsWhite-btn"> <view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false"> <view class="tipsWhite-btn-go" @click="generalShow = false">
稍后关注 稍后关注
</view> </view>
<view class="tipsWhite-btn-go" @click="judgeGeneral"> <view class="tipsWhite-btn-go" @click="judgeGeneral">
马上关注 马上关注
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</view> </view>
</template> </template>
<script> <script>
import { userIndex, setting, userSubscribe, judgeReal } from '@/apis/interfaces/user' import { userIndex, setting, userSubscribe, judgeReal } from '@/apis/interfaces/user'
import { authFollow } from '@/apis/interfaces/index' import { authFollow } from '@/apis/interfaces/index'
import { uploads } from '@/apis/interfaces/uploading' import { uploads } from '@/apis/interfaces/uploading'
export default { export default {
data() { data() {
return { return {
avatar : '', //用户头像 avatar : '', //用户头像
childrenCount: '', // 下级人数 childrenCount: '', // 下级人数
certification: '', // 是否认证 certification: '', // 是否认证
hasSubscribe : '', // 是否关注公众号 hasSubscribe : '', // 是否关注公众号
hasTitle : '', // 是否关注公众号-标题 hasTitle : '', // 是否关注公众号-标题
generalShow : false ,// 公众号 generalShow : false ,// 公众号
}; };
}, },
onShow() { onShow() {
// 获取用户信息 // 获取用户信息
this.userInfo(); this.userInfo();
// 判断是否认证 // 判断是否认证
this.sheetClick(); this.sheetClick();
}, },
methods:{ methods:{
// 用户信息 // 用户信息
userInfo() { userInfo() {
userIndex().then(res => { userIndex().then(res => {
this.avatar = res.avatar this.avatar = res.avatar
this.childrenCount = res.children_count.one this.childrenCount = res.children_count.one
this.certification = res.certification this.certification = res.certification
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 判断是否认证 // 判断是否认证
sheetClick(){ sheetClick(){
// 获取微信授权信息 // 获取微信授权信息
judgeReal().then(res => { judgeReal().then(res => {
if(res.has_subscribe) { if(res.has_subscribe) {
this.hasTitle = '解除公众号' this.hasTitle = '解除公众号'
} else { } else {
this.hasTitle = '关注公众号' this.hasTitle = '关注公众号'
} }
this.hasSubscribe = res.has_subscribe this.hasSubscribe = res.has_subscribe
}).catch( err => { }).catch( err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
}, },
// 相册选择图片 // 相册选择图片
albumClick() { albumClick() {
var _this = this var _this = this
uni.chooseImage({ uni.chooseImage({
count: 1, //默认9 count: 1, //默认9
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有 sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
sourceType: ['album','camera'], // way是点击时传入的打开方式相机或相册 sourceType: ['album','camera'], // way是点击时传入的打开方式相机或相册
success: path=> { success: path=> {
uploads([{ uploads([{
uri : path.tempFilePaths[0] uri : path.tempFilePaths[0]
}]).then(res => { }]).then(res => {
this.avatar = res.url[0] this.avatar = res.url[0]
// 上传头像 // 上传头像
this.settingInfo('avatar', res.path[0]) this.settingInfo('avatar', res.path[0])
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, },
}); });
}, },
// 上传用户信息 // 上传用户信息
settingInfo(key, value) { settingInfo(key, value) {
setting(key, { setting(key, {
value: value value: value
}).then(res => { }).then(res => {
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon : 'none' icon : 'none'
}) })
}) })
}, },
// 退出登录 // 退出登录
outLogin(){ outLogin(){
this.$store.commit('setToken', '') this.$store.commit('setToken', '')
this.$Router.replaceAll({name: 'Index'}) this.$Router.replaceAll({name: 'Index'})
}, },
// 删除用户微信数据和关注 // 删除用户微信数据和关注
delSubscribe() { delSubscribe() {
uni.showModal({ uni.showModal({
title: '温馨提示', title: '温馨提示',
content: '是否解除公众号?', content: '是否解除公众号?',
confirmColor: '#da2b56', confirmColor: '#da2b56',
success: res=> { success: res=> {
if (res.confirm) { if (res.confirm) {
userSubscribe().then(res => { userSubscribe().then(res => {
// 判断是否认证 // 判断是否认证
this.sheetClick(); this.sheetClick();
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
} else if (res.cancel) { } else if (res.cancel) {
console.log('用户点击取消'); console.log('用户点击取消');
} }
} }
}); });
}, },
// 绑定用户微信数据和关注 // 绑定用户微信数据和关注
followSubscribe(){ followSubscribe(){
// 弹出公众号 // 弹出公众号
this.generalShow = true this.generalShow = true
}, },
// 状态 // 状态
judgeGeneral(){ judgeGeneral(){
// 获取微信授权信息 // 获取微信授权信息
authFollow({ authFollow({
url: 'https://web.douhuofalv.com/webview/webCode' // url: 'https://web.douhuofalv.com/webview/webCode'
// url: 'https://web.douhuotest.douhuofalv.com/webview/webCode' url: 'https://web.douhuotest.douhuofalv.com/webview/webCode'
}).then(res => { }).then(res => {
window.location.href = res window.location.href = res
}).catch(err => { }).catch(err => {
uni.showToast({ uni.showToast({
title: err.message, title: err.message,
icon: "none" icon: "none"
}) })
}) })
// 关闭公众号 // 关闭公众号
this.generalShow = false this.generalShow = false
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.content { .content {
background-color: #f7f9fa; background-color: #f7f9fa;
height: 100vh; height: 100vh;
overflow-y: scroll; overflow-y: scroll;
} }
.setupItem { .setupItem {
margin-bottom: $margin; margin-bottom: $margin;
background-color: #ffffff; background-color: #ffffff;
.label { .label {
line-height: 60rpx; line-height: 60rpx;
display: flex; display: flex;
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
border-bottom: 2rpx solid #f7f9fa; border-bottom: 2rpx solid #f7f9fa;
&:last-child { &:last-child {
border: none; border: none;
} }
.label-name { .label-name {
display: flex; display: flex;
flex: 1; flex: 1;
.label-name-img { .label-name-img {
width: 34rpx; width: 34rpx;
height: 34rpx; height: 34rpx;
margin-top: 12rpx; margin-top: 12rpx;
margin-right: 20rpx; margin-right: 20rpx;
} }
} }
.label-tips { .label-tips {
display: flex; display: flex;
.label-name-head { .label-name-head {
width: 54rpx; width: 54rpx;
height: 54rpx; height: 54rpx;
border-radius: 50%; border-radius: 50%;
margin-right: 20rpx; margin-right: 20rpx;
} }
.label-name-arrow { .label-name-arrow {
width: 24rpx; width: 24rpx;
height: 24rpx; height: 24rpx;
margin-top: 18rpx; margin-top: 18rpx;
} }
.label-name-number { .label-name-number {
display: inline-block; display: inline-block;
background-color: $mian-color; background-color: $mian-color;
color: #ffffff; color: #ffffff;
border-radius: $radius * 3; border-radius: $radius * 3;
height: 36rpx; height: 36rpx;
line-height: 36rpx; line-height: 36rpx;
padding: 0 $padding - 10; padding: 0 $padding - 10;
font-size: $title-size-sm; font-size: $title-size-sm;
margin: 12rpx 20rpx 0 0; margin: 12rpx 20rpx 0 0;
} }
} }
} }
.signOut { .signOut {
text-align: center; text-align: center;
line-height: 60rpx; line-height: 60rpx;
padding: $padding - 5 0; padding: $padding - 5 0;
color: $mian-color; color: $mian-color;
} }
} }
// 关注 // 关注
.tipsBack { .tipsBack {
position: fixed; position: fixed;
width: 100vw; width: 100vw;
height: 100vh; height: 100vh;
left: 0; left: 0;
top: 0; top: 0;
z-index: 9; z-index: 9;
background-color: rgba(0, 0, 0, .8); background-color: rgba(0, 0, 0, .8);
} }
.tipsCont { .tipsCont {
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-box-pack: center; -webkit-box-pack: center;
position: fixed; position: fixed;
left: 0; left: 0;
right: 0; right: 0;
top: 0; top: 0;
bottom: 0; bottom: 0;
z-index: 10; z-index: 10;
padding: 0 10%; padding: 0 10%;
box-sizing: border-box; box-sizing: border-box;
} }
.tipsWhite { .tipsWhite {
background-color: #ffffff; background-color: #ffffff;
border-radius: 20rpx; border-radius: 20rpx;
overflow: hidden; overflow: hidden;
} }
.tipsWhite-top { .tipsWhite-top {
padding: $padding; padding: $padding;
box-sizing: border-box; box-sizing: border-box;
text-align: center; text-align: center;
} }
.tipsCont-img { .tipsCont-img {
width: 100%; width: 100%;
} }
.tipsWhite-name { .tipsWhite-name {
text-align: center; text-align: center;
color: #111111; color: #111111;
font-size: 34rpx; font-size: 34rpx;
font-weight: 600; font-weight: 600;
margin-bottom: 15rpx; margin-bottom: 15rpx;
} }
.tipsWhite-text { .tipsWhite-text {
font-size: 30rpx; font-size: 30rpx;
color: #666666; color: #666666;
line-height: 48rpx; line-height: 48rpx;
} }
.tipsWhite-btn { .tipsWhite-btn {
display: flex; display: flex;
padding: $padding 10rpx; padding: $padding 10rpx;
box-sizing: border-box; box-sizing: border-box;
.tipsWhite-btn-go { .tipsWhite-btn-go {
flex: 2; flex: 2;
color: #fff; color: #fff;
margin: 0 15rpx; margin: 0 15rpx;
height: 80rpx; height: 80rpx;
line-height: 80rpx; line-height: 80rpx;
text-align: center; text-align: center;
border: 2rpx solid #F6F6F6; border: 2rpx solid #F6F6F6;
background-color: #007df5; background-color: #007df5;
border-radius: $radius-m; border-radius: $radius-m;
&:first-child { &:first-child {
color: #333333; color: #333333;
background-color: #ffffff; background-color: #ffffff;
border: 2rpx solid #cccccc; border: 2rpx solid #cccccc;
} }
} }
} }
</style> </style>

View File

@@ -30,20 +30,20 @@ router.beforeEach((to, from, next) => {
return return
} }
// 检查用户是否授权了微信 // 检查用户是否授权了微信
// if(to.name != 'webWechatIndex' && openId === ''){ if(to.name != 'webWechatIndex' && openId === ''){
// authFollow({ authFollow({
// // url: 'https://web.douhuotest.douhuofalv.com/webWechat/index' url: 'https://web.douhuotest.douhuofalv.com/webWechat/index'
// url: 'https://web.douhuofalv.com/webWechat/index' // url: 'https://web.douhuofalv.com/webWechat/index'
// }).then(res => { }).then(res => {
// window.location.href = res window.location.href = res
// }).catch(err => { }).catch(err => {
// uni.showToast({ uni.showToast({
// title: err.message, title: err.message,
// icon: "none" icon: "none"
// }) })
// }) })
// return return
// } }
// 检查是否需要登录 // 检查是否需要登录
if(to.auth && token === ''){ if(to.auth && token === ''){