This commit is contained in:
2025-08-29 15:05:26 +08:00
parent daba55e418
commit d71f54f1f7
24 changed files with 2939 additions and 1581 deletions

View File

@@ -3,7 +3,7 @@
<div class="crumbs">
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-collection"></i> <span class="top_dao"> Peer Review</span>
<i class="el-icon-collection"></i> <span class="top_dao"> Final Review</span>
</el-breadcrumb-item>
</el-breadcrumb>
</div>
@@ -25,21 +25,21 @@
<ul class="ta1_uli ta1_ulicad">
<li v-for="(item,index) in tableData1">
<!-- <h5>{{item.type}}</h5> -->
<router-link :to="{path:'/per_text',query:{Art_id:item.art_rev_id}}">
<router-link :to="{path:'/edit_per_text',query:{Art_id:item.id}}">
<h3><span
style="margin-right: 6px;color: #006699;">{{index+1}}.</span>{{item.article_title}}
style="margin-right: 6px;color: #006699;">{{index+1}}.</span>{{item.title }}
</h3>
<el-button type="primary" plain style="float: right;">Review</el-button>
<el-button type="primary" plain style="float: right;">Final Review</el-button>
</router-link>
<h4>
<span>
<font style="color: #006699;">Journal : </font>{{item.journal_title}}.
<font style="color: #006699;">Journal : </font>{{item.journal_name}}
</span>
<span>
<font style="color: #006699;">Type : </font>{{item.type}}
<font style="color: #006699;">Type : </font>{{item.article_type_name}}
</span>
<span style="color: #888;margin-left: 20px;color: #006699;">
{{item.ctime}}
{{item.agree_review_time}}
</span><br>
<!-- <span v-if="item.abstrart!=''" style="max-width: 1000px;">
<font style="color: #888;">Abstrart : </font>{{item.abstrart | ellipsis}}
@@ -51,59 +51,7 @@
</ul>
</el-col>
<!-- 复审 -->
<el-col :span="24" v-if="tableData2!=''">
<div style="background-color: #ccc;height: 2px;width: 100%;margin:20px 0 35px 0;"></div>
<!-- <el-card class="box-card"> -->
<div class="ma_title" style="margin-bottom: 5px;">
<h2>
<!-- <img src="../../assets/img/icon_1.png" alt="" class="icon_img"> -->
Invitation for review
</h2>
This list will show you the manuscript that the editor invited you to review. You can click on
the details to
check the content and then decide whether to review the manuscript. In addtion, you can also
refuse to review
the manuscript.
</div>
<ul class="ta1_uli ta1_ulicad">
<li v-for="(item,index) in tableData2">
<div>
<router-link :to="{path:'/per_text_yq',query:{Art_id:item.art_rev_id}}">
<h3><span
style="margin-right: 6px;color: #006699;">{{index+1}}.</span>{{item.title}}
</h3>
<el-button type="primary" plain style="float: right;">Detail</el-button>
</router-link>
</div>
<h4>
<span>
<font style="color: #006699;">Journal : </font>{{item.journal_title}}.
</span>
<span>
<font style="color: #006699;">Type : </font>{{item.type}}
</span>
<span style="color: #888;margin-left: 20px;color: #006699;">
{{item.ctime}}
</span><br>
<span v-if="item.abstrart!=''" style="max-width: 1000px;">
<font style="color: #006699;">Abstract : </font>{{item.abstrart | ellipsis}}
</span>
</h4>
<div style="margin-top: 10px;">
<el-button type="success" plain @click="wen_nowrw(item.art_rev_id)">Review</el-button>
<!-- <el-button type="success" plain @click="wen_agree(item.art_rev_id)" style="margin: 0 10px 0 20px;">Review
later</el-button> -->
<el-button type="danger" plain @click="wen_refuse(item.art_rev_id)">Reject to review
</el-button>
</div>
</li>
</ul>
<!-- </el-card> -->
</el-col>
<!-- <el-col :span="24">
<div style="background-color: #ccc;height: 2px;width: 100%;margin: 30px 0 5px 0;"></div>
@@ -164,7 +112,9 @@
return {
user_name: localStorage.getItem('U_relname'),
query: {
user_id: localStorage.getItem('U_id')
reviewer_id: localStorage.getItem('U_id'),
pageIndex: 1,
pageSize: 9999,
},
Art_id: this.$route.query.Art_id,
tableData1: [],
@@ -177,7 +127,7 @@
},
TaBle3: {
user_id: localStorage.getItem('U_id'),
reviewer_id: localStorage.getItem('U_id'),
journal_id: 0,
pageIndex: 1,
pageSize: 5
@@ -195,16 +145,16 @@
// 获取数据
getData() {
this.$api
.post('api/Reviewer/getReviewerListPending', this.query)
.post('api/Finalreview/lists', {...this.query,state:0})
.then(res => {
if (res.code == 0) {
if (res.status == 1) {
for (let i = 0; i < res.data.lists.length; i++) {
let date = new Date(parseInt(res.data.lists[i].ctime) * 1000);
let date = new Date(parseInt(res.data.lists[i].agree_review_time) * 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.lists[i].ctime = Y + M + D;
res.data.lists[i].agree_review_time = Y + M + D;
}
this.tableData1 = res.data.lists;
this.revisionList = res.data.repeats
@@ -216,66 +166,9 @@
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getInvitatReviewList', this.TaBle2)
.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.tableData2 = res.data.articles;
} else {
this.$message.error(res.msg);
}
})
.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;
if (res.data.articles[i].abstrart.length > 380) {
res.data.articles[i].isShowMore = true;
res.data.articles[i].isDescStatus = true;
res.data.articles[i].abstrart_ = JSON.parse(JSON.stringify(res.data.articles[i]
.abstrart)).slice(0, 380);
res.data.articles[i].abstrart_ = res.data.articles[i].abstrart_.slice(0, res
.data.articles[i].abstrart_.lastIndexOf(
" "));
} else {
res.data.articles[i].isShowMore = false;
res.data.articles[i].isDescStatus = false;
}
}
}
this.tableData3 = res.data.articles;
this.link_Tota3 = res.data.count || 0;
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
// 分页导航
handlePageChange3(val) {