Browse Source

feat: [操作日志] 路由日志

lkf
memorylkf 2 months ago
parent
commit
81d94a411a
6 changed files with 39 additions and 16 deletions
  1. +8
    -0
      src/api/business/public/public.js
  2. +2
    -1
      src/main.js
  3. +11
    -1
      src/permission.js
  4. +12
    -12
      src/router/index.js
  5. +4
    -0
      src/utils/menu.js
  6. +2
    -2
      src/views/business/systemLog/comp/czrz.vue

+ 8
- 0
src/api/business/public/public.js View File

@ -123,3 +123,11 @@ export function public_storageLocation(query) {
params: query
})
}
// 操作日志
export function public_saveSimpleLog(query) {
return request({
url: '/system/business/public/saveSimpleLog',
method: 'get',
params: query
})
}

+ 2
- 1
src/main.js View File

@ -5,7 +5,6 @@ import Cookies from 'js-cookie'
import Element from 'element-ui'
import './assets/styles/element-variables.scss'
import '@/assets/styles/index.scss' // global css
import '@/assets/styles/ruoyi.scss' // ruoyi css
import App from './App'
@ -44,6 +43,7 @@ import ImagePreview from '@/components/ImagePreview'
import DictTag from '@/components/DictTag'
// 字典数据组件
import DictData from '@/components/DictData'
import { public_saveSimpleLog } from '@/api/business/public/public'
// 全局方法挂载
Vue.prototype.getDicts = getDicts
@ -56,6 +56,7 @@ Vue.prototype.selectDictLabels = selectDictLabels
Vue.prototype.download = download
Vue.prototype.handleTree = handleTree
Vue.prototype.getMenuName = getMenuName
Vue.prototype.saveSimpleLog = public_saveSimpleLog
// 全局组件挂载
Vue.component('DictTag', DictTag)

+ 11
- 1
src/permission.js View File

@ -6,6 +6,8 @@ import 'nprogress/nprogress.css'
import { getToken } from '@/utils/auth'
import { isPathMatch } from '@/utils/validate'
import { isRelogin } from '@/utils/request'
import { public_saveSimpleLog } from '@/api/business/public/public'
import { getMenuNameEn } from '@/utils/menu'
NProgress.configure({ showSpinner: false })
@ -78,6 +80,14 @@ router.beforeEach((to, from, next) => {
}
})
router.afterEach(() => {
router.afterEach((to) => {
if (to.meta.title && to.path != '/login') {
public_saveSimpleLog({
nameEn: getMenuNameEn(to.meta.title),
name: to.meta.title,
jcmc: '进入页面',
jcmcEn: 'Enter Page'
})
}
NProgress.done()
})

+ 12
- 12
src/router/index.js View File

@ -178,7 +178,7 @@ export const dynamicRoutes = [
path: ':studyId(\\d+)/:tab',
component: () => import('@/views/business/study/comp/enter'),
name: 'StudyEnter',
meta: { title: '进入试验', activeMenu: '/trial/list' }
meta: { title: '', activeMenu: '/trial/list' }
}
]
},
@ -192,7 +192,7 @@ export const dynamicRoutes = [
path: ':studyId(\\d+)/:tab',
component: () => import('@/views/business/form/nonTrial/comp/enter'),
name: 'NonTrialEnter',
meta: { title: '进入', activeMenu: '/form/nonTrial' }
meta: { title: '', activeMenu: '/form/nonTrial' }
}
]
},
@ -206,7 +206,7 @@ export const dynamicRoutes = [
path: ':studyId(\\d+)/:tab',
component: () => import('@/views/business/form/drug/comp/enter'),
name: 'DrugEnter',
meta: { title: '进入', activeMenu: '/form/drug' }
meta: { title: '', activeMenu: '/form/drug' }
}
]
},
@ -220,7 +220,7 @@ export const dynamicRoutes = [
path: ':key',
component: () => import('@/views/business/study/comp/tbbd/Bj'),
name: 'studyFormFillBj',
meta: { title: 'loading', activeMenu: '/trial/list' }
meta: { title: '', activeMenu: '/trial/list' }
}
]
},
@ -234,7 +234,7 @@ export const dynamicRoutes = [
path: ':key',
component: () => import('@/views/business/study/comp/tbbd/Bj'),
name: 'nonTrialFormFillBj',
meta: { title: 'loading', activeMenu: '/form/nonTrial' }
meta: { title: '', activeMenu: '/form/nonTrial' }
}
]
},
@ -248,11 +248,11 @@ export const dynamicRoutes = [
path: ':key',
component: () => import('@/views/business/study/comp/tbbd/Bj'),
name: 'drugFormFillBj',
meta: { title: 'loading', activeMenu: '/form/drug' }
meta: { title: '', activeMenu: '/form/drug' }
}
]
},
{
{
path: '/resource/mjy',
component: Layout,
hidden: true,
@ -262,11 +262,11 @@ export const dynamicRoutes = [
path: ':tab',
component: () => import('@/views/business/resource/mjy/index'),
name: 'Mjy',
meta: { title: 'loading', activeMenu: '/resource/mjy/mjyList' }
meta: { title: '麻精药管理', activeMenu: '/resource/mjy/mjyList' }
}
]
},
{
{
path: '/resource/gyzj',
component: Layout,
hidden: true,
@ -276,7 +276,7 @@ export const dynamicRoutes = [
path: ':tab',
component: () => import('@/views/business/resource/gyzj/index'),
name: 'Gyzj',
meta: { title: 'loading', activeMenu: '/resource/gyzj/gyzjList' }
meta: { title: '给药制剂管理', activeMenu: '/resource/gyzj/gyzjList' }
}
]
},
@ -290,10 +290,10 @@ export const dynamicRoutes = [
path: ':tab',
component: () => import('@/views/business/resource/gsp/index'),
name: 'Gsp',
meta: { title: 'loading', activeMenu: '/resource/gsp/gspList' }
meta: { title: '供试品管理', activeMenu: '/resource/gsp/gspList' }
}
]
},
}
]
// 防止连续点击多次路由报错

+ 4
- 0
src/utils/menu.js View File

@ -45,3 +45,7 @@ export function getMenuName(menuName) {
}
return menuObj[menuName] || menuName
}
export function getMenuNameEn(menuName) {
return menuObj[menuName] || menuName
}

+ 2
- 2
src/views/business/systemLog/comp/czrz.vue View File

@ -133,9 +133,9 @@ export default {
_.forEach(list,(o,index)=>{
nr+=o.name+':'+o.value+(index===list.length-1?'':';')
})
return (row.name?('【'+row.name+'】'): '')+nr+(row.remark?(';'+this.$t('form.remark')+":"+row.remark):'')
return (row.nameEn?('【'+row.nameEn+'】'): '')+nr+(row.remark?(';'+this.$t('form.remark')+":"+row.remark):'')
}else{
return (row.name?('【'+row.name+'】'): '')+(row.jcnrEn || '')+(row.remark?(';'+this.$t('form.remark')+":"+row.remark):'')
return (row.nameEn?('【'+row.nameEn+'】'): '')+(row.jcnrEn || '')+(row.remark?(';'+this.$t('form.remark')+":"+row.remark):'')
}
}
},

Loading…
Cancel
Save