This commit is contained in:
xulu
2021-09-14 09:22:48 +08:00
parent 2fb8c7e04e
commit 709110f7e9
18 changed files with 1849 additions and 100 deletions

View File

@@ -10,6 +10,7 @@
"dependencies": {
"axios": "^0.18.0",
"babel-polyfill": "^6.26.0",
"echarts": "^5.2.0",
"element-ui": "^2.11.0",
"mavon-editor": "^2.6.17",
"vue": "^2.6.10",

View File

@@ -36,7 +36,7 @@
<!-- 身份切换 -->
<span style="font-size: 14px;margin-right: 8px;" v-if="this.user_cap.includes('author')">View as :</span>
<!-- <span style="font-size: 14px;margin-right: 8px;" v-if="this.user_cap.includes('author')">View as :</span>
<el-dropdown class="link_role" trigger="click" v-if="this.user_cap.includes('author')">
<span style="color: #fff;cursor: pointer;">
Author<i class="el-icon-arrow-down el-icon--right"></i>
@@ -58,7 +58,7 @@
<el-dropdown-item>Young scientist member</el-dropdown-item>
</router-link>
</el-dropdown-menu>
</el-dropdown>
</el-dropdown> -->
<!-- 用户头像 -->

View File

@@ -13,8 +13,8 @@
<span style="color:#e26a2d" v-if="this.link_path == '/editorial'">Editorial board</span>
<span style="color:#4640c4" v-if="this.link_path == '/peerewer'">Reviewer</span>
<span style="color:#cc3646" v-if="this.link_path == '/youthed'">Youth editorial board</span> -->
<span v-if="this.link_path == '/managing' || this.link_path == '/man_text'">Editor-in-Chief :</span>
<span v-if="this.link_path == '/editorial' || this.link_path == '/edit_text'">Editorial board member :</span>
<span v-if="this.link_path == '/managing' || this.link_path == '/man_text' || this.link_path == '/man_report'">Editor-in-Chief :</span>
<span v-if="this.link_path == '/editorial' || this.link_path == '/edit_text' || this.link_path == '/edit_report'">Editorial board member :</span>
<span v-if="this.link_path == '/peerewer' || this.link_path == '/per_text'">Reviewer :</span>
<span v-if="this.link_path == '/youthed' || this.link_path == '/you_text' || this.link_path == '/you_taxt'">Young scientist member :</span>
<b style="margin-left: 5px;">{{user_name}}</b>
@@ -24,8 +24,8 @@
<el-dropdown class="link_role" trigger="click">
<span>
View as :
<span v-if="this.link_path == '/managing' || this.link_path == '/man_text'">Editor-in-Chief</span>
<span v-if="this.link_path == '/editorial' || this.link_path == '/edit_text'">Editorial board member</span>
<span v-if="this.link_path == '/managing' || this.link_path == '/man_text' || this.link_path == '/man_report'">Editor-in-Chief</span>
<span v-if="this.link_path == '/editorial' || this.link_path == '/edit_text' || this.link_path == '/edit_report'">Editorial board member</span>
<span v-if="this.link_path == '/peerewer' || this.link_path == '/per_text'">Reviewer</span>
<span v-if="this.link_path == '/youthed' || this.link_path == '/you_text' || this.link_path == '/you_taxt'">Young scientist member</span>
<i class="el-icon-arrow-down el-icon--right"></i>

View File

@@ -25,6 +25,55 @@
</el-menu-item>
</template>
</template>
<template v-if="this.user_cap.includes('chief')">
<router-link :to="{path:'/managing'}">
<el-menu-item>
<i class="el-icon-user"></i> Editor-in-Chief
</el-menu-item>
</router-link>
</template>
<template v-if="this.user_cap.includes(',board')">
<router-link :to="{path:'/editorial'}">
<el-menu-item>
<i class="el-icon-user"></i> Editorial board member
</el-menu-item>
</router-link>
</template>
<template v-if="this.user_cap.includes('reviewer')">
<router-link :to="{path:'/peerewer'}">
<el-menu-item>
<i class="el-icon-user"></i> Reviewer
</el-menu-item>
</router-link>
</template>
<template v-if="this.user_cap.includes('yboard')">
<router-link :to="{path:'/youthed'}">
<el-menu-item>
<i class="el-icon-user"></i> Young scientist member
</el-menu-item>
</router-link>
</template>
<template v-if="this.userrole == 0">
<el-menu-item>
<a href="http://boss.tmrjournals.com/#/publition?Act=123" target="_blank" style="color: #bfcbd9;">
<i class="el-icon-d-arrow-right"></i> Boss System
</a>
</el-menu-item>
</template>
<template v-if="this.userrole == 1">
<el-menu-item>
<a href="http://master.tmrjournals.com" target="_blank" style="color: #bfcbd9;">
<i class="el-icon-d-arrow-right"></i> Management System
</a>
</el-menu-item>
<el-menu-item>
<a href="https://mail.mxhichina.com/alimail" target="_blank" style="color: #bfcbd9;">
<i class="el-icon-d-arrow-right"></i> Official mailbox
</a>
</el-menu-item>
</template>
</el-menu>
</div>
</template>
@@ -213,16 +262,16 @@
title: this.$t('sidebar.author2')
}
]
},
{
icon: 'el-icon-user',
index: '2',
title: this.$t('sidebar.reviewerArticle'),
subs: [{
index: 'reviewerArticleList',
title: this.$t('sidebar.reviewerArticle1')
}]
}
// ,{
// icon: 'el-icon-user',
// index: '2',
// title: this.$t('sidebar.reviewerArticle'),
// subs: [{
// index: 'reviewerArticleList',
// title: this.$t('sidebar.reviewerArticle1')
// }]
// }
]
};

View File

@@ -1,8 +1,8 @@
<script>
const baseUrl = '/';
const mediaUrl = 'http://api.tmrjournals.com/public/';
// const mediaUrl = 'http://www.tougao.com/';
// const baseUrl = 'http://www.tougao.com/';
// const baseUrl = '/';
// const mediaUrl = 'http://api.tmrjournals.com/public/';
const mediaUrl = 'http://www.tougao.com/';
const baseUrl = 'http://www.tougao.com/';
export default {
baseUrl,
mediaUrl

View File

@@ -65,7 +65,7 @@ const zh = {
state3: '拒稿',
state4: '退修',
state5: '接收',
state6: '终',
state6: '终',
act1: '审查中',
act2: '已完结'
},

View File

@@ -220,7 +220,7 @@
}
},
Edit() { //编委
if (this.user_cap.includes(',board')) {
if (this.user_cap.includes('board')) {
this.$router.push('/editorial');
} else {
this.$message.error("Sorry, you can not login as Editorial board member, please contact publisher@tmrjournals.com.");

View File

@@ -15,6 +15,16 @@
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-collection"></i> <span class="top_dao">{{this.head_line}}</span>
<!-- <svg t="1631094751843" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
width="20" height="20" style="margin-left: 50px;margin-bottom: -3px;">
<path d="M959 863.75c-0.69-16.22-12.36-29.93-28.12-29.93H833.5V544.44c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v289.38h-132V660.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v172.88h-132V582.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v250.88H257.69v-134c0-15.69-13.8-30.72-30-30s-30 13.19-30 30v134h-70.43c-10.9 0-21.81-0.14-32.72 0h-1.4c-14.71 0-28.8 13.77-28.12 29.93s12.36 29.94 28.12 29.94h803.6c10.9 0 21.81 0.14 32.72 0h1.4c14.71 0 28.8-13.77 28.14-29.94z"
fill="#0071C3" p-id="1662"></path>
<path d="M874.91 130.26l-71.48 2.6-112.9 4.14-26.28 1c-15.66 0.57-30.74 13.39-30 30 0.71 15.76 13.2 30.61 30 30l71.49-2.6 58.48-2.13L741 242l-94.44 86.61-81.36 74.61c-5.95 5.46-12 10.86-18 16.29l-35-36-87.9-90.26-20.12-20.65c-11.4-11.7-30.94-11.23-42.43 0l-79.34 77.54L156.72 473l-29 28.32c-11.24 11-11.84 31.55 0 42.42 12.09 11.1 30.44 11.73 42.43 0l79.34-77.54 125.64-122.8 7.24-7.08 34.49 35.41L504.77 462l20.11 20.65c11.66 12 30.6 10.85 42.43 0l32.54-29.85 77.78-71.32 94.43-86.61L844.91 228v132.4c0 15.7 13.8 30.73 30 30s30-13.18 30-30V160.26c0-15.78-13.74-30.59-30-30z"
fill="#FD9A16" p-id="1663"></path>
</svg>
<router-link :to="{path:'/edit_report'}">
<span class="top_dao" style="color: #006699;font-weight: bold;">Statistical Analysis</span>
</router-link> -->
</el-breadcrumb-item>
</el-breadcrumb>
</div>

View File

@@ -0,0 +1,692 @@
<template>
<div>
<!-- 期刊下拉菜单 -->
<el-dropdown class="link_jour" trigger="click" @command="handlejournal">
<span>
{{ this.cate_title }}<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu :default-active="onRoutes" router slot="dropdown">
<el-dropdown-item v-for="item in cate_jour" :command="item" :index="item.issn">
<i :class="item.icon"></i>{{ item.title }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<svg t="1631094751843" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
width="20" height="20" style="margin-bottom: -3px;">
<path d="M959 863.75c-0.69-16.22-12.36-29.93-28.12-29.93H833.5V544.44c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v289.38h-132V660.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v172.88h-132V582.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v250.88H257.69v-134c0-15.69-13.8-30.72-30-30s-30 13.19-30 30v134h-70.43c-10.9 0-21.81-0.14-32.72 0h-1.4c-14.71 0-28.8 13.77-28.12 29.93s12.36 29.94 28.12 29.94h803.6c10.9 0 21.81 0.14 32.72 0h1.4c14.71 0 28.8-13.77 28.14-29.94z"
fill="#0071C3" p-id="1662"></path>
<path d="M874.91 130.26l-71.48 2.6-112.9 4.14-26.28 1c-15.66 0.57-30.74 13.39-30 30 0.71 15.76 13.2 30.61 30 30l71.49-2.6 58.48-2.13L741 242l-94.44 86.61-81.36 74.61c-5.95 5.46-12 10.86-18 16.29l-35-36-87.9-90.26-20.12-20.65c-11.4-11.7-30.94-11.23-42.43 0l-79.34 77.54L156.72 473l-29 28.32c-11.24 11-11.84 31.55 0 42.42 12.09 11.1 30.44 11.73 42.43 0l79.34-77.54 125.64-122.8 7.24-7.08 34.49 35.41L504.77 462l20.11 20.65c11.66 12 30.6 10.85 42.43 0l32.54-29.85 77.78-71.32 94.43-86.61L844.91 228v132.4c0 15.7 13.8 30.73 30 30s30-13.18 30-30V160.26c0-15.78-13.74-30.59-30-30z"
fill="#FD9A16" p-id="1663"></path>
</svg>
<router-link :to="{path:'/man_report'}">
<span class="top_dao" style="color: #006699;font-weight: bold;">Statistical Analysis -- {{this.head_line}}</span>
</router-link>
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container container_l">
<div class="handle-box">
<el-date-picker v-model="jzoon.start" type="date" placeholder="选择月" value-format="yyyy-MM-dd" @change="serch_Month"
:clearable="false"></el-date-picker>
<span style="margin: 0 20px;"></span>
<el-date-picker v-model="jzoon.end" type="date" placeholder="选择月" value-format="yyyy-MM-dd" @change="serch_Month"
:clearable="false"></el-date-picker>
</div>
<div class="data_p" v-loading="loading" element-loading-text="Loading..." element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0, 0, 0, 0.8)">
<!-- 创刊时间 -->
<div>
<b>Founding time</b>
<span v-if="this.tableData!=''">{{this.tableData.ZL.CK}}</span>
</div>
<!-- 订阅期刊数 -->
<div>
<b>Number of periodicals subscribed</b>
<span v-if="this.tableData!=''">{{this.tableData.HG.SUBJOURNAL}}</span>
</div>
<!-- 订阅话题数 -->
<div>
<b>Number of periodicals subscribed</b>
<span v-if="this.tableData!=''">{{this.tableData.HG.SUBTOPIC}}</span>
</div>
<!-- 审稿人数量 -->
<div>
<b>Number of reviewers</b>
<span v-if="this.tableData!=''">{{this.tableData.HG.SGRSL}}</span>
</div>
<!-- 录用率 -->
<div>
<b>Employment rate</b>
<el-progress v-if="this.tableData!=''" :text-inside="true" :stroke-width="24" :percentage="per_tage1" :color="cusColorMet"
class="pro_ges">></el-progress>
</div>
<!-- 查重 -->
<div>
<b>Check duplicate</b>
<div class="schart-box" style="width: 400px;">
<div id="myChart1" class="schart"></div>
</div>
</div>
<!-- 外审合格率 -->
<div>
<b>Qualified rate of external audit</b>
<el-progress v-if="this.tableData!=''" :text-inside="true" :stroke-width="24" :percentage="per_tage2" :color="cusColorMet"
class="pro_ges">></el-progress>
</div>
<!-- 时间 -->
<div>
<b>Processing time</b>
<div class="schart-box" style="width: 400px;">
<div id="myChart2" class="schart"></div>
</div>
</div>
<!-- 引用数 -->
<div>
<b>Number of references</b>
<span v-if="this.tableData!=''">{{this.tableData.ZL.YY}}</span>
</div>
<!-- 投稿量 -->
<div>
<b>Contribution volume</b>
<span v-if="this.tableData!=''">{{this.tableData.ZL.TGL}}</span>
</div>
<!-- 发文量 myChart3 -->
<div>
<b>Document statistics</b>
<!-- (年折线) -->
<div class="schart-box" style="width: 50%;">
<div id="myChart3" class="schart"></div>
</div>
</div>
<!-- 文章类型 -->
<div>
<b>Article type</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart4" class="schart"></div>
</div>
</div>
<!-- 国际化 -->
<div>
<b>Author internationalization</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart5" class="schart"></div>
</div>
</div>
<!-- 编委 -->
<div>
<b>Internationalization of editorial board</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart6" class="schart"></div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
query: {
user_id: localStorage.getItem('U_id')
},
cate_title: [],
cate_jour: [],
head_line: '',
loading: false,
jzoon: {
issn: '',
start: new Date(),
end: new Date()
},
tableData: '',
per_tage1: 0,
per_tage2: 0,
myChart1: '',
myChart2: '',
myChart3: '',
Ech1_D: [],
Ech2_D: [],
Ech3_D1: [],
Ech3_D2: [],
Ech4_D: [],
Ech5_D: [],
Ech6_D: [],
};
},
watch: {
tableData: function(val) {
var _this = this;
_this.$nextTick(function() {
if (this.tableData != '') {
this.drawLine1();
this.drawLine2();
this.drawLine3();
this.drawLine4();
this.drawLine5();
this.drawLine6();
}
});
},
},
mounted() {
},
created() {
// 默认时间换成标准格式
var date = new Date();
var year = date.getFullYear();
var month = String(new Date().getMonth() + 1).padStart(2, 0)
var date = new Date().getDate().toString().padStart(2, '0')
// var toData = year + month + date;
this.jzoon.start = year + '-01-01';
this.jzoon.end = year + '-' + month + '-' + date;
this.getTable();
// this.getData();
},
methods: {
// 获取数据
getTable() {
this.$api
.post('api/Board/getBoardJournals', this.query)
.then(res => {
if (res.code == 0) {
this.cate_jour = res.data.journals
this.cate_title = this.cate_jour[0].title
this.head_line = this.cate_jour[0].title;
this.jzoon.issn = this.cate_jour[0].issn;
this.getData();
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
// 获取分析数据
getData() {
this.loading = true;
this.$api
.post('journalsuper/Publish/getAllDateForJournal', this.jzoon)
.then(res => {
if (res.code == 0) {
this.tableData = res.data;
//利用率
this.per_tage1 = parseFloat((this.tableData.HG.LYL * 100).toFixed(2));
//外审合格率
this.per_tage2 = parseFloat(((this.tableData.HG.WS.all - this.tableData.HG.WS.np) / this.tableData.HG.WS.all *
100).toFixed(2));
if (this.tableData != '') {
this.drawLine1(); //查重
this.drawLine2(); //处理时间
this.drawLine3(); //发文量
this.drawLine4(); //文章类型
this.drawLine5(); //作者国际化
this.drawLine6(); //编委国际化
}
this.loading = false;
} else {
this.$message.error(res.msg);
this.loading = false;
}
})
.catch(err => {
this.$message.error(err);
this.loading = false;
});
},
// 期刊下拉菜单点击
handlejournal(command) {
this.cate_title = command.title;
this.head_line = command.title;
this.jzoon.issn = command.issn;
this.tableData = '';
this.getData();
},
// 数据---月份查询
serch_Month() {
if (this.jzoon.dastar > this.jzoon.datend) {
this.jzoon.datend = this.jzoon.dastar
}
this.tableData = '';
this.getData();
},
// 录用率进度条
cusColorMet(pertage) {
if (pertage < 20) {
return '#f56c6c';
} else if (pertage < 40) {
return '#e6a23c';
} else if (pertage < 60) {
return '#6f7ad3';
} else if (pertage < 80) {
return '#409eff';
} else {
return '#67c23a';
}
},
//111查重--图表初始化
drawLine1() {
this.Ech1_D = [];
let mess_txt = this.tableData.HG.CC;
this.Ech1_D.push({
value: mess_txt.low,
name: '0 % ~20 %'
}, {
value: mess_txt.low1,
name: '20 % ~30 %'
}, {
value: mess_txt.mid,
name: '30 % ~50 %'
}, {
value: mess_txt.high,
name: '50 % ~100 %'
});
// 基于准备好的dom初始化echarts实例
let myChart1 = this.$echarts.init(document.getElementById('myChart1'))
// 绘制饼状图
myChart1.setOption({
title: {
subtext: '共 ' + parseFloat(mess_txt.low + mess_txt.low1 + mess_txt.mid + mess_txt.high) + ' 篇文章',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c}篇 ({d}%)'
},
legend: {
bottom: '1%',
// type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: '查重合格率',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech1_D
}]
}, true);
},
//222处理时间--图表初始化
drawLine2() {
this.Ech2_D = [];
let mess_txt = this.tableData.HG.SJ;
this.Ech2_D.push({
value: mess_txt.mq - mess_txt.j15 - mess_txt.j120 - mess_txt.t48,
name: '合格'
}, {
value: mess_txt.j15,
name: '接收小于15天'
}, {
value: mess_txt.j120,
name: '接收大于4个月'
}, {
value: mess_txt.t48,
name: '提交超过48天未接受'
});
// 基于准备好的dom初始化echarts实例
let myChart2 = this.$echarts.init(document.getElementById('myChart2'))
// 绘制饼状图
myChart2.setOption({
title: {
subtext: '共 ' + mess_txt.mq + ' 篇文章',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c}篇 ({d}%)'
},
legend: {
bottom: '1%',
// type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: '查重合格率',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech2_D
}]
}, true);
},
//333发文统计量--图表初始化
drawLine3() {
this.Ech3_D1 = [];
this.Ech3_D2 = [];
let mess_txt = this.tableData.ZL.FWL
for (let i in mess_txt) {
if (i != 'all') {
this.Ech3_D1.push(i)
this.Ech3_D2.push(mess_txt[i])
}
}
// 基于准备好的dom初始化echarts实例
this.myChart3 = this.$echarts.init(document.getElementById('myChart3'))
// 绘制折现图
this.myChart3.setOption({
tooltip: {
trigger: 'item'
},
xAxis: {
type: 'category',
data: this.Ech3_D1
},
yAxis: {
type: 'value'
},
series: [{
data: this.Ech3_D2,
type: 'line',
smooth: true
}],
grid: {
x: 35,
y: 20,
x2: 0,
y2: 20
},
}, true);
},
//444文章类型--图表初始化
drawLine4() {
this.Ech4_D = [];
let mess_txt = this.tableData.ZL.LX;
for (let i in mess_txt) {
this.Ech4_D.push({
name: i,
value: mess_txt[i]
});
}
// 基于准备好的dom初始化echarts实例
let myChart4 = this.$echarts.init(document.getElementById('myChart4'))
// 绘制饼状图
myChart4.setOption({
title: {
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c}篇 ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: '文章类型',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech4_D
}]
}, true);
},
//555作者国际化--图表初始化
drawLine5() {
this.Ech5_D = [];
let mess_txt = this.tableData.ZL.GJH;
for (let i in mess_txt.list) {
this.Ech5_D.push({
name: i,
value: mess_txt.list[i]
});
}
// 基于准备好的dom初始化echarts实例
let myChart5 = this.$echarts.init(document.getElementById('myChart5'))
// 绘制饼状图
myChart5.setOption({
title: {
subtext: '共 ' + mess_txt.countrys + ' 个国家',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c}篇 ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: '作者国际化',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech5_D
}]
}, true);
},
//666编委国际化--图表初始化
drawLine6() {
this.Ech6_D = [];
let mess_txt = this.tableData.ZL.BW;
for (let i in mess_txt.country) {
this.Ech6_D.push({
name: i,
value: mess_txt.country[i]
});
}
// 基于准备好的dom初始化echarts实例
let myChart6 = this.$echarts.init(document.getElementById('myChart6'))
// 绘制饼状图
myChart6.setOption({
title: {
subtext: '共 ' + mess_txt.count + ' 个编委',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c}篇 ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: '编委国际化',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech6_D
}]
}, true);
},
},
computed: {
onRoutes() {
0
return this.$route.path.replace('/', '');
}
},
};
</script>
<style>
.handle-box {
margin-bottom: 20px;
}
.data_p>div {
margin-bottom: 20px;
}
.data_p>div>span {
padding-top: 3px;
display: inline-block;
}
.data_p>div>b {
line-height: 25px;
width: 300px;
display: inline-block;
text-align: right;
margin-right: 5px;
vertical-align: top;
}
.pro_ges {
display: inline-block;
}
.pro_ges .el-progress-bar {
display: inline-block !important;
width: 500px !important;
/* margin-right: 1px; */
}
.schart-box {
width: 50%;
display: inline-block;
}
.schart-box .schart {
width: 100%;
height: 150px;
}
.lei_xing .schart {
height: 220px;
}
</style>

View File

@@ -15,6 +15,16 @@
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-collection"></i> <span class="top_dao">{{this.head_line}}</span>
<svg t="1631094751843" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
width="20" height="20" style="margin-left: 50px;margin-bottom: -3px;">
<path d="M959 863.75c-0.69-16.22-12.36-29.93-28.12-29.93H833.5V544.44c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v289.38h-132V660.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v172.88h-132V582.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v250.88H257.69v-134c0-15.69-13.8-30.72-30-30s-30 13.19-30 30v134h-70.43c-10.9 0-21.81-0.14-32.72 0h-1.4c-14.71 0-28.8 13.77-28.12 29.93s12.36 29.94 28.12 29.94h803.6c10.9 0 21.81 0.14 32.72 0h1.4c14.71 0 28.8-13.77 28.14-29.94z"
fill="#0071C3" p-id="1662"></path>
<path d="M874.91 130.26l-71.48 2.6-112.9 4.14-26.28 1c-15.66 0.57-30.74 13.39-30 30 0.71 15.76 13.2 30.61 30 30l71.49-2.6 58.48-2.13L741 242l-94.44 86.61-81.36 74.61c-5.95 5.46-12 10.86-18 16.29l-35-36-87.9-90.26-20.12-20.65c-11.4-11.7-30.94-11.23-42.43 0l-79.34 77.54L156.72 473l-29 28.32c-11.24 11-11.84 31.55 0 42.42 12.09 11.1 30.44 11.73 42.43 0l79.34-77.54 125.64-122.8 7.24-7.08 34.49 35.41L504.77 462l20.11 20.65c11.66 12 30.6 10.85 42.43 0l32.54-29.85 77.78-71.32 94.43-86.61L844.91 228v132.4c0 15.7 13.8 30.73 30 30s30-13.18 30-30V160.26c0-15.78-13.74-30.59-30-30z"
fill="#FD9A16" p-id="1663"></path>
</svg>
<router-link :to="{path:'/man_report'}">
<span class="top_dao" style="color: #006699;font-weight: bold;">Statistical Analysis</span>
</router-link>
</el-breadcrumb-item>
</el-breadcrumb>
</div>
@@ -22,10 +32,10 @@
<el-row :gutter="24">
<el-col :span="16">
<div v-if="this.query.journal_id==18||this.query.journal_id==16" style="line-height: 28px;font-size: 15px;color: #ff200d;font-weight: bold;">
{{qikna}}为预警期刊责令限期整改<br/>
时间: {{daojishi}}<br/>
倒计时: {{day}} {{hour}}:{{min}}:{{second}}<br/>
整改事项: <br/>
{{qikna}}为预警期刊责令限期整改<br />
时间: {{daojishi}}<br />
倒计时: {{day}} {{hour}}:{{min}}:{{second}}<br />
整改事项: <br />
<p v-html="shixiang">{{shixiang}}</p>
</div>
<div class="ma_title">
@@ -75,7 +85,7 @@
</router-link>
<h6>{{item.author}}</h6>
<h4><span>{{head_line}}.</span><br>
<span style="color: #888;">Submitted time: {{item.ctime}}</span><span>{{item.accept_sn}}</span></h4>
<span style="color: #888;">Submitted time: {{item.ctime}}</span><span>{{item.accept_sn}}</span></h4>
</li>
<p v-if="tableData2==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No historical articles</p>
</ul>
@@ -91,8 +101,8 @@
</el-table-column>
</el-table> -->
<div class="pagination">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle2.pageIndex" :page-size="TaBle2.pageSize" :total="link_Tota2"
@current-change="handlePageChange2">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle2.pageIndex" :page-size="TaBle2.pageSize"
:total="link_Tota2" @current-change="handlePageChange2">
</el-pagination>
</div>
</el-col>
@@ -172,9 +182,9 @@
this.head_line = this.cate_jour[0].title;
this.query.journal_id = this.cate_jour[0].journal_id;
this.TaBle2.journal_id = this.cate_jour[0].journal_id;
this.getData();
} else {
this.$message.error(res.msg);
}
@@ -196,22 +206,23 @@
res.data.articles[i].ctime = Y + M + D;
}
this.tableData1 = res.data.articles;
if(this.query.journal_id==18){
if (this.query.journal_id == 18) {
this.qikna = 'TMR Theory and Hypothesis'
this.daojishi = '2021.9.3 - 2021.9.30'
this.curStartTime = '2021-10-01 00:00:00'
this.shixiang = '1. 底栏政策需要完善标准细节要求同TMR。<br/>2. 补充编委会栏目编委人数大于20人。<br/>3. 将每篇文章已出版文章配合适摘要图。<br/>4. 选择合适得期刊主题色。<br/>5. 12.20上线前10天文章online文章需要大于5篇。<br/>6. 2022年第一期不再实行页码编码改为文章编码。<br/><br>'
this.shixiang =
'1. 底栏政策需要完善标准细节要求同TMR。<br/>2. 补充编委会栏目编委人数大于20人。<br/>3. 将每篇文章已出版文章配合适摘要图。<br/>4. 选择合适得期刊主题色。<br/>5. 12.20上线前10天文章online文章需要大于5篇。<br/>6. 2022年第一期不再实行页码编码改为文章编码。<br/><br>'
this.countTime();
}
if(this.query.journal_id==16){
if (this.query.journal_id == 16) {
this.qikna = 'TMR Modern Herbal Medicine'
this.daojishi = '2021.9.6 - 2021.12.31'
this.curStartTime = '2022-01-01 00:00:00'
this.shixiang = '1. 编委国际化水平应达到50%<br/><br/>'
this.countTime();
}
} else {
this.$message.error(res.msg);
}
@@ -259,7 +270,7 @@
this.TaBle2.journal_id = command.journal_id;
this.getData();
},
// 倒计时
countTime() {
// 获取当前时间

View File

@@ -0,0 +1,778 @@
<template>
<div>
<!-- 期刊下拉菜单 -->
<el-dropdown class="link_jour" trigger="click" @command="handlejournal">
<span>
{{ this.cate_title }}<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu :default-active="onRoutes" router slot="dropdown">
<el-dropdown-item v-for="item in cate_jour" :command="item" :index="item.journal_id">
<i :class="item.icon"></i>{{ item.title }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<svg t="1631094751843" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
width="20" height="20" style="margin-bottom: -3px;">
<path d="M959 863.75c-0.69-16.22-12.36-29.93-28.12-29.93H833.5V544.44c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v289.38h-132V660.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v172.88h-132V582.94c0-15.7-13.8-30.73-30-30s-30 13.18-30 30v250.88H257.69v-134c0-15.69-13.8-30.72-30-30s-30 13.19-30 30v134h-70.43c-10.9 0-21.81-0.14-32.72 0h-1.4c-14.71 0-28.8 13.77-28.12 29.93s12.36 29.94 28.12 29.94h803.6c10.9 0 21.81 0.14 32.72 0h1.4c14.71 0 28.8-13.77 28.14-29.94z"
fill="#0071C3" p-id="1662"></path>
<path d="M874.91 130.26l-71.48 2.6-112.9 4.14-26.28 1c-15.66 0.57-30.74 13.39-30 30 0.71 15.76 13.2 30.61 30 30l71.49-2.6 58.48-2.13L741 242l-94.44 86.61-81.36 74.61c-5.95 5.46-12 10.86-18 16.29l-35-36-87.9-90.26-20.12-20.65c-11.4-11.7-30.94-11.23-42.43 0l-79.34 77.54L156.72 473l-29 28.32c-11.24 11-11.84 31.55 0 42.42 12.09 11.1 30.44 11.73 42.43 0l79.34-77.54 125.64-122.8 7.24-7.08 34.49 35.41L504.77 462l20.11 20.65c11.66 12 30.6 10.85 42.43 0l32.54-29.85 77.78-71.32 94.43-86.61L844.91 228v132.4c0 15.7 13.8 30.73 30 30s30-13.18 30-30V160.26c0-15.78-13.74-30.59-30-30z"
fill="#FD9A16" p-id="1663"></path>
</svg>
<router-link :to="{path:'/man_report'}">
<span class="top_dao" style="color: #006699;font-weight: bold;">Statistical Analysis -- {{this.head_line}}</span>
</router-link>
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container container_l">
<div class="handle-box">
<el-date-picker v-model="jzoon.start" type="date" placeholder="Select month" value-format="yyyy-MM-dd" @change="serch_Month"
:clearable="false"></el-date-picker>
<span style="margin: 0 20px;">to</span>
<el-date-picker v-model="jzoon.end" type="date" placeholder="Select month" value-format="yyyy-MM-dd" @change="serch_Month"
:clearable="false"></el-date-picker>
</div>
<div class="data_p" v-loading="loading" element-loading-text="Loading..." element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0, 0, 0, 0.8)">
<!-- 创刊时间 -->
<div>
<b>Founding time</b>
<span v-if="this.tableData!=''">{{this.tableData.ZL.CK}}</span>
</div>
<!-- 订阅期刊数 -->
<div>
<b>Number of journal subscribed</b>
<span v-if="this.tableData!=''">{{this.tableData.HG.SUBJOURNAL}}</span>
<i> 订阅量 > 1000 </i>
</div>
<!-- 订阅话题数 -->
<div>
<b>Number of topics subscribed</b>
<span v-if="this.tableData!=''">{{this.tableData.HG.SUBTOPIC}}</span>
</div>
<!-- 审稿人数量 -->
<div>
<b>Number of reviewers</b>
<span v-if="this.tableData!=''">{{this.tableData.HG.SGRSL}}</span>
<i> 审稿人数量 > 100 </i>
</div>
<!-- 录用率 -->
<div>
<b>Acceptance</b>
<el-progress v-if="this.tableData!=''" :text-inside="true" :stroke-width="24" :percentage="per_tage1" :color="cusColorMet"
class="pro_ges">></el-progress>
<i> 录用率 < 50% </i>
</div>
<!-- 查重 -->
<!-- <div>
<b>Check duplicate</b>
<div class="schart-box" style="width: 400px;">
<div id="myChart1" class="schart"></div>
</div>
</div> -->
<!-- 外审合格率 -->
<div>
<b>Qualified rate of external audit</b>
<el-progress v-if="this.tableData!=''" :text-inside="true" :stroke-width="24" :percentage="per_tage2" :color="cusColorMet"
class="pro_ges">></el-progress>
</div>
<!-- 时间 -->
<div>
<b>Processing time</b>
<div class="schart-box" style="width: 600px;">
<div id="myChart2" class="schart"></div>
</div>
</div>
<!-- 引用数 -->
<div>
<b>Cited times</b>
<span v-if="this.tableData!=''">{{this.tableData.ZL.YY}}</span>
</div>
<!-- 投稿量 -->
<div>
<b>Contribution volume</b>
<span v-if="this.tableData!=''">{{this.tableData.ZL.TGL}}</span>
</div>
<!-- 发文量 myChart3 -->
<div>
<b>Document statistics
<br><br>
<span style="color: #999;font-size: 14px;margin-right: 10px;">发文量 > 30/</span>
</b>
<!-- (年折线) -->
<div class="schart-box" style="width: 50%;">
<div id="myChart3" class="schart"></div>
</div>
</div>
<!-- 文章类型 -->
<div>
<b>Article type</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart4" class="schart"></div>
</div>
<i>综述比例 < 30% ; 论著比例> 50%</i>
</div>
<!-- 文章国际化 -->
<div>
<b>Article analysis</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart7" class="schart"></div>
</div>
</div>
<!-- 国际化 -->
<div>
<b>Authors analysis</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart5" class="schart"></div>
</div>
<i> 作者来源 > 10个国家 </i>
</div>
<!-- 编委 -->
<div>
<b>Editorial board members analysis</b>
<div class="schart-box lei_xing" style="width: 400px;">
<div id="myChart6" class="schart"></div>
</div>
<i>编委国际化 > 70%区域期刊编委国际化 > 60%</i>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
query: {
user_id: localStorage.getItem('U_id')
},
cate_title: [],
cate_jour: [],
head_line: '',
loading: false,
jzoon: {
issn: '',
start: new Date(),
end: new Date()
},
tableData: '',
per_tage1: 0,
per_tage2: 0,
myChart1: '',
myChart2: '',
myChart3: '',
Ech1_D: [],
Ech2_D: [],
Ech3_D1: [],
Ech3_D2: [],
Ech4_D: [],
Ech5_D: [],
Ech6_D: [],
Ech7_D: [],
};
},
watch: {
tableData: function(val) {
var _this = this;
_this.$nextTick(function() {
if (this.tableData != '') {
// this.drawLine1();
this.drawLine2();
this.drawLine3();
this.drawLine4();
this.drawLine5();
this.drawLine6();
this.drawLine7();
}
});
},
},
mounted() {
},
created() {
// 默认时间换成标准格式
var date = new Date();
var year = date.getFullYear();
var month = String(new Date().getMonth() + 1).padStart(2, 0)
var date = new Date().getDate().toString().padStart(2, '0')
// var toData = year + month + date;
this.jzoon.start = year + '-01-01';
this.jzoon.end = year + '-' + month + '-' + date;
this.getTable();
// this.getData();
},
methods: {
// 获取数据
getTable() {
this.$api
.post('api/Chief/getJournalsFromChief', this.query)
.then(res => {
if (res.code == 0) {
this.cate_jour = res.data.journals
this.cate_title = this.cate_jour[0].title
localStorage.setItem('journal_title', this.cate_jour[0].title);
localStorage.setItem('journal_id', this.cate_jour[0].journal_id);
this.head_line = this.cate_jour[0].title;
this.jzoon.issn = this.cate_jour[0].issn;
this.getData();
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
// 获取分析数据
getData() {
this.loading = true;
this.$api
.post('journalsuper/Publish/getAllDateForJournal', this.jzoon)
.then(res => {
if (res.code == 0) {
this.tableData = res.data;
//利用率
this.per_tage1 = parseFloat((this.tableData.HG.LYL * 100).toFixed(2));
//外审合格率
this.per_tage2 = parseFloat(((this.tableData.HG.WS.all - this.tableData.HG.WS.np) / this.tableData.HG.WS.all *
100).toFixed(2));
if (this.tableData != '') {
// this.drawLine1(); //查重
this.drawLine2(); //处理时间
this.drawLine3(); //发文量
this.drawLine4(); //文章类型
this.drawLine5(); //作者国际化
this.drawLine6(); //编委国际化
this.drawLine7(); //文章国际化
}
this.loading = false;
} else {
this.$message.error(res.msg);
this.loading = false;
}
})
.catch(err => {
this.$message.error(err);
this.loading = false;
});
},
// 期刊下拉菜单点击
handlejournal(command) {
this.cate_title = command.title;
localStorage.setItem('journal_title', command.title);
localStorage.setItem('journal_id', command.journal_id);
this.head_line = command.title;
this.jzoon.issn = command.issn;
this.tableData = '';
this.getData();
},
// 数据---月份查询
serch_Month() {
if (this.jzoon.dastar > this.jzoon.datend) {
this.jzoon.datend = this.jzoon.dastar
}
this.tableData = '';
this.getData();
},
// 录用率进度条
cusColorMet(pertage) {
if (pertage < 20) {
return '#f56c6c';
} else if (pertage < 40) {
return '#e6a23c';
} else if (pertage < 60) {
return '#6f7ad3';
} else if (pertage < 80) {
return '#409eff';
} else {
return '#67c23a';
}
},
//111查重--图表初始化
// drawLine1() {
// this.Ech1_D = [];
// let mess_txt = this.tableData.HG.CC;
// this.Ech1_D.push({
// value: mess_txt.low,
// name: '0 % ~20 %'
// }, {
// value: mess_txt.low1,
// name: '20 % ~30 %'
// }, {
// value: mess_txt.mid,
// name: '30 % ~50 %'
// }, {
// value: mess_txt.high,
// name: '50 % ~100 %'
// });
// // 基于准备好的dom初始化echarts实例
// let myChart1 = this.$echarts.init(document.getElementById('myChart1'))
// // 绘制饼状图
// myChart1.setOption({
// title: {
// subtext: parseFloat(mess_txt.low + mess_txt.low1 + mess_txt.mid + mess_txt.high) + ' articles in total',
// x: '49%',
// y: 'top',
// textAlign: 'center'
// },
// tooltip: {
// trigger: 'item',
// formatter: '{a} <br/>{b}: {c}articles ({d}%)'
// },
// legend: {
// bottom: '1%',
// // type: 'scroll',
// orient: 'vertical',
// right: 10,
// top: 40,
// },
// series: [{
// name: 'Check duplicate',
// type: 'pie',
// radius: ['40%', '70%'],
// center: ["35%", "60%"],
// avoidLabelOverlap: false,
// label: {
// show: false,
// position: 'center'
// },
// emphasis: {
// label: {
// show: true,
// fontSize: '40',
// fontWeight: 'bold'
// }
// },
// labelLine: {
// show: false
// },
// data: this.Ech1_D
// }]
// }, true);
// },
//222处理时间--图表初始化
drawLine2() {
this.Ech2_D = [];
let mess_txt = this.tableData.HG.SJ;
this.Ech2_D.push({
value: mess_txt.mq - mess_txt.j15 - mess_txt.j120 - mess_txt.t48,
name: 'Qualified'
}, {
value: mess_txt.j15,
name: 'Acceptance less than 15 days'
}, {
value: mess_txt.j120,
name: 'Received for more than 4 months'
}, {
value: mess_txt.t48,
name: 'Submitted for more than 48 days and not accepted'
});
// 基于准备好的dom初始化echarts实例
let myChart2 = this.$echarts.init(document.getElementById('myChart2'))
// 绘制饼状图
myChart2.setOption({
title: {
subtext: mess_txt.mq + ' articles in total',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{b}: {c} piece ({d}%)'
},
legend: {
bottom: '1%',
// type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: 'Processing time',
type: 'pie',
radius: ['40%', '70%'],
center: ["25%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech2_D
}]
}, true);
},
//333发文统计量--图表初始化
drawLine3() {
this.Ech3_D1 = [];
this.Ech3_D2 = [];
let mess_txt = this.tableData.ZL.FWL
for (let i in mess_txt) {
if (i != 'all') {
this.Ech3_D1.push(i)
this.Ech3_D2.push(mess_txt[i])
}
}
// 基于准备好的dom初始化echarts实例
this.myChart3 = this.$echarts.init(document.getElementById('myChart3'))
// 绘制折现图
this.myChart3.setOption({
tooltip: {
trigger: 'item'
},
xAxis: {
type: 'category',
data: this.Ech3_D1
},
yAxis: {
type: 'value'
},
series: [{
data: this.Ech3_D2,
type: 'line',
smooth: true
}],
grid: {
x: 35,
y: 20,
x2: 0,
y2: 20
},
}, true);
},
//444文章类型--图表初始化
drawLine4() {
this.Ech4_D = [];
let mess_txt = this.tableData.ZL.LX;
for (let i in mess_txt) {
this.Ech4_D.push({
name: i,
value: mess_txt[i]
});
}
// 基于准备好的dom初始化echarts实例
let myChart4 = this.$echarts.init(document.getElementById('myChart4'))
// 绘制饼状图
myChart4.setOption({
title: {
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{b}: {c} piece ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: 'Article type',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech4_D
}]
}, true);
},
//555作者国际化--图表初始化
drawLine5() {
this.Ech5_D = [];
let mess_txt = this.tableData.ZL.GJH;
for (let i in mess_txt.list) {
this.Ech5_D.push({
name: i,
value: mess_txt.list[i]
});
}
// 基于准备好的dom初始化echarts实例
let myChart5 = this.$echarts.init(document.getElementById('myChart5'))
// 绘制饼状图
myChart5.setOption({
title: {
subtext: mess_txt.countrys + ' countries in total',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{b}: {c} ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: 'Author internationalization',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech5_D
}]
}, true);
},
//666编委国际化--图表初始化
drawLine6() {
this.Ech6_D = [];
let mess_txt = this.tableData.ZL.BW;
for (let i in mess_txt.country) {
this.Ech6_D.push({
name: i,
value: mess_txt.country[i]
});
}
// 基于准备好的dom初始化echarts实例
let myChart6 = this.$echarts.init(document.getElementById('myChart6'))
// 绘制饼状图
myChart6.setOption({
title: {
subtext: mess_txt.count + ' Editorial board member in total',
x: '49%',
y: 'top',
textAlign: 'center'
},
tooltip: {
trigger: 'item',
formatter: '{b}: {c} ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
series: [{
name: 'Internationalization of editorial board',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech6_D
}]
}, true);
},
//777文章国际化--图表初始化
drawLine7() {
this.Ech7_D = [];
let mess_txt = this.tableData.ZL.GNW;
this.Ech7_D.push({
value: mess_txt.n,
name: 'domestic'
}, {
value: mess_txt.w,
name: 'abroad'
});
// 基于准备好的dom初始化echarts实例
let myChart7 = this.$echarts.init(document.getElementById('myChart7'))
// 绘制饼状图
myChart7.setOption({
tooltip: {
trigger: 'item',
formatter: '{b}: {c}piece ({d}%)'
},
legend: {
bottom: '1%',
type: 'scroll',
orient: 'vertical',
right: 10,
top: 40,
},
color: ['#FD9E06', '#768BFF'],
series: [{
name: 'Article internationalization',
type: 'pie',
radius: ['40%', '70%'],
center: ["35%", "60%"],
avoidLabelOverlap: false,
label: {
show: false,
position: 'center'
},
emphasis: {
label: {
show: true,
fontSize: '40',
fontWeight: 'bold'
}
},
labelLine: {
show: false
},
data: this.Ech7_D
}]
}, true);
},
},
computed: {
onRoutes() {
0
return this.$route.path.replace('/', '');
}
},
};
</script>
<style>
.handle-box {
margin-bottom: 20px;
}
.data_p>div {
margin-bottom: 20px;
}
.data_p>div>span {
padding-top: 3px;
display: inline-block;
}
.data_p>div>b {
line-height: 25px;
width: 300px;
display: inline-block;
text-align: right;
margin-right: 5px;
vertical-align: top;
}
.data_p>div>i {
font-style: normal;
margin-left: 16px;
display: inline-block;
color: #999;
font-size: 14px;
}
.pro_ges {
display: inline-block;
}
.pro_ges .el-progress-bar {
display: inline-block !important;
width: 500px !important;
/* margin-right: 1px; */
}
.schart-box {
width: 50%;
display: inline-block;
}
.schart-box .schart {
width: 100%;
height: 150px;
}
.lei_xing .schart {
height: 220px;
}
</style>

View File

@@ -50,17 +50,13 @@
</div>
<div class="tet_people" v-if="this.txt_state==6">
<h4>I want to invite the following editorial board members to get more opinions for the manuscript.</h4>
<ul v-for="item in Editard_list" style="margin-top: 10px;">
<el-button type="text" @click="add_Editer" style="margin-left: 5px;font-weight: bold;">+ Add</el-button>
<ul v-for="item in Editard_list">
<li style="list-style: none;">
<span>{{item.account}} ( <font v-if="item.realname!=''">{{item.realname}} , </font>{{item.email}} )</span>
<span>{{item.account}} (<font v-if="item.realname!=''">{{item.realname}} , </font>{{item.email}}) </span>
<el-button type="text" icon="el-icon-delete" class="red" @click="handleDelete(item)"></el-button>
</li>
</ul>
<el-select v-model="select_edit.board_id" filterable placeholder=" Please choose the editorial board members."
style="width: 320px;">
<el-option v-for="item in Edit_Chi" :key="item.user_id" :label="item.account+' ('+item.email+')'" :value="item.user_id"></el-option>
</el-select>
<el-button type="text" @click="add_Editer" style="margin-left: 5px;">Choose</el-button>
</div>
</el-col>
</el-row>
@@ -100,6 +96,29 @@
<comment :comments="commentData" v-if="this.commentData!=''"></comment>
<p v-if="this.commentData==''" style="color:#6f6f6f;font-size: 14px;margin: 20px 0 0 10px;">No comment</p>
</div>
<!-- 添加编委弹出框 -->
<el-dialog title="Add Editorial board member" :visible.sync="addVisible" width="50%">
<el-table :data="tableData" border stripe class="table" ref="multipleTable" header-cell-class-name="table-header">
<el-table-column prop="account" label="account" align="center"></el-table-column>
<el-table-column prop="major_title" label="major title" align="center"></el-table-column>
<el-table-column prop="realname" label="realname" align="center"></el-table-column>
<el-table-column prop="phone" label="phone" align="center" width="150px"></el-table-column>
<el-table-column prop="email" label="email" align="center"></el-table-column>
<el-table-column label="" width="100" align="center">
<template slot-scope="scope">
<el-button type="text" @click="handleChoose(scope.$index, scope.row)">+ Choice</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination background layout="total, prev, pager, next" :current-page="qEdit.pageIndex" :page-size="qEdit.pageSize"
:total="Total" @current-change="handlePageChange"></el-pagination>
</div>
</el-dialog>
</div>
</template>
@@ -137,11 +156,18 @@
},
head_line: '',
Art_id: this.$route.query.Art_id,
tableData1: [],
tableData: [],
fileList: [],
faceList: [],
addVisible: false,
qEdit: {
journal_id: localStorage.getItem('journal_id'),
pageIndex: 1,
pageSize: 10
},
Total: 0,
Editard_list: [],
Edit_Chi: [],
// Edit_Chi: [],
rules: {}
}
},
@@ -176,24 +202,11 @@
// 获取文章编委池子
this.$api
.post('api/Chief/getAllArticleBoards', {
'journal_id': localStorage.getItem('journal_id')
})
.post('api/Chief/getAllArticleBoards', this.qEdit)
.then(res => {
if (res.code == 0) {
this.Edit_Chi = res.data.boards;
for (let i = 0; i < this.Edit_Chi.length; i++) {
for (let r = 0; r < this.Editard_list.length; r++) {
if (this.Edit_Chi[i].user_id == this.Editard_list[r].user_id) {
this.Edit_Chi.splice(i, 1);
if (i == 0) {
i = 0
} else {
i = i - 1
}
}
}
}
this.tableData = res.data.boards;
this.Total = res.data.count || 0;
} else {
this.$message.error(res.msg);
}
@@ -252,27 +265,38 @@
},
// 保存添加编委
// 添加编委-弹出框
add_Editer() {
if (this.select_edit.board_id == '') {
this.$message.error('Please select the editorial board!');
} else {
this.$api
.post('api/Chief/addArticleBoard', this.select_edit)
.then(res => {
if (res.code == 0) {
this.$message.success('Editorial board of newly added articles succeeded!');
this.getdate();
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
}
this.addVisible = true;
},
// 保存添加编委
handleChoose(index, row) {
this.select_edit.board_id = row.user_id;
this.$api
.post('api/Chief/addArticleBoard', this.select_edit)
.then(res => {
if (res.code == 0) {
this.$message.success('Editorial board of newly added articles succeeded!');
this.addVisible = false;
this.getdate();
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
// 分页导航
handlePageChange(val) {
this.$set(this.qEdit, 'pageIndex', val);
this.getData();
},
// 删除编委
handleDelete(item) {
// 二次确认删除

View File

@@ -36,6 +36,34 @@
</ul>
</el-col>
<el-col :span="8">
<div class="ma_title">
<svg t="1631523448294" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
width="20" height="20" style="margin-bottom: -3px;margin-right: 6px;">
<path d="M625.81 65H154.9c-24.49 0.23-49.29 10.25-65.82 28.65A92.26 92.26 0 0 0 65 155V858.1c0 12.7 0 25.36 4 37.65 12.53 38.21 47.54 63.11 87.62 63.17h648c21.42 0 42.85 0.18 64.27 0a92.4 92.4 0 0 0 61.37-24.07c18.4-16.53 28.41-41.3 28.65-65.79 0.07-7.87 0-15.75 0-23.63V369.52c0-15.66-13.77-30.65-29.94-29.93s-29.93 13.15-29.93 29.93V810.9c0 19.28 0.16 38.57 0 57.85a72.93 72.93 0 0 1-0.56 8.61l1.07-8a64.56 64.56 0 0 1-4.27 15.36l3-7.15a64.42 64.42 0 0 1-4.94 9.19c-0.48 0.73-1 1.42-1.48 2.14-2.27 3.42 2.22-3.1 2.31-3s-3.71 4.1-3.92 4.31c-1.21 1.22-2.62 2.27-3.81 3.5-2.22 2.29 5.69-4 3-2.27-0.73 0.46-1.41 1-2.12 1.49a63.19 63.19 0 0 1-9.73 5.3l7.15-3a64.66 64.66 0 0 1-15.37 4.28l8-1.07c-8.43 1.06-17.19 0.56-25.67 0.56H155.55a74.62 74.62 0 0 1-9-0.56l8 1.07a64.58 64.58 0 0 1-15.36-4.28l7.15 3a62.48 62.48 0 0 1-9.19-4.94c-0.73-0.47-1.42-1-2.15-1.47-3.41-2.27 3.11 2.21 3 2.31s-4.1-3.71-4.31-3.92c-1.22-1.22-2.27-2.62-3.5-3.82-2.29-2.22 4 5.7 2.27 3-0.46-0.73-1-1.41-1.49-2.13a62.73 62.73 0 0 1-5.3-9.73l3 7.15a65 65 0 0 1-4.27-15.36l1.07 8c-1.06-8.43-0.56-17.18-0.56-25.66V182v-26.46a74.58 74.58 0 0 1 0.56-9l-1.07 8a65.24 65.24 0 0 1 4.27-15.37l-3 7.15a63 63 0 0 1 4.94-9.19c0.47-0.72 1-1.42 1.47-2.14 2.27-3.41-2.21 3.11-2.31 3s3.71-4.1 3.92-4.31c1.22-1.22 2.62-2.27 3.82-3.5 2.22-2.29-5.7 4-3 2.27 0.73-0.46 1.41-1 2.13-1.49a62.73 62.73 0 0 1 9.73-5.3l-7.15 3a65 65 0 0 1 15.36-4.27l-8 1.07c6.3-0.79 12.71-0.56 19.05-0.56h401.12c19.41 0 38.86 0.39 58.26 0h0.8c15.66 0 30.66-13.77 29.93-29.93S642.59 65 625.81 65z"
fill="#0071C3" p-id="1662"></path>
<path d="M944.78 139.56c-5.24-7.77-11.4-14.35-17.95-20.9-10.42-10.42-20.4-21.85-31.72-31.32A94.76 94.76 0 0 0 842 65.24c-17.07-1.67-35 2.88-49.93 11-13.22 7.19-23.44 18.57-34 29.08l-43.93 43.93-65 65-75.98 76.05-78.32 78.32q-35.23 35.25-70.48 70.48l-53.8 53.81-27.24 27.23a37.89 37.89 0 0 0-10.14 18.2l-8 34q-11.74 50-23.5 99.92-2.32 9.91-4.66 19.82c-5.27 22.4 14.22 42.6 36.9 36.9l135.69-34.1L489 690a26.78 26.78 0 0 0 8.43-3.82 29.19 29.19 0 0 0 4.8-3.9L520 664.5l46.83-46.83 66.8-66.8 76.75-76.75 77.93-77.93q34.63-34.65 69.28-69.28L908.53 276c7.86-7.86 15.75-15.7 23.59-23.59a91.82 91.82 0 0 0 26.93-63.53c0.19-17-4.76-35.19-14.27-49.32z m-88.3-6.89l-2.29-1.75a8.28 8.28 0 0 1 2.29 1.75z m-37.48-2.9l-2 1.44a5.5 5.5 0 0 1 2-1.44z m-4.42 4c0.48-0.48 1.13-1.24 1.83-2 1.18-0.77 2.33-1.59 3.54-2.32s2.68-1.54 4.06-2.23a65 65 0 0 1 7.87-2.16 66.39 66.39 0 0 1 8 0 64 64 0 0 1 7.81 2.14c1.61 0.81 3.18 1.67 4.72 2.62 0.39 0.25 0.85 0.5 1.34 0.78s0.82 0.69 1.21 1.05c1.36 1.23 2.64 2.53 3.93 3.83l14.83 14.82L888.3 165c1.33 1.33 2.67 2.65 3.94 4l-0.93-1.52c0.48 0.79 1 1.54 1.59 2.3a13.31 13.31 0 0 1 0.85 1.24 58.4 58.4 0 0 1 3 5.34 65.47 65.47 0 0 1 2.13 7.79 66.56 66.56 0 0 1 0 8 65.32 65.32 0 0 1-2.16 7.86c-0.69 1.38-1.42 2.74-2.23 4.06-0.35 0.58-0.72 1.14-1.09 1.71l0.8-0.76c-0.31 0.29-0.61 0.6-0.91 0.92l-1.15 1.71c-0.72 1.11-1.5 1.58-1.34 1.12-0.21 0.23-0.42 0.47-0.64 0.7l-1.35 1.35-7 7-4.78 4.79q-37.8-37.93-75.61-75.85 6.58-6.52 13.11-12.97zM384.62 581.56l58 58.23-76.2 19.21q9.11-38.75 18.2-77.44z m366-232.48l-126 126-110.33 110.28q-10.3 10.3-20.7 20.54l-73.23-73.47-2.23-2.24 10.39-10.39 105.36-105.36 126.2-126.2 99-99L834.62 265z"
fill="#FD9A16" p-id="1663"></path>
</svg>
List of pending articles.
</div>
<ul class="ta1_uli">
<li v-for="item in tableData3">
<h5>{{item.type}}</h5>
<router-link target="_blank" :to="{path:'/per_text',query:{Art_id:item.article_id}}">
<h3>{{item.title}}</h3>
</router-link>
<h4><span>{{item.journal_title}}.</span><br>
<span style="color: #888;">Submitted time: {{item.ctime}}</span><span>{{item.accept_sn}}</span></h4>
</li>
<p v-if="tableData3==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No pending articles</p>
</ul>
<div class="pagination">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle3.pageIndex" :page-size="TaBle3.pageSize"
:total="link_Tota3" @current-change="handlePageChange3">
</el-pagination>
</div>
<br><br>
<div class="ma_title">
<svg t="1629527662744" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3890"
width="20" height="20" style="margin-bottom: -3px;margin-right: 6px;">
@@ -60,8 +88,8 @@
<p v-if="tableData2==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No historical articles</p>
</ul>
<div class="pagination">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle2.pageIndex" :page-size="TaBle2.pageSize" :total="link_Tota2"
@current-change="handlePageChange2">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle2.pageIndex" :page-size="TaBle2.pageSize"
:total="link_Tota2" @current-change="handlePageChange2">
</el-pagination>
</div>
</el-col>
@@ -79,12 +107,20 @@
},
tableData1: [],
tableData2: [],
tableData3: [],
TaBle2: {
user_id: localStorage.getItem('U_id'),
pageIndex: 1,
pageSize: 10
pageSize: 5
},
link_Tota2: 0
TaBle3: {
user_id: localStorage.getItem('U_id'),
journal_id: 0,
pageIndex: 1,
pageSize: 5
},
link_Tota2: 0,
link_Tota3: 0,
};
},
mounted() {
@@ -151,13 +187,39 @@
.catch(err => {
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getAllReviewerList', this.TaBle3)
.then(res => {
if (res.code == 0) {
if (res.data.articles != '') {
for (let i = 0; i < res.data.articles.length; i++) {
let date = new Date(parseInt(res.data.articles[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() + 1 + '-';
let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
res.data.articles[i].ctime = Y + M + D;
}
}
this.tableData3 = res.data.articles;
this.link_Tota3 = res.data.count || 0;
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
// 分页导航
handlePageChange2(val) {
this.$set(this.TaBle2, 'pageIndex', val);
this.getData();
}
},
handlePageChange3(val) {
this.$set(this.TaBle3, 'pageIndex', val);
this.getData();
},
},
computed: {
onRoutes() {

View File

@@ -10,8 +10,8 @@
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container container_l" v-loading="loading"
element-loading-text="Loading..." element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 0, 0, 0.8)">
<div class="container container_l" v-loading="loading" element-loading-text="Loading..." element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0, 0, 0, 0.8)">
<div class="tet_list" :model="txt_mess">
<h4>{{txt_mess.article_title}}</h4>
<h5>{{txt_mess.title}}<span style="margin: 0 10px;">>></span> Manuscript ID: {{txt_mess.accept_sn}}</h5>
@@ -249,6 +249,14 @@
</div>
<el-dialog title=" " :visible.sync="addVisible" width="30%" :close-on-click-modal='false' :show-close="false">
<p>You are not a reviewer of the article yet.<br /> Apply to be a reviewer of the article.</p>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveAdd()">OK</el-button>
</span>
</el-dialog>
</div>
</div>
@@ -302,15 +310,28 @@
confident: '',
comment: ''
},
addVisible: false,
rules: {}
}
},
created() {
if (this.Direct_log == null) {
this.getData();
this.$api
.post('api/Reviewer/checkUserForReviewer', this.add_edit)
.then(res => {
if (res.code == 0) {
this.getData();
} else {
this.getData();
this.addVisible = true;
}
})
.catch(err => {
this.$message.error(err);
});
} else {
this.$api
.post('api/Chief/autoLoginForChief ', {
.post('api/Chief/autoLoginForChief', {
'code': this.Direct_log
})
.then(res => {
@@ -439,11 +460,27 @@
});
},
saveAdd() {
this.$api
.post('api/Reviewer/addArticleReviewer', {
articleId: this.Art_id,
uid: localStorage.getItem('U_id')
})
.then(res => {
this.addVisible = false;
this.$message.success('success!!');
this.getData();
})
.catch(err => {
this.$message.error(err);
});
}
},
mounted() {
},
}
</script>

View File

@@ -19,6 +19,7 @@
<!-- <el-table-column prop="user_id" label="No." align="center"></el-table-column> -->
<el-table-column prop="account" label="Account" align="center"></el-table-column>
<el-table-column prop="realname" label="Name" align="center"></el-table-column>
<el-table-column prop="email" label="Email" align="center"></el-table-column>
<el-table-column prop="country" label="Country" align="center"></el-table-column>
<el-table-column prop="company" label="Affiliation" align="center"></el-table-column>
<el-table-column prop="title" label="Journal" align="center"></el-table-column>

View File

@@ -1,7 +1,7 @@
<template>
<div>
<!-- 期刊下拉菜单 -->
<el-dropdown class="link_jour" trigger="click" @command="handlejournal">
<!-- <el-dropdown class="link_jour" trigger="click" @command="handlejournal">
<span>
{{ this.cate_title }}<i class="el-icon-arrow-down el-icon--right"></i>
</span>
@@ -10,7 +10,7 @@
<i :class="item.icon"></i>{{ item.title }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</el-dropdown> -->
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
@@ -19,7 +19,7 @@
</el-breadcrumb>
</div>
<div class="container container_l">
<el-row :gutter="24">
<!-- <el-row :gutter="24">
<el-col :span="16">
<div class="ma_title">
<svg t="1630985397122" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
@@ -40,16 +40,19 @@
<ul class="ta1_uli">
<li v-for="item in tableData3">
<h5>{{item.type}}</h5>
<router-link target="_blank" :to="{path:'/you_taxt',query:{Art_id:item.art_rev_id}}">
<h3>{{item.article_title}}</h3>
<router-link target="_blank" :to="{path:'/you_taxt',query:{Art_id:item.article_id}}">
<h3>{{item.title}}</h3>
</router-link>
<h4><span>{{item.journal_title}}.</span><br>
<h4><span>{{head_line}}.</span>
<span style="color: #888;">Submitted time: {{item.ctime}}</span><span>{{item.accept_sn}}</span></h4>
</li>
<p v-if="tableData3==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No historical articles</p>
</ul>
</el-col>
</el-row><br><br><br>
<el-col :span="8">
</el-col>
</el-row><br><br><br> -->
<el-row :gutter="24">
<el-col :span="16">
@@ -79,6 +82,33 @@
</ul>
</el-col>
<el-col :span="8">
<div class="ma_title">
<svg t="1631523448294" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1661"
width="20" height="20" style="margin-bottom: -3px;margin-right: 6px;">
<path d="M625.81 65H154.9c-24.49 0.23-49.29 10.25-65.82 28.65A92.26 92.26 0 0 0 65 155V858.1c0 12.7 0 25.36 4 37.65 12.53 38.21 47.54 63.11 87.62 63.17h648c21.42 0 42.85 0.18 64.27 0a92.4 92.4 0 0 0 61.37-24.07c18.4-16.53 28.41-41.3 28.65-65.79 0.07-7.87 0-15.75 0-23.63V369.52c0-15.66-13.77-30.65-29.94-29.93s-29.93 13.15-29.93 29.93V810.9c0 19.28 0.16 38.57 0 57.85a72.93 72.93 0 0 1-0.56 8.61l1.07-8a64.56 64.56 0 0 1-4.27 15.36l3-7.15a64.42 64.42 0 0 1-4.94 9.19c-0.48 0.73-1 1.42-1.48 2.14-2.27 3.42 2.22-3.1 2.31-3s-3.71 4.1-3.92 4.31c-1.21 1.22-2.62 2.27-3.81 3.5-2.22 2.29 5.69-4 3-2.27-0.73 0.46-1.41 1-2.12 1.49a63.19 63.19 0 0 1-9.73 5.3l7.15-3a64.66 64.66 0 0 1-15.37 4.28l8-1.07c-8.43 1.06-17.19 0.56-25.67 0.56H155.55a74.62 74.62 0 0 1-9-0.56l8 1.07a64.58 64.58 0 0 1-15.36-4.28l7.15 3a62.48 62.48 0 0 1-9.19-4.94c-0.73-0.47-1.42-1-2.15-1.47-3.41-2.27 3.11 2.21 3 2.31s-4.1-3.71-4.31-3.92c-1.22-1.22-2.27-2.62-3.5-3.82-2.29-2.22 4 5.7 2.27 3-0.46-0.73-1-1.41-1.49-2.13a62.73 62.73 0 0 1-5.3-9.73l3 7.15a65 65 0 0 1-4.27-15.36l1.07 8c-1.06-8.43-0.56-17.18-0.56-25.66V182v-26.46a74.58 74.58 0 0 1 0.56-9l-1.07 8a65.24 65.24 0 0 1 4.27-15.37l-3 7.15a63 63 0 0 1 4.94-9.19c0.47-0.72 1-1.42 1.47-2.14 2.27-3.41-2.21 3.11-2.31 3s3.71-4.1 3.92-4.31c1.22-1.22 2.62-2.27 3.82-3.5 2.22-2.29-5.7 4-3 2.27 0.73-0.46 1.41-1 2.13-1.49a62.73 62.73 0 0 1 9.73-5.3l-7.15 3a65 65 0 0 1 15.36-4.27l-8 1.07c6.3-0.79 12.71-0.56 19.05-0.56h401.12c19.41 0 38.86 0.39 58.26 0h0.8c15.66 0 30.66-13.77 29.93-29.93S642.59 65 625.81 65z"
fill="#0071C3" p-id="1662"></path>
<path d="M944.78 139.56c-5.24-7.77-11.4-14.35-17.95-20.9-10.42-10.42-20.4-21.85-31.72-31.32A94.76 94.76 0 0 0 842 65.24c-17.07-1.67-35 2.88-49.93 11-13.22 7.19-23.44 18.57-34 29.08l-43.93 43.93-65 65-75.98 76.05-78.32 78.32q-35.23 35.25-70.48 70.48l-53.8 53.81-27.24 27.23a37.89 37.89 0 0 0-10.14 18.2l-8 34q-11.74 50-23.5 99.92-2.32 9.91-4.66 19.82c-5.27 22.4 14.22 42.6 36.9 36.9l135.69-34.1L489 690a26.78 26.78 0 0 0 8.43-3.82 29.19 29.19 0 0 0 4.8-3.9L520 664.5l46.83-46.83 66.8-66.8 76.75-76.75 77.93-77.93q34.63-34.65 69.28-69.28L908.53 276c7.86-7.86 15.75-15.7 23.59-23.59a91.82 91.82 0 0 0 26.93-63.53c0.19-17-4.76-35.19-14.27-49.32z m-88.3-6.89l-2.29-1.75a8.28 8.28 0 0 1 2.29 1.75z m-37.48-2.9l-2 1.44a5.5 5.5 0 0 1 2-1.44z m-4.42 4c0.48-0.48 1.13-1.24 1.83-2 1.18-0.77 2.33-1.59 3.54-2.32s2.68-1.54 4.06-2.23a65 65 0 0 1 7.87-2.16 66.39 66.39 0 0 1 8 0 64 64 0 0 1 7.81 2.14c1.61 0.81 3.18 1.67 4.72 2.62 0.39 0.25 0.85 0.5 1.34 0.78s0.82 0.69 1.21 1.05c1.36 1.23 2.64 2.53 3.93 3.83l14.83 14.82L888.3 165c1.33 1.33 2.67 2.65 3.94 4l-0.93-1.52c0.48 0.79 1 1.54 1.59 2.3a13.31 13.31 0 0 1 0.85 1.24 58.4 58.4 0 0 1 3 5.34 65.47 65.47 0 0 1 2.13 7.79 66.56 66.56 0 0 1 0 8 65.32 65.32 0 0 1-2.16 7.86c-0.69 1.38-1.42 2.74-2.23 4.06-0.35 0.58-0.72 1.14-1.09 1.71l0.8-0.76c-0.31 0.29-0.61 0.6-0.91 0.92l-1.15 1.71c-0.72 1.11-1.5 1.58-1.34 1.12-0.21 0.23-0.42 0.47-0.64 0.7l-1.35 1.35-7 7-4.78 4.79q-37.8-37.93-75.61-75.85 6.58-6.52 13.11-12.97zM384.62 581.56l58 58.23-76.2 19.21q9.11-38.75 18.2-77.44z m366-232.48l-126 126-110.33 110.28q-10.3 10.3-20.7 20.54l-73.23-73.47-2.23-2.24 10.39-10.39 105.36-105.36 126.2-126.2 99-99L834.62 265z"
fill="#FD9A16" p-id="1663"></path>
</svg>
List of pending articles.
</div>
<ul class="ta1_uli">
<li v-for="item in tableData4">
<h5>{{item.type}}</h5>
<router-link target="_blank" :to="{path:'/per_text',query:{Art_id:item.article_id}}">
<h3>{{item.title}}</h3>
</router-link>
<h4><span>{{item.journal_title}}.</span><br>
<span style="color: #888;">Submitted time: {{item.ctime}}</span><span>{{item.accept_sn}}</span></h4>
</li>
<p v-if="tableData4==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No pending articles</p>
</ul>
<div class="pagination">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle4.pageIndex" :page-size="TaBle4.pageSize"
:total="link_Tota4" @current-change="handlePageChange4">
</el-pagination>
</div><br><br>
<div class="ma_title">
<svg t="1629527662744" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3890"
width="20" height="20" style="margin-bottom: -3px;margin-right: 6px;">
@@ -125,11 +155,19 @@
tableData1: [],
tableData2: [],
tableData3: [],
tableData4: [],
TaBle2: {
user_id: localStorage.getItem('U_id'),
pageIndex: 1,
pageSize: 10
},
TaBle4: {
user_id: localStorage.getItem('U_id'),
journal_id: 0,
pageIndex: 1,
pageSize: 5
},
link_Tota4: 0,
link_Tota2: 0,
cate_title: [],
cate_jour: []
@@ -175,6 +213,7 @@
localStorage.setItem('journal_id', this.cate_jour[0].journal_id);
this.head_line = this.cate_jour[0].title;
this.query.journal_id = this.cate_jour[0].journal_id;
this.TaBle4.journal_id = this.cate_jour[0].journal_id;
this.getData();
this.getPete();
@@ -231,7 +270,7 @@
this.$message.error(err);
});
},
getPete() {
this.$api
.post('api/Board/getBoardPendArticle', this.query)
@@ -252,6 +291,29 @@
.catch(err => {
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getAllReviewerList', this.TaBle4)
.then(res => {
if (res.code == 0) {
if (res.data.articles != '') {
for (let i = 0; i < res.data.articles.length; i++) {
let date = new Date(parseInt(res.data.articles[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() + 1 + '-';
let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
res.data.articles[i].ctime = Y + M + D;
}
}
this.tableData4 = res.data.articles;
this.link_Tota4 = res.data.count || 0;
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
// 分页导航
@@ -259,7 +321,10 @@
this.$set(this.TaBle2, 'pageIndex', val);
this.getData();
},
handlePageChange4(val) {
this.$set(this.TaBle4, 'pageIndex', val);
this.getData();
},
// 期刊下拉菜单点击
handlejournal(command) {
@@ -268,6 +333,7 @@
localStorage.setItem('journal_id', command.journal_id);
this.head_line = command.title;
this.query.journal_id = command.journal_id;
this.TaBle4.journal_id = command.journal_id;
this.getPete();
}
},

View File

@@ -14,6 +14,10 @@ import Common from './components/common/common'
Vue.prototype.Common = Common;
// 使用 ES Module
import * as echarts from 'echarts';
Vue.prototype.$echarts = echarts
Vue.prototype.$api = api

View File

@@ -303,19 +303,33 @@ export default new Router({
meta: {
title: 'Editor-in-Chief article details'
}
},{
}, {
path: '/man_report',
component: () => import( /* webpackChunkName: "主编-统计" */ '../components/page/man_report'),
meta: {
title: 'Editor-in-Chief Statistical Analysis'
}
}, {
path: '/editorial',
component: () => import( /* webpackChunkName: "编委" */ '../components/page/edit_ial'),
meta: {
title: 'Editorial board member'
}
},{
}, {
path: '/edit_text',
component: () => import( /* webpackChunkName: "编委文章详情" */ '../components/page/edit_text'),
meta: {
title: 'Editorial board member article details'
}
}, {
},
// {
// path: '/edit_report',
// component: () => import( /* webpackChunkName: "编委-统计" */ '../components/page/edit_report.vue'),
// meta: {
// title: 'Analysis report'
// }
// },
{
path: '/peerewer',
component: () => import( /* webpackChunkName: "审稿人" */ '../components/page/per_ewer'),
meta: {