期刊引用+分类管理(集团分类+期刊)

This commit is contained in:
2024-09-26 13:52:24 +08:00
parent f679d3e7cb
commit b306198109
14 changed files with 3009 additions and 43 deletions

View File

@@ -1,20 +1,20 @@
<template>
<div class="container" style="padding-bottom: 50px; width: 100%; height: 100%" v-loading="loading">
<div style="width: 100%; height: auto;">
<div style="width: 100%; height: auto">
<div
style="
width: 100%;
box-sizing: border-box;
margin-bottom: 20px;
background-color: #f4f4f5;
padding: 10px;
font-size: 12px;
color: #909399;
"
>
{{ $t('JournalCitationAnalysis.info') }} : {{ $t('JournalCitationAnalysis.wos') }} /
{{ $t('JournalCitationAnalysis.all') }}
</div>
style="
width: 100%;
box-sizing: border-box;
margin-bottom: 20px;
background-color: #f4f4f5;
padding: 10px;
font-size: 12px;
color: #909399;
"
>
{{ $t('JournalCitationAnalysis.info') }} : {{ $t('JournalCitationAnalysis.wos') }} /
{{ $t('JournalCitationAnalysis.all') }}
</div>
<el-table :data="dataList" border class="msg-table" empty-text="New Data (0)">
<el-table-column type="index" label="No." width="55" align="center"></el-table-column>
<!-- <el-table-column type="index" label="Issn" width="100" align="center">
@@ -35,7 +35,15 @@
align="center"
>
<template slot-scope="scope">
{{ scope.row.cite.month_num }}
<el-button type="primary" size="mini" @click="openDrawer(scope.row)" style="font-weight: bold">
{{ scope.row.cite.month_num }}</el-button
>
<!-- <p
style="padding: 0px 6px;display: inline-block;cursor: pointer; color: #409eff; background: #ecf5ff; border: 1px solid #b3d8ff"
>
{{ scope.row.cite.month_num }}
</p> -->
</template>
</el-table-column>
<el-table-column
@@ -46,7 +54,6 @@
align="center"
>
<template slot-scope="scope">
{{ scope.row.cite.year_num }}
</template>
</el-table-column>
@@ -89,19 +96,103 @@
{{ scope.row.cite.pre_year_article_num }}
</template>
</el-table-column>
<el-table-column
:label="`${$t('JournalCitationAnalysis.factor')}`
"
width="80"
align="center"
>
<el-table-column :label="`${$t('JournalCitationAnalysis.factor')}`" width="80" align="center">
<template slot-scope="scope">
{{ scope.row.cite.yc_if&& scope.row.cite.yc_if>0? scope.row.cite.yc_if.toFixed(2):0 }}
{{ scope.row.cite.yc_if && scope.row.cite.yc_if > 0 ? scope.row.cite.yc_if.toFixed(2) : 0 }}
</template>
</el-table-column>
</el-table>
</div>
<el-drawer :title="drawerTitle" :visible.sync="drawer" direction="rtl" :before-close="handleClose" size="78%">
<div style="padding: 0 20px; box-sizing: border-box">
<el-table
v-loading="JournalListLoad"
height="88vh"
:data="JournalList"
class="table"
ref="multipleTable"
header-cell-class-name="table-header"
empty-text="New messages (0)"
>
<el-table-column label="No." align="center" width="50">
<template slot-scope="scop">
{{ scop.$index + 1 }}
</template>
</el-table-column>
<el-table-column prop="title" :label="$t('JournalCitationAnalysis.ArticleInfo')">
<template slot-scope="scope">
<p style="color: #333; margin-bottom: 4px">
<span style="font-size: 14px; font-weight: 600">Article Tiltle : </span>
<span style="font-size: 14px"> {{ scope.row.article_name }}</span>
</p>
<p>
<span style="font-size: 14px; font-weight: 600">Author : </span>
<span style="font-size: 14px">{{ scope.row.author }}</span>
</p>
<p>
<span style="font-size: 13px; font-weight: 500; color: #888"
>{{ $t('paperArticleCount.Periodroll') }} :
</span>
<span style="font-size: 13px; color: #aaa">( {{ scope.row.vol }} )</span>
</p>
<p>
<span style="font-size: 14px; color: #006699; font-weight: 500">Doi : </span>
<span style="font-size: 14px; color: #006699 !important; font-weight: 500">{{ scope.row.doi }}</span>
</p>
</template>
</el-table-column>
<el-table-column :label="$t('citeList.is_wos')" width="80" align="center">
<template slot-scope="scope">
<span v-if="scope.row.is_wos == 0">{{ $t('citeList.is_china0') }}</span>
<p v-if="scope.row.is_wos == 1">{{ $t('citeList.yes') }}</p>
<p v-if="scope.row.is_wos == 2">{{ $t('citeList.no') }}</p>
</template>
</el-table-column>
<el-table-column :label="$t('citeList.is_china')" width="80" align="center">
<template slot-scope="scope">
<span v-if="scope.row.is_wos == 0">{{ $t('citeList.is_china0') }}</span>
<p v-if="scope.row.is_wos == 1">{{ $t('citeList.yes') }}</p>
<p v-if="scope.row.is_wos == 2">{{ $t('citeList.no') }}</p>
</template>
</el-table-column>
<el-table-column :label="$t('partyRole.status')" width="100" align="center">
<template slot-scope="scope">
<span
style="
padding: 2px 4px;
border-radius: 2px;
margin-left: 10px;
font-size: 12px;
color: #909399;
background: #f4f4f5;
border-color: #d3d4d6;
float: right;
"
v-if="
scope.row.state == 0 ||
scope.row.state == 1 ||
scope.row.state == 2 ||
scope.row.state == 3 ||
scope.row.state == 4 ||
scope.row.state == 5 ||
scope.row.state == 6
"
>
<!-- {{ scope.row.link ?$t('partyRole.Published') : '' }} -->
{{ $t(`artstate.state${scope.row.state}`) }}
</span>
</template>
</el-table-column>
<el-table-column :label="$t('citeList.factor')" width="80" align="center">
<template slot-scope="scope">
<span style="color: #006699; font-weight: bold">{{ scope.row.factor ? scope.row.factor : '-' }}</span>
</template>
</el-table-column>
</el-table>
</div>
</el-drawer>
</div>
</template>
@@ -111,9 +202,14 @@ const jAtableY = () => import('@/components/common/journalArticleTable');
export default {
data() {
return {
drawerTitle: '',
drawer: false,
lang: !localStorage.getItem('langs') || localStorage.getItem('langs') == 'en' ? 'en' : 'zh',
loading: false,
dataList: [],
JournalList: [],
JournalListLoad: false,
currentData: {},
p_year: new Date().getFullYear() - 1,
year: new Date().getFullYear(),
month: new Date().getMonth() + 1
@@ -129,6 +225,43 @@ export default {
this.$forceUpdate();
},
methods: {
getJournalList() {
this.JournalListLoad = true;
this.JournalList = [];
this.$api
.post('api/Monitor/getCiteListForEditorMonth', {
issn: this.currentData.issn
})
.then(async (res) => {
this.JournalListLoad = false;
if (res.code == 0) {
this.JournalList = res.data.list;
console.log('this.AssociatedJournalList at line 234:', this.AssociatedJournalList);
} else {
this.$message.error(res.msg);
}
})
.catch((err) => {
this.JournalListLoad = false;
this.$message.error(err);
});
},
openDrawer(data) {
this.currentData = data;
if (this.currentData) {
this.drawerTitle = `${this.currentData.title} ${
this.lang == 'en'
? this.$t('JournalCitationAnalysis.cite') + this.getMonthName(this.month)
: this.month + '月' + this.$t('JournalCitationAnalysis.cite')
} ( ${this.currentData.cite.month_num} )`;
}
this.drawer = true;
this.getJournalList();
},
handleClose() {
this.drawer = false;
},
getMonthName(month) {
const months = [
'January',