20210624
This commit is contained in:
@@ -7,8 +7,8 @@ import qs from 'qs'
|
|||||||
// axios全局配置
|
// axios全局配置
|
||||||
axios.defaults.timeout = 10000 // 超时时间
|
axios.defaults.timeout = 10000 // 超时时间
|
||||||
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' // 配置请求头
|
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' // 配置请求头
|
||||||
// axios.defaults.baseURL = 'http://www.tougao.com/'
|
axios.defaults.baseURL = 'http://www.tougao.com/'
|
||||||
axios.defaults.baseURL = '/'
|
// axios.defaults.baseURL = '/'
|
||||||
|
|
||||||
// 添加响应拦截器,统一处理服务器响应和异常
|
// 添加响应拦截器,统一处理服务器响应和异常
|
||||||
axios.interceptors.response.use(
|
axios.interceptors.response.use(
|
||||||
|
|||||||
BIN
src/assets/img/orcid.png
Normal file
BIN
src/assets/img/orcid.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 85 KiB |
BIN
src/assets/img/orcno.png
Normal file
BIN
src/assets/img/orcno.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 83 KiB |
@@ -7,7 +7,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="logo">
|
<div class="logo">
|
||||||
<img src="../../assets/img/logo.png" />
|
<img src="../../assets/img/logo.png" />
|
||||||
{{$t('system.title')}}
|
{{ $t('system.title') }}
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="header-user-con">
|
<div class="header-user-con">
|
||||||
@@ -25,28 +25,31 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 全屏显示 -->
|
<!-- 全屏显示 -->
|
||||||
<div class="btn-fullscreen" @click="handleFullScreen">
|
<div class="btn-fullscreen" @click="handleFullScreen">
|
||||||
<el-tooltip
|
<el-tooltip effect="dark" :content="fullscreen ? $t('system.noscreen') : $t('system.screen')" placement="bottom">
|
||||||
effect="dark"
|
|
||||||
:content="fullscreen?$t('system.noscreen'):$t('system.screen')"
|
|
||||||
placement="bottom"
|
|
||||||
>
|
|
||||||
<i class="el-icon-rank"></i>
|
<i class="el-icon-rank"></i>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</div>
|
</div>
|
||||||
<!-- 消息中心 -->
|
<!-- 消息中心 -->
|
||||||
|
|
||||||
<!-- 用户头像 -->
|
<!-- 用户头像 -->
|
||||||
<div class="user-avator">
|
<div class="user-avator" @click="skip_link()" v-if="hasorcie">
|
||||||
<!-- <img src="../../assets/img/img.jpg" /> -->
|
<el-tooltip class="item" effect="light" content="Link to Orcid" placement="bottom-end">
|
||||||
|
<img src="../../assets/img/orcid.png" />
|
||||||
|
</el-tooltip>
|
||||||
|
</div>
|
||||||
|
<div class="user-avator" @click="skip_check()" v-else>
|
||||||
|
<el-tooltip class="item" effect="light" content="Connect to ORCID" placement="bottom-end">
|
||||||
|
<img src="../../assets/img/orcno.png" />
|
||||||
|
</el-tooltip>
|
||||||
</div>
|
</div>
|
||||||
<!-- 用户名下拉菜单 -->
|
<!-- 用户名下拉菜单 -->
|
||||||
<el-dropdown class="user-name" trigger="click" @command="handleCommand">
|
<el-dropdown class="user-name" trigger="click" @command="handleCommand">
|
||||||
<span class="el-dropdown-link">
|
<span class="el-dropdown-link">
|
||||||
{{username}}
|
{{ username }}
|
||||||
<i class="el-icon-caret-bottom"></i>
|
<i class="el-icon-caret-bottom"></i>
|
||||||
</span>
|
</span>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item divided command="loginout">{{$t('system.loyout')}}</el-dropdown-item>
|
<el-dropdown-item divided command="loginout">{{ $t('system.loyout') }}</el-dropdown-item>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
</div>
|
</div>
|
||||||
@@ -62,26 +65,33 @@ export default {
|
|||||||
fullscreen: false,
|
fullscreen: false,
|
||||||
name: 'unknown user',
|
name: 'unknown user',
|
||||||
message: 2,
|
message: 2,
|
||||||
|
hasorcie: false,
|
||||||
|
orcid: '',
|
||||||
|
orcidLink:
|
||||||
|
'https://orcid.org/oauth/authorize?client_id=APP-PKF0BGRP6DWM6FUB&response_type=code&scope=/authenticate&redirect_uri=https://submission.tmrjournals.com/orcidLink',
|
||||||
langArr: [
|
langArr: [
|
||||||
{ value: 'zh', label: '中文' },
|
{ value: 'zh', label: '中文' },
|
||||||
{ value: 'en', label: 'English' }
|
{ value: 'en', label: 'English' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.initORCID();
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
username() {
|
username() {
|
||||||
let username = localStorage.getItem('ms_username');
|
let username = localStorage.getItem('ms_username');
|
||||||
return username ? username : this.name;
|
return username ? username : this.name;
|
||||||
},
|
},
|
||||||
userrole(){
|
userrole() {
|
||||||
let userrole = localStorage.getItem('ms_userrole');
|
let userrole = localStorage.getItem('ms_userrole');
|
||||||
if(userrole==1){
|
if (userrole == 1) {
|
||||||
return this.$t('total.author');
|
return this.$t('total.author');
|
||||||
}else if(userrole==2){
|
} else if (userrole == 2) {
|
||||||
return this.$t('total.editor');
|
return this.$t('total.editor');
|
||||||
}else if(userrole=='admin'){
|
} else if (userrole == 'admin') {
|
||||||
return this.$t('total.admin');
|
return this.$t('total.admin');
|
||||||
}else{
|
} else {
|
||||||
return this.$t('total.reviewers');
|
return this.$t('total.reviewers');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -100,6 +110,18 @@ export default {
|
|||||||
this.collapse = !this.collapse;
|
this.collapse = !this.collapse;
|
||||||
bus.$emit('collapse', this.collapse);
|
bus.$emit('collapse', this.collapse);
|
||||||
},
|
},
|
||||||
|
//判断orcid
|
||||||
|
initORCID() {
|
||||||
|
this.$api
|
||||||
|
.post('api/user/checkOrcid', { account: localStorage.getItem('ms_username') })
|
||||||
|
.then((res) => {
|
||||||
|
this.hasorcie = res.userinfo.orcid == '' ? false : true;
|
||||||
|
this.orcid = res.userinfo.orcid;
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
},
|
||||||
// 全屏事件
|
// 全屏事件
|
||||||
handleFullScreen() {
|
handleFullScreen() {
|
||||||
let element = document.documentElement;
|
let element = document.documentElement;
|
||||||
@@ -128,9 +150,15 @@ export default {
|
|||||||
this.fullscreen = !this.fullscreen;
|
this.fullscreen = !this.fullscreen;
|
||||||
},
|
},
|
||||||
//切换语言
|
//切换语言
|
||||||
chengelang(commond){
|
chengelang(commond) {
|
||||||
localStorage.setItem('langs',commond);
|
localStorage.setItem('langs', commond);
|
||||||
this.$router.go(0);
|
this.$router.go(0);
|
||||||
|
},
|
||||||
|
skip_link() {
|
||||||
|
location.href = 'https://orcid.org/'+this.orcid;
|
||||||
|
},
|
||||||
|
skip_check(){
|
||||||
|
location.href = this.orcidLink;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@@ -214,9 +242,8 @@ export default {
|
|||||||
}
|
}
|
||||||
.user-avator img {
|
.user-avator img {
|
||||||
display: block;
|
display: block;
|
||||||
width: 40px;
|
width: 20px;
|
||||||
height: 40px;
|
height: 20px;
|
||||||
border-radius: 50%;
|
|
||||||
}
|
}
|
||||||
.el-dropdown-link {
|
.el-dropdown-link {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
@@ -225,7 +252,7 @@ export default {
|
|||||||
.el-dropdown-menu__item {
|
.el-dropdown-menu__item {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
#colgreen{
|
#colgreen {
|
||||||
color: rgb(142, 150, 74);
|
color: rgb(142, 150, 74);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<script>
|
<script>
|
||||||
const baseUrl = '/';
|
// const baseUrl = '/';
|
||||||
const mediaUrl = 'http://api.tmrjournals.com/public/';
|
// const mediaUrl = 'http://api.tmrjournals.com/public/';
|
||||||
// const mediaUrl = 'http://www.tougao.com/';
|
const mediaUrl = 'http://www.tougao.com/';
|
||||||
// const baseUrl = 'http://www.tougao.com/';
|
const baseUrl = 'http://www.tougao.com/';
|
||||||
export default {
|
export default {
|
||||||
baseUrl,
|
baseUrl,
|
||||||
mediaUrl
|
mediaUrl
|
||||||
|
|||||||
86
src/components/page/orcidLink.vue
Normal file
86
src/components/page/orcidLink.vue
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
<template>
|
||||||
|
<div class="login-wrap" v-loading="loading">
|
||||||
|
<div class="ms_link" v-if="has_user"></div>
|
||||||
|
<div class="ms-login" v-else>
|
||||||
|
<div class="ms-title">User Register</div>
|
||||||
|
<el-form class="ms-content" :rules="registerRules" ref="registerForm" :model="registerForm" label-width="0">
|
||||||
|
<!-- 用户名 -->
|
||||||
|
<el-form-item prop="username">
|
||||||
|
<el-input size="small" v-model="registerForm.username" auto-complete="off" placeholder="username">
|
||||||
|
<i slot="prefix" class="el-icon-user"></i>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- 密码 -->
|
||||||
|
<el-form-item prop="password">
|
||||||
|
<el-input size="small" v-model="registerForm.password" auto-complete="off" placeholder="password" show-password>
|
||||||
|
<i slot="prefix" class="el-icon-lock"></i>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- 姓名 -->
|
||||||
|
<el-form-item prop="name">
|
||||||
|
<el-input size="small" v-model="registerForm.name" auto-complete="off" placeholder="realname">
|
||||||
|
<i slot="prefix" class="el-icon-edit-outline"></i>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- 手机 -->
|
||||||
|
<el-form-item prop="phone">
|
||||||
|
<el-input size="small" v-model="registerForm.phone" auto-complete="off" placeholder="phone">
|
||||||
|
<i slot="prefix" class="el-icon-mobile-phone" />
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- 邮件 -->
|
||||||
|
<el-form-item prop="email">
|
||||||
|
<el-input size="small" v-model="registerForm.email" auto-complete="off" placeholder="email">
|
||||||
|
<i slot="prefix" class="el-icon-message"></i>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<!-- 按钮 -->
|
||||||
|
<el-row type="flex" justify="center">
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item>
|
||||||
|
<el-button size="small" type="primary" @click.native.prevent="handleRegister" class="register-submit"
|
||||||
|
>bind</el-button
|
||||||
|
>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="14"></el-col>
|
||||||
|
<el-col :span="4"> </el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data: function () {
|
||||||
|
return {
|
||||||
|
account: localStorage.getItem('ms_username'),
|
||||||
|
loading: true,
|
||||||
|
has_user: false,
|
||||||
|
query: {
|
||||||
|
account: localStorage.getItem('ms_username'),
|
||||||
|
code: this.$route.query.code
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created: function () {
|
||||||
|
this.initLinkOrcid();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
//推送记录信息
|
||||||
|
initLinkOrcid() {
|
||||||
|
this.$message.success(this.query.account);
|
||||||
|
|
||||||
|
// this.$api
|
||||||
|
// .post('api/User/getUserForOrcid', this.query)
|
||||||
|
// .then((res) => {
|
||||||
|
// alert('okokok!!!!');
|
||||||
|
// })
|
||||||
|
// .catch((err) => {
|
||||||
|
// console.log(err);
|
||||||
|
// });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -31,7 +31,7 @@ router.beforeEach((to, from, next) => {
|
|||||||
document.title = `${to.meta.title} | Traditional Medicine Research`;
|
document.title = `${to.meta.title} | Traditional Medicine Research`;
|
||||||
const role = localStorage.getItem('ms_username');
|
const role = localStorage.getItem('ms_username');
|
||||||
const userrole = localStorage.getItem('ms_userrole');
|
const userrole = localStorage.getItem('ms_userrole');
|
||||||
if (!role && to.path!='/register'&&to.path!=='/submission'&&to.path!=='/img'&& to.path !=='/reviewer'&&to.path !=='/thanks' &&to.path !== '/login'&&to.path.search(/retrieve/i)<0 ) {
|
if (!role && to.path!='/register'&&to.path!=='/submission'&&to.path!=='/orcidLink'&&to.path!=='/img'&& to.path !=='/reviewer'&&to.path !=='/thanks' &&to.path !== '/login'&&to.path.search(/retrieve/i)<0 ) {
|
||||||
next('/login');
|
next('/login');
|
||||||
// } else if (to.meta.permission) {
|
// } else if (to.meta.permission) {
|
||||||
// // 如果是管理员权限则可进入,这里只是简单的模拟管理员权限而已
|
// // 如果是管理员权限则可进入,这里只是简单的模拟管理员权限而已
|
||||||
|
|||||||
@@ -216,6 +216,11 @@ export default new Router({
|
|||||||
component:()=>import('../components/page/reviewer.vue'),
|
component:()=>import('../components/page/reviewer.vue'),
|
||||||
meta:{title:'reviewer'}
|
meta:{title:'reviewer'}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path:'/orcidLink',
|
||||||
|
component:()=>import('../components/page/orcidLink.vue'),
|
||||||
|
meta:{title:'orcidLink'}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path:'/thanks',
|
path:'/thanks',
|
||||||
component:()=>import('../components/page/thanks.vue'),
|
component:()=>import('../components/page/thanks.vue'),
|
||||||
|
|||||||
Reference in New Issue
Block a user