|
@@ -1,5 +1,11 @@
|
|
<template>
|
|
<template>
|
|
- <div style="position: relative; height: 60vh;">
|
|
|
|
|
|
+ <div
|
|
|
|
+ style="position: relative; min-height: calc(100vh - 198px);"
|
|
|
|
+ :class="{
|
|
|
|
+ 'disable1': userInfo?.vipExpireDate > Date.now() && !userInfo?.entitlement?.viewersList,
|
|
|
|
+ 'disable2': !userInfo?.vipExpireDate || (userInfo?.vipExpireDate && userInfo?.vipExpireDate < Date.now())
|
|
|
|
+ }"
|
|
|
|
+ >
|
|
<div v-if="userInfo?.entitlement?.viewersList && userInfo?.vipFlag && userInfo?.vipExpireDate && userInfo?.vipExpireDate > Date.now()">
|
|
<div v-if="userInfo?.entitlement?.viewersList && userInfo?.vipFlag && userInfo?.vipExpireDate && userInfo?.vipExpireDate > Date.now()">
|
|
<div v-if="items.length" class="mt-3">
|
|
<div v-if="items.length" class="mt-3">
|
|
<div class="positionItem" :class="item.active ? 'elevation-8' : 'elevation-3'" v-for="(item, index) in items" :key="index" @mouseenter="item.active = true" @mouseleave="item.active = false">
|
|
<div class="positionItem" :class="item.active ? 'elevation-8' : 'elevation-3'" v-for="(item, index) in items" :key="index" @mouseenter="item.active = true" @mouseleave="item.active = false">
|
|
@@ -36,14 +42,6 @@
|
|
</div>
|
|
</div>
|
|
<Empty v-else :elevation="false"></Empty>
|
|
<Empty v-else :elevation="false"></Empty>
|
|
</div>
|
|
</div>
|
|
- <div v-else class="mt-8 tips">
|
|
|
|
- <span class="color-error" v-if="userInfo?.vipExpireDate > Date.now() && !userInfo?.entitlement?.viewersList">
|
|
|
|
- 当前会员套餐的福利不包含谁看过我,<span class="cursor-pointer border-bottom-error" @click.stop="goBuy">去升级</span>
|
|
|
|
- </span>
|
|
|
|
- <span class="color-error" v-if="!userInfo?.vipExpireDate || (userInfo?.vipExpireDate && userInfo?.vipExpireDate < Date.now())">
|
|
|
|
- 谁看过我为会员福利内容,<span class="cursor-pointer border-bottom-error" @click.stop="goBuy">去开通</span>
|
|
|
|
- </span>
|
|
|
|
- </div>
|
|
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
@@ -56,12 +54,10 @@ import { dealDictObjData } from '@/utils/position'
|
|
import { timesTampChange } from '@/utils/date'
|
|
import { timesTampChange } from '@/utils/date'
|
|
import Empty from '@/components/Empty'
|
|
import Empty from '@/components/Empty'
|
|
import { getUserAvatar } from '@/utils/avatar'
|
|
import { getUserAvatar } from '@/utils/avatar'
|
|
-import { useRouter } from 'vue-router'
|
|
|
|
import { useUserStore } from '@/store/user'
|
|
import { useUserStore } from '@/store/user'
|
|
import { formatName } from '@/utils/getText'
|
|
import { formatName } from '@/utils/getText'
|
|
import { jumpToEnterpriseDetail } from '@/utils/position'
|
|
import { jumpToEnterpriseDetail } from '@/utils/position'
|
|
|
|
|
|
-const router = useRouter()
|
|
|
|
const total = ref(0)
|
|
const total = ref(0)
|
|
const items = ref([])
|
|
const items = ref([])
|
|
const page = ref({
|
|
const page = ref({
|
|
@@ -91,9 +87,6 @@ const handleChangePage = (e) => {
|
|
getData()
|
|
getData()
|
|
}
|
|
}
|
|
|
|
|
|
-const goBuy = () => {
|
|
|
|
- router.push('/recruit/personal/personalCenter/memberBenefits/membershipPackage')
|
|
|
|
-}
|
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style scoped lang="scss">
|
|
<style scoped lang="scss">
|
|
@@ -153,4 +146,44 @@ const goBuy = () => {
|
|
left: 50%;
|
|
left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
transform: translate(-50%, -50%);
|
|
}
|
|
}
|
|
|
|
+.disable1 {
|
|
|
|
+ position: relative;
|
|
|
|
+ overflow: hidden;
|
|
|
|
+ &::after {
|
|
|
|
+ content: '当前会员套餐的福利不包含谁看过我';
|
|
|
|
+ position: absolute;
|
|
|
|
+ display: flex;
|
|
|
|
+ align-items: center;
|
|
|
|
+ justify-content: center;
|
|
|
|
+ font-size: 1.5em;
|
|
|
|
+ font-family: 'MiSans-Bold';
|
|
|
|
+ color: #fff;
|
|
|
|
+ top: 0;
|
|
|
|
+ border-radius: 12px;
|
|
|
|
+ left: 0;
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 100%;
|
|
|
|
+ background-color: rgba(0, 0, 0, 0.35);
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+.disable2 {
|
|
|
|
+ position: relative;
|
|
|
|
+ overflow: hidden;
|
|
|
|
+ &::after {
|
|
|
|
+ content: '谁看过我为会员福利内容';
|
|
|
|
+ position: absolute;
|
|
|
|
+ display: flex;
|
|
|
|
+ align-items: center;
|
|
|
|
+ justify-content: center;
|
|
|
|
+ font-size: 1.5em;
|
|
|
|
+ font-family: 'MiSans-Bold';
|
|
|
|
+ color: #fff;
|
|
|
|
+ top: 0;
|
|
|
|
+ border-radius: 12px;
|
|
|
|
+ left: 0;
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 100%;
|
|
|
|
+ background-color: rgba(0, 0, 0, 0.35);
|
|
|
|
+ }
|
|
|
|
+}
|
|
</style>
|
|
</style>
|