|
|
@@ -10,13 +10,18 @@
|
|
|
<div class="second-line">点亮在商城的每一天</div>
|
|
|
</div>
|
|
|
<button class="btn signedin-btn">
|
|
|
- <span @click="goToSignIn" v-if="userInfo.signStatus==0" class="btn-text sign-text">去签到</span>
|
|
|
+ <span @click="goToSignIn" v-if="userInfo.signStatus == 0" class="btn-text sign-text">去签到</span>
|
|
|
<span v-else class="btn-text signed-text">已签到</span>
|
|
|
</button>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="sidebar-block signin-tip">
|
|
|
- <div class="avatar">
|
|
|
+ <div class="sidebar-block">
|
|
|
+ <div class="awardTitle">中奖名单</div>
|
|
|
+ <div style="padding: 0px 5px 5px 5px;">
|
|
|
+ <list-scroll></list-scroll>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- <div class="avatar">
|
|
|
<el-avatar fit="fill" :size="65" :src="avatar"></el-avatar>
|
|
|
<span class="name">{{ userInfo.userName }}</span>
|
|
|
</div>
|
|
|
@@ -29,76 +34,85 @@
|
|
|
<div class="item-title">积分:</div>
|
|
|
<div class="item-content blue">{{ userInfo.surplusIntegral }}</div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
- <div class="sidebar-block banner-block" v-for="(item,index) in activitykist" :key="index">
|
|
|
+ <div class="sidebar-block banner-block" v-for="(item, index) in activitykist" :key="index">
|
|
|
<div class="banner banner">
|
|
|
<img :src="item.sideImgUrl" class="banner-image">
|
|
|
- <div class="ctrl-box">
|
|
|
- <!-- <div class="label">
|
|
|
+ <div class="ctrl-box">
|
|
|
+ <!-- <div class="label">
|
|
|
<span>{{ item.title }}</span>
|
|
|
</div> -->
|
|
|
- <div class="status" v-if="item.title == '每日答题' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
- <img width="88.5" height="21" src="../assets/image/day.png" alt="每日答题">
|
|
|
- </div>
|
|
|
- <div class="status" v-if="item.title == '每周竞技' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
- <img width="88.5" height="21" src="../assets/image/week.png" alt="每周竞技">
|
|
|
- </div>
|
|
|
- <div class="status" v-if="item.title == '每月抽奖' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
- <img width="88.5" height="21" src="../assets/image/month.png" alt="每月抽奖">
|
|
|
- </div>
|
|
|
- <div class="status" v-if="item.title == '每日抽奖' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
- <img width="88.5" height="21" src="../assets/image/dayD.png" alt="每日抽奖">
|
|
|
- </div>
|
|
|
- <div class="status" v-if="item.joinStatus==0">
|
|
|
- <img width="88.5" height="21" src="../assets/image/weikaiqi.png" alt="未开启">
|
|
|
- </div>
|
|
|
- <div class="status" v-if="item.joinStatus==2">
|
|
|
- <img width="88.5" height="21" src="../assets/image/yicanyu.png" alt="已参与">
|
|
|
- </div>
|
|
|
+ <div class="status" v-if="item.title == '每日答题' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
+ <img width="88.5" height="21" src="../assets/image/day.png" alt="每日答题">
|
|
|
+ </div>
|
|
|
+ <div class="status" v-if="item.title == '每周竞技' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
+ <img width="88.5" height="21" src="../assets/image/week.png" alt="每周竞技">
|
|
|
+ </div>
|
|
|
+ <div class="status" v-if="item.title == '每月抽奖' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
+ <img width="88.5" height="21" src="../assets/image/month.png" alt="每月抽奖">
|
|
|
+ </div>
|
|
|
+ <div class="status" v-if="item.title == '每日抽奖' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
+ <img width="88.5" height="21" src="../assets/image/dayD.png" alt="每日抽奖">
|
|
|
+ </div>
|
|
|
+ <div class="status" v-if="item.joinStatus == 0">
|
|
|
+ <img width="88.5" height="21" src="../assets/image/weikaiqi.png" alt="未开启">
|
|
|
+ </div>
|
|
|
+ <div class="status" v-if="item.joinStatus == 2">
|
|
|
+ <img width="88.5" height="21" src="../assets/image/yicanyu.png" alt="已参与">
|
|
|
</div>
|
|
|
</div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="sticky-block">
|
|
|
- <div class="sidebar-block signin-tip">
|
|
|
- <div class="avatar">
|
|
|
- <el-avatar fit="fill" :size="65" :src="avatar"></el-avatar>
|
|
|
- <span class="name">{{ userInfo.userName }}</span>
|
|
|
- </div>
|
|
|
- <div class="info">
|
|
|
- <div class="info-item">
|
|
|
- <div class="item-title">部门:</div>
|
|
|
- <div :title="userInfo.deptName" class="item-content" style="line-height: 1.5rem;">{{ userInfo.deptName }}</div>
|
|
|
+ <!-- <div class="sidebar-block signin-tip">
|
|
|
+ <div class="avatar">
|
|
|
+ <el-avatar fit="fill" :size="65" :src="avatar"></el-avatar>
|
|
|
+ <span class="name">{{ userInfo.userName }}</span>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="item-title">积分:</div>
|
|
|
- <div class="item-content blue">{{ userInfo.surplusIntegral }}</div>
|
|
|
+ <div class="info">
|
|
|
+ <div class="info-item">
|
|
|
+ <div class="item-title">部门:</div>
|
|
|
+ <div :title="userInfo.deptName" class="item-content" style="line-height: 1.5rem;">{{
|
|
|
+ userInfo.deptName }}</div>
|
|
|
+ </div>
|
|
|
+ <div class="info-item">
|
|
|
+ <div class="item-title">积分:</div>
|
|
|
+ <div class="item-content blue">{{ userInfo.surplusIntegral }}</div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="sidebar-block banner-block" v-for="(item,index) in activitykist" :key="index">
|
|
|
+ </div> -->
|
|
|
+ <div class="sidebar-block banner-block" v-for="(item, index) in activitykist" :key="index">
|
|
|
<div class="banner banner">
|
|
|
<img :src="item.sideImgUrl" width="240" height="200" class="banner-image">
|
|
|
<div class="ctrl-box">
|
|
|
<!-- <div class="label">
|
|
|
<span>{{ item.title }}</span>
|
|
|
</div> -->
|
|
|
- <div class="status" v-if="item.title == '每日答题' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
+ <div class="status" v-if="item.title == '每日答题' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
<img width="88.5" height="21" src="../assets/image/day.png" alt="每日答题">
|
|
|
</div>
|
|
|
- <div class="status" v-if="item.title == '每周竞技' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
+ <div class="status" v-if="item.title == '每周竞技' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
<img width="88.5" height="21" src="../assets/image/week.png" alt="每周竞技">
|
|
|
</div>
|
|
|
- <div class="status" v-if="item.title == '每月抽奖' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
+ <div class="status" v-if="item.title == '每月抽奖' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
<img width="88.5" height="21" src="../assets/image/month.png" alt="每月抽奖">
|
|
|
</div>
|
|
|
- <div class="status" v-if="item.title == '每日抽奖' && item.joinStatus==1" @click="goFestiveEvents(item)">
|
|
|
+ <div class="status" v-if="item.title == '每日抽奖' && item.joinStatus == 1"
|
|
|
+ @click="goFestiveEvents(item)">
|
|
|
<img width="88.5" height="21" src="../assets/image/dayD.png" alt="每日抽奖">
|
|
|
</div>
|
|
|
- <div class="status" v-if="item.joinStatus==0">
|
|
|
+ <div class="status" v-if="item.joinStatus == 0">
|
|
|
<img width="88.5" height="21" src="../assets/image/weikaiqi.png" alt="未开启">
|
|
|
</div>
|
|
|
- <div class="status" v-if="item.joinStatus==2">
|
|
|
+ <div class="status" v-if="item.joinStatus == 2">
|
|
|
<img width="88.5" height="21" src="../assets/image/yicanyu.png" alt="已参与">
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -110,10 +124,20 @@
|
|
|
<script>
|
|
|
import { mapGetters } from 'vuex'
|
|
|
import { indexList } from "@/api/allApi";
|
|
|
+import listScroll from '@/components/list-scroll.vue';
|
|
|
export default {
|
|
|
+ components: {
|
|
|
+ listScroll
|
|
|
+ },
|
|
|
data() {
|
|
|
return {
|
|
|
- activitykist:[
|
|
|
+ noticeList: [
|
|
|
+ { id: 1, text: '放低姿态' },
|
|
|
+ { id: 2, text: '努力进取' },
|
|
|
+ { id: 3, text: '勇于探索' },
|
|
|
+ { id: 4, text: '乐于分享' }
|
|
|
+ ],
|
|
|
+ activitykist: [
|
|
|
// {
|
|
|
// status:0,
|
|
|
// statusName:'未参加',
|
|
|
@@ -133,53 +157,53 @@ export default {
|
|
|
// img:'https://xiaoyou.dgtis.com/images/image/2024/08/23/xd5idemwj5itooa9t2ee.jpg'
|
|
|
// }
|
|
|
],
|
|
|
- hoursTip:'你好!',
|
|
|
+ hoursTip: '你好!',
|
|
|
isActive: false,
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
// 将 getter 映射到当前组件的计算属性
|
|
|
- ...mapGetters(['userInfo','avatar'])
|
|
|
+ ...mapGetters(['userInfo', 'avatar'])
|
|
|
},
|
|
|
created() {
|
|
|
this.getHoursTip()
|
|
|
- indexList().then(response=>{
|
|
|
+ indexList().then(response => {
|
|
|
this.activitykist = response.data.data
|
|
|
})
|
|
|
},
|
|
|
methods: {
|
|
|
- goFestiveEvents(val){
|
|
|
-
|
|
|
- if(val.title=='每日答题'){
|
|
|
+ goFestiveEvents(val) {
|
|
|
+
|
|
|
+ if (val.title == '每日答题') {
|
|
|
this.$router.push({
|
|
|
path: '/home/festiveEvents/answerGame',
|
|
|
query: {
|
|
|
- actId:val.actId
|
|
|
+ actId: val.actId
|
|
|
}
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
- if(val.title=='每周竞技'){
|
|
|
+ if (val.title == '每周竞技') {
|
|
|
this.$router.push({
|
|
|
path: '/home/festiveEvents/game',
|
|
|
query: {
|
|
|
url: val.activityUrl,
|
|
|
- actId:val.actId
|
|
|
+ actId: val.actId
|
|
|
}
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
- if(val.title=='每月抽奖' || val.title=='每日抽奖'){
|
|
|
+ if (val.title == '每月抽奖' || val.title == '每日抽奖') {
|
|
|
this.$router.push({
|
|
|
path: '/home/festiveEvents/drawCarouselGame',
|
|
|
query: {
|
|
|
- actId:val.actId
|
|
|
+ actId: val.actId
|
|
|
}
|
|
|
});
|
|
|
return;
|
|
|
}
|
|
|
},
|
|
|
- goToSignIn(){
|
|
|
+ goToSignIn() {
|
|
|
this.$router.push({
|
|
|
path: '/home/signIn',
|
|
|
});
|
|
|
@@ -195,28 +219,37 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
|
|
|
- // 保存滚动值,这是兼容的写法
|
|
|
- handleScroll() {
|
|
|
- var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
|
|
|
- if (scrollTop >= 950) {
|
|
|
- this.isActive = true
|
|
|
- } else {
|
|
|
- this.isActive = false
|
|
|
- }
|
|
|
+ // 保存滚动值,这是兼容的写法
|
|
|
+ handleScroll() {
|
|
|
+ var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
|
|
|
+ if (scrollTop >= 950) {
|
|
|
+ this.isActive = true
|
|
|
+ } else {
|
|
|
+ this.isActive = false
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
-},
|
|
|
|
|
|
-mounted() {
|
|
|
- window.addEventListener('scroll', this.handleScroll)
|
|
|
-},
|
|
|
+ mounted() {
|
|
|
+ window.addEventListener('scroll', this.handleScroll)
|
|
|
+ },
|
|
|
|
|
|
-destroyed() {
|
|
|
- // 离开该页面需要移除这个监听的事件,不然会报错
|
|
|
- window.removeEventListener('scroll', this.handleScroll)
|
|
|
-}
|
|
|
+ destroyed() {
|
|
|
+ // 离开该页面需要移除这个监听的事件,不然会报错
|
|
|
+ window.removeEventListener('scroll', this.handleScroll)
|
|
|
+ }
|
|
|
}
|
|
|
</script>
|
|
|
<style>
|
|
|
+.awardTitle {
|
|
|
+ font-weight: bold;
|
|
|
+ height: 40px;
|
|
|
+ line-height: 40px;
|
|
|
+ font-size: 16px;
|
|
|
+ text-align: center;
|
|
|
+ border-bottom: 1px solid #dcdfe6;
|
|
|
+}
|
|
|
+
|
|
|
.aside {
|
|
|
position: absolute;
|
|
|
top: 0;
|
|
|
@@ -285,9 +318,11 @@ destroyed() {
|
|
|
.first-line .signed-text {
|
|
|
color: #abcdff;
|
|
|
}
|
|
|
+
|
|
|
.first-line .sign-text {
|
|
|
color: #1e80ff;
|
|
|
}
|
|
|
+
|
|
|
.first-line .btn-text {
|
|
|
font-size: 14px;
|
|
|
font-weight: 400;
|
|
|
@@ -338,7 +373,8 @@ destroyed() {
|
|
|
justify-content: space-between;
|
|
|
line-height: 1.5rem;
|
|
|
}
|
|
|
-.info-item .item-title{
|
|
|
+
|
|
|
+.info-item .item-title {
|
|
|
width: 62px;
|
|
|
}
|
|
|
|
|
|
@@ -347,6 +383,7 @@ destroyed() {
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
}
|
|
|
+
|
|
|
.info-item .blue {
|
|
|
color: #1e80ff;
|
|
|
}
|
|
|
@@ -374,13 +411,16 @@ destroyed() {
|
|
|
z-index: 5;
|
|
|
pointer-events: all;
|
|
|
}
|
|
|
+
|
|
|
.el-avatar>img {
|
|
|
width: 100%;
|
|
|
}
|
|
|
-.sidebar-block.banner-block{
|
|
|
+
|
|
|
+.sidebar-block.banner-block {
|
|
|
overflow: hidden;
|
|
|
}
|
|
|
-.sidebar-block{
|
|
|
+
|
|
|
+.sidebar-block {
|
|
|
background-color: #fff;
|
|
|
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);
|
|
|
border-radius: 2px;
|
|
|
@@ -390,14 +430,17 @@ destroyed() {
|
|
|
border-radius: 4px;
|
|
|
color: #252933;
|
|
|
}
|
|
|
-.sidebar-block.banner-block .banner{
|
|
|
+
|
|
|
+.sidebar-block.banner-block .banner {
|
|
|
height: 120px;
|
|
|
}
|
|
|
-.banner{
|
|
|
+
|
|
|
+.banner {
|
|
|
position: relative;
|
|
|
font-size: 0;
|
|
|
cursor: pointer;
|
|
|
}
|
|
|
+
|
|
|
a {
|
|
|
margin: initial;
|
|
|
background-color: transparent;
|
|
|
@@ -405,11 +448,13 @@ a {
|
|
|
cursor: pointer;
|
|
|
color: #909090;
|
|
|
}
|
|
|
-.banner .banner-image{
|
|
|
+
|
|
|
+.banner .banner-image {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
}
|
|
|
-.banner .ctrl-box .label{
|
|
|
+
|
|
|
+.banner .ctrl-box .label {
|
|
|
position: absolute;
|
|
|
left: 20px;
|
|
|
top: 20px;
|
|
|
@@ -425,7 +470,8 @@ a {
|
|
|
border-radius: 6px;
|
|
|
font-weight: 500;
|
|
|
}
|
|
|
-.banner .ctrl-box .status{
|
|
|
+
|
|
|
+.banner .ctrl-box .status {
|
|
|
position: absolute;
|
|
|
left: 10px;
|
|
|
top: 80px;
|
|
|
@@ -441,6 +487,7 @@ a {
|
|
|
border-radius: 6px;
|
|
|
font-weight: 500; */
|
|
|
}
|
|
|
+
|
|
|
/* .banner .ctrl-box .label:hover {
|
|
|
background-color: rgba(0, 0, 0, .4);
|
|
|
}
|