Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
md-vue-chc
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
何鹏程
md-vue-chc
Commits
d4d3751e
Commit
d4d3751e
authored
Jul 13, 2021
by
何鹏程
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改样式及路由
parent
4201e666
Changes
18
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
567 additions
and
470 deletions
+567
-470
webpack.conf.js
build/webpack.conf.js
+20
-18
favicon.ico
favicon.ico
+0
-0
common.scss
src/assets/css/common.scss
+81
-27
reset.scss
src/assets/css/reset.scss
+1
-0
emergencyCarDialog.vue
src/page/emergencyCar/components/emergencyCarDialog.vue
+219
-147
index.vue
src/page/emergencyCar/index.vue
+2
-2
index.vue
src/page/expert/index.vue
+2
-2
index.vue
src/page/greenWay/index.vue
+2
-2
HeaderBar.vue
src/page/layout/HeaderBar.vue
+7
-2
NavBar.vue
src/page/layout/NavBar.vue
+3
-29
index.vue
src/page/medical/index.vue
+2
-2
index.vue
src/page/nav/index.vue
+6
-1
index.vue
src/page/rescue/index.vue
+2
-2
index.vue
src/page/sitePage/index.vue
+2
-2
index.vue
src/page/siteQuery/index.vue
+132
-113
index.vue
src/page/user/index.vue
+2
-2
index.js
src/router/index.js
+35
-113
actions.js
src/store/actions.js
+49
-6
No files found.
build/webpack.conf.js
View file @
d4d3751e
...
...
@@ -13,15 +13,19 @@ const HOST = process.env.HOST
const
PORT
=
process
.
env
.
PORT
&&
Number
(
process
.
env
.
PORT
)
const
devWebpackConfig
=
merge
(
baseWebpackConfig
,
{
module
:
{
rules
:
utils
.
styleLoaders
({
sourceMap
:
config
.
dev
.
cssSourceMap
,
usePostCSS
:
true
})
rules
:
utils
.
styleLoaders
({
sourceMap
:
config
.
dev
.
cssSourceMap
,
usePostCSS
:
true
})
},
devtool
:
config
.
dev
.
devtool
,
devServer
:
{
clientLogLevel
:
'warning'
,
historyApiFallback
:
{
rewrites
:
[
{
from
:
/.*/
,
to
:
path
.
posix
.
join
(
config
.
dev
.
assetsPublicPath
,
'index.html'
)
},
],
rewrites
:
[{
from
:
/.*/
,
to
:
path
.
posix
.
join
(
config
.
dev
.
assetsPublicPath
,
'index.html'
)
},
],
},
hot
:
true
,
contentBase
:
false
,
...
...
@@ -29,9 +33,10 @@ const devWebpackConfig = merge(baseWebpackConfig, {
host
:
HOST
||
config
.
dev
.
host
,
//ip
port
:
PORT
||
config
.
dev
.
port
,
//端口
open
:
config
.
dev
.
autoOpenBrowser
,
overlay
:
config
.
dev
.
errorOverlay
?
{
warnings
:
false
,
errors
:
true
}
:
false
,
overlay
:
config
.
dev
.
errorOverlay
?
{
warnings
:
false
,
errors
:
true
}
:
false
,
publicPath
:
config
.
dev
.
assetsPublicPath
,
proxy
:
config
.
dev
.
proxyTable
,
//前端代理
quiet
:
true
,
...
...
@@ -50,16 +55,14 @@ const devWebpackConfig = merge(baseWebpackConfig, {
new
HtmlWebpackPlugin
({
filename
:
'index.html'
,
template
:
'index.html'
,
favicon
:
'./favicon.ico'
,
//
favicon: './favicon.ico',
inject
:
true
}),
new
CopyWebpackPlugin
([
{
from
:
path
.
resolve
(
__dirname
,
'../static'
),
to
:
config
.
dev
.
assetsSubDirectory
,
ignore
:
[
'.*'
]
}
])
new
CopyWebpackPlugin
([{
from
:
path
.
resolve
(
__dirname
,
'../static'
),
to
:
config
.
dev
.
assetsSubDirectory
,
ignore
:
[
'.*'
]
}])
]
})
...
...
@@ -75,9 +78,8 @@ module.exports = new Promise((resolve, reject) => {
compilationSuccessInfo
:
{
messages
:
[
`Your application is running here: http://
${
devWebpackConfig
.
devServer
.
host
}
:
${
port
}
`
],
},
onErrors
:
config
.
dev
.
notifyOnErrors
?
utils
.
createNotifierCallback
()
:
undefined
onErrors
:
config
.
dev
.
notifyOnErrors
?
utils
.
createNotifierCallback
()
:
undefined
}))
resolve
(
devWebpackConfig
)
}
...
...
favicon.ico
deleted
100644 → 0
View file @
4201e666
1.12 KB
src/assets/css/common.scss
View file @
d4d3751e
...
...
@@ -184,38 +184,92 @@
}
}
.el-form-item--small.el-form-item
{
margin-bottom
:
20px
;
}
.main-app
{
.el-form-item--small.el-form-item
{
margin-bottom
:
20px
;
}
.el-checkbox__label
{
padding-left
:
5px
;
}
.el-checkbox__label
{
padding-left
:
5px
;
}
.el-input__inner
{
padding
:
0
5px
;
}
.el-input__inner
{
padding
:
0
5px
;
}
.
el-radio__inner
:
:
after
{
background
:
#40a2de
;
width
:
8px
;
height
:
8px
;
}
.el-input--prefix
.el-input__inner
{
padding
:
0
30px
;
}
.el-radio__label
{
padding-left
:
5px
;
}
.
el-radio__inner
:
:
after
{
background
:
#40a2de
;
width
:
8px
;
height
:
8px
;
}
.el-form-item
__label
{
padding-right
:
10
px
;
}
.el-radio
__label
{
padding-left
:
5
px
;
}
.el-tooltip__popper.is-dark
{
opacity
:
0
.7
;
}
.el-form-item__label
{
padding-right
:
10px
;
}
.el-tooltip__popper.is-dark
{
opacity
:
0
.7
;
}
.noData
{
margin
:
0
auto
;
background
:
url("../images/CoverPage.png")
no-repeat
center
;
height
:
350px
;
.noData
{
margin
:
0
auto
;
background
:
url("../images/CoverPage.png")
no-repeat
center
;
height
:
350px
;
}
.el-form-item--small
.el-form-item__content
{
line-height
:
30px
;
}
.el-input--small
.el-input__inner
{
height
:
30px
;
}
.el-button--small
{
height
:
30px
;
padding
:
7px
15px
;
}
.el-dialog
{
top
:
50%
;
left
:
50%
;
transform
:
translate
(
-50%
,
-50%
);
/*height:600px;*/
max-height
:
calc
(
100%
-
30px
);
max-width
:
calc
(
100%
-
30px
);
margin
:
0
!
important
;
overflow
:
auto
;
.el-dialog__header
{
padding
:
19px
24px
;
background
:
#F3F6F8
;
border-bottom
:
1px
solid
#D6D6D6
;
.el-dialog__title
{
font-size
:
16px
;
line-height
:
22px
;
font-weight
:
normal
;
color
:
#000000
;
}
}
// .el-dialog__body {
// max-height: calc(100% - 61px - 60px);
// overflow: auto;
// }
.el-dialog__footer
{
height
:
60px
;
background
:
#DDF1FF
;
padding
:
15px
24px
;
}
}
}
src/assets/css/reset.scss
View file @
d4d3751e
...
...
@@ -30,6 +30,7 @@ span,
blockquote
{
margin
:
0
;
padding
:
0
;
font-family
:
"Microsoft Yahei"
,
Arial
;
}
h1
,
...
...
src/page/emergencyCar/components/emergencyCarDialog.vue
View file @
d4d3751e
This diff is collapsed.
Click to expand it.
src/page/emergencyCar/index.vue
View file @
d4d3751e
...
...
@@ -80,7 +80,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -92,7 +92,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/page/expert/index.vue
View file @
d4d3751e
...
...
@@ -70,7 +70,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -82,7 +82,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/page/greenWay/index.vue
View file @
d4d3751e
...
...
@@ -81,7 +81,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -93,7 +93,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/page/layout/HeaderBar.vue
View file @
d4d3751e
...
...
@@ -8,15 +8,20 @@
src=
"../../assets/images/user.png"
alt=
""
>
<span>
张医生
</span>
<span>
{{
userInfo
.
userName
}}
</span>
</div>
</div>
</
template
>
<
script
>
import
{
mapGetters
}
from
'vuex'
export
default
{
computed
:
{
...
mapGetters
([
'userInfo'
])
},
data
()
{
return
{}
},
...
...
src/page/layout/NavBar.vue
View file @
d4d3751e
...
...
@@ -38,38 +38,12 @@ export default {
}
},
watch
:
{
menuMap
(
val
,
oldVal
)
{
this
.
initNav
()
}
},
mounted
()
{
this
.
initNav
()
// this.leftMenu = [
// {
// name: '急救资源',
// icon: 'fa-address-book-o',
// child: [
// { name: '急救车资源', path: '/resources/emergencyCar' },
// { name: '急救绿道资源', path: '/resources/greenWay' },
// { name: '急诊科抢救资源', path: '/resources/rescue' },
// { name: '急诊专家资源', path: '/resources/expert' },
// { name: '急救药品耗材资源', path: '/resources/medical' },
// { name: '急诊站点资源', path: '/resources/sitePage' }
// ]
// },
// {
// name: '业务监管',
// icon: 'fa-address-book-o',
// child: [
// { name: '急救站点查询', path: '/business/siteQuery' },
// ]
// },
// {
// name: '基础信息管理',
// icon: 'fa-address-book-o',
// child: [
// { name: '用户管理', path: '/basicInfo/user' },
// { name: '菜单管理', path: '/basicInfo/nav' },
// ]
// }
// ]
},
created
()
{
...
...
src/page/medical/index.vue
View file @
d4d3751e
...
...
@@ -79,7 +79,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -91,7 +91,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/page/nav/index.vue
View file @
d4d3751e
...
...
@@ -29,6 +29,7 @@
</el-switch>
</el-form-item>
</el-form>
</div>
</div>
</div>
...
...
@@ -36,6 +37,9 @@
<
script
>
import
{
queryCheckMenuList
,
updateCheckMenuList
}
from
'@/api/nav'
import
store
from
'../../store'
import
{
Auth
}
from
'@/util/auth'
export
default
{
name
:
'expertPage'
,
data
()
{
...
...
@@ -67,7 +71,8 @@ export default {
updateCheckMenuList
(
params
).
then
(
res
=>
{
if
(
res
.
msg
===
201
)
{
this
.
$message
.
success
(
'修改成功'
)
store
.
dispatch
(
'clearStore'
)
// store.dispatch('clearStore')
store
.
dispatch
(
'LoginByToken'
,
Auth
.
getLoginInfo
())
}
else
{
this
.
$message
.
success
(
res
.
content
)
}
...
...
src/page/rescue/index.vue
View file @
d4d3751e
...
...
@@ -69,7 +69,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -81,7 +81,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/page/sitePage/index.vue
View file @
d4d3751e
...
...
@@ -80,7 +80,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -92,7 +92,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/page/siteQuery/index.vue
View file @
d4d3751e
This diff is collapsed.
Click to expand it.
src/page/user/index.vue
View file @
d4d3751e
...
...
@@ -93,7 +93,7 @@
<el-table-column
label=
"序号"
type=
"index"
width=
"50"
min-
width=
"50"
>
</el-table-column>
<el-table-column
...
...
@@ -105,7 +105,7 @@
:sortable=
"item.sortable"
:fixed=
"item.fixed"
:key=
"index"
:width=
"item.width"
:
min-
width=
"item.width"
:show-overflow-tooltip=
"true"
>
</el-table-column>
...
...
src/router/index.js
View file @
d4d3751e
...
...
@@ -7,17 +7,13 @@ import {
Message
}
from
'element-ui'
import
{
Auth
,
Cache
Auth
}
from
'@/util/auth'
import
store
from
'../store'
import
{
staticRoute
,
routeHandle
}
from
'./staticRoute'
import
{
login
}
from
'../api/common'
NProgress
.
configure
({
showSpinner
:
false
})
...
...
@@ -43,128 +39,54 @@ router.beforeEach((to, from, next) => {
const
token
=
to
.
query
.
token
const
_token
=
Auth
.
getLoginInfo
()
// const userInfo = store.getters.userInfo
// const menu = store.getters.menuMap
const
routers
=
router
.
getRoutes
()
const
menu
=
store
.
getters
.
menuMap
const
userInfo
=
store
.
getters
.
userInfo
// console.log('router', routers)
// console.log('token', token)
// console.log('_token', _token)
// console.log('userInfo', userInfo)
// console.log('menu', menu)
if
(
token
&&
token
!==
_token
)
{
// 重新登录
store
.
dispatch
(
'clearStore'
)
login
({
token
:
token
}).
then
(
res
=>
{
const
{
parentMenuList
}
=
res
.
respData
.
menuMap
if
(
res
.
msg
===
201
&&
parentMenuList
&&
parentMenuList
.
length
>
0
)
{
store
.
dispatch
(
'saveMenuMap'
,
parentMenuList
)
router
.
addRoutes
(
routeHandle
(
parentMenuList
))
store
.
dispatch
(
'saveUserInfo'
,
res
.
respData
.
userDto
)
Auth
.
setLoginInfo
(
res
.
respData
.
token
)
next
({
...
to
,
replace
:
true
})
if
((
token
&&
token
!==
_token
)
||
(
_token
&&
(
routers
.
length
===
7
||
!
menu
||
!
userInfo
)))
{
//新用户登或重新登录
console
.
log
(
'拉取用户数据'
)
store
.
dispatch
(
'LoginByToken'
,
token
||
_token
).
then
(
res
=>
{
// const {
// menuMap
// } = res
// router.addRoutes(routeHandle(menuMap))
next
({
...
to
,
replace
:
true
})
}).
catch
(
err
=>
{
store
.
dispatch
(
'clearStore'
)
Message
({
type
:
'error'
,
message
:
'登录失败 请联系管理员!'
})
next
({
path
:
'/error/404'
,
replace
:
true
})
})
}
else
{
if
(
whiteList
.
indexOf
(
to
.
path
)
>=
0
)
{
console
.
log
(
'该页面无需登录即可访问'
)
next
()
}
else
{
if
(
routers
.
length
>
7
&&
_token
&&
menu
&&
userInfo
)
{
console
.
log
(
'有数据无需登录'
)
next
()
}
else
{
Message
({
type
:
'error'
,
message
:
res
.
content
})
store
.
dispatch
(
'clearStore'
)
console
.
log
(
'没数据没tonken 跳转404'
)
next
({
path
:
'/error/404'
,
replace
:
true
})
}
})
}
else
{
if
(
routers
.
length
>
7
)
{
next
()
}
else
{
store
.
dispatch
(
'clearStore'
)
login
({
token
:
token
||
_token
}).
then
(
res
=>
{
const
{
parentMenuList
}
=
res
.
respData
.
menuMap
if
(
res
.
msg
===
201
&&
parentMenuList
&&
parentMenuList
.
length
>
0
)
{
store
.
dispatch
(
'saveMenuMap'
,
parentMenuList
)
router
.
addRoutes
(
routeHandle
(
parentMenuList
))
store
.
dispatch
(
'saveUserInfo'
,
res
.
respData
.
userDto
)
Auth
.
setLoginInfo
(
res
.
respData
.
token
)
next
({
...
to
,
replace
:
true
})
}
else
{
Message
({
type
:
'error'
,
message
:
res
.
content
})
next
({
path
:
'/error/404'
,
replace
:
true
})
}
})
}
}
// if (token) {
// if (_token === token) {
// next()
// } else {
// store.dispatch('clearStore')
// login({token: token}).then(res => {
// if (res.msg === 201) {
// store.dispatch('saveMenuMap', res.respData.menuMap.parentMenuList)
// router.addRoutes(routeHandle(res.respData.menuMap.parentMenuList))
// store.dispatch('saveUserInfo', res.respData.userDto)
// Auth.setLoginInfo(res.respData.token)
// next()
// } else {
// this.$message.error(res.content)
// next({path: '/error/404', replace: true})
// }
// })
// }
// } else {
// // 判断是否登录过
// if (Auth.getLoginInfo() && store.getters.userInfo && store.getters.menuMap){
// next()
// } else {
// if (Auth.getLoginInfo()) {
// const token = Auth.getLoginInfo()
// store.dispatch('clearStore')
// login({token: token}).then(res => {
// if (res.msg === 201) {
// store.dispatch('saveMenuMap', res.respData.menuMap.parentMenuList)
// router.addRoutes(routeHandle(res.respData.menuMap.parentMenuList))
// store.dispatch('saveUserInfo', res.respData.userDto)
// Auth.setLoginInfo(res.respData.token)
// next()
// } else {
// next({path: '/error/404', replace: true})
// }
// })
// } else {
// // 判断是否为白名单页面
// if (whiteList.indexOf(to.path) >= 0) {
// next()
// } else {
// store.dispatch('clearStore')
// next({path: '/error/404', replace: true})
// }
// }
// }
// }
})
router
.
afterEach
(()
=>
{
...
...
src/store/actions.js
View file @
d4d3751e
import
*
as
types
from
'./mutation-types'
import
{
Cache
}
from
'@/util/auth'
export
const
clearStore
=
function
({
commit
,
state
})
{
import
{
Cache
,
Auth
}
from
'@/util/auth'
import
{
login
}
from
'../api/common'
export
const
clearStore
=
function
({
commit
,
state
})
{
commit
(
types
.
SET_MENUMAP
,
Cache
.
clearMenuMap
())
commit
(
types
.
SET_USERINFO
,
Cache
.
clearUserInfo
())
Auth
.
clearLoginInfo
()
}
export
const
saveMenuMap
=
function
({
commit
},
data
)
{
import
{
routeHandle
}
from
'../router/staticRoute'
import
router
from
'../router'
export
const
saveMenuMap
=
function
({
commit
},
data
)
{
commit
(
types
.
SET_MENUMAP
,
Cache
.
setMenuMap
(
data
))
}
export
const
saveUserInfo
=
function
({
commit
},
data
)
{
export
const
saveUserInfo
=
function
({
commit
},
data
)
{
commit
(
types
.
SET_USERINFO
,
Cache
.
setUserInfo
(
data
))
}
export
const
LoginByToken
=
function
({
commit
},
data
)
{
return
new
Promise
(
async
(
resolve
,
reject
)
=>
{
const
res
=
await
login
({
token
:
data
})
const
{
menuMap
:
{
parentMenuList
},
token
,
userDto
}
=
res
.
respData
if
(
res
.
msg
===
201
&&
parentMenuList
&&
parentMenuList
.
length
>
0
)
{
await
commit
(
types
.
SET_MENUMAP
,
Cache
.
setMenuMap
(
parentMenuList
))
await
commit
(
types
.
SET_USERINFO
,
Cache
.
setUserInfo
(
userDto
))
Auth
.
setLoginInfo
(
token
)
console
.
log
(
111
)
router
.
addRoutes
(
routeHandle
(
parentMenuList
))
resolve
()
}
else
{
reject
()
}
})
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment