@@ -1,17 +1,13 @@
< template >
< div style = "min-width: 120 0px;" >
< div style = "min-width: 128 0px;" >
< div class = "handle-box" >
< el-select v-model = "query.journal" @change="chageJour" placeholder="Please select journal " >
< el -option :key = "0" label = "All journals" :value = "0" > < / el-option >
< el-opti on v-for = "item in items" :key="item.journal_id" :label="item.title" :valu e=" item.journal_id" >
< / el -option >
< / el-select >
< el-select v-model = "query.act" @change="getdate" placeholder="Please select status" style="width: 100px;" >
< el -option :key = "1" :label = "$t('artstate.act1')" :value = "1" > < / el-option >
< el-option :key = "2" :label = "$t('artstate.act2')" :value = "2" > < / el-option >
< / el-select >
< el-select v-model = "query.state" @change="getdate" placeholder="Please select status" style="width: 130px;" >
< el -option :key = "-1" label = "All status" :value = "-1" > < / el-option >
< el-badge :value = "item.num" type = "warning" v-for = "item in statList "
: hidden = 'item.num==0||item.state==3||item.state==5' style = "margin-right: 25px;" >
< el-butt on @click ="query.state=item.state;getdate()" :type = "query.stat e== item.state?'primary':''" >
{ { $t ( 'artstate.state' + item . state ) } }
< / el-button >
< / el-badge >
<!-- < el-select v-model = "query.state" @change="getdate" placeholder="Please select status" style="width: 180px;" >
< el -option :key = "0" :label = "$t('artstate.state0')" :value = "0" :disabled = "query.act==2" > < / el-option >
< el-option :key = "1" :label = "$t('artstate.state1')" :value = "1" :disabled = "query.act==2" > < / el-option >
< el-option :key = "2" :label = "$t('artstate.state2')" :value = "2" :disabled = "query.act==2" > < / el-option >
@@ -19,22 +15,370 @@
< el-option :key = "4" :label = "$t('artstate.state4')" :value = "4" :disabled = "query.act==2" > < / el-option >
< el-option :key = "6" :label = "$t('artstate.state6')" :value = "6" :disabled = "query.act==2" > < / el-option >
< el-option :key = "5" :label = "$t('artstate.state5')" :value = "5" :disabled = "query.act==1" > < / el-option >
< / el-select > -- >
<!-- < el-select v-model = "query.act" @change="changeState" placeholder="Please select status"
style = "width: 100px;" >
< el-option :key = "1" :label = "$t('artstate.act1')" :value = "1" > < / el-option >
< el-option :key = "2" :label = "$t('artstate.act2')" :value = "2" > < / el-option >
< / el-select > -- >
< el-select v-model = "query.journal" @change="chageJour" placeholder="Please select journal" >
< el -option :key = "0" label = "All journals" :value = "0" > < / el-option >
< el-option v-for = "item in items" :key="item.journal_id" :label="item.title" :value="item.journal_id" >
< / el -option >
< / el-select >
< p style = "height: 5px;" > < / p >
< el-select v-model = "query.special_num" @change="getdate" placeholder="Please select guest"
style = "width: 18 5px;" >
style = "width: 24 5px;" >
< el-option :key = "0" label = "Not select special issue" :value = "0" > < / el-option >
< el-option v-for = "item in itemGuest" :key="item.journal_special_id" :label="item.title"
:value = "item.journal_special_id" > < / el-option >
< / el-select >
< el-input v-model = "query.name" placeholder="Title" style="width: 1 20px;" > < / el -input >
< el-input v-model = "query.sn" placeholder="SN" style="width: 1 20px;margin-right: 10px;" > < / el -input >
< el-input v-model = "query.name" placeholder="Title" style="width: 25 0px;" > < / el -input >
< el-input v-model = "query.sn" placeholder="SN" style="width: 25 0px;margin-right: 10px;" > < / el -input >
< el-button type = "primary" icon = "el-icon-search" @click ="handleSearch" style = "margin:0 0 10px 0;" > Search
< / el-button >
< / div >
< el-table :data = "tableData" border stripe class = "table" ref = "multipleTable"
< div v-for = "(item,ikgn) in tableData" class="mangu_list" >
< div >
< font style = "color: #666b7a;" > ID : < / font >
< span
style = "background-color: #006699;width: 20px;color: #fff;margin: 0 2px 0 0;font-weight: bold;padding: 2px 4px;"
v-if = "item.special_num>0" > S
< / span >
{{ item.accept_sn }}
< ! - - < b @click ="showdetaileditor(item)" class = "btnCliArt" style = "margin-left: 15px;" >
< i class = "el-icon-collection" > < / i > Detail
< / b > -- >
< span style = "color: #666b7a;margin-left: 40px;" > Type : < / span >
< font >
{ { artType ( item . type ) } }
< / font >
< span style = "color: #666b7a;margin-left: 40px;" > Countries : < / span >
<!-- < span : class = "item.countrys.length > 1 ? 'Countries': ''" > -- >
< font v-for = "(iken, index) in item.countrys" >
{{ iken }}
< font v-if = "index!=item.countrys.length-1" > , < / font >
< / font >
< ! - - < / span > - - >
< span style = "color: #666b7a;margin-left: 40px;" > Status : < / span >
< font style = "margin-right: 15px;font-size: 16px;font-weight: bold;letter-spacing: -0.5px;" >
{ { stateFormat ( item . state ) } }
< / font >
< b v-if = "item.state!=5" @click="testvis(item)" class="btnCliArt" >
< i class = "el-icon-edit" > < / i > Change
< / b >
< b v-if = "item.state==5" @click="prodBegin(item)" class="btnCliArt" >
< i class = "el-icon-paperclip" > < / i > Begin Produce
< / b >
< span style = "color: #666b7a;margin-left: 40px;" > Plagiarism Check : < / span >
< font style = "margin-right: 16px;font-size: 15px;font-weight: bold;" >
{ { item . repetition } } %
< / font >
< b @click ="changeRepe(item)" class = "btnCliArt" >
< i class = "el-icon-edit" > < / i > Change
< / b >
< b @click ="openTracking(item)" class = "btnCliArt" style = "margin-left: 50px;" >
< i class = "el-icon-data-line" > < / i > Manuscript Tracking
< / b >
< / div >
< div class = "man_title" >
< el-badge is -dot :hidden = "item.author_act==1?false:true" >
< b @click ="showdetaileditor(item)" >
{{ item.title }}
< / b >
< / el -badge >
< / div >
< div style = "display: flex;margin-left: auto;" >
< div class = "fixCard" style = "width: 34%;" >
< b style = "font-size: 16px;letter-spacing: -0.5px;" > Manuscript Files < / b >
< p style = "height: 10px;" > < / p >
< div class = "fi_new" v-if = "item.file.coverLetter" >
< p >
Cover letter
< sup style = "color: #006699;" > ( { { item . file . coverLetter . length } } ) < / sup > :
< b class = "btnUpDown el-icon-arrow-up"
v-if = "item.file_cover==0&&item.file.coverLetter.length>1"
@click ="changeFileUpdown(1,ikgn,'file_cover')" > < / b >
< b class = "btnUpDown el-icon-arrow-down"
v-if = "item.file_cover==1&&item.file.coverLetter.length>1"
@click ="changeFileUpdown(0,ikgn,'file_cover')" > < / b >
< / p >
< div v-for = "ikrm in item.file.coverLetter" v-if="item.file_cover==1" >
< img src = "../../assets/img/icon_0.png" >
< span >
< font > Uploader : < / font > { { ikrm . username } }
< i > < i class = "el-icon-time" > < / i > { { formatDate ( ikrm . ctime ) } } < / i >
< / span >
< a : href = "mediaUrl + ikrm.file_url" >
< i class = "el-icon-download download" > < / i >
< / a >
< / div >
< / div >
< div class = "fi_new" v-if = "item.file.picturesAndTables" >
< p >
Figures
< sup style = "color: #006699;" > ( { { item . file . picturesAndTables . length } } ) < / sup > :
< b class = "btnUpDown el-icon-arrow-up"
v-if = "item.file_figer==0&&item.file.picturesAndTables.length>1"
@click ="changeFileUpdown(1,ikgn,'file_figer')" > < / b >
< b class = "btnUpDown el-icon-arrow-down"
v-if = "item.file_figer==1&&item.file.picturesAndTables.length>1"
@click ="changeFileUpdown(0,ikgn,'file_figer')" > < / b >
< / p >
< div v-for = "ikrm in item.file.picturesAndTables" v-if="item.file_figer==1" >
< img src = "../../assets/img/icon_0.png" >
< span >
< font > Uploader : < / font > { { ikrm . username } }
< i > < i class = "el-icon-time" > < / i > { { formatDate ( ikrm . ctime ) } } < / i >
< / span >
< a : href = "mediaUrl + ikrm.file_url" >
< i class = "el-icon-download download" > < / i >
< / a >
< / div >
< / div >
< div class = "fi_new" v-if = "item.file.totalpage" >
< p >
Title page
< sup style = "color: #006699;" > ( { { item . file . totalpage . length } } ) < / sup > :
< b class = "btnUpDown el-icon-arrow-up"
v-if = "item.file_total==0&&item.file.totalpage.length>1"
@click ="changeFileUpdown(1,ikgn,'file_total')" > < / b >
< b class = "btnUpDown el-icon-arrow-down"
v-if = "item.file_total==1&&item.file.totalpage.length>1"
@click ="changeFileUpdown(0,ikgn,'file_total')" > < / b >
< / p >
< div v-for = "ikrm in item.file.totalpage" v-if="item.file_total==1" >
< img src = "../../assets/img/icon_0.png" >
< span >
< font > Uploader : < / font > { { ikrm . username } }
< i > < i class = "el-icon-time" > < / i > { { formatDate ( ikrm . ctime ) } } < / i >
< / span >
< a : href = "mediaUrl + ikrm.file_url" >
< i class = "el-icon-download download" > < / i >
< / a >
< / div >
< / div >
< div class = "fi_new" v-if = "item.file.manuscirpt" >
< p >
Manuscirpt
< sup style = "color: #006699;" > ( { { item . file . manuscirpt . length } } ) < / sup > :
< b class = "btnUpDown el-icon-arrow-up"
v-if = "item.file_maun==0&&item.file.manuscirpt.length>1"
@click ="changeFileUpdown(1,ikgn,'file_maun')" > < / b >
< b class = "btnUpDown el-icon-arrow-down"
v-if = "item.file_maun==1&&item.file.manuscirpt.length>1"
@click ="changeFileUpdown(0,ikgn,'file_maun')" > < / b >
< / p >
< div v-for = "ikrm in item.file.manuscirpt" v-if="item.file_maun==1" >
< img src = "../../assets/img/icon_0.png" >
< span >
< font > Uploader : < / font > { { ikrm . username } }
< i > < i class = "el-icon-time" > < / i > { { formatDate ( ikrm . ctime ) } } < / i >
< / span >
< a : href = "mediaUrl + ikrm.file_url" >
< i class = "el-icon-download download" > < / i >
< / a >
< / div >
< / div >
< div class = "fi_new" v-if = "item.file.supplementary" >
< p >
Supplementary Material
< sup style = "color: #006699;" > ( { { item . file . supplementary . length } } ) < / sup > :
< b class = "btnUpDown el-icon-arrow-up"
v-if = "item.file_supper==0&&item.file.supplementary.length>1"
@click ="changeFileUpdown(1,ikgn,'file_supper')" > < / b >
< b class = "btnUpDown el-icon-arrow-down"
v-if = "item.file_supper==1&&item.file.supplementary.length>1"
@click ="changeFileUpdown(0,ikgn,'file_supper')" > < / b >
< / p >
< div v-for = "ikrm in item.file.supplementary" v-if="item.file_supper==1" >
< img src = "../../assets/img/icon_0.png" >
< span >
< font > Uploader : < / font > { { ikrm . username } }
< i > < i class = "el-icon-time" > < / i > { { formatDate ( ikrm . ctime ) } } < / i >
< / span >
< a : href = "mediaUrl + ikrm.file_url" >
< i class = "el-icon-download download" > < / i >
< / a >
< / div >
< / div >
< / div >
< div style = "width: 1%;" > < / div >
< div class = "fixCard" style = "width: 16%;" >
< b style = "font-size: 16px;letter-spacing: -0.5px;" > AI scoring < / b >
< p style = "font-size: 18px;font-weight: bold;margin-bottom: 5px;color: #db890e;"
v-if = "item.reportList.length>0" >
< font style = "font-size: 14px;font-weight: normal;color: #333;" > Initial review score : < / font >
{ { item . scoring } }
< / p >
< p style = "font-size: 18px;font-weight: bold;margin-bottom: 5px;" v-if = "item.reportList.length==0" >
< font style = "font-size: 14px;font-weight: normal;" > Initial review score : < / font >
{ { item . scoring } }
< / p >
< p v-if = "item.scoring!=0&&item.H!=null" style="color: #999;" > {{ item.H.google_editor }}
< / p >
< p v-if = "item.scoring!=0&&item.H!=null&&item.H.google_time!=0" style="color: #999;" >
{{ formatDate ( item.H.google_time ) }}
< / p >
< b @click ="aiSoring(item)" class = "btnCliArt" v-if = "item.reportList.length>0"
style = "margin-top: 10px;display: block;" >
< i class = "el-icon-edit" > < / i > Edit Hindex
< / b >
<!-- < el-button @click ="aiSoring(item)" size = "mini" type = "primary" icon = "el-icon-edit"
v-if = "item.reportList.length>0" style="margin-top: 1px;" > Edit Hindex < / el -button > -- >
< p v-if = "item.review.length>0"
style = "font-size: 18px;font-weight: bold;margin-top: 15px;padding-top: 10px;border-top: 1px solid #dddddd;color: #db890e;" >
< font style = "font-size: 14px;font-weight: normal;color: #333;" > Final review score : < / font >
{ { finalCount ( item ) } }
< / p >
< / div >
< div style = "width: 1%;" > < / div >
< div class = "fixCard" style = "width: 16%;" >
< b style = "font-size: 16px;letter-spacing: -0.5px;" > Reviewer Decision < / b >
< p style = "height: 5px;" > < / p >
< p v-for = "(iken, index) in item.reviewScore" style="line-height: 28px;" >
Reviewer {{ index + 1 }} score : < b style = "color: #db890e;font-size: 18px;" > { { iken . rated } } < / b >
< / p >
< p v-if = "item.reviewScore.length>0" style="font-size: 15px;margin: 0 0 5px 0;" >
Average : < b style = "font-size: 18px;color: #db890e;" > { { avegeCount ( item . reviewScore ) } } < / b >
< / p >
< p >
< span v-for = "(iken, index) in item.review" style="display: inline-block;padding: 5px;" >
< font v-if = "iken.state==0"
style = "width: 12px;height: 12px;display: block;border-radius: 10px;background-color: #ccc;" >
< / font >
< font v-if = "iken.state==1||iken.state==3"
style = "width: 12px;height: 12px;display: block;border-radius: 10px;background-color: #67c23a;" >
< / font >
< font v-if = "iken.state==2"
style = "width: 12px;height: 12px;display: block;border-radius: 10px;background-color: #f56c6c;" >
< / font >
< / span >
< / p >
< p style = "margin-top: 10px;" >
< b @click ="articleReviewer(item)" class = "btnCliArt" >
< i class = "el-icon-edit" > < / i > Inviting Reviewer
< / b >
<!-- < el-button size = "mini" type = "primary" icon = "el-icon-user" @click ="articleReviewer(item)" >
Inviting Reviewer < / el -button > -- >
< / p >
< / div >
< div style = "width: 1%;" > < / div >
< div class = "fixCard" style = "width: 26%;" >
< b style = "font-size: 16px;letter-spacing: -0.5px;" > Corresponding Author < / b >
< p style = "height: 10px;" > < / p >
< div style = "text-align: left;" >
< p v-if = "item.realname!=''" >
< font style = "color: #999;" > Name : < / font >
{ { item . realname } }
< span v-if = "item.phone!=''" style="margin-left: 5px;color: #666;" > ( {{ item.phone }} ) < / span >
< / p >
< p v-if = "item.email!=''" style="margin: 8px 0 5px 0;line-height: 22px;" >
< font style = "color: #999;" > Email : < / font >
{ { item . email } }
< b @click ="linkEmail(item)" class = "btnCliArt" style = "margin-left: 15px;" >
< i class = "el-icon-message" > < / i > Email
< / b >
< b @click ="linkEmailist(item)" v-if = "item.emailh==1" class="btnCliArt"
style = "margin-left: 15px;" >
< i class = "el-icon-refresh-left" > < / i > History
< / b >
< / p >
< / div >
< p style = "margin-top: 20px;" >
< b @click ="articleCommun(item)" class = "btnCliArt" >
< i class = "el-icon-chat-line-square" > < / i > Communication
< / b >
< / p >
< / div >
< / div >
< div style = "margin: 15px 0 0 0;" >
< span style = "color: #666b7a;margin: 2px 5px 0 0;" > Remarks : < / span >
< font style = "margin-right: 10px;line-height: 24px;font-weight: bold;" > { { item . remarks } } < / font >
< b @click ="testedit(item)" class = "btnCliArt" >
< i class = "el-icon-edit" > < / i > Change
< / b >
< / div >
< / div >
<!-- < el-table :data = "tableData" border stripe class = "table" ref = "multipleTable"
header -cell -class -name = " table -header " empty -text = " New messages ( 0 ) " >
< el-table-column type = "index" label = "No." width = "55 " align = "center" > < / el-table-column >
< el-table-column width = "180" label = "Manuscript ID" align = "center ">
< el-table-column type = "index" label = "No." width = "50 " align = "center" > < / el-table-column >
< el-table-column label = "Base Information" width = "380px ">
< template slot -scope = " scope " >
< p class = "tab_tie_col" >
< span > ID : < / span >
< span
style = "background-color: #006699;width: 20px;color: #fff;margin: 0 2px 0 0;font-weight: bold;padding: 2px 4px;"
v-if = "scope.row.special_num>0" > S
< / span >
{{ scope.row.accept_sn }}
< el -button @click ="huaGuest(scope.row)" size = "mini" type = "primary" plain
style = "margin-left: 5px;" >
Put into special issue
< / el-button >
< / p >
< p class = "tab_tie_col" >
< el-badge is -dot :hidden = "scope.row.author_act==1?false:true" >
< b class = "titArtHov" @click ="showdetaileditor(scope.row)"
style = "font-size: 15px;letter-spacing: -0.5px;margin-right: 5px;" >
{ { scope . row . title } }
< / b >
< b @click ="showdetaileditor(scope.row)" class = "btnCliArt" >
< i class = "el-icon-tickets" > < / i > Detail
< / b >
< el-button size = "mini" type = "primary" plain icon = "el-icon-tickets"
@click ="showdetaileditor(scope.row)" > Detail < / el -button >
< / el-badge >
< / p >
< p class = "tab_tie_col" >
< span > Status : < / span >
< font
style = "margin-right: 15px;color: #006699;font-size: 15px;font-weight: bold;letter-spacing: -0.5px;" >
{ { stateFormat ( scope . row . state ) } }
< / font >
< b v-if = "scope.row.state!=5" @click="testvis(scope.row)" class="btnCliArt" >
< i class = "el-icon-edit" > < / i > Change
< / b >
< b v-if = "scope.row.state==5" @click="prodBegin(scope.row)" class="btnCliArt"
style = "color: #2a9916;" >
< i class = "el-icon-edit" > < / i > Begin Produce
< / b >
< / p >
< p class = "tab_tie_col" >
< span > Repetition : < / span >
< font style = "margin-right: 15px;color: #006699;font-size: 15px;font-weight: bold;" >
{ { scope . row . repetition } } %
< / font >
< b @click ="changeRepe(scope.row)" class = "btnCliArt" >
< i class = "el-icon-edit" > < / i > Change
< / b >
< / p >
< p class = "tab_tie_col" >
< span > Countries : < / span >
< font v-for = "(item, index) in scope.row.countrys" >
{{ item }}
< font v-if = "index!=scope.row.countrys.length-1" > , < / font >
< / font >
< / p >
< p class = "tab_tie_col" >
< span > Email : < / span >
< el-button size = "mini" type = "primary" plain icon = "el-icon-chat-dot-square"
@click ="linkEmailist(scope.row)" v-if = "scope.row.emailh==1" > History < / el -button >
< el-button size = "mini" type = "primary" plain icon = "el-icon-message"
@click ="linkEmail(scope.row)" > Email < / el -button >
< / p >
< / template >
< / el-table-column >
< el-table-column width = "180" label = "Manuscript ID" align = "center" >
< template slot -scope = " scope " >
< p style = "margin-bottom: 5px;" >
< span
@@ -74,10 +418,10 @@
circle style = "padding: 5px;" > < / el-button >
< / p >
< el-button size = "mini" type = "primary" plain icon = "el-icon-user" @click ="articleReviewer(scope.row)" >
Peer - Review< / el -button >
Inviting Reviewer < / el -button >
< / template >
< / el-table-column >
< el-table-column label = "" >
< el-table-column width = "220px " >
< template slot = "header" >
< div style = "white-space:nowrap;text-align: center;" > Corresponding < / div >
< div style = "text-align: center;" > Author < / div >
@@ -119,7 +463,7 @@
< / el -table -column >
< el-table-column label = "AI scoring" align = "center" width = "150" >
< template slot -scope = " scope " >
< p style = "font-size: 18px;font-weight: bold;margin-bottom: 5px;color: #006699;cursor: pointer; "
< p style = "font-size: 18px;font-weight: bold;margin-bottom: 5px;color: #006699;"
v-if = "scope.row.reportList.length>0" >
< font style = "font-size: 14px;font-weight: normal;" > Initial review score : < / font >
{ { scope . row . scoring } }
@@ -136,7 +480,8 @@
< / p >
< el -button @click ="aiSoring(scope.row)" size = "mini" type = "primary" plain icon = "el-icon-edit"
v-if = "scope.row.reportList.length>0" > Edit Hindex < / el -button >
< p v-if = "scope.row.review.length>0" style="font-size: 18px;font-weight: bold;margin-top: 15px;padding-top: 10px;border-top: 1px solid #00669966;color: #006699;" >
< p v-if = "scope.row.review.length>0"
style = "font-size: 18px;font-weight: bold;margin-top: 15px;padding-top: 10px;border-top: 1px solid #00669966;color: #006699;" >
< font style = "font-size: 14px;font-weight: normal;" > Final review score : < / font >
{ { finalCount ( scope . row ) } }
< / p >
@@ -159,14 +504,17 @@
Change < / el-button >
< / template >
< / el-table-column >
< el-table-column label = "Remarks" align = "center" >
< el-table-column label = "Remarks" >
< template slot -scope = " scope " >
< p style = "margin-bottom: 5px;text-align: left ;" > { { scope . row . remarks } } < / p >
< el-button @click ="testedit(scope.row)" size = "mini" type = "primary" plain icon = "el-icon-edit" > Change
< / el-button >
< font style = "margin-right: 10px ;" > { { scope . row . remarks } } < / font >
< b @click ="testedit(scope.row)" class = "btnCliArt" >
< i class = "el-icon-edit" > < / i > Change
< / b >
< / template >
< / el-table-column >
< / el-table >
< / el-table > -- >
< div class = "pagination" >
< el-pagination background layout = "total, prev, pager, next" :current-page = "query.pageIndex"
:page-size = "query.pageSize" :total = "Total" @ current -change = " handlePageChange " > < / el-pagination >
@@ -382,6 +730,48 @@
< el-button type = "primary" @click ="saveRepe" > Save < / el -button >
< / span >
< / el-dialog >
< el-dialog title = "" :visible.sync = "communVisible" width = "800px" >
< p
style = "word-break: normal;margin-bottom: 20px;font-size: 15px;font-weight: bold;letter-spacing: -0.5px;line-height: 22px;" >
{ { msgform . title } }
< / p >
< timetalk :talkMsgs = "talkMsgs" :msgform = "msgform" > < / timetalk >
< / el-dialog >
< el-dialog title = "Manuscript Tracking" :visible.sync = "trackVisible" width = "700px" >
< p
style = "word-break: normal;margin-bottom: 20px;font-size: 15px;font-weight: bold;letter-spacing: -0.5px;line-height: 22px;" >
{ { timeLaxis . title } }
< / p >
< div style = "" >
< el-timeline >
< el-timeline-item :timestamp = "formatDate_(timeLaxis.ctime)" placement = "top" >
< el-card >
< p style = "line-height: 20px;" >
Manuscript submission :
< b > { { timeLaxis . realname } } < / b >
submitted to
< b > { { timeLaxis . journalname } } < / b >
< / p >
< / el-card >
< / el-timeline-item >
< el-timeline-item v-for = "(activity, index) in timeLaxis.list" :key="index"
:timestamp = "formatDate_(activity.ctime)" placement = "top" >
< el-card v-if = "activity.ftype==0" >
< p > Status change : { { stateFormat ( activity . state _to ) } } < / p >
< p v-if = "activity.content!=''" > {{ activity.content }} < / p >
< / el -card >
< el-card v-else >
< p style = "margin-bottom: 5px;font-weight: bold;" > Author message : < / p >
< p style = "line-height: 18px;" > { { activity . content } } < / p >
< / el-card >
< / el-timeline-item >
< / el-timeline >
< / div >
< / el-dialog >
< / div >
< / template >
@@ -389,7 +779,11 @@
import {
Loading
} from 'element-ui' ;
import timetalk from './time_talk'
export default {
components : {
timetalk
} ,
data ( ) {
return {
baseUrl : this . Common . baseUrl ,
@@ -401,14 +795,27 @@
special _num : 0 ,
name : '' ,
sn : '' ,
state : - 1 ,
state : 0 ,
act : 1 ,
pageIndex : 1 ,
pageSize : 5 0
pageSize : 2 0
} ,
tableData : [ ] ,
multipleSelection : [ ] ,
delList : [ ] ,
statList : [ {
state : 0
} , {
state : 1
} , {
state : 2
} , {
state : 4
} , {
state : 3
} , {
state : 5
} ] ,
Total : 0 ,
geogleList : [ ] ,
IndexForm : { } ,
@@ -417,7 +824,23 @@
editbox : false ,
repebox : false ,
aiSorbox : false ,
communVisible : false ,
trackVisible : false ,
talkMsgs : [ ] ,
timeLaxis : {
title : '' ,
ctime : '' ,
realname : '' ,
journalname : '' ,
list : [ ]
} ,
itemGuest : [ ] ,
msgform : {
username : localStorage . getItem ( 'U_name' ) ,
article _id : '' ,
user _id : '' ,
ad _content : ''
} ,
editform : {
editname : localStorage . getItem ( 'U_name' ) ,
articleId : 0 ,
@@ -520,6 +943,17 @@
} ) ;
} ,
// 改变状态
changeState ( ) {
if ( this . query . act == 1 ) {
this . statList = [ 0 , 1 , 2 , 4 , 6 ]
this . query . state = 0
} else {
this . statList = [ 3 , 5 ]
this . query . state = 3
}
this . getdate ( )
} ,
// 获取数据
getdate ( ) {
const loading = this . $loading ( {
@@ -534,6 +968,47 @@
this . Total = res . total ;
this . tableData = res . data ;
for ( let i = 0 ; i < this . tableData . length ; i ++ ) {
this . tableData [ i ] . file _cover = 1
this . tableData [ i ] . file _figer = 1
this . tableData [ i ] . file _total = 1
this . tableData [ i ] . file _maun = 1
this . tableData [ i ] . file _supper = 1
if ( this . tableData [ i ] . file . coverLetter ) {
if ( this . tableData [ i ] . file . coverLetter . length > 1 ) {
this . tableData [ i ] . file _cover = 0
}
}
if ( this . tableData [ i ] . file . picturesAndTables ) {
if ( this . tableData [ i ] . file . picturesAndTables . length > 1 ) {
this . tableData [ i ] . file _figer = 0
}
}
if ( this . tableData [ i ] . file . totalpage ) {
if ( this . tableData [ i ] . file . totalpage . length > 1 ) {
this . tableData [ i ] . file _total = 0
}
}
if ( this . tableData [ i ] . file . manuscirpt ) {
if ( this . tableData [ i ] . file . coverLetter || this . tableData [ i ] . file . picturesAndTables || this . tableData [ i ]
. file . totalpage || this . tableData [ i ] . file . supplementary ) {
if ( this . tableData [ i ] . file . manuscirpt . length > 1 ) {
this . tableData [ i ] . file _maun = 0
}
}
}
if ( this . tableData [ i ] . file . supplementary ) {
if ( this . tableData [ i ] . file . supplementary . length > 1 ) {
this . tableData [ i ] . file _supper = 0
}
}
this . tableData [ i ] . reviewScore = [ ]
for ( let j = 0 ; j < this . tableData [ i ] . review . length ; j ++ ) {
if ( this . tableData [ i ] . review [ j ] . rated != null ) {
this . tableData [ i ] . reviewScore . push ( this . tableData [ i ] . review [ j ] )
}
}
this . tableData [ i ] . reportList = [ ]
if ( this . tableData [ i ] . reports . length == 1 ) {
for ( let j = 0 ; j < this . tableData [ i ] . reports . length ; j ++ ) {
@@ -557,8 +1032,14 @@
}
} ;
}
} ;
for ( let i = 0 ; i < res . state _num . length ; i ++ ) {
for ( let j = 0 ; j < this . statList . length ; j ++ ) {
if ( i == this . statList [ j ] . state ) {
this . statList [ j ] . num = res . state _num [ i ]
}
}
}
loading . close ( ) ;
} )
. catch ( err => {
@@ -571,6 +1052,11 @@
this . $set ( this . query , 'pageIndex' , 1 ) ;
this . getdate ( ) ;
} ,
// 文章展开收缩
changeFileUpdown ( e , i , m ) {
this . tableData [ i ] [ m ] = e
this . $forceUpdate ( )
} ,
//文章送审
articleReviewer ( row ) {
this . $router . push ( {
@@ -909,6 +1395,45 @@
this . $message . error ( err ) ;
} ) ;
} ,
// 留言板弹出层
articleCommun ( e ) {
this . msgform . user _id = e . user _id
this . msgform . article _id = e . article _id
this . msgform . title = e . title
this . talkMsgs = [ ]
this . $api
. post ( 'api/Article/getArticleDialogs' , {
article _id : e . article _id
} )
. then ( ( res ) => {
this . talkMsgs = res . data . dialogs ;
this . communVisible = true
} )
. catch ( ( err ) => {
console . log ( err ) ;
} ) ;
} ,
// 时间轴弹出层
openTracking ( e ) {
this . timeLaxis . title = e . title
this . timeLaxis . ctime = e . ctime
this . timeLaxis . realname = e . realname
this . timeLaxis . journalname = e . journalname
this . $api
. post ( 'api/Article/getArticleDetail' , {
articleId : e . article _id ,
human : 'editor'
} )
. then ( res => {
this . timeLaxis . list = res . msg ;
this . trackVisible = true
} )
. catch ( err => {
console . log ( err ) ;
} ) ;
} ,
// 修改标记
saveRemark ( ) {
this . $api . post ( 'api/Article/editArticleRemark' , this . remark )
@@ -982,6 +1507,79 @@
return str ;
} ,
//文章类型
artType ( e ) {
let frag = '' ;
switch ( e ) {
case "A" :
frag = 'ARTICLE' ;
break ;
case 'B' :
frag = 'REVIEW' ;
break ;
case 'C' :
frag = 'CASE REPORT' ;
break ;
case 'P' :
frag = 'RESEARCH PROPOSAL' ;
break ;
case 'N' :
frag = 'NEWS' ;
break ;
case 'T' :
frag = 'COMMENT' ;
break ;
case 'CT' :
frag = 'CORRECTION' ;
break ;
case 'HT' :
frag = 'HYPOTHESIS' ;
break ;
case 'PF' :
frag = 'PREFACE' ;
break ;
case 'ET' :
frag = 'EDITORIAL' ;
break ;
case 'RP' :
frag = 'REPORT' ;
break ;
case 'LR' :
frag = 'LETTER' ;
break ;
case 'EF' :
frag = 'EMPIRICAL FORMULA' ;
break ;
case 'EM' :
frag = 'EVIDENCE-BASED MEDICINE' ;
break ;
case 'EC' :
frag = 'EXPERT CONSENSUS' ;
break ;
case 'LTE' :
frag = 'LETTER TO EDITOR' ;
break ;
case 'QI' :
frag = 'QUESTIONNAIRE INVESTIGATION' ;
break ;
case 'PT' :
frag = 'PROTOCOL' ;
break ;
case 'CS' :
frag = 'CASE SERIES' ;
break ;
case 'RT' :
frag = 'RETRACTION' ;
break ;
case 'MR' :
frag = 'MINI REVIEW' ;
break ;
default :
frag = 'OTHERS' ;
}
return frag ;
} ,
// 算平均分
avegeCount ( arry ) {
let str = 0 ;
@@ -1014,6 +1612,16 @@
var D = date . getDate ( ) < 10 ? '0' + date . getDate ( ) : date . getDate ( ) ;
return Y + M + D ;
} ,
formatDate _ ( timestamp ) {
var date = new Date ( timestamp * 1000 ) ; //时间戳为10位需*1000, 时间戳为13位的话不需乘1000
var Y = date . getFullYear ( ) + '-' ;
var M = ( date . getMonth ( ) + 1 < 10 ? '0' + ( date . getMonth ( ) + 1 ) : date . getMonth ( ) + 1 ) + '-' ;
var D = date . getDate ( ) < 10 ? '0' + date . getDate ( ) : date . getDate ( ) ;
var h = date . getHours ( ) < 10 ? '0' + date . getHours ( ) : date . getHours ( ) ;
var m = date . getMinutes ( ) < 10 ? '0' + date . getMinutes ( ) : date . getMinutes ( ) ;
var s = date . getSeconds ( ) < 10 ? '0' + date . getSeconds ( ) : date . getSeconds ( ) ;
return Y + M + D + ' ' + h + ':' + m + ':' + s ;
} ,
// 分页导航
handlePageChange ( val ) {
this . $set ( this . query , 'pageIndex' , val ) ;
@@ -1056,6 +1664,11 @@
< / script >
< style scoped >
. Countries {
display : inline - block ;
width : 20 px ; vertical - align : middle ;
white - space : nowrap ; text - overflow : ellipsis ; overflow : hidden ; margin - bottom : 3 px ;
}
. art _file > h4 {
text - align : left ;
}
@@ -1073,6 +1686,19 @@
margin : 0 5 px 10 px 0 ;
}
. markStare {
float : right ;
color : # fff ;
font - size : 12 px ;
background : # 006699 ;
border - radius : 10 px ;
display : inline - block ;
line - height : 18 px ;
height : 18 px ;
padding : 0 6 px ;
margin : 9 px 0 0 0 ;
}
. table {
width : 100 % ;
font - size : 14 px ;
@@ -1093,10 +1719,160 @@
height : 40 px ;
}
. item {
margin - top : 5 px ;
. tab _tie _col {
margin - bottom : 5 px ;
color : # 333 ;
word - wrap : break - word ;
word - break : normal ;
}
. tab _tie _col > span {
color : # 888 ;
margin : 0 5 px 0 0 ;
font - size : 13 px ;
}
. btnCliArt {
color : # 006699 ;
font - weight : normal ;
}
. btnCliArt : hover {
cursor : pointer ;
text - decoration : underline ;
}
. btnCliArt i {
margin - right : 2 px ;
}
. mangu _list {
color : # 333 ;
margin : 0 0 20 px 0 ;
font - size : 14 px ;
padding : 20 px ;
border - radius : 5 px ;
border : 1 px solid # EBEEF5 ;
background - color : # fff ;
position : relative ;
}
. mangu _list : nth - child ( 2 n + 1 ) {
background - color : # fafafa ;
}
. mangu _list : hover {
box - shadow : 0 2 px 12 px 0 # 0066991 a ;
background - color : # 00669905 ;
}
. mangu _list > div {
margin - bottom : 8 px ;
}
. mangu _list . man _title {
margin : 2 px 100 px 20 px 0 ;
font - weight : bolder ;
letter - spacing : - 0.5 px ;
font - size : 16 px ;
cursor : pointer ;
display : inline - block ;
line - height : 22 px ;
}
. mangu _list . man _title b : hover {
text - decoration : underline ;
}
. mangu _list div . fi _new {
margin : 0 0 0 10 px ;
margin - bottom : 10 px ;
text - align : left ;
}
. mangu _list div . fi _new > p {
margin - bottom : 5 px ;
}
. mangu _list div . fi _new > div {
color : # 333 ;
display : block ;
margin : 0 0 5 px 0 ;
line - height : 22 px ;
}
. mangu _list div . fi _new > div > img {
width : 15 px ;
vertical - align : text - bottom ;
margin : 0 5 px 0 0 ;
}
. mangu _list div . fi _new > div > span > font {
color : # 888 ;
margin : 0 5 px 0 0 ;
font - size : 13 px ;
letter - spacing : - 1 px ;
}
. mangu _list div . fi _new > div > span > i {
font - size : 12 px ;
color : # 888 ;
margin : 0 0 0 3 px ;
font - style : normal ;
}
. mangu _list div . fi _new > div > span > i > i {
margin - right : 5 px ;
}
. mangu _list div . fi _new > div > a {
margin : 0 5 px 0 0 ;
}
. mangu _list div . fi _new . download {
font - weight : bold ;
color : # 75 abf1 ;
margin : 0 0 0 10 px ;
}
. mangu _list div . fi _new > div > a : hover . download {
color : # 006699 ;
}
. mangu _list div . fi _new . btnUpDown {
font - weight : bold ;
color : # 75 abf1 ;
cursor : pointer ;
margin - left : 5 px ;
font - size : 16 px ;
}
. mangu _list div . fi _new . btnUpDown : hover {
color : # 006699 ;
}
. mangu _list . fixCard {
text - align : center ;
background : # 0066990 d ;
padding : 20 px ;
}
. gugeList {
font - size : 14 px ;
border : 2 px dashed # eee ;