You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

328 lines
8.8 KiB

3 years ago
<template>
<!--pages/release/index.wxml-->
<view class="release-page">
<view class="auth-btn-box acea-row row-column row-middle">
<view class="auth-btn" @tap="toCompanyAuth" v-if="authStatus == 0 || authStatus == 3">企业认证<image src="/static/images/back.png"></image></view>
<view class="auth-btn bgG" @tap="toPersonlAuth" v-if="authStatus == 0 || authStatus == 3">个人认证<image src="/static/images/back.png"></image></view>
</view>
<view :class="'posi ' + (authStatus == 1 || authStatus == 2 ? 'top30' : '')">
<view class="tips-box">
<view class="tips acea-row-nowrap row-middle" v-if="authStatus == 0 || authStatus == 3">
<!-- <view class="icon">!</view> -->
<view>完成企业认证后可以发布资源及需求个人认证后只可发布需求</view>
</view>
<view class="tips acea-row row-middle" v-if="authStatus == 0 || authStatus == 3">
<view class="icon">!</view>
<view>请先完成认证</view>
</view>
<view class="tips acea-row row-middle" v-if="authStatus == 1">
<view class="icon">!</view>
<view>{{authType == 1 ? '企业信息审核中,请耐心等待!' : '个人信息审核中, 请耐心等待'}}</view>
</view>
<view class="tips acea-row row-middle" v-if="authStatus == 2">
<view class="icon">!</view>
<view>{{authType == 1 ? '企业信息审核通过,可以发布资源和需求!' : '个人信息审核通过,可以发布需求'}}</view>
</view>
<view class="tips acea-row row-middle" v-if="authStatus == 3">
<view class="icon">!</view>
<view>{{authType == 1 ? '企业信息未审核通过, 请重新提交审核信息!' : '个人信息未审核通过, 请重新提交审核信息!'}}</view>
</view>
</view>
<view class="btn-box acea-row row-between">
<view :class="'btn ' + (authStatus == 2 && authType == 1 ? 'auth' : '' )" @tap="toResources">
<view class="tip">我能提供...</view>
<image :class="authStatus == 2 && authType == 1 ? '' : 'default'" src="/static/images/yrz1.png"></image>
</view>
<view :class="'btn ' + (authStatus == 2 ? 'auth' : '' )" @tap="toNeeds">
<view class="tip">我有需求...</view>
<image :class="authStatus == 2 ? '' : 'default'" src="/static/images/yrz2.png"></image>
</view>
</view>
<view class="close" @tap="back"><image src="/static/images/fabu-close.png"></image></view>
</view>
</view>
</template>
<script>
// pages/release/index.js
const app = getApp();
export default {
data() {
return {
userInfo: {},
authStatus: 0,
authType: null,
completeState: null,
authInfo: {}
};
},
components: {},
props: {},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
let userInfo = uni.getStorageSync('userInfo');
console.log(userInfo.phone && userInfo.phone != '')
if (userInfo.phone && userInfo.phone != '') {
this.isAuthentication();
} else {
var pages = getCurrentPages().pop(); //当前页面
uni.setStorageSync('redirect','/'+pages.route)
uni.navigateTo({
url: '/pages/authorization/index'
});
}
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {},
methods: {
back() {
uni.switchTab({
url: '/pages/home/index'
});
},
toPersonlAuth() {
if (this.authStatus == 0) {
uni.navigateTo({
url: '/pages/release/personAuth/index'
});
} else if (this.authStatus == 3) {
let authInfo = encodeURIComponent(JSON.stringify(this.authInfo));
uni.navigateTo({
url: '/pages/release/personAuth/index?authInfo=' + authInfo
});
} else if (this.authStatus == 1) {
uni.showToast({
title: '认证申请审核中,请等待!',
icon: 'none'
});
}
},
toCompanyAuth() {
if (this.authStatus == 0) {
uni.navigateTo({
url: '/pages/release/companyAuth/index'
});
} else if (this.authStatus == 3) {
let authInfo = encodeURIComponent(JSON.stringify(this.authInfo));
uni.navigateTo({
url: '/pages/release/companyAuth/index?authInfo=' + authInfo
});
} else if (this.authStatus == 1) {
uni.showToast({
title: '认证申请审核中,请等待!',
icon: 'none'
});
}
},
isAuthentication() {
app.http('get', 'user/isAuthentication').then(res => {
if (res.data.success) {
this.setData({
authStatus: res.data.data.authenticationState,
authType: res.data.data.authorizationType,
completeState: res.data.data.completeState,
authInfo: res.data.data.authInfo
});
}
});
},
toResources() {
let that = this;
console.log(this.authStatus, 'authStatus');
console.log(this.authType, 'authType');
console.log(this.completeState, 'completeState');
if (this.authStatus == 2 && this.authType == 1 && this.completeState == true) {
uni.navigateTo({
url: '/pages/user/editNeeds/index?type=1'
});
} else if (this.authStatus == 2 && this.authType == 1 && this.completeState == false) {
uni.showModal({
title: '提示!',
content: '您还未完善企业信息,点击确定去完善吧~',
success(res) {
if (res.confirm) {
uni.navigateTo({
url: '/pages/release/perfectCompanyInfo/index'
});
}
}
});
} else if (this.authStatus == 0 && (this.authType == 1 || this.authType == 0) && this.completeState == false) {
uni.showModal({
title: '提示!',
content: '您还未完成企业认证,点击确定去认证吧~',
success(res) {
if (res.confirm) {
uni.navigateTo({
url: '/pages/release/companyAuth/index'
});
}
}
});
}
},
toNeeds() {
if (this.authStatus == 2 && (this.authType == 2 || this.authType == 1) && this.completeState == true) {
uni.navigateTo({
url: '/pages/user/editNeeds/index?type=2'
});
} else if (this.authStatus == 2 && (this.authType == 2 || this.authType == 0) && this.completeState == false) {
uni.showModal({
title: '提示!',
content: '您还未完善个人信息,点击确定去完善吧~',
success(res) {
uni.navigateTo({
url: '/pages/release/perfectPersonInfo/index'
});
}
});
} else if (this.authStatus == 0 && (this.authType == 2 || this.authType == 0) && this.completeState == false) {
uni.showModal({
title: '提示!',
content: '您还未完成认证,点击上方按钮去认证吧!'
});
}
}
}
};
</script>
<style>
/* pages/release/index.wxss */
.auth-btn-box{
width: 100%;
margin-top: 300rpx;
}
.auth-btn{
width: 310rpx;
height: 101rpx;
background: linear-gradient(137deg, #FFCDB8 0%, #FF9060 100%);
border-radius: 12rpx;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
margin-bottom: 50rpx;
}
.auth-btn image{
width: 32rpx;
height: 32rpx;
transform: rotate(180deg);
}
.bgG{
background: linear-gradient(137deg, #BFD7F9 0%, #A8C8F6 100%);
}
.posi{
position: absolute;
width: 100%;
bottom: 100rpx;
}
.top30{
bottom: 30%;
}
.tips-box{
/* margin-top: 15%; */
}
.tips{
color: #FF0000;
font-size: 26rpx;
padding-left: 54rpx;
margin-bottom: 10rpx;
}
.icon{
width: 26rpx;
height: 26rpx;
border: 1rpx solid #FF0000;
text-align: center;
line-height: 22rpx;
border-radius: 50%;
font-size: 20rpx;
margin-right: 10rpx;
}
.btn-box{
width: 100%;
padding: 0 36rpx;
margin-top: 28rpx;
}
.btn{
width: 320rpx;
height: 378rpx;
position: relative;
}
.btn-box image{
width: 320rpx;
height: 378rpx;
position: absolute;
left: 0;
top: 0;
}
.btn-box .default{
filter: grayscale(1);
}
.btn .tip{
color: #9C9C9C;
font-weight: 500;
font-size: 32rpx;
position: relative;
left: 0;
top: 70rpx;
text-align: center;
z-index: 3;
}
.btn .auth{
color: #1D1D1D;
}
.close {
text-align: center;
}
.close image{
width: 88rpx;
height: 88rpx;
}
</style>