部分问题修复
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
1bef8a027a
commit
72f2e0a459
12
src/main.js
12
src/main.js
|
@ -3,7 +3,7 @@ import Vue from 'vue'
|
|||
import 'normalize.css/normalize.css' // A modern alternative to CSS resets
|
||||
|
||||
import ElementUI from 'element-ui'
|
||||
import { getBasicDataAllSelect, getFrontInternationalizationList,getCurrentPublishInfo } from '@/api/dictionary/dictionary'
|
||||
import { getBasicDataAllSelect, getFrontInternationalizationList, getCurrentPublishInfo } from '@/api/dictionary/dictionary'
|
||||
import './assets/css/theme-blue/index.css' // 浅绿色主题
|
||||
import './assets/css/iconfont/index.css' // 阿里巴巴图标库
|
||||
import i18n from './lang'
|
||||
|
@ -15,7 +15,7 @@ Vue.use(vcrontab); //使用方式:
|
|||
import App from './App'
|
||||
import store from './store'
|
||||
import router from './router'
|
||||
|
||||
import WHITELIST from "./utils/whiteList"
|
||||
import '@/icons' // icon
|
||||
import '@/permission' // permission control
|
||||
import md5 from 'js-md5'
|
||||
|
@ -185,7 +185,7 @@ async function VueInit() {
|
|||
zhMessages[v.Code] = v.ValueCN
|
||||
enMessages[v.Code] = v.Value
|
||||
})
|
||||
// 获取版本信息
|
||||
// 获取版本信息
|
||||
let PublishInfo = await getCurrentPublishInfo();
|
||||
Vue.prototype.$version = PublishInfo.Result;
|
||||
i18n.mergeLocaleMessage('zh', zhMessages)
|
||||
|
@ -295,7 +295,7 @@ async function VueInit() {
|
|||
if (eval(process.env.VUE_APP_LOGIN_FOR_PERMISSION)) {
|
||||
setInterval(() => {
|
||||
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
||||
if (_vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/' || _vm.$route.path === '/login' || _vm.$route.path === '/researchForm' || _vm.$route.path === '/researchLogin' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') {
|
||||
if (WHITELIST.includes(_vm.$route.path)) {
|
||||
return
|
||||
}
|
||||
if (_vm.$store.state.user.userId !== zzSessionStorage.getItem('userId')) {
|
||||
|
@ -355,7 +355,7 @@ async function VueInit() {
|
|||
/* eslint-disable */
|
||||
waitOperate(eval(process.env.VUE_APP_LOGOUT_FOR_PERMISSION) ? () => {
|
||||
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
||||
if (_vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/' || _vm.$route.path === '/login' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') {
|
||||
if (WHITELIST.includes(_vm.$route.path)) {
|
||||
count = 0;
|
||||
localStorage.setItem('count', '0')
|
||||
return
|
||||
|
@ -383,7 +383,7 @@ async function VueInit() {
|
|||
} : () => { }, process.env.VUE_APP_LOGOUT_FOR_TIME,
|
||||
eval(process.env.VUE_APP_LOCK_FOR_PERMISSION) ? () => {
|
||||
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
||||
if (_vm.$route.path === '/ReviewersResearchForm' || _vm.$route.path === '/ReviewersResearch' || _vm.$route.path === '/login' || _vm.$route.path === '/email-recompose' || _vm.$route.path === '/recompose' || _vm.$route.path === '/resetpassword' || _vm.$route.path === '/error') {
|
||||
if (WHITELIST.includes(_vm.$route.path)) {
|
||||
count = 0;
|
||||
localStorage.setItem('count', '0')
|
||||
if (_vm.$route.path === '/login') {
|
||||
|
|
|
@ -7,13 +7,13 @@ import 'nprogress/nprogress.css'
|
|||
import { getToken, removeToken } from '@/utils/auth'
|
||||
import Vue from 'vue'
|
||||
import { OSSclient } from './utils/oss'
|
||||
import WHITELIST from './utils/whiteList'
|
||||
import moment from "moment";
|
||||
// import getPageTitle from '@/utils/get-page-title'
|
||||
|
||||
NProgress.configure({ showSpinner: false })
|
||||
|
||||
const whiteList = ['/activate', '/ReviewersResearch', '/login', '/error', '/resetpassword', '/recompose', '/email-recompose', '/trialStats', '/showdicom', '/imagesShare', '/audit', '/preview', '/researchLogin', '/blindResumeInfo', '/trialsResume', '/joinVerify', '/showNoneDicoms', '/noneDicomReading', '/clinicalData', '/readingDicoms', '/readingPage', '/visitDicomReview', '/visitNondicomReview', '/globalReview', '/adReview', '/oncologyReview', '/nonedicoms']
|
||||
// 影像页关闭
|
||||
const whiteList = WHITELIST
|
||||
Vue.prototype.$openWindow = null
|
||||
Vue.prototype.$setOpenWindow = (openWindow) => {
|
||||
if (Vue.prototype.$openWindow) {
|
||||
|
|
|
@ -2,6 +2,7 @@ import axios from 'axios'
|
|||
import { Message, MessageBox, Alert } from 'element-ui'
|
||||
import store from '@/store'
|
||||
import router from '@/router'
|
||||
import WHITELIST from "./whiteList"
|
||||
import Vue from 'vue'
|
||||
const ROUTER = require('@/router');
|
||||
axios.defaults.withCredentials = false
|
||||
|
@ -25,7 +26,7 @@ service.interceptors.request.use(
|
|||
}
|
||||
try {
|
||||
if (eval(process.env.VUE_APP_LOGIN_FOR_PERMISSION)) {
|
||||
if (!path || path === '/ReviewersResearchForm' || path === '/ReviewersResearch' || path === '/' || path === '/login' || path === '/researchForm' || path === '/researchLogin' || path === '/email-recompose' || path === '/recompose' || path === '/resetpassword' || path === '/error') {
|
||||
if (!path || WHITELIST.some(item => item === path)) {
|
||||
return config
|
||||
}
|
||||
if (store.state.user.userId !== zzSessionStorage.getItem('userId')) {
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
const WHITELIST = ['/', "/curriculumVitae", 'researchDetail_m', '/researchForm', '/ReviewersResearch', '/login', '/error', '/resetpassword', '/recompose', '/email-recompose', '/trialStats', '/showdicom', '/imagesShare', '/audit', '/preview', '/researchLogin', '/researchLogin_m', '/blindResumeInfo', '/trialsResume', '/joinVerify', '/showNoneDicoms', '/noneDicomReading', '/clinicalData', '/readingDicoms', '/readingPage', '/visitDicomReview', '/visitNondicomReview', '/globalReview', '/adReview', '/oncologyReview', '/nonedicoms']
|
||||
export default WHITELIST
|
|
@ -39,7 +39,8 @@
|
|||
<el-form-item :label="$t('system:hospital:isCanConnectInternet')"
|
||||
v-hasPermi="['system:hospital:connectInternet']">
|
||||
<el-switch v-model="hospital.IsCanConnectInternet" active-color="#13ce66"
|
||||
inactive-color="#ff4949" active-text="是" inactive-text="否" :disabled="disabled">
|
||||
inactive-color="#ff4949" :active-text="$fd('YesOrNo', true)"
|
||||
:inactive-text="$fd('YesOrNo', false)" :disabled="disabled">
|
||||
</el-switch>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('system:hospital:logo')" prop="HospitalLogoPath">
|
||||
|
|
|
@ -126,7 +126,7 @@
|
|||
<el-button @click="handleCancel" size="small">{{ $t('common:button:cancel') }}</el-button>
|
||||
<el-button type="primary" size="small" @click="handleSave" :loading="loading">{{
|
||||
$t('common:button:save')
|
||||
}}</el-button>
|
||||
}}</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
|
@ -170,27 +170,27 @@ export default {
|
|||
IdentityUserIdList: []
|
||||
},
|
||||
rules: {
|
||||
Affiliation: [
|
||||
{ required: true, message: 'Please specify', trigger: 'blur' },
|
||||
],
|
||||
// Affiliation: [
|
||||
// { required: true, message: 'Please specify', trigger: 'blur' },
|
||||
// ],
|
||||
Code: [
|
||||
{ required: true, message: 'Please specify', trigger: 'blur' },
|
||||
],
|
||||
ContactName: [
|
||||
{ required: true, message: 'Please specify', trigger: 'blur' },
|
||||
],
|
||||
ContactPhone: [
|
||||
{ required: true, message: 'Please specify', trigger: 'blur' },
|
||||
],
|
||||
// ContactName: [
|
||||
// { required: true, message: 'Please specify', trigger: 'blur' },
|
||||
// ],
|
||||
// ContactPhone: [
|
||||
// { required: true, message: 'Please specify', trigger: 'blur' },
|
||||
// ],
|
||||
Name: [
|
||||
{ required: true, message: 'Please specify', trigger: 'blur' },
|
||||
],
|
||||
CallingAE: [
|
||||
{ required: true, message: 'Please specify', trigger: 'blur' },
|
||||
],
|
||||
IdentityUserIdList: [
|
||||
{ required: true, type: 'array', message: 'Please select', trigger: 'blur' },
|
||||
],
|
||||
// CallingAE: [
|
||||
// { required: true, message: 'Please specify', trigger: 'blur' },
|
||||
// ],
|
||||
// IdentityUserIdList: [
|
||||
// { required: true, type: 'array', message: 'Please select', trigger: 'blur' },
|
||||
// ],
|
||||
},
|
||||
GAUserList: [],
|
||||
status: 'add'
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<el-table-column :label="$t('system:hospital:table:updateTime')" prop="UpdateTime" min-width="150"
|
||||
show-overflow-tooltip />
|
||||
|
||||
<el-table-column :label="$t('common:action:action')" fixed="right" prop="" min-width="200"
|
||||
<el-table-column :label="$t('common:action:action')" fixed="right" prop="" min-width="250"
|
||||
show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" :disabled="scope.row.IsDefault" type="text" icon="el-icon-circle-check"
|
||||
|
|
|
@ -2,62 +2,46 @@
|
|||
<div class="role">
|
||||
<div ref="leftContainer" class="left">
|
||||
<el-form :inline="true">
|
||||
<el-form-item label="关键字">
|
||||
<el-input
|
||||
v-model="queryParams.SearchFilter"
|
||||
placeholder="请输入关键字"
|
||||
clearable
|
||||
size="small"
|
||||
@keyup.enter.native="getList"
|
||||
/>
|
||||
<el-form-item :label="$t('il8n:search:keyword')">
|
||||
<el-input v-model="queryParams.SearchFilter" placeholder="" clearable size="small"
|
||||
@keyup.enter.native="getList" />
|
||||
</el-form-item>
|
||||
<el-form-item label="状态">
|
||||
<el-select v-model="queryParams.GroupId" placeholder="角色组" clearable size="small">
|
||||
<el-option
|
||||
v-for="item of dict.type.UserTypeGroup"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
<el-form-item :label="$t('il8n:table:state')">
|
||||
<el-select v-model="queryParams.GroupId" placeholder="" clearable size="small">
|
||||
<el-option v-for="item of dict.type.UserTypeGroup" :key="item.value" :label="item.label"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="getList">搜索</el-button>
|
||||
<el-button v-hasPermi="['system:role:add']" type="primary" icon="el-icon-plus" size="mini" @click="handleAddRole">新增</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="getList">{{
|
||||
$t('system:dicom:search:search') }}</el-button>
|
||||
<el-button v-hasPermi="['system:role:add']" type="primary" icon="el-icon-plus" size="mini"
|
||||
@click="handleAddRole">{{ $t('common:button:new') }}</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table v-loading="loading" v-adaptive="{bottomOffset:30}" size="small" height="100" :data="list" class="table">
|
||||
<el-table v-loading="loading" v-adaptive="{ bottomOffset: 30 }" size="small" height="100" :data="list"
|
||||
class="table">
|
||||
<el-table-column type="index" width="50" />
|
||||
<el-table-column label="User Type" prop="UserTypeName" min-width="220" show-overflow-tooltip />
|
||||
<el-table-column label="Shortname" prop="UserTypeShortName" min-width="120" show-overflow-tooltip />
|
||||
<el-table-column label="Group" prop="Note" min-width="80" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.UserTypeGroupList.map(v => {return v.GroupName}).toString() }}
|
||||
{{scope.row.UserTypeGroupList.map(v => { return v.GroupName }).toString()}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="PermissionStr" prop="PermissionStr" min-width="100" show-overflow-tooltip />
|
||||
<el-table-column label="User Type Enum" prop="UserTypeEnum" min-width="100" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd('UserType',scope.row.UserTypeEnum) }}
|
||||
{{ $fd('UserType', scope.row.UserTypeEnum) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="Description" prop="Description" min-width="220" show-overflow-tooltip />
|
||||
<el-table-column label="Action" width="280" v-if="hasPermi(['system:role:edit','system:role:delete'])">
|
||||
<!-- <el-table-column label="Description" prop="Description" min-width="220" show-overflow-tooltip /> -->
|
||||
<el-table-column label="Action" width="280" v-if="hasPermi(['system:role:edit', 'system:role:delete'])">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
v-hasPermi="['system:role:edit']"
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleEditRole(scope.row)"
|
||||
>Edit</el-button>
|
||||
<el-button
|
||||
v-hasPermi="['system:role:delete']"
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDeleteRole(scope.row)"
|
||||
>Delete</el-button>
|
||||
<el-button v-hasPermi="['system:role:edit']" size="mini" type="text" icon="el-icon-edit"
|
||||
@click="handleEditRole(scope.row)">{{ $t('common:action:edit') }}</el-button>
|
||||
<el-button v-hasPermi="['system:role:delete']" size="mini" type="text" icon="el-icon-delete"
|
||||
@click="handleDeleteRole(scope.row)">{{ $t('common:button:delete') }}</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -167,32 +151,38 @@ export default {
|
|||
display: flex;
|
||||
padding: 10px;
|
||||
border-radius: 5px;
|
||||
|
||||
.left {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 0;
|
||||
flex-grow: 4;
|
||||
|
||||
// border-right: 1px solid #ccc;
|
||||
.filter-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.data-table {
|
||||
flex: 1;
|
||||
padding: 5px 0px;
|
||||
}
|
||||
|
||||
.pagination-container {
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
width: 0;
|
||||
flex-grow: 6;
|
||||
overflow-y: auto;
|
||||
border-right: 1px solid #ccc;
|
||||
}
|
||||
.selected-row{
|
||||
|
||||
.selected-row {
|
||||
background-color: cadetblue;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue