去掉漏洞扫描所需参数及bug修复

mobile
yujialong 2 years ago
parent 74986f22f3
commit 171ffb16d7
  1. 13
      src/layouts/footer/index.vue
  2. 51
      src/layouts/header/index.vue
  3. 16
      src/layouts/home/index.vue
  4. 1
      src/layouts/navbar/index.vue
  5. 8
      src/libs/util.js
  6. 4
      src/pages/article/activity.vue
  7. 4
      src/pages/article/index.vue
  8. 8
      src/pages/column/index.vue
  9. 4
      src/pages/column/result.vue
  10. 9
      src/pages/home/index.vue
  11. 171
      src/pages/overviewDevHistory/index.vue
  12. 8
      src/pages/overviewSetup/index.vue
  13. 4
      src/pages/publish/index.vue
  14. 4
      src/pages/publish/show.vue
  15. 14
      src/router/modules/overviewDevHistory.js

@ -34,15 +34,15 @@
<div class="lines"> <div class="lines">
<div class="line"> <div class="line">
<img class="icon" src="@/assets/images/mail.png" alt=""> <img class="icon" src="@/assets/images/mail.png" alt="">
Email: std@mail.iasf.ac.cn Email: {{ isSfel ? 'fel@mail.iasf.ac.cn' : 'std@mail.iasf.ac.cn' }}
</div> </div>
<div class="line"> <div class="line">
<img class="icon" src="@/assets/images/tel.png" alt=""> <img class="icon" src="@/assets/images/tel.png" alt="">
Telephone: 0086-755-21096026 Telephone: {{ isSfel ? '0755-21096052' : '0086-755-21096026' }}
</div> </div>
<div class="line"> <div class="line">
<img class="icon" src="@/assets/images/address.png" alt=""> <img class="icon" src="@/assets/images/address.png" alt="">
Address: 268 Zhenyuan St, Building A3, Floor 3-6, Guangming District, Shenzhen, Guangdong, P.R.China Address: {{ isSfel ? '自由电子激光工程经理部' : '268 Zhenyuan St, Building A3, Floor 3-6, Guangming District, Shenzhen, Guangdong, P.R.China' }}
</div> </div>
</div> </div>
<div class="qrcode"> <div class="qrcode">
@ -65,6 +65,13 @@ export default {
columns: [], columns: [],
}; };
}, },
computed: {
// sfel
isSfel() {
const id = this.$route.query.siteId || this.$store.state.content.site
return id == 3
}
},
mounted(){ mounted(){
this.getColumn() this.getColumn()
}, },

@ -5,13 +5,12 @@
</a> </a>
<navbar ref="nav" :isHome.sync="isHome"></navbar> <navbar ref="nav" :isHome.sync="isHome"></navbar>
<div class="tools"> <div class="tools">
<img class="search" :src="require('@/assets/images/search' + (isHome ? '-white' : '') + '.png')" alt="" @click="toggleSearch"> <img class="search" :src="require('@/assets/images/search' + (isHome ? '-white' : '') + '.png')" alt="" @click.stop="toggleSearch">
<img :src="require('@/assets/images/cn' + (isHome ? '-white' : '') + '.png')" alt="" @click="toggleLang"> <img :src="require('@/assets/images/cn' + (isHome ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang">
<div v-if="showSearch" class="search-wrap"> <div v-if="showSearch" class="search-wrap" @click.stop="stop">
<input ref="search" type="text" :placeholder="$t('column.titlePlaceholder')" v-model="title"> <input ref="search" type="text" :placeholder="$t('column.titlePlaceholder')" v-model="title">
<i class="icon" @click="handleSearch"> <img class="search-icon" src="@/assets/images/search.png" alt="" @click="handleSearch">
<img src="@/assets/images/search-white.png" alt=""> <i class="el-icon-close close-icon"></i>
</i>
</div> </div>
</div> </div>
</div> </div>
@ -23,7 +22,6 @@ export default {
data() { data() {
return { return {
isHome: this.$route.path === '/home' || this.$route.path === '/sfel', isHome: this.$route.path === '/home' || this.$route.path === '/sfel',
isSfel: this.$route.path === '/sfel',
showSearch: false, showSearch: false,
title: '', title: '',
searchTimer: null searchTimer: null
@ -32,10 +30,14 @@ export default {
components: { components: {
navbar navbar
}, },
computed: {
isSfel() {
return this.$route.path === '/sfel'
},
},
watch: { watch: {
'$route'() { '$route'() {
this.isHome = this.$route.path === '/home' || this.$route.path === '/sfel', this.isHome = this.$route.path === '/home' || this.$route.path === '/sfel'
this.isSfel = this.$route.path === '/sfel'
}, },
}, },
beforeDestroy () { beforeDestroy () {
@ -51,6 +53,9 @@ export default {
]), ]),
toIndex() { toIndex() {
this.$refs.nav.jump() this.$refs.nav.jump()
},
stop() {
}, },
// (home) // (home)
handleScroll () { handleScroll () {
@ -131,31 +136,31 @@ $height: 90px;
top: 67px; top: 67px;
right: 89px; right: 89px;
display: flex; display: flex;
padding: 10px; align-items: center;
padding: 10px 15px 10px 10px;
background-color: #fff; background-color: #fff;
box-shadow: 0px 4px 7px 0px rgba(0,0,0,0.3); box-shadow: 0px 6px 9px 0px rgba(0,0,0,0.3);
.icon {
display: inline-flex;
justify-content: center;
align-items: center;
width: 46px;
height: 46px;
background: #1583FF;
border-radius: 0px 6px 6px 0px;
cursor: pointer;
}
input { input {
width: 300px; width: 300px;
height: 46px; height: 40px;
padding: 0 40px 0 15px; padding: 0 40px 0 15px;
font-size: 16px; font-size: 16px;
color: #333; color: #333;
line-height: 46px; line-height: 46px;
background-color: #f5f5f5;
border: 0; border: 0;
border-radius: 4px; border-radius: 4px;
outline: none; outline: none;
} }
.search-icon {
padding-right: 15px;
margin: 0 15px;
cursor: pointer;
border-right: 1px solid #ccc;
}
.close-icon {
font-size: 28px;
cursor: pointer;
}
} }
@media (max-width: 1660px) { @media (max-width: 1660px) {
.header { .header {

@ -1,6 +1,6 @@
<template> <template>
<div :class="['main', { channel: isHome, 'site-en': handleClass() }]"> <div :class="['main', { channel: isHome, 'site-en': handleClass() }]">
<v-head></v-head> <v-head ref="header"></v-head>
<div class="layout"> <div class="layout">
<transition name="move" mode="out-in"> <transition name="move" mode="out-in">
<router-view class="view"></router-view> <router-view class="view"></router-view>
@ -20,7 +20,6 @@ import { mapMutations } from 'vuex'
export default { export default {
data() { data() {
return { return {
isHome: this.$route.path === '/home' || this.$route.path === '/sfel',
enSite: [1, 4, 6] // id enSite: [1, 4, 6] // id
}; };
}, },
@ -28,13 +27,18 @@ export default {
vHead, vHead,
vFooter vFooter
}, },
watch: { computed: {
'$route'() { isHome() {
this.isHome = this.$route.path === '/home' || this.$route.path === '/sfel' return this.$route.path === '/home' || this.$route.path === '/sfel'
} },
}, },
mounted() { mounted() {
this.$route.query.siteId && this.setSite(this.$route.query.siteId) this.$route.query.siteId && this.setSite(this.$route.query.siteId)
document.body.onclick = e => {
e.stopPropagation()
this.$refs.header.showSearch = false
console.log(this.$refs.header.showSearch)
}
}, },
methods: { methods: {
...mapMutations('content', [ ...mapMutations('content', [

@ -36,7 +36,6 @@ export default {
this.getColumn() this.getColumn()
this.setSite(siteId) this.setSite(siteId)
} }
this.isHome = this.$route.path === '/home' || this.$route.path === '/sfel'
this.handleColor() this.handleColor()
}, },
isHome() { isHome() {

@ -111,8 +111,12 @@ const util = {
// 去掉html里的标签及空格 // 去掉html里的标签及空格
removeTag(list, prop = 'mainBody') { removeTag(list, prop = 'mainBody') {
list.map(e => { list.map(e => {
// 有摘要取摘要,没有摘要就去掉正文里的标签空格 // 有摘要取摘要,没有摘要就去掉正文里的标签空格(也可以通过正则去除html标签,不过富文本里会有插入IE注释的情况下,直接创建一个元素取text比较简单)
e.mainBody = e.summary || e[prop].replace(/(<p class="img-des">[^>]+<\/p>)|(<[^>]+>)|((&nbsp;)+)/g , '') const text = e.summary || e[prop].replace(/(<p class="img-des">[^>]+<\/p>)|((&nbsp;)+)/g , '')
const el = document.createElement('div')
el.innerHTML = text
// e.mainBody = e.summary || e[prop].replace(/(<p class="img-des">[^>]+<\/p>)|(<\!--[^-->]+-->)|(<[^>]+>)|((&nbsp;)+)/g , '')
e.mainBody = el.innerText
e.releaseTime = e.releaseTime.split(' ')[0] e.releaseTime = e.releaseTime.split(' ')[0]
}) })
return list return list

@ -142,8 +142,8 @@ export default {
// //
getArticle() { getArticle() {
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
siteId: this.$route.query.siteId || this.$store.state.content.site siteId: this.$route.query.siteId || this.$store.state.content.site

@ -157,8 +157,8 @@ export default {
// //
getArticle() { getArticle() {
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
siteId: this.$route.query.siteId || this.$store.state.content.site siteId: this.$route.query.siteId || this.$store.state.content.site

@ -321,8 +321,8 @@ export default {
// //
getNews() { getNews() {
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
siteId: this.$route.query.siteId || this.$store.state.content.site siteId: this.$route.query.siteId || this.$store.state.content.site
@ -393,8 +393,8 @@ export default {
if (this.lableId.includes(e.id)) labelName.push(e.labelName) if (this.lableId.includes(e.id)) labelName.push(e.labelName)
}) })
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
siteId: this.$route.query.siteId || this.site, siteId: this.$route.query.siteId || this.site,
columnIds, columnIds,
pageNum: this.page, pageNum: this.page,

@ -61,8 +61,8 @@ export default {
getArticle() { getArticle() {
this.setKeyword('') this.setKeyword('')
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
siteId: this.$route.query.siteId || this.site, siteId: this.$route.query.siteId || this.site,
pageNum: 1, pageNum: 1,
pageSize: 1000, pageSize: 1000,

@ -230,18 +230,19 @@ export default {
} }
} }
img { img {
width: 237px; width: 200px;
height: 167px; height: 125px;
} }
.texts { .texts {
margin-left: 34px; width: calc(100% - 220px);
margin-left: 20px;
} }
h6 { h6 {
font-size: 18px; font-size: 18px;
color: #0648A8; color: #0648A8;
@include ellipsis;
} }
.des { .des {
width: 360px;
margin: 14px 0; margin: 14px 0;
font-size: 16px; font-size: 16px;
color: #333; color: #333;

@ -13,18 +13,44 @@
</template> </template>
</ul> </ul>
<div class="tab-content"> <div class="block history">
<div class="org"> <div class="inner">
<div class="left"> <h2 class="wow fadeInLeft">发展历程</h2>
<h6>组织架构</h6> <p class="en">DEVELOPMENT HISTORY</p>
<p class="text">根据深圳综合粒子设施理事会章程有关规定研究院实行理事会领导下的院长负责制理事长由市长担任副理事长由分管发改科创副市长以及中山大学南方科技大学校长担任理事成员包括市政府秘书长相关副秘书长及政府部门高等院校科研机构龙头企业相关负责同志</p>
<div class="event">
<ul class="time">
<li class="active">2022</li>
<li>2021</li>
<li>2020</li>
</ul>
<div class="right">
<h6 class="year">2022</h6>
<ul class="list">
<li>
<div class="texts">
<p class="date">10月11日</p>
<p class="text">深圳综合粒子设施研究院加入国际超导加速器联盟</p>
</div>
<img src="@/assets/images/channel1.png" alt="" class="pic">
</li>
<li>
<div class="texts">
<p class="date">10月11日</p>
<p class="text">深圳综合粒子设施研究院加入国际超导加速器联盟</p>
</div>
<img src="@/assets/images/channel1.png" alt="" class="pic">
</li>
<li>
<div class="texts">
<p class="date">10月11日</p>
<p class="text">深圳综合粒子设施研究院加入国际超导加速器联盟</p>
</div>
</li>
</ul>
</div>
</div> </div>
<img class="pic" src="@/assets/images/about.png" alt="">
</div>
<div class="lg-bg">
<img width="100%" src="@/assets/images/about-bg.png" alt="">
</div> </div>
</div> </div>
</div> </div>
</template> </template>
@ -70,6 +96,10 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import url(../../plugins/wow/animate.css); @import url(../../plugins/wow/animate.css);
@import "../../styles/page/page.scss"; @import "../../styles/page/page.scss";
.wrap {
background: url(http://10.10.11.7/images/overviewDevHistory/1.png) (right 505px)/auto no-repeat,
url(http://10.10.11.7/images/overviewDevHistory/2.png) (left bottom)/auto no-repeat;
}
.tabs { .tabs {
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -88,40 +118,101 @@ export default {
} }
} }
} }
.tab-content { .history {
padding: 77px 0; h2 {
position: relative;
font-size: 2.2rem;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #1C1C1C;
}
.en {
margin: -15px 0 40px;
font-size: 2.2rem;
font-family: PingFangSC-Light, PingFang SC;
font-weight: 300;
color: #E3E3E3;
}
} }
.org { .event {
display: flex; display: flex;
justify-content: space-between; justify-content: center;
align-items: center; .time {
width: 1294px; padding-right: 10px;
padding: 9px 86px 29px 116px; margin-right: 20px;
margin: 0 auto 50px; border-right: 1px solid #ddd;
background: #FCFCFC; li {
border-radius: 160px; display: flex;
.left { justify-content: flex-end;
width: 705px; align-items: center;
} width: 190px;
h6 { padding-right: 45px;
font-size: 1.4rem; line-height: 60px;
font-family: AlimamaShuHeiTi-Bold, AlimamaShuHeiTi; font-size: 1.4rem;
font-weight: bold; font-weight: 600;
color: #333; font-family: SFProDisplay-Semibold, SFProDisplay;
color: #666;
box-shadow: inset 0px -1px 0px 0px #DDDDDD;
cursor: pointer;
&.active {
font-weight: 800;
color: #1A81F4;
background: linear-gradient(90deg, #FFFFFF 0%, #F3F8FF 100%);
&:before {
content: '';
width: 18px;
height: 18px;
background: url(http://10.10.11.7/images/overviewDevHistory/3.png) no-repeat;
margin-right: 20px;
}
}
}
} }
.text { .year {
margin-top: 10px; margin: 0 0 20px 20px;
font-size: 1rem; font-size: 3.8rem;
color: #020202; font-family: ToppanBunkyuMidashiGothicStdN-ExtraBold, ToppanBunkyuMidashiGothicStdN;
line-height: 2rem; font-weight: 800;
color: #1A81F4;
} }
.pic { .list {
width: 320px; border-top: 1px solid #ddd;
height: 282px; li {
display: flex;
justify-content: space-between;
align-items: center;
padding: 30px;
border-bottom: 1px solid #ddd;
}
.texts {
width: 500px;
margin-right: 100px;
}
.date {
margin-bottom: 15px;
font-size: 1.2rem;
font-family: PingFangSC-Semibold, PingFang SC;
font-weight: 600;
color: #333;
}
.text {
font-size: 1.1rem;
color: #333;
@include mul-ellipsis(3);
&:before {
content: '';
display: inline-block;
width: 7px;
height: 7px;
margin: 0 10px;
background-color: #666;
transform: rotate(45deg);
}
}
.pic {
width: 350px;
height: 195px;
}
} }
} }
.lg-bg {
width: 85%;
margin: 0 auto;
}
</style> </style>

@ -16,13 +16,13 @@
<div class="tab-content"> <div class="tab-content">
<div class="org"> <div class="org">
<div class="left"> <div class="left">
<h6>组织架构</h6> <h6>{{ modules[1].form.title }}</h6>
<p class="text">根据深圳综合粒子设施理事会章程有关规定研究院实行理事会领导下的院长负责制理事长由市长担任副理事长由分管发改科创副市长以及中山大学南方科技大学校长担任理事成员包括市政府秘书长相关副秘书长及政府部门高等院校科研机构龙头企业相关负责同志</p> <p class="text">{{ modules[1].form.des }}</p>
</div> </div>
<img class="pic" src="@/assets/images/about.png" alt=""> <img class="pic" src="http://10.10.11.7/images/overviewSetup/1.png" alt="">
</div> </div>
<div class="lg-bg"> <div class="lg-bg">
<img width="100%" src="@/assets/images/about-bg.png" alt=""> <img width="100%" src="http://10.10.11.7/images/overviewSetup/2.png" alt="">
</div> </div>
</div> </div>

@ -57,8 +57,8 @@ export default {
// //
getArticle() { getArticle() {
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
siteId: this.$route.query.siteId || this.site, siteId: this.$route.query.siteId || this.site,
columnIds: [this.id], columnIds: [this.id],
pageNum: this.page, pageNum: this.page,

@ -150,8 +150,8 @@ export default {
}).catch(err => {}) }).catch(err => {})
this.$post(this.api.newlyPublishedArticles, { this.$post(this.api.newlyPublishedArticles, {
role: 1,
isadmin: false,
pageNum: 1, pageNum: 1,
pageSize: 5, pageSize: 5,
siteId: this.$route.query.siteId || this.$store.state.content.site siteId: this.$route.query.siteId || this.$store.state.content.site

@ -0,0 +1,14 @@
import BasicLayout from '@/layouts/home'
const name = 'overviewDevHistory'
export default {
path: `/${name}`,
component: BasicLayout,
children: [
{
name,
path: `/${name}`,
component: () => import(`@/pages/${name}`),
meta: { title: '' }
}
]
};
Loading…
Cancel
Save