ufutx_love_mp/src/pages/home/information.wpy

1202 lines
43 KiB
Plaintext
Raw Normal View History

2024-08-16 09:14:13 +08:00
<style lang="less" scoped>
@import url(../../styles/theme.less);
page {
background-color: #ffffff;
}
.ui-abnormal{
width: 100vw;
min-height: 100vh;
padding-bottom: 300rpx;
background: #f5f5f5;
.ui-user-pic-box{
width: 92%;
height: 690rpx;
background: #f3f4f9;
position: relative;
border-radius: 24rpx;
margin: 0 auto 26rpx auto;
.ui-user-pic, .ui-mask{
width: 100%;
height: 690rpx;
border-radius: 24rpx;
}
.ui-mask{
position:absolute;
left: 0;
top: 0;
}
}
.ui-skeleton-pic, .ui-skeleton-pic-v2{
width: 92%;
margin: auto;
height: 204rpx;
background-image: url("https://image.fulllinkai.com/202203/23/6c196ecbe7899a15320fd6c3ab48b64b.png");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
.ui-skeleton-pic-v2{
height: 302rpx;
background-image: url("https://image.fulllinkai.com/202203/23/7f312644a6dc92171ea79e7a7bf50571.png");
}
.exposure{
padding: 0 30rpx;
height: 80rpx;
line-height: 80rpx;
background: #fff4f7;
overflow: hidden;
color: #F33B6C;
.exposure_button{
padding: 0 10rpx;
height: 40rpx;
border-radius: 24rpx;
line-height: 40rpx;
border: 1rpx solid #ff95b1;
box-sizing: border-box;
}
}
.ui-bullet-wrap {
width: 100%;
height: 450rpx;
position: relative;
position: absolute;
top: 0;
left: 0;
z-index: 999;
.ui-bullet-item {
position: absolute;
animation: rightToleft 10s linear both;
padding: 0 20rpx 0 4rpx;
background: rgba(0, 0, 0, 0.4);
border-radius: 30rpx;
}
.ui-bullet-item-pic{
width: 34rpx;
height: 34rpx;
border-radius: 50%;
margin-right: 12rpx;
}
.ui-bullet-item[data-line='1'] {
top: 45rpx;
}
.ui-bullet-item[data-line='2'] {
top: 120rpx;
}
.ui-bullet-item[data-line='3'] {
top: 195rpx;
}
.ui-bullet-item[data-line='4'] {
top: 270rpx;
}
.ui-bullet-item[data-line='5'] {
top: 315rpx;
}
@keyframes rightToleft {
0% {
transform: translate(100vw);
}
100% {
transform: translate(-100%);
}
}
}
.ui-swiper{
width: 100%;
border-radius: 24rpx;
overflow: hidden;
height: 690rpx;
}
.itemInfo{
position: relative;
margin: 0 30rpx;
padding: 24rpx 30rpx;
background: #FFFFFF;
border-radius: 32rpx;
border-bottom: 2rpx solid #F5F5F5;
.nameBox {
display: flex;
justify-content: left;
align-items: center;
.referencesIcon {
width: 124rpx;
height: 36rpx;
display: block;
margin-left: 16rpx;
margin-top: 2rpx;
}
.name {
max-width: 180rpx;
}
}
.itemInfomation{
.Info{
min-width: 50%;
display: inline-flex;
align-items: center;
height: 36rpx;
font-size: 26rpx;
color: #333333;
margin-top: 20rpx;
}
.icon{
width: 28rpx;
height: 28rpx;
margin-right: 14rpx;
}
}
.remind{
margin: 30rpx 40rpx 8rpx 40rpx;
height: 34rpx;
font-size: 24rpx;
color: #999999;
span{
color: #F33B6C;
margin-left: 10rpx;
}
}
.name{
max-width: 70%;
height: 50rpx;
font-size: 36rx;
color: #333333;
font-weight: 600;
}
._photo{
position: absolute;
right: 20rpx;
top: 16rpx;
width: 100rpx;
height: 100rpx;
border-radius: 50%;
border: 4rpx solid #fff;
background: #FFFFFF;
box-shadow: 0 0 20rpx 4rpx rgba(0, 0, 0, 0.15);
}
.ui-sex-box{
min-width:70%;
padding-bottom:20rpx;
border-bottom:2rpx solid #f5f5f5;
.sexBox{
display: inline-block;
margin-top: 10rpx;
height: 34rpx;
line-height: 34rpx;
margin-right: 32rpx;
color: #666666;
font-size: 24rpx;
}
}
.VIPIcon{
width: 76rpx;
height: auto;
margin-top: 12rpx;
margin-left: 8rpx;
}
}
}
._bc-center {
width: 92%;
margin: 0 auto;
background: #F8F8F8;
border-radius: 24rpx;
.itemLabel{
padding-left: 40rpx;
margin-top: 20rpx;
.itemBox{
padding: 0 22rpx;
height: 52rpx;
border-radius: 16rpx;
line-height: 52rpx;
background: #F5F5F5;
margin-right: 20rpx;
margin-bottom: 24rpx;
color: #f5f5f5;
font-size: 28rpx;
font-weight: 400;
color: #333333;
}
}
.ui-approve-box{
border-radius: 32rpx;
margin: 30rpx 0;
background: #ffffff;
padding: 20rpx;
position: relative;
._title{
height: 44rpx;
line-height: 44rpx;
display: flex;
align-items: center;
position: relative;
margin-bottom: 20rpx;
.icon{
width: 28rpx;
height: 28rpx;
margin-right: 8rpx;
}
}
.hintMsg {
background: #FDFAF1;
padding: 12rpx 22rpx 12rpx 72rpx;
letter-spacing: 2rpx;
border-radius: 6rpx;
position: relative;
margin: 20rpx 0 22rpx 0;
border: 2rpx solid #FBF4ED;
}
.hintMsg:before {
content: '';
background-image: url("https://image.fulllinkai.com/202207/14/ae43d8615860cebeb46ac52fc61cfe60.png");
width: 32rpx;
height: 32rpx;
background-size: cover;
position: absolute;
top: 15rpx;
left: 26rpx;
}
._text{
margin: 0 40rpx 20rpx;
font-size: 28rpx;
color: #333333;
white-space: pre-wrap;
}
._item{
width: 33%;
}
.icon{
margin-right: 12rpx;
width: 90rpx;
height: 90rpx;
}
.m_idCon {
padding: 4rpx 20rpx 0 40rpx;
flex-wrap: wrap;
.u_idCon {
padding: 10rpx 22rpx;
line-height: 36rpx;
border-radius: 100rpx;
background-color: #F5F5F5;
margin-right: 20rpx;
margin-bottom: 20rpx;
}
}
}
}
.boxStyleList{
width: 92%;
background: #ffffff;
border-radius: 32rpx;
margin: 22rpx auto;
.u_box_bu {
padding: 12rpx 26rpx;
background-color: #FF5380;
border-radius: 100rpx;
color: white;
line-height: 40rpx;
}
.icon{
width: 28rpx;
height: 28rpx;
vertical-align: middle;
margin-right: 8rpx;
}
._item,._item1{
padding: 12rpx;
line-height: 60rpx;
letter-spacing: 1rpx;
}
._item{
border-bottom: 2rpx solid #F8F8F8;
}
.recommend{
display: flex;
justify-content: center;
align-items: center;
font-size: 28rpx;
height: 88rpx;
color: #333333;
}
}
.d_btn_buy{
background-image: url("https://image.fulllinkai.com/202204/07/7aa184820aeac10da142727c00e74ff7.png");
background-position: center;
background-size: contain;
background-repeat: no-repeat;
width: 160rpx;
height: 160rpx;
position: fixed;
bottom: 13vh;
right: 32rpx;
}
.recommended_user_box{
width: 94%;
padding: 22rpx 36rpx;
margin: auto;
background: #F8F8F8;
border-radius: 24rpx;
margin-top: 22rpx;
overflow: hidden;
.recommended_title_box{
margin-bottom: 24rpx;
.recommended_icon{
width: 28rpx;
height: 32rpx;
vertical-align: middle;
margin-top: -4rpx;
}
.recommende_title{
margin-left: 10rpx;
letter-spacing: 1rpx;
}
}
.recommended_user_data_box{
display: flex;
justify-content: space-between;
/*justify-content: space-around; */
flex-wrap: wrap;
.recommended_user{
position: relative;
width: 308rpx;
height: 308rpx;
border-radius: 16rpx;
margin-bottom: 24rpx;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
.mask{
position: absolute;
top: 0;
left: 0;
width: 308rpx;
height: 308rpx;
border-radius: 16rpx;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
}
.recommended_user_data{
color: #fff;
position: absolute;
bottom: 20rpx;
left: 20rpx;
.recommended_user_name{
letter-spacing: 1rpx;
}
.age_address{
overflow: hidden;
.address_icon{
width: 20rpx;
height: 24rpx;
vertical-align: middle;
margin: -6rpx 4rpx 0 16rpx;
}
.address_text{
margin-left: 2rpx;
}
}
}
}
}
.to_view_more{
text-align: center;
margin: 6rpx auto 0 auto;
letter-spacing: 1rpx;
color: #f33b6c;
}
}
.ui-bottom-operation {
position: relative;
position: fixed;
left: 0;
bottom: 0;
width: 100%;
.ui-mask-icon{
width: 100vw;
height: 162rpx;
position: absolute;
bottom: 0;
left: 0;
}
.ui-operation{
position: relative;
z-index: 9;
padding: 0 90rpx 70rpx 80rpx;
}
.ui-share-icon, .m_share_img{
width: 140rpx;
height: 140rpx;
}
.u_boBu {
width: 400rpx;
height: 100rpx;
background: #ffffff;
box-shadow: 0 4rpx 24rpx 0 rgba(0, 0, 0, 0.1);
border-radius: 50rpx;
padding: 0 24rpx 0 76rpx;
.ui-operation-btn{
width: 184rpx;
height: 68rpx;
}
.ui-operation-btn-v2{
width: 52rpx;
height: 52rpx;
}
}
}
.ui-report-box{
border-radius: 30rpx 30rpx 0 0;
.ui-report-item, .ui-report-item-v2{
height: 102rpx;
border-top: 2rpx solid #f5f5f5;
}
.ui-report-item-v2{
border-top: 8rpx solid #f5f5f5;
}
}
.g_apply {
padding: 40rpx 0;
background-color: white;
.m_apply_tt {
.u_apply_img {
width: 72rpx;
height: 72rpx;
margin-right: 10rpx;
}
}
.inputStyle{
width: 528rpx;
background: #f4f7f7;
height: 180rpx;
padding: 18rpx 28rpx;
font-size: 28rpx;
color: #333333;
border-radius: 32rpx 32rpx 0 0;
}
.text_num{
width: 528rpx;
margin-top: -2rpx;
padding-right: 18rpx;
padding-bottom: 8rpx;
border-bottom-left-radius: 38rpx;
border-bottom-right-radius: 38rpx;
background: #f4f7f7;
}
.changeText{
margin-top: 16rpx;
margin-bottom: 40rpx;
image{
width: 28rpx;
height: 28rpx;
vertical-align: middle;
margin-bottom: 2rpx;
margin-right: 12rpx;
}
}
.u_apply_can {
width: 192rpx;
height: 68rpx;
border-radius: 34rpx;
border: 2rpx solid #D8D8D8;
margin-right: 32rpx;
}
.u_apply_btn {
width: 192rpx;
height: 68rpx;
background: #FF5380;
border-radius: 100rpx;
margin-left: 32rpx;
}
}
.open_confirm_box{
position: relative;
display: inline-block;
vertical-align: middle;
margin-left: auto;
margin-right: auto;
width: 600rpx;
max-width: 100%;
background-color: #ffffff;
border-radius: 24rpx;
.confirm_prompt{
padding: 68rpx 90rpx;
line-height: 40rpx;
}
.cancelIcon{
width: 192rpx;
height: 68rpx;
margin-right: 64rpx;
}
.determineIcon{
width: 192rpx;
height: 68rpx;
}
.m_bu {
padding: 0rpx 74rpx 38rpx;
.u_hide_bu,
.u_pur_bu {
width: 192rpx;
height: 68rpx;
border: 2rpx solid #D8D8D8;
border-radius: 100rpx;
}
.u_pur_bu {
background-color: #FF5380;
color: white;
border: 2rpx solid #FF5380;
}
}
}
</style>
<template>
<view class="ui-information">
<block v-if="userInfo.is_banned == 1">
<view class="ui-abnormal">
<view class="ui-user-pic-box">
<image class="ui-user-pic" src="https://image.fulllinkai.com/202407/29/396698823907d0ff19b889cea3ac7e9f.jpeg" mode="aspectFill"></image>
<image src="https://image.fulllinkai.com/202204/11/a1825ca68374240d26a38c9b28cb4cbd.png" class="ui-mask" mode="aspectFill"></image>
</view>
<view class="ui-skeleton-pic"></view>
<view class="ui-skeleton-pic-v2"></view>
</view>
</block>
<block v-else>
<block v-if="userInfo.hidden_profile == 'NONE'">
<view class="ui-abnormal">
<view class="ui-pb-30" @tap="wantExposure" v-if="channel == 'recommend'">
<view class="exposure f-fbc">
<view class="font_26 flo_l">提升你的曝光等级可以获得更多关注喔~</view>
<view class="exposure_button flo_r font_24">我要曝光</view>
</view>
</view>
<view class="ui-pb-30" v-if="userData.hidden > 0" @tap="goto('/pages/users/setTing')">
<view class="exposure f-fbc">
<view class="font_26 flo_l">尊敬的会员您正处于无痕迹访问Ta人</view>
<view class="exposure_button flo_r font_24">去设置</view>
</view>
</view>
<view class="ui-user-pic-box">
<!--弹幕-->
<view class="ui-bullet-wrap">
<view v-for="(item,index) in showingBullets" :key="index" class="ui-bullet-item font_24 white f-fcl" data-line="{{item.line}}">
<image class="ui-bullet-item-pic" :src="item.img" mode="aspectFill"></image>
{{ item.name }}
</view>
</view>
<!--轮播图-->
<swiper class="ui-swiper" circular="true" autoplay="true" indicator-dots="true" indicator-color="#c5c5c5" indicator-active-color="#ffffff">
<block v-for="(item,index) in userInfo.profile_photos" :key="index" v-if="index < 10">
<swiper-item class="ui-swiper ui-relative">
<image :src="item.photo" class="ui-swiper" mode="aspectFill" @tap="previewImage(item.photo,userInfo.profile_photos)"></image>
</swiper-item>
</block>
</swiper>
</view>
<view class="itemInfo">
<view class="nameBox">
<view class="color-333 ellipsis_1 font_32 bold name">{{ userInfo.nickname || userInfo.name }}</view>
<image class="referencesIcon" src="https://image.fulllinkai.com/202207/15/7e78a1dd367f1250d4cba4e85bfd60f1.png" mode="widthFix" v-if="userInfo.type != 'single'"></image>
<image src="https://images.ufutx.com/202101/30/e3a22a60849c3910e680d932772432b4.png" v-if="userInfo.isSuperRank > 0" mode="widthFix" class="flo_l VIPIcon"></image>
<image src="https://images.ufutx.com/202101/30/004a146ad71658aaa2ad0f0263f960b8.png" mode="widthFix" v-else class="flo_l VIPIcon"></image>
</view>
<image :src="userInfo.avatar || userInfo.photo" @tap="previewImageV2(userInfo.avatar || userInfo.photo)" class="_photo flo_r" mode="aspectFill"></image>
<view class="clearfloat"></view>
<view class="ui-sex-box">
<view class="sexBox">{{userInfo.fans_count}} 粉丝</view>
<view class="sexBox">{{userInfo.preview_count}} 浏览</view>
</view>
<view class="itemInfomation" v-if="userInfo.profile_courtship">
<view class="Info"> <image class="icon" src="https://images.ufutx.com/202103/11/c0510638768e154a31d6befab67dcdf8.png"></image> {{profile_courtship.birthday || "未填写"}} · {{profile_courtship.sex == 1 ? '男':'女'}} </view>
<view class="Info"> <image class="icon" src="https://images.ufutx.com/202103/11/3f20187cff709ec748558b85994ca8ac.png"></image>{{profile_courtship.stature || "未填写"}}· {{profile_courtship.weight || "未填写"}}</view>
<view class="Info"> <image class="icon" src="https://images.ufutx.com/202103/11/895b335c6680356e0161c6a925a8663d.png"></image>{{userInfo.type == 'single' && profile_courtship.state ? profile_courtship.state + '·': '' }} {{ profile_courtship.belief || "未填写" }}</view>
<view class="Info"> <image class="icon" src="https://images.ufutx.com/202103/11/ac43cc923f3a9f91df858a89d14e716b.png"></image>{{profile_courtship.industry_sub || "未填写"}}</view>
<view class="Info"> <image class="icon" src="https://images.ufutx.com/202103/11/ab39aa5d95c43c3c3a963fdd7d12e735.png"></image>现居{{profile_courtship.city || "未填写"}} · {{profile_courtship.resident_city || "未填写"}}</view>
<view class="Info"> <image class="icon" src="https://images.ufutx.com/202103/11/8125ddac9473066531c7ea9971033e0d.png"></image>{{profile_courtship.degree || "未填写"}} · {{profile_courtship.graduate_school || "未填写"}}</view>
<view class="Info"> <image class="icon" src="https://image.fulllinkai.com/202311/27/4f350b8f5119ca398b1712ff1a5e284c.png"></image>{{profile_courtship.marry_by_time ? "期望"+ profile_courtship.marry_by_time+ "结婚" : "未填写"}}</view>
</view>
<view v-if="userInfo.isCompleteProfile == false" class="remind">对方资料未完善一键提醒Ta完善资料<span bindtap="handleRemind" data-id="{{userInfo.id}}">提醒Ta>></span> </view>
</view>
<view>
<view class="font_28 _bc-center">
<!--认证展示-->
<view class="font_26 color666 ui-approve-box">
<view class="_title">
<image src="https://images.ufutx.com/202011/26/7645858a1ae55dd7c3ef90ec7a42bfa3.png" mode="aspectFill" class="icon" ></image>
<span class="font_30 bold color333">身份认证</span>
</view>
<view class="hintMsg font_22" v-if="!approveList[0].active || !approveList[1].active">
Ta尚未进行{{ !approveList[1].active ? '真人认证' : '' }}{{ !approveList[1].active && !approveList[2].active ? '和' : '' }}{{ !approveList[2].active ? '学历认证' : '' }}
请注意交友风险
</view>
<view class="f-fbc">
<view class="_item text-center ui-mt-20 ui-mb-20" v-for="(item,index) in approveList" :key="index">
<image :src="item.active ? item.activeIcon : item.icon" class="icon" mode="aspectFit"></image>
<view class="color666 font_24">{{item.active?item.activeName:item.name}}</view>
</view>
</view>
</view>
<block v-if="userInfo.type == 'single'">
<view class="ui-approve-box">
<!-- 自我描述 -->
<view class="font_26 color666">
<view class="_title">
<image src="https://images.ufutx.com/202011/26/7645858a1ae55dd7c3ef90ec7a42bfa3.png" mode="aspectFill" class="icon"></image>
<span class="font_30 bold color333">自我描述</span>
</view>
<view class="font_26 color333 _text">{{ profile_courtship.introduction || 'ta什么也没有留下' }}</view>
</view>
<!-- 兴趣爱好 -->
<view class="font_26 color666 ui-pt-20">
<view class="_title">
<image src="https://images.ufutx.com/202011/26/7645858a1ae55dd7c3ef90ec7a42bfa3.png" mode="aspectFill" class="icon"></image>
<span class="font_30 bold color333">兴趣爱好</span>
</view>
<view class="m_idCon f-fc">
<block v-for="(item,index) in interestLabel" :key="index">
<view class="u_idCon font_26 color333" v-if="item">{{ item }}</view>
</block>
</view>
<view class="font_26 color333 _text">{{ profile_courtship.interest_hobby || 'ta什么也没有留下' }}</view>
</view>
<!-- 期望对方 -->
<view class="font_26 color666 ui-pt-20">
<view class="_title">
<image src="https://images.ufutx.com/202011/26/7645858a1ae55dd7c3ef90ec7a42bfa3.png" mode="aspectFill" class="icon"></image>
<span class="font_30 bold color-333">期望对方</span>
</view>
<view class="m_idCon f-fc" v-if="showCondition">
<block v-for="(item,index) in conditionArr" :key="index">
<view class="u_idCon font_26 color333" v-if="item">{{ item }}</view>
</block>
</view>
<view class="font_26 color333 ui-ml-40 ui-mr-40 ui-mt-4">{{ profile_courtship.ideal_mate || 'ta什么也没有留下' }}</view>
</view>
</view>
</block>
</view>
<block v-if="userInfo.type == 'single' && userInfo.id && userInfo.self != 1">
<!-- 隐身访问 -->
<view class="boxStyleList f-fcc f-fdc ui-pt-30 ui-pb-30" @tap="hiddenChange">
<view class="font_32 color-theme">想要隐身访问Ta</view>
<view class="font_24 color-999 ui-pt-12 ui-pb-40">随意浏览Ta人主页不留下访问痕迹</view>
<view class="u_box_bu font_28">开启隐身访问</view>
</view>
</block>
<block v-if="userInfo.id && userInfo.self != 1">
<view class="boxStyleList">
<block v-if="userInfo.type == 'single'">
<view v-if="token">
<button class="btn text-center _item border text-center recommend" open-type="share">
<image src="https://images.ufutx.com/202103/11/911d7ca4e2f82bcc5023b8b223574b31.png" mode="aspectFit" class="icon"></image>
将{{ profile_courtship.sex == 1 ? '他' : '她' }}推荐给好友
</button>
</view>
</block>
<block>
<view class="_item border text-center recommend" v-if="userInfo.is_friend == 1" @tap="deletefriend(userInfo.id)">
<image src="https://images.ufutx.com/202103/11/0f148a7763958c65dac1a5ce929163dc.png" mode="aspectFit" class="icon"></image>
取消{{profile_courtship.sex == 1?'他':'她'}}为好友</view>
<view class="_item border text-center recommend" v-else-if="userType != 'marriage'" @tap="dislikeFn">
<image src="https://images.ufutx.com/202103/11/0f148a7763958c65dac1a5ce929163dc.png" mode="aspectFit" class="icon"></image>
对{{profile_courtship.sex == 1?'他':'她'}}不感兴趣</view>
</block>
<block v-if="token && userType != 'marriage'">
<view class="_item1 border text-center recommend" @tap="modalName = 'report'">
<image src="https://images.ufutx.com/202103/11/182464043e2aadde7a75788eb852f0d4.png" mode="aspectFit" class="icon"></image>
举报或者拉黑
</view>
</block>
<view v-else-if="userType == 'marriage'" class="_item1 border text-center recommend" @tap="report">
<image src="https://images.ufutx.com/202103/11/182464043e2aadde7a75788eb852f0d4.png" mode="aspectFit" class="icon"></image>
举报
</view>
</view>
</block>
</view>
<!-- </template> -->
<view class="recommended_user_box" v-if="channel == 'recommend'">
<view class="recommended_title_box">
<image class="recommended_icon" src="https://images.ufutx.com/202012/04/f06c80348b175b5f920709de8e27bbde.png"></image>
<span class="recommende_title font32 bold">推荐用户</span>
</view>
<view class="recommended_user_data_box">
<view class="recommended_user" v-for="(item,index) in recommendedList" style="background-image: url({{item.photo}})" :key="index" @tap="goToInformation(item.id)">
<view class="mask"></view>
<view class="recommended_user_data">
<view class="font28 bold recommended_user_name">{{item.nickname}}</view>
<view class="age_address font24">
<view class="flo_l">{{item.profile.age}}岁</view>
<view class="flo_l">
<image class="address_icon" src="https://images.ufutx.com/202012/04/9fd9ec3ebabffa12e4527ed8e0664473.png"></image>
<span class="address_text">{{item.profile.city}}</span>
</view>
</view>
</view>
</view>
</view>
<view class="to_view_more font32" @tap="goToMore">查看更多</view>
</view>
</view>
<block v-if="userInfo.self != 1">
<view class="ui-bottom-operation">
<image class="ui-mask-icon" src="https://image.fulllinkai.com/202407/30/dca7024d347433e1aa893ce15a056b10.png" mode="widthFix"></image>
<view class="f-fbc ui-operation">
<button class="m_share_img btn">
<image class="ui-share-icon" src="https://image.fulllinkai.com/202407/30/a0c06b508211c748a046e22626627b5a.png" mode="widthFix"></image>
</button>
<view class="u_boBu f-fbc">
<image v-if="userInfo.is_followed" class="ui-operation-btn-v2" src="https://image.fulllinkai.com/202407/30/48c1254fc413725432cc8d1c22be7440.png" mode="widthFix" @tap="attention"></image>
<image v-else class="ui-operation-btn-v2" src="https://image.fulllinkai.com/202407/30/c7aa12666362515181a8f237a3ea48ff.png" mode="widthFix" @tap="attention"></image>
<image v-if="userInfo.is_friend == 0" class="ui-operation-btn" src="https://image.fulllinkai.com/202407/30/58d9ec020a61a2d5370f2adb77489c18.png" mode="widthFix" @tap="contactFriendFn"></image>
<image v-else class="ui-operation-btn" src="https://image.fulllinkai.com/202407/30/0bfb0220f4b120dc0b0e9b4fb7a70a7b.png" mode="widthFix" @tap="jumpPath('chitchat')"></image>
</view>
</view>
</view>
</block>
</block>
<block v-else>
<!--关闭资料的用户样式-->
<view class="ui-abnormal" v-if="loading">
<view class="ui-user-pic-box">
<image class="ui-user-pic" src="https://image.fulllinkai.com/202407/29/396698823907d0ff19b889cea3ac7e9f.jpeg" mode="aspectFill"></image>
<image v-if="userInfo.hidden_profile_status != 1" src="https://image.fulllinkai.com/202203/22/0406319a6c0998836ca7391e588010b6.png" class="ui-mask" mode="aspectFill"></image>
<image v-else src="https://image.fulllinkai.com/202310/25/9643efd8588e76ddc045a2e2df757d30.png" class="ui-mask" mode="aspectFill"></image>
</view>
<view class="ui-skeleton-pic"></view>
<view class="ui-skeleton-pic-v2"></view>
</view>
</block>
</block>
</view>
<block v-if="posterConfig">
<!--生成海报-->
<poster type="2d" id="poster" hide-loading="{{false}}" preload="{{false}}" config="{{posterConfig}}" bind:success="onPosterSuccess" bind:fail="onPosterFail">
</poster>
</block>
<!-- <wxShareCom :modalName.sync="modalName" :sharePic.sync="shareImg" @modalFn="modalFn"></wxShareCom>-->
<view class="cu-modal bottom-modal {{modalName == 'report' ? 'show' : ''}}" @tap="modalName = ''">
<view class="cu-dialog ui-pb-40 ui-report-box">
<view class="f-fcc font_28 color-333 ui-report-item" @tap="shield">拉黑并屏蔽</view>
<view class="f-fcc font_28 color-333 ui-report-item" @tap="report">举报用户</view>
<view class="f-fcc font_28 color-999 ui-report-item-v2" @tap="modalName = ''">取消</view>
</view>
</view>
<view class="cu-modal {{modalName == 'Modal' ? 'show' : ''}}">
<view class="cu-dialog" style="border-radius: 32rpx;width: 600rpx;">
<view class="g_apply">
<view class="m_apply_tt">
<view class="f-fcc">
<image class="u_apply_img" mode="widthFix" src="https://images.ufutx.com/202105/31/37e0eda3fe1fcc0af2cb3ca2a51d2291.png"></image>
<view class="font_34 color333 bold">{{userType != 'marriage' ? '打个招呼吧' : '添加单身'}}</view>
</view>
<view class="font_28 color666 ui-pt-16" v-if="userData.rank_id <= 0 && userType != 'marriage'">非会员每天只有3次打招呼</view>
</view>
<view class="text-left ff ui-pt-30 ui-pl-36 ui-pr-36">
<textarea type="text" v-if="userType != 'marriage'" disabled show-confirm-bar="{{false}}" placeholder="输入打招呼内容" class="inputStyle" v-model="message" @input="typing" maxlength="60"/>
<view v-else>{{message}}</view>
<view class="text_num text-right" v-if="userType != 'marriage'">{{message.length}} / 60</view>
<view class="changeText text-right" v-if="userType != 'marriage'" @tap="getGreet(1)">
<image src="https://images.ufutx.com/202012/23/5b3b28530ad449fd04d51852ff1472ba.png" mode="aspectFit"></image>
<span class="font_24 color-666">换一个</span>
</view>
<view class="f-fcc" :style="{paddingTop: userType == 'marriage' ? '40rpx' : ''}">
<view class="u_apply_can f-fcc font_32 color999" @tap="modalName = ''">取消</view>
<view class="font_30 u_apply_btn white f-fcc" @tap="sendMsg">发送</view>
</view>
<view class="font_28 color999 text-center ui-pt-40" v-if="userData.rank_id<=0 && userType != 'marriage'">还剩{{userData.surplus_num}}次,<text class="color-theme" @tap="jumpPath('vip')">成为会员</text>将不限制打招呼</view>
</view>
</view>
</view>
</view>
<view class="cu-modal {{modalName == 'purchase' ? 'show' : ''}}">
<view class="open_confirm_box ui-pb-36">
<view class="confirm_prompt font_32">购买会员服务后可使用此功能,请及时购买</view>
<image class="cancelIcon" src="https://images.ufutx.com/202103/12/4281e92bc8b727bae08099a3015225b1.png" mode="widthFix" @tap="purchaseShow = false"></image>
<image v-if="isIos" class="determineIcon" src="https://images.ufutx.com/202103/12/91fea69fdff1cfeaac369ddd5dd591f0.png" mode="widthFix" @tap="modalName = 'purchaseTips'"></image>
<image v-else class="determineIcon" src="https://images.ufutx.com/202103/12/91fea69fdff1cfeaac369ddd5dd591f0.png" mode="widthFix" @tap="determine('vipModal')"></image>
</view>
</view>
<view class="cu-modal {{modalName == 'purchaseTips' ? 'show' : ''}}">
<view class="open_confirm_box">
<view class="confirm_prompt font_32">此功能需要开通VIP因微信限制暂不支持直接购买会员可以通过联系客服去购买</view>
<view class="m_bu f-fbc">
<view class="u_hide_bu font_32 color-999 f-fcc" @tap="modalName = ''">取消</view>
<button class="btn service" hover-class="btn_active" @tap.stop="handleContact">
<view class="u_pur_bu u_exc font_28 text-center f-fcc">联系客服</view>
</button>
</view>
</view>
</view>
</template>
<script>
import wepy from '@wepy/core'
import https from '../../mixins/https'
import base from '../../mixins/base'
import {service} from '../../config'
wepy.page({
config: {},
mixins: [https, base],
data: {
token: '',
userId: '',
userType: '',
id: '',
message: '', // 打招呼信息
loading: false,
modalName: '', // 弹框
pairedScore: 0,
userData: {}, // 自己的数据信息
userInfo: {}, // 当前用户详情数据
profile_courtship: {},
approveList: [
{name: '实名未认证', activeName: '实名已认证', activeIcon: 'https://image.fulllinkai.com/202407/30/079c165acc114129d384a18e01b1ddf6.png', active: false, icon: 'https://image.fulllinkai.com/202202/23/1913244bb11dae8889d0fbd8d4ab39e5.png'},
{name: '真人未认证', activeName: '真人已认证', activeIcon: 'https://image.fulllinkai.com/202407/30/8f2700a35614c24f578ac6b5bf6e74c6.png', active: false, icon: 'https://image.fulllinkai.com/202202/23/c8a7f144e6eb593a5c494e700a212dac.png'},
{name: '学历未认证', activeName: '学历已认证', activeIcon: 'https://image.fulllinkai.com/202407/30/8f2700a35614c24f578ac6b5bf6e74c6.png', active: false, icon: 'https://image.fulllinkai.com/202202/23/c6e970db876230df0411eddd49d9e58f.png'}
],
interestLabel: [],
showCondition: false,
conditionArr: [],
myData: {},
isIos: false,
reportShow: false, // 举报弹框
shareImg: '', // 分享海报图片
posterConfig: null // 分享海报数据
},
methods: {
getUserData () {
let vm = this
vm.$post({url: `${service.host}/user/v3`}).then(({code, data}) => {
if (code == 0) {
vm.userData = data
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
},
getDetail() {
let vm = this
vm.$showLoading('加载中...')
vm.$get({url: `${service.host}/users/119488/v2`}).then(({code, data}) => {
if (code === 0) {
wx.setNavigationBarTitle({
title: data.nickname ? data.nickname : data.name
})
if (data.profile_courtship) {
data.profile_courtship.city = data.profile_courtship.city ? data.profile_courtship.city.replace('市', '') : ''
data.profile_courtship.resident_city = data.profile_courtship.resident_city ? data.profile_courtship.resident_city.replace('市', '人') : ''
if (data.profile_courtship.stature) {
data.profile_courtship.stature = data.profile_courtship.stature == 139 ? '139cm以下' : data.profile_courtship.stature + 'cm'
}
if (data.profile_courtship.weight) {
data.profile_courtship.weight = data.profile_courtship.weight == 39 ? '39kg以下' : data.profile_courtship.weight + 'kg'
}
vm.profile_courtship = data.profile_courtship
vm.profile_courtship.industry = data.industry
vm.profile_courtship.industry_sub = data.industry_sub
vm.interestLabel = data.profile_courtship.interest_label ? JSON.parse(data.profile_courtship.interest_label) : []
}
if (data.is_approved == '1') { // 实名
vm.approveList[0].active = true
}
if (data.is_real_approved == '1') { // 真人
vm.approveList[1].active = true
}
if (data.is_educate_approved == '1') { // 学历
vm.approveList[2].active = true
vm.approveList[2].activeName = data.profile_courtship.degree ? `${data.profile_courtship.degree}已认证` : '已认证'
}
if (data.profile_courtship.mate_conditon instanceof Array) {
data.profile_courtship.mate_conditon.forEach(item => {
if (item.mate_condition) {
vm.conditionArr = item.mate_condition
}
})
} else {
vm.conditionArr = Object.values(data.profile_courtship.mate_conditon)
// 插入期望ta多个城市
if (data.profile_courtship.city_list_claim) {
let city_list_claim_arr = data.profile_courtship.city_list_claim.split(',')
city_list_claim_arr.forEach((city) => {
vm.conditionArr.push(city)
})
}
}
if (vm.conditionArr && vm.conditionArr.length > 0) {
vm.showCondition = true
}
vm.userInfo = data
let num = 0
if (data.self_other_info == 1) { num = num + 50 }
if (data.self_is_real_approved == 1) { num = num + 50 }
vm.pairedScore = num
if (data.photo || data.avatar) {
let year = '', city = '', degree = '', industry_sub = data.industry_sub
if (data.profile_courtship) {
year = data.profile_courtship.birthday || ''
city = data.profile_courtship.city || ''
degree = data.profile_courtship.degree || ''
}
vm.posterConfig = {
width: 420,
height: 336,
backgroundColor: '#fff',
debug: false,
texts: [
{x: 20, y: 248 + 26, lineHeight: 22, width: 200, text: `${year} | ${city}`, fontSize: 26, color: '#fff', zIndex: 99},
{x: 20, y: 288 + 26, width: 200, lineHeight: 22, text: `${degree} | ${industry_sub}`, fontSize: 26, color: '#fff', zIndex: 99}
],
images: [
{url: data.photo || data.avatar, width: 420, height: 336, y: 0, x: 0},
{url: 'https://image.fulllinkai.com/202206/20/be5b39dde1ad4720893b2e3c52b4480d.png', width: 420, height: 100, y: 236, x: 0},
{url: 'https://image.fulllinkai.com/202206/20/bd732960011f55fed0e5e7d623118494.png', width: 136, height: 40, y: 276, x: 264}
]
}
vm.$nextTick(() => {
setTimeout(() => {
vm.$wx.selectComponent('#poster').onCreate(true, vm)
}, 100)
})
}
vm.loading = true
}
wx.hideLoading()
}).catch(err => {
wx.hideLoading()
console.log(err)
})
},
// 关注
attention() {
let vm = this
vm.$showLoading('')
vm.$post({url: `${service.host}/follow/users/119488`}).then(({code, data}) => {
if (code == 0) {
if (data.is_followed) {
vm.$showToast(`已关注`)
vm.userInfo.is_followed = true
vm.userInfo.fans_count = vm.userInfo.fans_count + 1
} else {
vm.userInfo.is_followed = false
vm.userInfo.fans_count = vm.userInfo.fans_count - 1
vm.$showToast(`已取消关注`)
}
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
},
// 取消好友
deletefriend() {
let vm = this
wx.showModal({
title: '温馨提示',
content: '是否确认取消该好友',
success: function (res) {
if (res.confirm) {
vm.$showLoading('')
vm.$post({url: `${service.host}/friend/users/${vm.id}`}).then(({code, data}) => {
if (code == 0) {
vm.$showToast('好友已取消')
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
},
// 对Ta不感兴趣
dislikeFn() {
let vm = this
wx.showModal({
title: '温馨提示',
content: '是否对Ta不感兴趣标记为不感兴趣下次系统将不再为您推荐Ta.',
confirmText: '不感兴趣',
success: function (res) {
if (res.confirm) {
vm.$showLoading('')
vm.$post({url: `${service.host}/dislike/${vm.id}`}).then(({code, data}) => {
if (code == 0) {
vm.$showToast('已标记')
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
},
// 加入黑名单并屏蔽
shield() {
let vm = this
wx.showModal({
title: '加入黑名单',
content: '拉黑后,对方将无法访问、关注、发送好友请求,也无法给你发消息,可以在【设置-黑名单】中取消',
success: function (res) {
if (res.confirm) {
vm.$showLoading('')
vm.$post({url: `${service.host}/blacklist/friends/${vm.id}`}).then(({code, data}) => {
if (code == 0) {
vm.$showToast(`已加入黑名单`)
setTimeout(() => {
wx.switchTab({url: '/pages/tabBar/news'})
}, 1200)
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
},
// 举报
report() {
let vm = this
vm.reportShow = false
wx.navigateTo({url: `/pages/users/report?id=${vm.id}&type=details`})
},
// 隐身访问处理
hiddenChange() {
let vm = this
vm.$post({url: `${service.host}/blacklist/friends/${vm.id}`}).then(({code, data}) => {
if (code == 0) {
vm.$showToast(`已加入黑名单`)
setTimeout(() => {
wx.switchTab({url: '/pages/tabBar/news'})
}, 1200)
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
},
// 发送打招呼消息
sendMsg() {
let vm = this
let data = {
message: vm.message
}
if (vm.message == '') {
vm.$showToast('打招呼消息不能为空')
return
}
vm.$post({url: `${service.host}/friend/users/${vm.id}/v3`, data}).then(({code, data}) => {
if (code == 0) {
vm.modalName = ''
vm.$showToast('消息已发送')
}
wx.hideLoading()
}).catch(() => {
wx.hideLoading()
})
},
// 获取打招呼信息
getGreet(state) {
let vm = this
vm.$get({url: `${service.host}/greet/log?status=${state}`}).then(({code, data}) => {
if (code == 0) {
vm.message = data.name
}
}).catch(() => {
})
},
// 联系朋友
contactFriendFn() {
let vm = this
if (vm.userType == 'marriage') {
vm.message = '你好,我有认识的单身嘉宾想认识你,可以沟通一下吗?'
}
vm.getGreet(0)
},
// 联系客服
handleContact() {
wx.previewImage({
current: 'https://image.fulllinkai.com/202310/23/2a132a4978ef87d532a817041e425c26.png',
urls: ['https://image.fulllinkai.com/202310/23/2a132a4978ef87d532a817041e425c26.png']
})
},
modalFn(val) {
let vm = this
vm.modalName = val
},
// 海报生成成功回调
onPosterSuccess(e) {
let vm = this
vm.shareImg = e.$wx.detail
// vm.modalName = 'showPic'
wx.hideLoading()
console.log(vm.shareImg)
},
jumpPath(type) {
let vm = this
if (type == 'chitchat') {
wx.navigateTo({url: `/pages/news/groupChitchat?id=${vm.userInfo.id}&name=${encodeURIComponent(vm.userInfo.nickname)}&pic=${vm.userInfo.photo}&type=${vm.userInfo.type}`})
} else if (type == 'vip' && !vm.isIos) {
wx.navigateTo({url: `/pages/users/upgradeVIP`})
}
vm.modalName = ''
}
},
onShow() {
let vm = this
const info = wx.getSystemInfoSync()
vm.token = wx.getStorageSync('token')
if (info.platform === 'android') {
vm.isIos = false
} else {
vm.isIos = true
}
},
onLoad(e) {
let vm = this
vm.userId = wx.getStorageSync('user_id')
vm.userType = wx.getStorageSync('type')
vm.id = e.id
vm.getDetail()
}
})
</script>
<config>
{
navigationBarTitleText: '单身交友',
enablePullDownRefresh: false,
backgroundColorTop: '#ffffff',
backgroundColorBottom: '#ffffff',
usingComponents: {
'poster': 'plugin://FL-plugin/poster'
}
}
</config>