审稿问卷微调

This commit is contained in:
@fawn-nine
2023-11-21 14:49:41 +08:00
parent 85433363b7
commit fbeb084a92
2 changed files with 1278 additions and 1213 deletions

View File

@@ -4,71 +4,94 @@
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-collection"></i>
<router-link :to="{path:'/perhistory'}">
<router-link :to="{ path: '/perhistory' }">
<span class="top_dao"> Reviewer historical manuscripts</span>
</router-link>
>> Reviewer historical manuscripts comment
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="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_l"
v-loading="loading"
element-loading-text="Loading..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0, 0, 0, 0.8)"
>
<el-card class="box-card">
<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>
<p style="display:inline-block;margin: 0 35px;"><b>Type :</b> {{txt_mess.atype}}</p>
<p style="display:inline-block;"><b>Submitted time :</b> {{txt_mess.ctime}}</p>
<p><b>Abstract :</b> <br>{{txt_mess.abstrart}}</p>
<div class="file_sty" v-for="item in fileList" style="margin-top: 15px;">
<img src="../../assets/img/icon_0.png" alt="" class="icon_img">
<a :href='mediaUrl+item.file_url' target="_blank" class="txt_pdf">{{item.type_name}} <span style="margin-left: 50px;color: #888;font-size: 13px;">{{item.ctime}}</span>
<i class="el-icon-download" style="margin-left: 20px;color: #66b1ff;font-weight: bold;"></i>
</a><br>
<h4>{{ txt_mess.article_title }}</h4>
<h5>{{ txt_mess.title }}<span style="margin: 0 10px"> >> </span> Manuscript ID: {{ txt_mess.accept_sn }}</h5>
<p style="display: inline-block; margin: 0 35px"><b>Type :</b> {{ txt_mess.atype }}</p>
<p style="display: inline-block"><b>Submitted time :</b> {{ txt_mess.ctime }}</p>
<p><b>Abstract :</b> <br />{{ txt_mess.abstrart }}</p>
<div class="file_sty" v-for="item in fileList" style="margin-top: 15px">
<img src="../../assets/img/icon_0.png" alt="" class="icon_img" />
<a :href="mediaUrl + item.file_url" target="_blank" class="txt_pdf"
>{{ item.type_name }} <span style="margin-left: 50px; color: #888; font-size: 13px">{{ item.ctime }}</span>
<i class="el-icon-download" style="margin-left: 20px; color: #66b1ff; font-weight: bold"></i> </a
><br />
</div>
<div class="file_sty" v-for="item in picList">
<img src="../../assets/img/icon_0.png" alt="" class="icon_img">
<a :href='mediaUrl+item.file_url' target="_blank" class="txt_pdf">Figures And Tables <span style="margin-left: 50px;color: #888;font-size: 13px;">{{item.ctime}}</span>
<i class="el-icon-download" style="margin-left: 20px;color: #66b1ff;font-weight: bold;"></i>
</a><br>
<img src="../../assets/img/icon_0.png" alt="" class="icon_img" />
<a :href="mediaUrl + item.file_url" target="_blank" class="txt_pdf"
>Figures And Tables <span style="margin-left: 50px; color: #888; font-size: 13px">{{ item.ctime }}</span>
<i class="el-icon-download" style="margin-left: 20px; color: #66b1ff; font-weight: bold"></i> </a
><br />
</div>
</div>
</el-card>
<p style="font-size: 20px;text-align: center;margin: 0 0 25px 0;">All comments</p>
<p v-if="conmentList==''" style="color: #666;margin: 0 0 0 10px;">No comment</p>
<p style="font-size: 20px; text-align: center; margin: 0 0 25px 0">All comments</p>
<p v-if="conmentList == ''" style="color: #666; margin: 0 0 0 10px">No comment</p>
<div>
<el-card class="box-card conment_list" v-for="(item,index) in conmentList">
<p style="margin: 0 0 15px 0;">
<b>Comment {{index+1}}</b>
<el-card class="box-card conment_list" v-for="(item, index) in conmentList">
<p style="margin: 0 0 15px 0">
<b>Comment {{ index + 1 }}</b>
</p>
<p style="font-size: 14px;color: #666;margin-bottom: 5px;">Reviewer :
<b v-if="item.reviewer.user_id==User_Id">{{item.reviewer.account}}</b>
<b v-if="item.reviewer.user_id!=User_Id">XXXXXXXXXX</b>
<p style="font-size: 14px; color: #666; margin-bottom: 5px">
Reviewer :
<b v-if="item.reviewer.user_id == User_Id">{{ item.reviewer.account }}</b>
<b v-if="item.reviewer.user_id != User_Id">XXXXXXXXXX</b>
</p>
<p style="font-size: 14px;color: #666;margin-bottom: 5px;">Score :
<b>{{item.question.rated}}</b>
<p style="font-size: 14px; color: #666; margin-bottom: 5px">
Score :
<b>{{ item.question.rated }}</b>
</p>
<p style="font-size: 14px;color: #666;margin-bottom: 5px;">Recommendation :
<b v-if="item.question.recommend == 1">Accept with minor revision</b>
<b v-if="item.question.recommend == 2">Accept with major revision</b>
<p style="font-size: 14px; color: #666; margin-bottom: 5px">
Recommendation :
<b v-if="item.question.recommend == 1">Minor revision</b>
<b v-if="item.question.recommend == 2">Major revision</b>
<span v-if="journal_id == 1 || journal_id == 23 || journal_id == 10">
<b v-if="item.question.recommend == 3">Reject in current form, but may be resubmitted</b>
<b v-if="item.question.recommend == 4">Reject, with no resubmission</b>
</span>
<span v-else>
<b v-if="item.question.recommend == 4">Reject</b>
</span>
<!-- <b v-if="item.question.recommend == 3">Reject in current form, but may be resubmitted</b>
<b v-if="item.question.recommend == 4">Reject, with no resubmission</b> -->
</p>
<p style="font-size: 14px;color: #666;margin: 0 0 20px 0;">Reviewed Time : <b>{{item.ctime}}</b></p>
<el-button type="primary" size="mini" @click="ques_visible(item.question)" style="">Referee's
Assessment</el-button>
<p style="font-size: 14px; color: #666; margin: 0 0 20px 0">
Reviewed Time : <b>{{ item.ctime }}</b>
</p>
<el-button type="primary" size="mini" @click="ques_visible(item.question)" style="">Referee's Assessment</el-button>
</el-card>
</div>
<!-- 证书弹出框 -->
<el-dialog :visible.sync="questionVisible" width="1000px">
<el-form :model="questionform" :rules="rules" ref="question" label-width="300px" label-position="top" style="padding: 0 20px;">
<el-form
:model="questionform"
:rules="rules"
ref="question"
label-width="300px"
label-position="top"
style="padding: 0 20px"
>
<el-divider content-position="center">REFEREE'S ASSESSMENT</el-divider>
<el-row :gutter="24">
<el-col :span="12">
@@ -131,11 +154,14 @@
</el-radio-group>
</el-col>
<el-col :span="12">
<el-collapse-item name="1" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content" v-model="questionform.qu9contents" :rows="4"></el-input>
<el-collapse-item name="1" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu9contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -143,7 +169,6 @@
</el-col>
</el-row>
<el-collapse>
<el-form-item label="7.Is the Abstract accurate and concise?">
<el-col :span="4">
@@ -153,11 +178,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="2" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content" v-model="questionform.qu10contents" :rows="4"></el-input>
<el-collapse-item name="2" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu10contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -169,11 +197,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="3" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content" v-model="questionform.qu11contents" :rows="4"></el-input>
<el-collapse-item name="3" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu11contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -185,11 +216,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="4" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content" v-model="questionform.qu12contents" :rows="4"></el-input>
<el-collapse-item name="4" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu12contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -201,11 +235,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="5" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content" v-model="questionform.qu13contents" :rows="4"></el-input>
<el-collapse-item name="5" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu13contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -226,21 +263,28 @@
<el-radio-button label="9"></el-radio-button>
<el-radio-button label="10"></el-radio-button>
</el-radio-group>
<span style="margin-left: 20px;">>Your score:{{questionform.rated}}</span>
<span style="margin-left: 20px">>Your score:{{ questionform.rated }}</span>
</el-form-item>
<el-form-item label="REFEREE'S RECOMMENDATIONS" prop="recommend">
<el-radio-group v-model="questionform.recommend" style="line-height: 30px;">
<el-radio :label="1">Accept with minor revision</el-radio>
<el-radio-group v-model="questionform.recommend" style="line-height: 30px">
<el-radio :label="1">Minor revision</el-radio>
<br />
<el-radio :label="2">Accept with major revision</el-radio>
<el-radio :label="2">Major revision</el-radio>
<br />
<div v-if="journal_id == 1 || journal_id == 23 || journal_id == 10">
<el-radio :label="3">Reject in current form, but may be resubmitted</el-radio>
<br />
<el-radio :label="4">Reject, with no resubmission</el-radio>
</div>
<div v-else>
<!-- <el-radio :label="3">Reject in current form, but may be resubmitted</el-radio>
<br /> -->
<el-radio :label="4">Reject</el-radio>
</div>
</el-radio-group>
</el-form-item>
<el-form-item label="OTHER SPECIFIC CRITICISMS">
<el-radio-group v-model="questionform.other" style="line-height: 30px;">
<el-radio-group v-model="questionform.other" style="line-height: 30px">
<el-radio :label="1">Imperfect style</el-radio>
<br />
<el-radio :label="2">Too long</el-radio>
@@ -251,20 +295,22 @@
</el-radio-group>
</el-form-item>
<el-form-item label="Comments for the Authors">
<el-input type="textarea" placeholder="please input content" v-model="questionform.comment" :rows="6"></el-input>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.comment"
:rows="6"
></el-input>
</el-form-item>
</el-collapse>
</el-form>
</el-dialog>
</div>
</div>
</template>
<script>
export default {
export default {
data() {
return {
loading: false,
@@ -308,10 +354,12 @@
comment: '',
is_anonymous: ''
},
journal_id: null, // 期刊的id
rules: {},
conmentList: [],
questionVisible: false,
}
questionVisible: false
};
},
created() {
if (this.Direct_log == null) {
@@ -319,9 +367,9 @@
} else {
this.$api
.post('api/Chief/autoLoginForChief', {
'code': this.Direct_log
code: this.Direct_log
})
.then(res => {
.then((res) => {
if (res.code == 0) {
localStorage.setItem('U_role', res.data.roles);
localStorage.setItem('U_name', res.data.user.account);
@@ -332,7 +380,7 @@
this.$message.error(res.msg);
}
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
}
@@ -342,27 +390,29 @@
// 获取文章信息
this.$api
.post('api/Reviewer/getartrevdate', {
'revid': this.Rev_id,
'human': 'reviewer'
revid: this.Rev_id,
human: 'reviewer'
})
.then(res => {
.then((res) => {
let date = new Date(parseInt(res.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.ctime = Y + M + D;
this.txt_mess = res
this.txt_mess = res;
this.journal_id = res.journal_id;
console.log(this.journal_id, 'this.journal_id');
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getAFilelistByID ', {
'revid': this.Rev_id
revid: this.Rev_id
})
.then(res => {
.then((res) => {
for (var i = 0; i < res.data.length; i++) {
let date = new Date(parseInt(res.data[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
@@ -370,17 +420,17 @@
let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
res.data[i].ctime = Y + M + D;
}
this.fileList = res.data
this.fileList = res.data;
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getBFilelistByID', {
'revid': this.Rev_id
revid: this.Rev_id
})
.then(res => {
.then((res) => {
for (var i = 0; i < res.data.length; i++) {
let date = new Date(parseInt(res.data[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
@@ -388,19 +438,18 @@
let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
res.data[i].ctime = Y + M + D;
}
this.picList = res.data
this.picList = res.data;
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
// 获取问卷列表顺序
this.$api
.post('api/Reviewer/getAllReviewerObj', {
'article_id': this.Art_id
article_id: this.Art_id
})
.then(res => {
.then((res) => {
for (var i = 0; i < res.data.reviews.length; i++) {
let date = new Date(parseInt(res.data.reviews[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
@@ -408,16 +457,16 @@
let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
res.data.reviews[i].ctime = Y + M + D;
}
this.conmentList = res.data.reviews
this.conmentList = res.data.reviews;
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
},
//初始化问卷
ques_visible(e) {
this.questionVisible = true
this.questionVisible = true;
this.questionform.rev_qu_id = e.rev_qu_id;
this.questionform.qu1 = e.qu1;
this.questionform.qu2 = e.qu2;
@@ -446,94 +495,89 @@
this.questionform.other = e.other;
this.questionform.confident = e.confidential;
this.questionform.comment = e.comments;
this.questionform.is_anonymous = e.is_anonymous
this.questionform.is_anonymous = e.is_anonymous;
}
},
mounted() {
},
}
mounted() {}
};
</script>
<style scoped>
.tet_list {
.tet_list {
font-size: 20px;
}
}
.box-card {
.box-card {
margin-bottom: 20px;
line-height: 24px;
}
}
.upload-txtc .el-upload-list__item .el-icon-upload-success {
.upload-txtc .el-upload-list__item .el-icon-upload-success {
display: none !important;
}
}
.tet_list h5 {
.tet_list h5 {
font-size: 15px;
margin: 20px 0 5px 0;
font-weight: normal;
display: inline-block;
}
}
.tet_list p {
.tet_list p {
font-family: Calibri;
line-height: 22px;
font-size: 16px;
}
}
.file_sty {
.file_sty {
margin-bottom: 6px;
}
}
.file_sty a {
.file_sty a {
color: #606266;
font-size: 14px;
}
}
.file_sty a:hover {
.file_sty a:hover {
text-decoration: underline;
}
}
.red {
.red {
color: #ff0000;
}
}
.el-collapse {
.el-collapse {
border-top: 0;
border-bottom: 0;
}
}
.top_dao:hover {
.top_dao:hover {
text-decoration: underline;
cursor: pointer;
}
}
.icon_img {
.icon_img {
width: 15px;
height: 15px;
margin-right: 10px;
vertical-align: middle;
}
}
.trah_c .icon_img {
.trah_c .icon_img {
width: 24px;
height: 24px;
margin: 0 20px;
}
}
.el-divider {
.el-divider {
background-color: #006699;
}
}
.conment_list {
.conment_list {
display: inline-block;
text-align: left;
width: 32%;
height: 270px;
margin: 0 0.5% 1%;
}
}
</style>

View File

@@ -4,71 +4,65 @@
<el-breadcrumb separator="/">
<el-breadcrumb-item>
<i class="el-icon-collection"></i>
<router-link :to="{path:'/peerewer'}">
<router-link :to="{ path: '/peerewer' }">
<span class="top_dao"> Reviewer Article</span>
</router-link>
>> Reviewer Article Detail
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="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_l"
v-loading="loading"
element-loading-text="Loading..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0, 0, 0, 0.8)"
>
<el-row :gutter="20">
<el-col :span="10">
<iframe ref="mainiframe" :src="pdfUrl" class="lookpdf" frameborder="0"></iframe>
</el-col>
<el-col :span="14" style="height: 760px;overflow-y: scroll;">
<el-col :span="14" style="height: 760px; overflow-y: scroll">
<!-- <el-col :span="24"> -->
<el-card class="box-card">
<div class="tet_list" :model="txt_mess">
<h4>{{txt_mess.article_title}}</h4>
<h4>{{ txt_mess.article_title }}</h4>
<h5>
<a :href="txt_mess.website" target="_blank" class="titlink">{{txt_mess.title}}</a>
<span style="margin: 0 10px;"> >> </span>
Manuscript ID: {{txt_mess.accept_sn}}
<a :href="txt_mess.website" target="_blank" class="titlink">{{ txt_mess.title }}</a>
<span style="margin: 0 10px"> >> </span>
Manuscript ID: {{ txt_mess.accept_sn }}
</h5>
<p style="display:inline-block;margin: 0 35px;"><b>Type :</b> {{txt_mess.atype}}</p>
<p style="display:inline-block;"><b>Submitted time :</b> {{txt_mess.ctime}}</p>
<p style="display: inline-block; margin: 0 35px"><b>Type :</b> {{ txt_mess.atype }}</p>
<p style="display: inline-block"><b>Submitted time :</b> {{ txt_mess.ctime }}</p>
<div>
<p><b>Abstract :</b> <br>{{txt_mess.abstrart}}</p>
<div class="file_sty" v-for="item in fileList" style="margin-top: 15px;">
<img src="../../assets/img/icon_0.png" alt="" class="icon_img">
<a :href='mediaUrl+item.file_url' target="_blank" class="txt_pdf">{{item.type_name}}
<span
style="margin-left: 50px;color: #888;font-size: 13px;">{{item.ctime}}</span>
<i class="el-icon-download"
style="margin-left: 20px;color: #66b1ff;font-weight: bold;"></i>
</a><br>
<p><b>Abstract :</b> <br />{{ txt_mess.abstrart }}</p>
<div class="file_sty" v-for="item in fileList" style="margin-top: 15px">
<img src="../../assets/img/icon_0.png" alt="" class="icon_img" />
<a :href="mediaUrl + item.file_url" target="_blank" class="txt_pdf"
>{{ item.type_name }}
<span style="margin-left: 50px; color: #888; font-size: 13px">{{ item.ctime }}</span>
<i class="el-icon-download" style="margin-left: 20px; color: #66b1ff; font-weight: bold"></i> </a
><br />
</div>
<div class="file_sty" v-for="item in picList">
<img src="../../assets/img/icon_0.png" alt="" class="icon_img">
<a :href='mediaUrl+item.file_url' target="_blank" class="txt_pdf">Figures And Tables
<span
style="margin-left: 50px;color: #888;font-size: 13px;">{{item.ctime}}</span>
<i class="el-icon-download"
style="margin-left: 20px;color: #66b1ff;font-weight: bold;"></i>
</a><br>
<img src="../../assets/img/icon_0.png" alt="" class="icon_img" />
<a :href="mediaUrl + item.file_url" target="_blank" class="txt_pdf"
>Figures And Tables
<span style="margin-left: 50px; color: #888; font-size: 13px">{{ item.ctime }}</span>
<i class="el-icon-download" style="margin-left: 20px; color: #66b1ff; font-weight: bold"></i> </a
><br />
</div>
<p style="margin-top: 5px;color: #999;font-size: 14px;">
<b style="color: #e41411;">Download failed?</b>
<br>If you have upgraded the Google Chrome browser to version 86, released on
October 6,
2020,
you may have
noticed that some file downloads don't work anymore in the browser. You click on the
download
link and nothing
happens.
<br>1. Right now, the easiest option available is to
<b style="color: #e41411;">right-click on the download link and select "save link
as".</b>
<p style="margin-top: 5px; color: #999; font-size: 14px">
<b style="color: #e41411">Download failed?</b>
<br />If you have upgraded the Google Chrome browser to version 86, released on October 6, 2020, you may
have noticed that some file downloads don't work anymore in the browser. You click on the download link
and nothing happens. <br />1. Right now, the easiest option available is to
<b style="color: #e41411">right-click on the download link and select "save link as".</b>
The download is executed when you do that.
<br>2. Please try to use a different browser for downloads. For now, a browser like
Firefox,
Internet Explorer,
Brave, Vivaldi, the new Edge, or Opera all allow the download.
<br />2. Please try to use a different browser for downloads. For now, a browser like Firefox, Internet
Explorer, Brave, Vivaldi, the new Edge, or Opera all allow the download.
</p>
</div>
<!-- <p class="morSou" v-if="!morShow" @click="morShow=true">
@@ -83,30 +77,21 @@
</el-card>
<el-card class="box-card" v-if="this.add_apply == 1">
Thank you for your time and consideration on the manuscript. We are sorry that this manuscript
has
went
through
peer review and the final decision has been obtained according to the timetable. Accordingly,
your
review process
has been discontinued. Your comments do not need to be submitted now. We would like to express
our
sincere
gratitude for your contributions as well.
Thank you for your time and consideration on the manuscript. We are sorry that this manuscript has went through peer
review and the final decision has been obtained according to the timetable. Accordingly, your review process has
been discontinued. Your comments do not need to be submitted now. We would like to express our sincere gratitude for
your contributions as well.
</el-card>
<el-card class="box-card" v-if="this.add_apply == 0">
<el-form :model="questionform" :rules="rules" ref="question" label-width="300px"
label-position="top">
<el-form :model="questionform" :rules="rules" ref="question" label-width="300px" label-position="top">
<el-divider content-position="center">REFEREE'S ASSESSMENT</el-divider>
<el-row :gutter="24">
<el-col :span="24">
<el-form-item prop="qu6">
<span slot="label">
1.Does the manuscript fall within the aim and scope of the journal?
<a :href="txt_mess.aim_web" target="_blank" class="jouLink">( Aims & Scope )
</a>
<a :href="txt_mess.aim_web" target="_blank" class="jouLink">( Aims & Scope ) </a>
</span>
<el-radio-group v-model="questionform.qu6">
<el-radio :label="1">Excellent</el-radio>
@@ -158,7 +143,6 @@
</el-col>
</el-row>
<el-collapse>
<el-form-item label="6.Does the title represent manuscript's contents?">
<el-col :span="4">
@@ -168,18 +152,19 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="1" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content"
v-model="questionform.qu9contents" :rows="4"></el-input>
<el-collapse-item name="1" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu9contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
</el-collapse>
<el-collapse>
<el-form-item label="7.Is the Abstract accurate and concise?">
<el-col :span="4">
@@ -189,12 +174,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="2" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content"
v-model="questionform.qu10contents" :rows="4"></el-input>
<el-collapse-item name="2" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu10contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -206,12 +193,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="3" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content"
v-model="questionform.qu11contents" :rows="4"></el-input>
<el-collapse-item name="3" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu11contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -223,12 +212,14 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="4" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content"
v-model="questionform.qu12contents" :rows="4"></el-input>
<el-collapse-item name="4" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu12contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
@@ -240,21 +231,23 @@
</el-radio-group>
</el-col>
<el-col :span="20">
<el-collapse-item name="5" style="margin-top: -10px;">
<template slot="title">
<i class="el-icon-edit"></i>Comments/ Suggestions
</template>
<el-input type="textarea" placeholder="please input content"
v-model="questionform.qu13contents" :rows="4"></el-input>
<el-collapse-item name="5" style="margin-top: -10px">
<template slot="title"> <i class="el-icon-edit"></i>Comments/ Suggestions </template>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.qu13contents"
:rows="4"
></el-input>
</el-collapse-item>
</el-col>
</el-form-item>
<el-divider content-position="center">REFEREE'S RECOMMENDATIONS</el-divider>
<el-form-item label="Overall the Paper is Rated" prop="rated">
( <span style="color: #e41411;">←←←←← Bad ←←← Poor</span>
<span style="width: 10px;display: inline-block;"></span>
<span style="color: #369916;">Accept → Superior → Excellent</span>)
( <span style="color: #e41411">←←←←← Bad ←←← Poor</span>
<span style="width: 10px; display: inline-block"></span>
<span style="color: #369916">Accept → Superior → Excellent</span>)
<br />
<el-radio-group v-model="questionform.rated" size="small">
<el-radio-button label="1"></el-radio-button>
@@ -268,17 +261,24 @@
<el-radio-button label="9"></el-radio-button>
<el-radio-button label="10"></el-radio-button>
</el-radio-group>
<span style="margin-left: 20px;">Your score : {{questionform.rated}}</span>
<span style="margin-left: 20px">Your score : {{ questionform.rated }}</span>
</el-form-item>
<el-form-item label="REFEREE'S RECOMMENDATIONS" prop="recommend">
<el-radio-group v-model="questionform.recommend" style="line-height: 30px;">
<el-radio-group v-model="questionform.recommend" style="line-height: 30px">
<el-radio :label="1">Accept with minor revision</el-radio>
<br />
<el-radio :label="2">Accept with major revision</el-radio>
<br />
<!-- TMR BMEC MDM -->
<div v-if="journal_id == 1 || journal_id == 23 || journal_id == 10">
<el-radio :label="3">Reject in current form, but may be resubmitted</el-radio>
<br />
<el-radio :label="4">Reject, with no resubmission</el-radio>
</div>
<!-- 其他期刊 -->
<div v-else>
<el-radio :label="4">Reject</el-radio>
</div>
</el-radio-group>
</el-form-item>
<!-- <el-form-item label="OTHER SPECIFIC CRITICISMS">
@@ -292,35 +292,52 @@
<el-radio :label="4">Typographical and Grammatical errors</el-radio>
</el-radio-group>
</el-form-item> -->
<el-form-item label="Comments for the Authors"
v-if="this.txt_mess.atype == 'Comment' || this.txt_mess.atype == 'News'">
<el-input type="textarea" placeholder="please input content"
v-model="questionform.comment" :rows="8"></el-input>
<el-form-item
label="Comments for the Authors"
v-if="this.txt_mess.atype == 'Comment' || this.txt_mess.atype == 'News'"
>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.comment"
:rows="8"
></el-input>
</el-form-item>
<el-form-item label="Comments for the Authors" prop="comment"
v-if="this.txt_mess.atype != 'Comment' && this.txt_mess.atype != 'News'">
<el-input type="textarea" placeholder="please input content"
v-model="questionform.comment" :rows="8"></el-input>
<el-form-item
label="Comments for the Authors"
prop="comment"
v-if="this.txt_mess.atype != 'Comment' && this.txt_mess.atype != 'News'"
>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.comment"
:rows="8"
></el-input>
</el-form-item>
<el-form-item label="Confidential Comments to the Editor">
<el-input type="textarea" placeholder="please input content"
v-model="questionform.confident" :rows="8"></el-input>
<el-input
type="textarea"
placeholder="please input content"
v-model="questionform.confident"
:rows="8"
></el-input>
</el-form-item>
<el-form-item label="Please choose disclose your name or remain anonymous">
<el-radio-group v-model="questionform.is_anonymous" style="line-height: 30px;">
<el-radio-group v-model="questionform.is_anonymous" style="line-height: 30px">
<el-radio :label="0">Disclose name</el-radio>
<br />
<el-radio :label="1">Remain anonymous</el-radio>
</el-radio-group>
<p style="line-height: 20px;color: #aaa;font-size: 13px;margin: 12px 0 0 0;">
If you agree to disclose your name, we will acknowledge you by name in the published
PDF. However, if you prefer to remain anonymous, we will still express our gratitude
by thanking you as an anonymous reviewer.
<br />For example, {{txt_mess.title}} would like to thank AAAAAAAA, BBBBBBBB, and other anonymous reviewers for their
invaluable contributions to the peer review process of this paper.
<p style="line-height: 20px; color: #aaa; font-size: 13px; margin: 12px 0 0 0">
If you agree to disclose your name, we will acknowledge you by name in the published PDF. However,
if you prefer to remain anonymous, we will still express our gratitude by thanking you as an
anonymous reviewer.
<br />For example, {{ txt_mess.title }} would like to thank AAAAAAAA, BBBBBBBB, and other anonymous
reviewers for their invaluable contributions to the peer review process of this paper.
</p>
</el-form-item>
<el-form-item v-if="this.btn_submit==0">
<el-form-item v-if="this.btn_submit == 0">
<el-button type="primary" @click="questionSubmit">submit</el-button>
</el-form-item>
</el-collapse>
@@ -330,12 +347,11 @@
</el-row>
</div>
</div>
</template>
<script>
import pdf from 'vue-pdf';
export default {
import pdf from 'vue-pdf';
export default {
data() {
return {
loading: false,
@@ -387,29 +403,38 @@
add_apply: 0,
btn_submit: 0,
pdfUrl: '',
journal_id:null,
rules: {
qu6: [{
qu6: [
{
required: true,
message: "please select",
trigger: "blur"
}],
rated: [{
required: true,
message: "please select",
trigger: "blur"
}],
comment: [{
required: true,
message: "please input content",
trigger: "blur"
}],
recommend: [{
required: true,
message: "please select",
trigger: "blur"
}],
message: 'please select',
trigger: 'blur'
}
],
rated: [
{
required: true,
message: 'please select',
trigger: 'blur'
}
],
comment: [
{
required: true,
message: 'please input content',
trigger: 'blur'
}
],
recommend: [
{
required: true,
message: 'please select',
trigger: 'blur'
}
]
}
};
},
created() {
if (this.Direct_log == null) {
@@ -417,9 +442,9 @@
} else {
this.$api
.post('api/Chief/autoLoginForChief', {
'code': this.Direct_log
code: this.Direct_log
})
.then(res => {
.then((res) => {
if (res.code == 0) {
localStorage.setItem('U_role', res.data.roles);
localStorage.setItem('U_name', res.data.user.account);
@@ -430,18 +455,17 @@
.post('api/Reviewer/agreeReviewerArticle', {
art_rev_id: this.Art_id
})
.then(res => {
.then((res) => {
this.getData();
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
} else {
this.$message.error(res.msg);
}
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
}
@@ -451,93 +475,90 @@
// 获取文章信息
this.$api
.post('api/Reviewer/getartrevdate', {
'revid': this.Art_id,
'human': 'reviewer'
revid: this.Art_id,
human: 'reviewer'
})
.then(res => {
.then((res) => {
if (res.state != 0) {
this.btn_submit = 1
this.btn_submit = 1;
}
let date = new Date(parseInt(res.ctime) * 1000);
let Y = date.getFullYear() + '-';
let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() + 1 +
'-';
let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() + 1 + '-';
let D = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
res.ctime = Y + M + D;
this.txt_mess = res;
this.journal_id = res.journal_id
console.log('journal_id', this.journal_id)
// 文章状态
if (res.astate == 2) {
this.add_apply = 0
this.add_apply = 0;
} else {
this.add_apply = 1
this.add_apply = 1;
}
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getAFilelistByID ', {
'revid': this.Art_id
revid: this.Art_id
})
.then(res => {
.then((res) => {
for (var i = 0; i < res.data.length; i++) {
let date = new Date(parseInt(res.data[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() +
1 + '-';
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[i].ctime = Y + M + D;
}
this.fileList = res.data
this.fileList = res.data;
// 获取格式
let pdfOut = this.fileList[this.fileList.length - 1].file_url
let pdfOut = this.fileList[this.fileList.length - 1].file_url;
if (pdfOut.substring(pdfOut.lastIndexOf('.') + 1) == 'docx') {
this.pdfUrl =
'https://view.officeapps.live.com/op/view.aspx?src=https://submission.tmrjournals.com/public/' +
pdfOut
'https://view.officeapps.live.com/op/view.aspx?src=https://submission.tmrjournals.com/public/' + pdfOut;
// this.pdfUrl =
// 'https://view.xdocin.com/view?src=https://submission.tmrjournals.com/public/' +
// pdfOut
} else {
this.pdfUrl = 'https://submission.tmrjournals.com/public/' + pdfOut
this.pdfUrl = 'https://submission.tmrjournals.com/public/' + pdfOut;
}
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
this.$api
.post('api/Reviewer/getBFilelistByID', {
'revid': this.Art_id
revid: this.Art_id
})
.then(res => {
.then((res) => {
for (var i = 0; i < res.data.length; i++) {
let date = new Date(parseInt(res.data[i].ctime) * 1000);
let Y = date.getFullYear() + '-';
let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() +
1 + '-';
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[i].ctime = Y + M + D;
}
this.picList = res.data
this.picList = res.data;
})
.catch(err => {
.catch((err) => {
this.$message.error(err);
});
//初始化问卷
this.$api
.post('api/Reviewer/getQuestion', {
artrevid: this.Art_id
}).then((res) => {
})
.then((res) => {
if (res.code == 0) {
this.questionform.rev_qu_id = res.data.rev_qu_id;
this.questionform.qu1 = res.data.qu1;
@@ -567,66 +588,71 @@
this.questionform.other = res.data.other;
this.questionform.confident = res.data.confidential;
this.questionform.comment = res.data.comments;
this.questionform.is_anonymous = res.data.is_anonymous
this.questionform.is_anonymous = res.data.is_anonymous;
}
});
},
questionSubmit() {
if (this.questionform.is_anonymous == "" && this.questionform.is_anonymous != "0") {
if (this.questionform.is_anonymous == '' && this.questionform.is_anonymous != '0') {
this.$message.error('Please choose disclose your name or remain anonymous.');
} else {
// 验证相加的字数
let Char_Cter = this.questionform.qu9contents + ' ' + this.questionform.qu10contents + ' ' +
this.questionform.qu11contents + ' ' + this.questionform.qu12contents + ' ' +
this.questionform.qu13contents + ' ' + this.questionform.comment
if (new RegExp("[\\u4E00-\\u9FFF]+", "g").test(Char_Cter)) {
let Char_Cter =
this.questionform.qu9contents +
' ' +
this.questionform.qu10contents +
' ' +
this.questionform.qu11contents +
' ' +
this.questionform.qu12contents +
' ' +
this.questionform.qu13contents +
' ' +
this.questionform.comment;
if (new RegExp('[\\u4E00-\\u9FFF]+', 'g').test(Char_Cter)) {
//中文
let blankCount = 0;
for (let i in Char_Cter.match(/ /g)) {
blankCount++
blankCount++;
}
let wenziCount = 0;
for (let j = 0; j < Char_Cter.length; j++) {
if ((Char_Cter.charCodeAt(j) < 0) || (Char_Cter.charCodeAt(j) > 255)) {
wenziCount++
if (Char_Cter.charCodeAt(j) < 0 || Char_Cter.charCodeAt(j) > 255) {
wenziCount++;
}
}
if (blankCount + wenziCount <= 60) {
this.$message.error(
'We encourage you to enrich your comment further to help improve the peer paper.')
this.$message.error('We encourage you to enrich your comment further to help improve the peer paper.');
this.$message({
offset: '380',
type: 'error',
message: "We encourage you to enrich your comment further to help improve the peer paper."
})
return false
message: 'We encourage you to enrich your comment further to help improve the peer paper.'
});
return false;
}
} else {
//英文
let blankCount = 0;
for (let i in Char_Cter.match(/ /g)) {
blankCount++
blankCount++;
}
if (blankCount <= 50) {
this.$message.error(
'We encourage you to enrich your comment further to help improve the peer paper.');
this.$message.error('We encourage you to enrich your comment further to help improve the peer paper.');
this.$message({
offset: '380',
type: 'error',
message: "We encourage you to enrich your comment further to help improve the peer paper."
})
return false
message: 'We encourage you to enrich your comment further to help improve the peer paper.'
});
return false;
}
}
// 提交接口
this.loading = true
this.loading = true;
this.$refs.question.validate((valid) => {
if (valid) {
this.$api
.post('api/Reviewer/questionSubmit', this.questionform)
.then((res) => {
this.$api.post('api/Reviewer/questionSubmit', this.questionform).then((res) => {
if (res.code == 0) {
this.loading = false;
this.$message.success('Success!!');
@@ -643,134 +669,129 @@
}
});
}
},
},
mounted() {
},
}
},
mounted() {}
};
</script>
<style scoped>
.tet_list {
.tet_list {
font-size: 20px;
}
}
.box-card {
.box-card {
margin-bottom: 20px;
line-height: 24px;
}
}
.upload-txtc .el-upload-list__item .el-icon-upload-success {
.upload-txtc .el-upload-list__item .el-icon-upload-success {
display: none !important;
}
}
.tet_list h5 {
.tet_list h5 {
font-size: 15px;
margin: 20px 0 5px 0;
font-weight: normal;
display: inline-block;
}
}
.tet_list p {
.tet_list p {
font-family: Calibri;
line-height: 22px;
font-size: 16px;
}
}
.file_sty {
.file_sty {
margin-bottom: 6px;
}
}
.file_sty a {
.file_sty a {
color: #606266;
font-size: 14px;
}
}
.file_sty a:hover {
.file_sty a:hover {
text-decoration: underline;
}
}
.red {
.red {
color: #ff0000;
}
}
.el-collapse {
.el-collapse {
border-top: 0;
border-bottom: 0;
}
}
.top_dao:hover {
.top_dao:hover {
text-decoration: underline;
cursor: pointer;
}
}
.icon_img {
.icon_img {
width: 15px;
height: 15px;
margin-right: 10px;
vertical-align: middle;
}
}
.trah_c .icon_img {
.trah_c .icon_img {
width: 24px;
height: 24px;
margin: 0 20px;
}
}
.el-divider {
.el-divider {
background-color: #006699;
}
}
.container_l {
.container_l {
min-width: 1000px;
}
}
.container_l .box-card {
.container_l .box-card {
height: auto;
}
}
.lookpdf {
.lookpdf {
height: 760px;
width: 100%;
}
}
.titlink {
.titlink {
color: #006699;
text-decoration: underline;
cursor: pointer;
}
}
.morSou {
.morSou {
color: #006699;
text-align: right;
font-weight: bold;
margin: 5px 0 -10px 0;
}
}
.morSou i {
.morSou i {
margin-right: 3px;
font-weight: bold;
}
}
.morSou:hover {
.morSou:hover {
text-decoration: underline;
cursor: pointer;
}
}
.jouLink {
.jouLink {
color: #006699;
font-weight: bold;
margin: 0 0 0 5px;
}
}
.jouLink:hover {
.jouLink:hover {
text-decoration: underline;
cursor: pointer;
}
}
/*
#WACRibbonPanel {
display: none;