mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal.git
synced 2025-12-12 04:16:45 +08:00
提交一下调整
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
|
||||
import ajax from '@/utils/xajax.js'
|
||||
|
||||
const list=function (query){
|
||||
return ajax.post('/xboe/m/popup/list',query);
|
||||
const userList=function (){
|
||||
return ajax.get('/xboe/m/popup/user');
|
||||
}
|
||||
|
||||
export default {
|
||||
list
|
||||
userList
|
||||
}
|
||||
|
||||
@@ -1,21 +1,23 @@
|
||||
<template>
|
||||
<!--弹出窗口设置-->
|
||||
<div>
|
||||
<el-dialog :close-on-press-escape="false" :close-on-click-modal="false" class="medalbox" :visible.sync="showGonggao" :append-to-body="true" >
|
||||
<div class="dlg-box" :style="`width:${config.width};height:${config.height}; background: url(${webBaseUrl}/images/gonggao/${config.bgImage}.png) no-repeat;`">
|
||||
<span class="dlg-close" @click="showGonggao = false"><i style="font-size: 28px;color: #999;" class="el-icon-close"></i></span>
|
||||
<div style="text-align:left;">
|
||||
<div class="dlg-title" v-html="config.title"></div>
|
||||
<div class="dlg-content" v-html="config.content"></div>
|
||||
</div>
|
||||
<div v-if="config.btnText"><a :href="config.pcUrl" @click="showGonggao = false" target="_blank" :style="{'background-color':config.btnColor}" class="dlg-button">{{config.btnText}}</a> </div>
|
||||
<div v-if="config.author" style="text-align: right;padding-top: 20px;"><span>{{config.author}}</span> </div>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<div>
|
||||
<el-dialog :close-on-press-escape="false" :close-on-click-modal="false" class="medalbox" :visible.sync="showGonggao" :append-to-body="true" >
|
||||
<div class="dlg-box" :style="`width:${config.width};height:${config.height}; background: url(${webBaseUrl}/images/gonggao/${config.bgImage}.png) no-repeat;`">
|
||||
<span class="dlg-close" @click="showGonggao = false"><i style="font-size: 28px;color: #999;" class="el-icon-close"></i></span>
|
||||
<div style="text-align:left;">
|
||||
<div class="dlg-title" v-html="config.title"></div>
|
||||
<div class="dlg-content" v-html="config.content"></div>
|
||||
</div>
|
||||
<div v-if="config.btnText"><a :href="config.pcUrl" @click="showGonggao = false" target="_blank" :style="{'background-color':config.btnColor}" class="dlg-button">{{config.btnText}}</a> </div>
|
||||
<div v-if="config.author" style="text-align: right;padding-top: 20px;"><span>{{config.author}}</span> </div>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import apiPopup from '@/api/modules/popup.js';
|
||||
export default{
|
||||
props:{
|
||||
config: {
|
||||
@@ -42,34 +44,67 @@
|
||||
data() {
|
||||
return {
|
||||
showGonggao:false,
|
||||
popupList:[],//需要弹出的窗口
|
||||
sessionKey:'alertpopup',
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
let loadNum = localStorage.getItem(this.sessionKey);
|
||||
let hasFlag = sessionStorage.getItem(this.sessionKey);
|
||||
let $this=this;
|
||||
if(!hasFlag){
|
||||
let times=0;
|
||||
if(loadNum){
|
||||
times=Number(loadNum);
|
||||
}
|
||||
if(times<3){
|
||||
let now=new Date();
|
||||
let min=new Date(2022,10,9,0,0,0);
|
||||
let max=new Date(2022,11,1,0,0,0);
|
||||
//console.log(now,min,max);
|
||||
//console.log(now.getTime(),min.getTime(),max.getTime());
|
||||
if(now.getTime()>min.getTime() && now.getTime()<max.getTime()){
|
||||
//console.log('open')
|
||||
this.showGonggao=true;
|
||||
times++;
|
||||
localStorage.setItem(this.sessionKey,times);
|
||||
sessionStorage.setItem(this.sessionKey,1);
|
||||
}
|
||||
}
|
||||
//获取用户需要弱出的窗口信息,放在状态中
|
||||
let has = sessionStorage.getItem(this.sessionKey);
|
||||
if(!has){
|
||||
apiPopup.userList().then(rs=>{
|
||||
if(rs.status==200){
|
||||
this.popupList=rs.result;
|
||||
if(rs.result.length>0){
|
||||
sessionStorage.setItem(this.sessionKey,JSON.stringify(rs.result));
|
||||
this.countPopup();
|
||||
}else{
|
||||
sessionStorage.setItem(this.sessionKey,'[]');
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
}else{
|
||||
this.popupList=JSON.parse(has);
|
||||
this.countPopup();
|
||||
}
|
||||
|
||||
|
||||
// let loadNum = localStorage.getItem(this.sessionKey);
|
||||
// let hasFlag = sessionStorage.getItem(this.sessionKey);
|
||||
// let $this=this;
|
||||
// if(!hasFlag){
|
||||
// let times=0;
|
||||
// if(loadNum){
|
||||
// times=Number(loadNum);
|
||||
// }
|
||||
// if(times<3){
|
||||
// let now=new Date();
|
||||
// let min=new Date(2022,10,9,0,0,0);
|
||||
// let max=new Date(2022,11,1,0,0,0);
|
||||
// //console.log(now,min,max);
|
||||
// //console.log(now.getTime(),min.getTime(),max.getTime());
|
||||
// if(now.getTime()>min.getTime() && now.getTime()<max.getTime()){
|
||||
// //console.log('open')
|
||||
// this.showGonggao=true;
|
||||
// times++;
|
||||
// localStorage.setItem(this.sessionKey,times);
|
||||
// sessionStorage.setItem(this.sessionKey,1);
|
||||
// }
|
||||
// }
|
||||
|
||||
// }
|
||||
},
|
||||
methods:{
|
||||
countPopup(){
|
||||
let newLogin = localStorage.getItem(this.$xpage.constants.newLoginKey);
|
||||
this.popupList.forEach(item=>{
|
||||
if(item.loginEd && newLogin && newLogin==1){
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -181,7 +181,7 @@ export default {
|
||||
this.sex = this.userInfo.sex;
|
||||
this.$store.dispatch('refrashMsg');
|
||||
this.loadBoeData();
|
||||
this.loadPopupConfig();
|
||||
//this.loadPopupConfig();
|
||||
},
|
||||
methods: {
|
||||
loadPopupConfig(){
|
||||
|
||||
Reference in New Issue
Block a user