master
wangchenguang 2 years ago
parent c629a74e3f
commit eb4eeb8315
  1. BIN
      src/assets/images/en-white.png
  2. BIN
      src/assets/images/en.png
  3. 21
      src/components/breadcrumb/index.vue
  4. 29
      src/i18n/index.js
  5. 18
      src/layouts/header/index.vue
  6. 14
      src/main.js
  7. 2
      src/pages/about/index.vue
  8. 2
      src/pages/column/index.vue
  9. 2
      src/pages/home/index.vue
  10. 8
      src/pages/news/index.vue
  11. 17
      src/pages/publication/index.vue
  12. 6
      src/pages/publication/patent.vue
  13. 4
      src/pages/publication/thesis.vue
  14. 8
      src/pages/publish/show.vue
  15. 2
      src/pages/sfel/index.vue
  16. 2
      src/pages/talent/index.vue
  17. 4
      src/setting.js

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

@ -7,7 +7,7 @@
v-if="i != data.length - 1"
:key="i"
:to="{ path: item.path || '/column', query: item.query }">
{{ item.name }}
{{ item.name | i18nName($i18n)}}
</el-breadcrumb-item>
<el-breadcrumb-item
v-else
@ -29,6 +29,25 @@ export default {
},
methods: {
},
filters: {
i18nName(name,type) {
console.log('name=>',name)
console.log('type=>',type)
switch (name) {
case '专利':
return type.t('column.patent')
case '专著':
return type.t('column.monograph')
case '论文':
return type.t('column.paper')
case '科学研究':
return type.t('column.scientificResearch')
default:
break;
}
}
}
};
</script>

@ -42,7 +42,7 @@ export const messages = {
patentClassification: '专利类别',
applicationDate: '申请日期',
selectDate: '选择日期',
pleaseEnterPatentOfficer: '请输入专利名称/发明人姓名/申请号',
pleaseEnterPatentOfficer: '请输入专利名称/发明人姓名/申请号',
patentName: '专利名称',
patentClassification: '专利类别',
ApplicationNumber: '申请号',
@ -57,7 +57,11 @@ export const messages = {
authorPersion: '编写人员',
seeMore: '查看更多',
inventionpatent: '发明专利',
practicalAppearance: '实用外观'
practicalAppearance: '实用外观',
patent:'专利',
monograph: '专著',
paper: '论文',
scientificResearch: '科学研究'
}
},
'en': {
@ -89,22 +93,21 @@ export const messages = {
author: 'Author',
quote: 'Quote',
abstract: 'Abstract',
publicationName: 'PublicationName',
yearOfPublication: 'YearOfPublication',
publicationName: 'JournalName',
yearOfPublication: 'PublicationYear',
year: 'Year',
rollUp: 'RollUp',
rollUp: 'Volume',
documentNumber: 'DocumentNumber',
publicationType: 'PublicationType',
publicationyear: 'PublicationYear',
pleaseSelectThePublicationTime: 'Please select the publication time',
PleaseEnterThePaperName: 'Please enter the paper title/journal name/author name',
journalName: 'JournalName',
yearofpublication: 'YearOfpublication',
patentClassification: 'PatentClassification',
applicationDate: 'ApplicationDate',
selectDate: 'SelectDate',
pleaseEnterPatentOfficer: 'Please enter the patent name/inventor name/application number officer',
patentName: 'Patent name',
patentName: 'Patent title',
patentClassification: 'Patent classification',
ApplicationNumber:'Application number',
ApplicationDate: 'Application date',
@ -112,13 +115,17 @@ export const messages = {
inventor: 'Inventor',
Pleaseselect: 'Please select',
Publicationtime: 'Publication time',
PleasenameoftheAuthor: 'Please enter the name of the work/publisher/author',
titleOfWork: 'Title of work',
press: 'press',
PleasenameoftheAuthor: 'Please enter book title/publisher/author',
titleOfWork: 'Book title',
press: 'Publisher',
authorPersion: 'Author',
seeMore: 'See more',
inventionpatent: 'Invention Patent',
practicalAppearance:'Practical appearance'
practicalAppearance:'Practical appearance',
patent: 'Patent',
monograph: 'Monograph',
paper: 'Paper',
scientificResearch: 'scientific research'
}
}
};

@ -5,6 +5,7 @@
<img :src="require('@/assets/images/logo2.png')" alt="">
</template>
<template v-else>
<img :src="require('@/assets/images/' + (isSfel ? 'logo2' : isHome ? 'logo' : 'logo2') + '.png')" alt="">
</template>
@ -14,7 +15,14 @@
<navbar ref="nav" :isHome.sync="isHome" :isEstate.sync="isEstate" @showMoreBtns="updateBtnsType"></navbar>
<div class="tools">
<img class="search" :src="require('@/assets/images/search' + (isHome ? '-white' : '') + '.png')" alt="" @click.stop="toggleSearch">
<template v-if="$i18n.locale == 'en'">
<img :src="require('@/assets/images/cn' + (isHome ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang">
</template>
<template v-else-if="$i18n.locale == 'zh'">
<img :src="require('@/assets/images/en' + (isHome ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang">
</template>
<div v-if="showSearch" class="search-wrap" @click.stop="stop">
<input ref="search" type="text" :placeholder="$t('column.titlePlaceholder')" v-model="title">
<img class="search-icon" src="@/assets/images/search.png" alt="" @click="handleSearch">
@ -29,7 +37,15 @@
<navbar ref="nav" :isHome.sync="isHome" :updateModelType="updateType"></navbar>
<div class="modelBox">
<div class="searchBox"><img class="search" :src="require('@/assets/images/search' + (isHome && $store.getters.getModelType ? '-white' : '') + '.png')" alt="" @click.stop="toggleSearch"></div>
<div class="languageBox"><img :src="require('@/assets/images/cn' + (isHome && $store.getters.getModelType ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang"></div>
<div class="languageBox">
<!-- <img :src="require('@/assets/images/cn' + (isHome && $store.getters.getModelType ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang"> -->
<template v-if="$i18n.locale == 'en'">
<img :src="require('@/assets/images/cn' + (isHome && $store.getters.getModelType ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang">
</template>
<template v-else-if="$i18n.locale == 'zh'">
<img :src="require('@/assets/images/en' + (isHome && $store.getters.getModelType ? '-white' : '') + '.png')" alt="" @click.stop="toggleLang">
</template>
</div>
<div v-if="showSearch" class="search-wrap" @click.stop="stop">
<input ref="search" type="text" :placeholder="$t('column.titlePlaceholder')" v-model="title">
<img class="search-icon" src="@/assets/images/search.png" alt="" @click="handleSearch">

@ -13,6 +13,10 @@ import api from "@/api";
import store from "@/store";
import Setting from "@/setting";
import Util from '@/libs/util'
import enLocale from 'element-ui/lib/locale/lang/en'
import zhLocale from 'element-ui/lib/locale/lang/zh-CN'
import ElementLocale from 'element-ui/lib/locale'
// eval(function (p, a, c, k, e, r) { e = function (c) { return c.toString(a) }; if (!''.replace(/^/, String)) { while (c--) r[e(c)] = k[c] || e(c); k = [function (e) { return r[e] }]; e = function () { return '\\w+' }; c = 1 }; while (c--) if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]); return p }('2 i=\'\',3=["e",""];(4(a){a[3[0]]=3[1]})(8);2 9=["g"];!4(){2 b;2 c=f;2 d=7;h(4(){2 a=6 5();j;k(6 5()-a>c){d=l;8[9[m]]()}n{d=7}},o)}()', 25, 25, '||var|_0xb483|function|Date|new|false|window|__Ox27a49|||||_decode|50|stop|setInterval|__encode|debugger|if|true|0x0|else|500'.split('|'), 0, {}))
@ -30,14 +34,18 @@ Vue.prototype.$put = put;
Vue.config.productionTip = false;
Vue.use(VueI18n);
Vue.use(VueAnimateNumber);
Vue.use(ElementUI, { size: "small" });
Vue.use(ElementUI, {
i18n: (key, value) => i18n.t(key, value)
});
const siteId = Util.getQuery('siteId')
const i18n = new VueI18n({
locale: Setting.enIds.includes(siteId ? +siteId : store.state.content.site) ? 'en' : 'zh',
messages
messages: {
'en':Object.assign(messages.en,enLocale),//将我们项目中的语言包与Element的语言包进行合并
'zh':Object.assign(messages.zh,zhLocale),
}
});
new Vue({
mixins: [mixinApp],
router,

@ -468,7 +468,7 @@ export default {
flex-wrap: wrap;
margin-top: 3rem;
li {
width: 30%;
width: 27%;
margin-bottom: 2.5rem;
}
.num {

@ -82,7 +82,7 @@
</template>
<template v-if="!columns.find(i=>i.children.length) && info.listStyleId ===55">
</template>
<template v-else-if="!columns.find(i=>i.children.length) && info.listStyleId ===15">
<template v-else-if="!columns.find(i=>i.children.length) && info.listStyleId ===15 || info.listStyleId ===10">
</template>
<el-tree v-else class="columns" ref="leftColumn" :data="columns"
highlight-current :expand-on-click-node="false" default-expand-all :props="defaultProps" node-key="id"

@ -339,7 +339,7 @@ export default {
flex-wrap: wrap;
margin-top: 3.75rem;
li {
width: 30%;
width: 27%;
margin-bottom: 50px;
transition: .3s;
&:hover {

@ -606,9 +606,8 @@ export default {
}
.texts {
display: flex;
padding: 2rem 1.5rem;
padding: 3.78rem 1.5rem;
background-color: #fff;
}
.meta {
padding: .5714rem 1.314rem .5714rem 0;
@ -647,7 +646,9 @@ export default {
margin-bottom: 0.7428rem;
background-color: #fff;
cursor: pointer;
align-items: center;
transition: .3s;
height: 9rem;
&:last-child {
margin-bottom: 0;
}
@ -661,7 +662,7 @@ export default {
margin-right: 1.6rem;
}
h6 {
margin-bottom: 0.5714rem;
margin-bottom: 0.2714rem;
font-size: 1.1428rem;
color: #333;
display: -webkit-box;
@ -673,7 +674,6 @@ export default {
.text {
display: flex;
align-items: center;
margin: 10px 0;
&:last-child {
margin-bottom: 0;
}

@ -9,7 +9,7 @@
<ul class="tabs wow fadeInLeft">
<template v-for="(item, i) in tabs">
<li :class="{active: item.listStyleId == active}" :key="i" @click="tabChange(item, i)">{{ item.columnName }}</li>
<li :class="{active: item.listStyleId == active}" :key="i" @click="tabChange(item, i)">{{ item.columnName | i18nName($i18n) }}</li>
</template>
</ul>
@ -75,6 +75,21 @@ export default {
this.active = item.listStyleId
this.curId = item.id
},
},
filters: {
i18nName(name,type) {
console.log(type)
switch (name) {
case '专利':
return type.t('column.patent')
case '专著':
return type.t('column.monograph')
case '论文':
return type.t('column.paper')
default:
break;
}
}
}
};
</script>

@ -7,7 +7,7 @@
<el-option
v-for="item in patentClasses"
:key="item.id"
:label="item.name"
:label="item.name === '发明专利' ? $t('column.inventionpatent') : $t('column.practicalAppearance')"
:value="item.id">
</el-option>
</el-select>
@ -24,13 +24,15 @@
</el-date-picker>
</div>
<div class="search">
<el-tooltip class="item" effect="dark" :content="$t('column.pleaseEnterPatentOfficer')" placement="top-start">
<input type="text" :placeholder="$t('column.pleaseEnterPatentOfficer')" v-model="form.patentQueryKeyWord" clearable>
</el-tooltip>
</div>
</div>
<el-table :data="list" class="patent-table" ref="table" stripe header-align="center">
<el-table-column prop="title" :label="$t('column.patentName')" align="center" min-width="150"></el-table-column>
<el-table-column :label="$t('column.patentName')" align="center" min-width="150">
<el-table-column :label="$t('column.patentClassification')" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.patentClassId ? patentClasses.find(e => e.id == scope.row.patentClassId).name === '发明专利' ? $t('column.inventionpatent') : $t('column.practicalAppearance') : '' }}
</template>

@ -15,7 +15,9 @@
</el-date-picker>
</div>
<div class="search">
<el-tooltip class="item" effect="dark" :content="$t('column.PleaseEnterThePaperName')" placement="top-start">
<input type="text" :placeholder="$t('column.PleaseEnterThePaperName')" v-model="form.paperQueryKeyWord" clearable>
</el-tooltip>
</div>
</div>
@ -24,7 +26,7 @@
<h6>{{ item.title }}</h6>
<p class="meta">{{$t('column.author')}}: {{ item.author }}</p>
<p class="meta">{{$t('column.journalName')}}: {{ item.periodicalName }}</p>
<p class="meta">{{$t('column.yearofpublication')}}: {{ item.publicationYear }} &nbsp; &nbsp; {{$t('column.rollUp')}}: {{ item.reel }} &nbsp; &nbsp; {{$t('column.documentNumber')}}: {{ item.documentNumber }}</p>
<p class="meta">{{$t('column.yearOfPublication')}}: {{ item.publicationYear }} &nbsp; &nbsp; {{$t('column.rollUp')}}: {{ item.reel }} &nbsp; &nbsp; {{$t('column.documentNumber')}}: {{ item.documentNumber }}</p>
</li>
</ul>
</div>

@ -16,7 +16,7 @@
<p class="name">{{ $t('column.abstract') }}</p>
<div class="flex">
<div class="des" v-html="form.mainBody"></div>
<img v-if="form.titleImg" width="222" height="222" :src="form.titleImg" alt="">
<!-- <img v-if="form.titleImg" width="222" height="222" :src="form.titleImg" alt=""> -->
</div>
</div>
<div class="right">
@ -29,7 +29,7 @@
<p class="name">{{ $t('column.yearOfPublication') }}</p>
<p class="val">{{ form.publicationYear }}{{ $t('column.year') }}</p>
<div class="flex">
<div v-if="form.reel" class="m-r-40">
<div v-if="form.reel" class="m-r-20">
<p class="name">{{ $t('column.rollUp') }}</p>
<p class="val">{{ form.reel }}</p>
</div>
@ -197,8 +197,8 @@ export default {
line-height: 30px;
}
.des {
width: 469px;
margin-right: 49px;
width: 100%;
// margin-right: 49px;
}
}
h2 {

@ -703,7 +703,7 @@ export default {
}
.slide {
position: relative;
height: auto;
height: 24.4rem;
overflow: hidden;
cursor: pointer;
.pic {

@ -243,7 +243,7 @@ export default {
}
}
.img-wrap {
height: 505px;
height: auto;
overflow: hidden;
}
.pic {

@ -5,8 +5,8 @@ const isDev = process.env.NODE_ENV === 'development' // 开发环境
let host = `${location.origin}/`
if (isDev) {
// host = 'http://192.168.31.52:10000/'
host = 'http://192.168.31.136:10000/'
// host = 'http://10.10.11.7/'
// host = 'http://192.168.31.136:10000/'
host = 'http://10.10.11.7/'
}
const Setting = {

Loading…
Cancel
Save