This commit is contained in:
xulu
2022-02-23 16:34:07 +08:00
parent ec5e69418b
commit 4f5e6e1f78
62 changed files with 28419 additions and 8571 deletions

View File

@@ -7,115 +7,144 @@
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<el-alert class="mes_alert" style="margin: 20px 0 10px 0;" :title="'Dear '+ user_name" type="warning" description="Welcome to our submission system. In order to facilitate reviewers to review articles we have developed a new test product. if you have any suggestions about this, please do not hesitate to contact us: tmr@tmrjournals.com">
<el-alert class="mes_alert" style="margin: 20px 0 10px 0;" :title="'Dear '+ user_name" description="Welcome to our submission system. In order to facilitate reviewers to review articles we have developed a new test product. if you have any suggestions about this, please do not hesitate to contact us: tmr@tmrjournals.com">
</el-alert>
<div class="container_l">
<el-row :gutter="20" style="display: flex;">
<el-col :span="16">
<el-card class="box-card top_card_b">
<el-col :span="5">
<div class="ma_title" style="height: 100%;">
<h2>
<!-- <img src="../../assets/img/icon_5.png" alt="" class="icon_img"> -->
Under review.
</h2>
In this column, the manuscripts that currently need your comments are displayed. You can click detail to review
or change your comments.
</div>
</el-col>
<el-col :span="19">
<ul class="ta1_uli">
<li v-for="item in tableData1">
<!-- <h5>{{item.type}}</h5> -->
<h3><span>{{item.type}}</span>{{item.article_title}}
<router-link :to="{path:'/per_text',query:{Art_id:item.art_rev_id}}">
<el-button type="primary" plain style="float: right;">Detail</el-button>
</router-link>
</h3>
<h4><span>{{item.journal_title}}.</span><span style="color: #888;">Submitted time: {{item.ctime}}</span>
<!-- <span>{{item.accept_sn}}</span> -->
</h4>
</li>
<p v-if="tableData1==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No article</p>
</ul>
</el-col>
</el-card>
<el-row :gutter="20">
<el-col :span="24">
<div class="ma_title" style="height: 100%;">
<h2>
<!-- <img src="../../assets/img/icon_5.png" alt="" class="icon_img"> -->
Under review
</h2>
In this column, the manuscripts that currently need your comments are displayed. You can click detail to review
or change your comments.
</div>
<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}}">
<h3><span style="margin-right: 6px;color: #006699;">{{index+1}}.</span>{{item.article_title}}</h3>
<el-button type="primary" plain style="float: right;">Review</el-button>
</router-link>
<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: #888;">Abstrart : </font>{{item.abstrart | ellipsis}}
</span> -->
</h4>
</li>
<p v-if="tableData1==''" style="color:#6f6f6f;font-size: 14px;margin: 20px 0 0 30px;">No article</p>
</ul>
</el-col>
<el-col :span="8">
<el-card class="box-card top_card_b" style="margin-left: 30px;">
<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.
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">
<li v-for="item in tableData2">
<!-- <h5>{{item.type}}</h5> -->
<h3><span>{{item.type}}</span>{{item.title}}</h3>
<h4><span>{{item.journal_title}}.</span>
<span style="color: #888;">Submitted time: {{item.ctime}}</span>
<!-- <span>{{item.accept_sn}}</span> -->
</h4>
<div style="margin-top: 10px;">
<router-link :to="{path:'/per_text',query:{Art_id:item.article_id}}">
<el-button type="primary" plain>Detail</el-button>
<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>
<el-button type="success" plain @click="wen_agree(item.article_id)" style="margin: 0 10px 0 20px;">Agree</el-button>
<el-button type="danger" plain @click="wen_refuse(item.article_id)">Refuse</el-button>
</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;">Abstrart : </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>
<p v-if="tableData2==''" style="color:#6f6f6f;font-size: 14px;margin-top: 20px;">No articles</p>
</ul>
</el-card>
<!-- </el-card> -->
</el-col>
<el-col :span="24">
<div style="background-color: #ccc;height: 2px;width: 100%;margin: 30px 0 5px 0;"></div>
</el-col>
<el-col :span="24" style="margin-top: 20px;">
<div class="ma_title">
<h2>
<!-- <img src="../../assets/img/icon_4.png" alt="" class="icon_img"> -->
Awaitingreviewerassignment
</h2>
In this column, all the manuscripts of the TMR Publishing Group that need to be reviewed are displayed. You can
click detail to view the content of the manuscript . If you have comments on the manuscript, you can apply for
review. Sincerely look forward to your comments.
</div>
<ul class="ta1_uli ta1_ulicad">
<li v-for="(item,index) in tableData3">
<!-- <el-card class="box-card"> -->
<!-- <h5>{{item.type}}</h5> -->
<h3><span style="margin-right: 6px;">{{index+1+(TaBle3.pageIndex-1)*TaBle3.pageSize}}.</span>{{item.title}}</h3>
<el-button type="primary" plain style="float: right;" @click="svAccept(item.article_id)">Agree review</el-button>
<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;margin-bottom: 10px;color: #006699;">
{{item.ctime}}
</span><br>
<span v-if="item.abstrart!=''" style="max-width: 1000px;">
<font style="color: #006699;">Abstrart : </font>
<font style="font-size: 12px;" :class="{active: item.isShowMore}">{{item.abstrart}}</font>
<font style="font-size: 12px;" :class="{active: !item.isShowMore}" v-if="item.isDescStatus">{{item.abstrart_}}</font>
<span class="isShow" v-if="item.isDescStatus" @click="item.isShowMore = !item.isShowMore">
{{item.isShowMore ? '... Open ' : 'Recover '}}
</span>
</span>
</h4>
<!-- </el-card> -->
</li>
<p v-if="tableData3==''" style="color:#6f6f6f;font-size: 14px;margin: 20px 0 0 30px;">No 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>
</el-row>
<el-row :gutter="20">
<el-col :span="24" style="margin-top: 50px;">
<el-card class="box-card">
<el-col :span="4">
<div class="ma_title">
<h2>
<!-- <img src="../../assets/img/icon_4.png" alt="" class="icon_img"> -->
Manuscript to be reviewed.
</h2>
In this column, all the manuscripts of the TMR Publishing Group that need to be reviewed are displayed. You can
click detail to view the content of the manuscript . If you have comments on the manuscript, you can apply for
review. Sincerely look forward to your comments.
</div>
</el-col>
<el-col :span="20">
<ul class="ta1_uli">
<li v-for="item in tableData3">
<!-- <h5>{{item.type}}</h5> -->
<h3><span>{{item.type}}</span>{{item.title}}
<router-link :to="{path:'/per_text',query:{Art_id:item.article_id}}">
<el-button type="primary" plain style="float: right;">Detail</el-button>
</router-link>
</h3>
<h4><span>{{item.journal_title}}.</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 articles</p>
</ul>
<div class="pagination">
<el-pagination layout="total, prev, pager, next" :current-page="TaBle2.pageIndex" :page-size="TaBle2.pageSize"
:total="link_Tota3" @current-change="handlePageChange3">
</el-pagination>
</div>
</el-col>
</el-card>
</el-col>
</el-row>
</div>
</div>
</template>
@@ -128,6 +157,7 @@
query: {
user_id: localStorage.getItem('U_id')
},
Art_id: this.$route.query.Art_id,
tableData1: [],
tableData2: [],
tableData3: [],
@@ -148,24 +178,10 @@
},
created() {
this.getTable();
this.getData();
},
methods: {
// 获取数据
getTable() {
this.$api
.post('api/Reviewer/getReviewerDetail1', this.query)
.then(res => {
if (res.code == 0) {
this.getData();
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
},
getData() {
this.$api
.post('api/Reviewer/getReviewerListPending', this.query)
@@ -192,12 +208,12 @@
.then(res => {
if (res.code == 0) {
if (res.data.articles != '') {
for (let i = 0; i < res.data.lists.length; i++) {
let date = new Date(parseInt(res.data.lists[i].ctime) * 1000);
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.lists[i].ctime = Y + M + D;
res.data.articles[i].ctime = Y + M + D;
}
}
this.tableData2 = res.data.articles;
@@ -220,8 +236,20 @@
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 {
@@ -239,23 +267,57 @@
this.getData();
},
// 马上同意
wen_nowrw(index) {
// 二次确认
this.$confirm('Are you sure you want to review now', 'Tips', {
type: 'warning'
})
.then(() => {
this.$api
.post('api/Reviewer/agreeReviewerArticle', {
art_rev_id: index
})
.then(res => {
if (res.code == 0) {
this.$router.push('/per_text?Art_id=' + index);
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
})
.catch(() => {});
},
// 同意
wen_agree(index) {
console.log(index);
// 二次确认
this.$api
.post('master/Journal/delJournalAbs', row)
.then(res => {
if (res.code == 0) {
this.$message.success('Agree successfully!');
this.getData();
} else {
this.$message.error(res.msg);
}
this.$confirm(
'Are you sure you want to agreeYou can click on the details to check the content and then decide whether to review the manuscript',
'Tips', {
type: 'warning'
})
.then(() => {
this.$api
.post('api/Reviewer/agreeReviewerArticle', {
art_rev_id: index
})
.then(res => {
if (res.code == 0) {
this.$message.success('Agree successful!');
this.getData();
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
})
.catch(err => {
this.$message.error(err);
});
.catch(() => {});
},
// 拒绝
@@ -266,7 +328,9 @@
})
.then(() => {
this.$api
.post('master/Journal/delJournalAbs', row)
.post('api/Reviewer/refuseReviewerArticle', {
art_rev_id: index
})
.then(res => {
if (res.code == 0) {
this.$message.success('Reject successful!');
@@ -281,6 +345,49 @@
})
.catch(() => {});
},
// 申请
svAccept(parem) {
// 二次确认
this.$confirm('I am willing to review this manuscript.', ' ', {
type: 'warning',
confirmButtonText: 'Yes'
})
.then(() => {
this.$api
.post('api/Reviewer/launchReviewer', {
article_id: parem,
user_id: localStorage.getItem('U_id')
})
.then(res => {
if (res.code == 0) {
this.$message.success('Successful application!');
this.$router.push('/per_text?Art_id=' + res.data.art_rev_id);
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
this.$message.error(err);
});
})
.catch(() => {});
},
},
filters: {
ellipsis(value) {
if (!value) return "";
if (value.length > 380) {
value = value.slice(0, 380);
return value.slice(0, value.lastIndexOf(" ")) + "...";
}
return value;
}
},
watch: {
@@ -291,16 +398,14 @@
<style scoped>
.ma_title {
margin-bottom: 20px;
font-size: 18px;
border-right: 1px solid #e1e1e1;
padding-right: 20px;
line-height: 28px;
color: #888;
font-size: 14px;
/* border-right: 1px solid #e1e1e1; */
padding: 0 20px;
line-height: 20px;
}
.ma_title h2 {
font-size: 20px;
color: #006699;
font-size: 16px;
margin: 10px 0;
/* white-space: nowrap; */
}
@@ -326,52 +431,65 @@
.ta1_uli li {
list-style: none;
border-bottom: 1px dashed #e0e0e0;
/* border-bottom: 1px dashed #e0e0e0; */
/* box-shadow: 0 0 10px #e1e1e1; */
padding: 10px 20px 20px 20px;
/* padding: 10px 20px 20px 20px; */
padding-bottom: 8px;
background-color: #fff;
margin-top: 10px;
}
.ta1_ulicad li{
margin-top: 0;
padding: 20px;
}
.ta1_ulicad li:nth-child(2n+1){
background-color: #f8fbff;
box-shadow: 2px 30px 15px -20px #ebf5ff inset;
}
.ta1_ulicad li:nth-child(2n){
background-color: #fff;
}
.ta1_uli li:hover {
/* background: #fafafa; */
}
.ta1_uli li h3 {
color: #000;
color: #006699;
margin-top: 8px;
font-size: 20px;
margin-right: 150px;
font-family: "Helvetica Neue", Helvetica, Georgia, sans-serif;
}
.ta1_uli li h3>span {
font-size: 12px;
color: #fff;
background-color: #1e93cd;
margin-right: 12px;
display: inline-block;
padding: 3px 5px;
vertical-align: bottom;
font-size: 16px;
word-wrap: break-word;
line-height: 22px;
}
.ta1_uli li h3:hover {
/* text-decoration: underline; */
cursor: pointer;
}
.ta1_uli li h4 {
/* color: #6f6f6f; */
margin-top: 8px;
margin-right: 150px;
font-weight: normal;
font-size: 16px;
font-size: 14px;
line-height: 22px;
}
.ta1_uli li h4 span {
margin-right: 10px;
display: block;
margin-right: 20px;
display: inline-block;
margin-bottom: 2px;
}
.ta1_uli li h4 span>font {
font-size: 13px;
}
.ta1_uli li h5 {
color: #006699;
margin-top: 5px;
@@ -401,4 +519,16 @@
.mes_alert .el-alert__description {
font-size: 16px !important;
}
.ta1_uli li .active {
display: none;
}
.ta1_uli li .isShow {
color: #006699;
cursor: pointer;
font-size: 12px;
font-weight: bold;
margin-left: 5px;
}
</style>