Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
F
frontend-h5
Project
Project
Details
Activity
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
songrui
frontend-h5
Commits
f00962fd
Commit
f00962fd
authored
Oct 15, 2024
by
songrui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
高危筛查详情
parent
2c7ea394
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
121 additions
and
93 deletions
+121
-93
screening.js
src/api/residentWX/screening.js
+16
-0
List.vue
src/residentWX/screening/List.vue
+32
-18
FirstDetail.vue
src/residentWX/screening/detail/FirstDetail.vue
+70
-75
common.less
src/residentWX/utils/common.less
+3
-0
No files found.
src/api/residentWX/screening.js
0 → 100644
View file @
f00962fd
import
{
fetchBase
}
from
'../fetch.js'
// 查询筛查列表
export
function
queryScreenList
(
params
,
loading
)
{
return
fetchBase
({
url
:
`/chronic-resident/v1/chronic-screening-record/page`
,
body
:
params
,
loading
})
}
// 慢病高危筛查详情
export
function
firstScreenDetail
(
params
)
{
return
fetchBase
({
url
:
`/chronic-resident/v1/chronic-screening-record/screening-detail`
,
body
:
params
,
loading
:
true
})
}
// 慢病专病筛查详情
export
function
secondScreenDetail
(
params
)
{
return
fetchBase
({
url
:
`/chronic-resident/v1/chronic-screening-record/rescreen-detail`
,
body
:
params
,
loading
:
true
})
}
src/residentWX/screening/List.vue
View file @
f00962fd
...
@@ -25,19 +25,19 @@
...
@@ -25,19 +25,19 @@
@
click=
"toDetail(item)"
>
@
click=
"toDetail(item)"
>
<div>
<div>
<span
class=
"label"
>
居民姓名
</span>
<span
class=
"label"
>
居民姓名
</span>
<span>
1
</span>
<span>
{{
userInfo
.
residentName
}}
</span>
</div>
</div>
<div>
<div>
<span
class=
"label"
>
证件号码
</span>
<span
class=
"label"
>
证件号码
</span>
<span>
2
</span>
<span>
{{
$idCardHide
(
userInfo
.
idCard
)
}}
</span>
</div>
</div>
<div>
<div>
<span
class=
"label"
>
筛查日期
</span>
<span
class=
"label"
>
筛查日期
</span>
<span>
3
</span>
<span>
{{
item
.
screenDate
}}
</span>
</div>
</div>
<div>
<div>
<span
class=
"label"
>
筛查机构
</span>
<span
class=
"label"
>
筛查机构
</span>
<span>
4
</span>
<span>
{{
item
.
screenUnitName
}}
</span>
</div>
</div>
<span
class=
"tag tag-red"
v-show=
"activeTab == '1'"
>
高危筛查
</span>
<span
class=
"tag tag-red"
v-show=
"activeTab == '1'"
>
高危筛查
</span>
<span
class=
"tag tag-blue"
v-show=
"activeTab == '2'"
>
专病筛查
</span>
<span
class=
"tag tag-blue"
v-show=
"activeTab == '2'"
>
专病筛查
</span>
...
@@ -50,21 +50,23 @@
...
@@ -50,21 +50,23 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
showNotify
}
from
'vant'
import
{
useStore
}
from
'@/residentWX/store'
import
{
queryScreenList
}
from
'@/api/residentWX/screening.js'
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
activeTab
:
undefined
,
store
:
useStore
(),
activeTab
:
'1'
,
tabList
:
[
tabList
:
[
{
title
:
'高危筛查'
,
name
:
'1'
},
{
title
:
'高危筛查'
,
name
:
'1'
},
{
title
:
'专病筛查'
,
name
:
'2'
}
{
title
:
'专病筛查'
,
name
:
'2'
}
],
],
list
:
[
{
id
:
1
},
{
id
:
2
}
],
list
:
[],
pagination
:
{
pagination
:
{
total
:
0
,
total
:
0
,
pageIndex
:
1
,
pageIndex
:
1
,
pageSize
:
5
pageSize
:
8
},
},
loading
:
false
,
loading
:
false
,
finished
:
false
,
finished
:
false
,
...
@@ -78,13 +80,12 @@ export default {
...
@@ -78,13 +80,12 @@ export default {
},
},
idCard
()
{
idCard
()
{
return
this
.
routeQuery
.
idCard
return
this
.
routeQuery
.
idCard
}
},
userInfo
()
{
return
this
.
store
.
userInfo
},
},
},
created
()
{
created
()
{
if
(
!
this
.
idCard
)
{
showNotify
({
type
:
'warning'
,
message
:
'未获取到用户信息'
,
duration
:
0
})
return
}
this
.
init
()
this
.
init
()
},
},
mounted
()
{
mounted
()
{
...
@@ -101,20 +102,33 @@ export default {
...
@@ -101,20 +102,33 @@ export default {
init
()
{
init
()
{
this
.
load
()
this
.
load
()
},
},
load
()
{
load
(
loading
=
true
)
{
const
query
=
{
screeningType
:
this
.
activeTab
,
residentInfoId
:
this
.
userInfo
.
residentInfoId
,
pageIndex
:
this
.
pagination
.
pageIndex
,
pageSize
:
this
.
pagination
.
pageSize
}
queryScreenList
(
query
,
loading
).
then
(
res
=>
{
this
.
list
=
this
.
list
.
concat
(
res
.
data
.
dataList
||
[])
this
.
pagination
.
total
=
res
.
data
.
total
||
0
this
.
finished
=
this
.
list
.
length
>=
this
.
pagination
.
total
}).
finally
(()
=>
{
this
.
loading
=
false
this
.
loadingRefresh
=
false
})
},
},
onMore
()
{
onMore
()
{
this
.
pagination
.
pageIndex
++
this
.
pagination
.
pageIndex
++
this
.
load
()
this
.
load
()
},
},
onRefresh
()
{
onRefresh
()
{
//
this.list = []
this
.
list
=
[]
this
.
pagination
.
pageIndex
=
1
this
.
pagination
.
pageIndex
=
1
this
.
load
(
false
)
this
.
load
(
false
)
},
},
tabChange
()
{
tabChange
()
{
//
this.list = []
this
.
list
=
[]
this
.
pagination
.
pageIndex
=
1
this
.
pagination
.
pageIndex
=
1
this
.
load
()
this
.
load
()
},
},
...
@@ -136,7 +150,7 @@ export default {
...
@@ -136,7 +150,7 @@ export default {
background-color: #f9f9f9;
background-color: #f9f9f9;
}
}
.card-list {
.card-list {
padding-bottom:
76px
;
padding-bottom:
.3rem
;
}
}
.card {
.card {
position: relative;
position: relative;
...
...
src/residentWX/screening/detail/FirstDetail.vue
View file @
f00962fd
...
@@ -12,12 +12,12 @@
...
@@ -12,12 +12,12 @@
style=
"width: .56rem"
>
style=
"width: .56rem"
>
<div
class=
"grow flex flex-col justify-between pl-3"
>
<div
class=
"grow flex flex-col justify-between pl-3"
>
<div
class=
"flex justify-between"
>
<div
class=
"flex justify-between"
>
<span
class=
"name"
>
张一华
</span>
<span
class=
"name"
>
{{
userInfo
.
residentName
}}
</span>
<span>
筛查日期:
2024-10-11
</span>
<span>
筛查日期:
{{
info
.
screenDate
||
'-'
}}
</span>
</div>
</div>
<div>
<div>
<span>
慢病高危评估结果:
</span>
<span>
慢病高危评估结果:
</span>
<span
>
高危风险人群
</span>
<span
:class=
"
{'text-red': info.screenResult !== 1 }">
{{
info
.
screenResultName
}}
</span>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -37,91 +37,79 @@
...
@@ -37,91 +37,79 @@
<van-collapse
v-model=
"activeCollapse"
ref=
"collapse"
class=
"doc-collapse"
<van-collapse
v-model=
"activeCollapse"
ref=
"collapse"
class=
"doc-collapse"
@
change=
"collapseChange"
>
@
change=
"collapseChange"
>
<van-collapse-item
v-for=
"
item in collapseList"
:key=
"item
.name"
<van-collapse-item
v-for=
"
collapse in collapseList"
:key=
"collapse
.name"
:title=
"
item.title"
:name=
"item
.name"
>
:title=
"
collapse.title"
:name=
"collapse
.name"
>
<template
#
right-icon
>
<template
#
right-icon
>
<doc-icon
type=
"doc-down"
/>
<doc-icon
type=
"doc-down"
/>
</
template
>
</
template
>
<div
class=
"list"
>
<div
v-for=
"item in collapse.columns"
:key=
"item.key"
>
<div
v-if=
"item.key == 'pressure'"
class=
"pt-3"
>
<table
class=
"w-full"
>
<tr>
<td
style=
"width: 7.1em"
>
血压值(mmHg)
</td>
<td>
低压值(左侧)
</td>
<td></td>
<td>
高压值(右侧)
</td>
</tr>
<tr>
<td>
第1次测量
</td>
<td>
{{ info.pressureOneDbp || '-' }}
</td>
<td>
/
</td>
<td>
{{ info.pressureOneSbp || '-' }}
</td>
</tr>
<tr>
<td>
第2次测量
</td>
<td
class=
"flex"
>
{{ info.pressureTwoDbp || '-' }}
</td>
<td>
/
</td>
<td>
{{ info.pressureTwoSbp || '-' }}
</td>
</tr>
</table>
</div>
<div
v-else
class=
"flex justify-between py-1 border-bottom item"
>
<span
class=
"shrink-0 mr-2 label"
>
{{ item.title }}
</span>
<span
v-if=
"item.key === 'idCard'"
>
{{ $idCardHide(collapse.info.idCard) || '-' }}
</span>
<span
class=
"text-end"
v-else
>
<span>
{{ collapse.info[item.key] || '-' }}
</span>
<span
v-if=
"item.unit"
class=
"ml-1"
>
{{ item.unit }}
</span>
</span>
</div>
</div>
</div>
</van-collapse-item>
</van-collapse-item>
</van-collapse>
</van-collapse>
</div>
</div>
</div>
</div>
<!-- <div class="py-4 border-bottom">
<div class="px-4 doc-title">居民信息</div>
</div>
<div class="px-4 list">
<div v-for="item in columnsBase" :key="item.key"
class="flex justify-between py-4 border-bottom item">
<span class="shrink-0 mr-2 label">{{ item.title }}</span>
<span v-if="item.key === 'idCard'">{{ $idCardHide(residentInfo.idCard) || '-' }}</span>
<span class="text-end" v-else>{{ residentInfo[item.key] || '-' }}</span>
</div>
</div>
<div class="py-4 border-bottom">
<div class="px-4 doc-title">筛查信息</div>
</div>
<div class="px-4 list">
<template v-for="item in columnsScreen" :key="item.key">
<div v-if="item.key == 'pressure'" class="pt-3">
<table class="w-full">
<tr>
<td style="width: 7.1em">血压值(mmHg)</td>
<td>低压值(左侧)</td>
<td></td>
<td>高压值(右侧)</td>
</tr>
<tr>
<td>
第1次测量
</td>
<td>
{{ info.pressureOneDbp || '-' }}
</td>
<td>/</td>
<td>
{{ info.pressureOneSbp || '-' }}
</td>
</tr>
<tr>
<td>
第2次测量
</td>
<td class="flex">
{{ info.pressureTwoDbp || '-' }}
</td>
<td>/</td>
<td>
{{ info.pressureTwoSbp || '-' }}
</td>
</tr>
</table>
</div>
<div v-else
class="flex justify-between py-4 border-bottom item">
<span class="shrink-0 mr-2 label">{{ item.title }}</span>
<div>
<span>{{ info[item.key] || '-' }}</span>
<span v-if="item.unit" class="ml-1">{{ item.unit }}</span>
</div>
</div>
</template>
</div> -->
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
showNotify
}
from
'vant'
import
{
showNotify
}
from
'vant'
import
{
firstScreenDetail
}
from
'@/api/residentWX/screening.js'
import
{
useStore
}
from
'@/residentWX/store'
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
store
:
useStore
(),
activeCollapse
:
[],
activeCollapse
:
[],
collapseList
:
[
collapseList
:
[
{
title
:
'居民信息'
,
name
:
'1'
},
{
title
:
'居民信息'
,
name
:
'1'
,
columns
:
[],
info
:
{}
},
{
title
:
'筛查信息'
,
name
:
'2'
},
{
title
:
'筛查信息'
,
name
:
'2'
,
columns
:
[],
info
:
{}
},
{
title
:
'筛查机构'
,
name
:
'3'
}
{
title
:
'筛查机构'
,
name
:
'3'
,
columns
:
[],
info
:
{}
}
],
],
// 全部展开、收起
// 全部展开、收起
collapseAll
:
false
,
collapseAll
:
false
,
...
@@ -164,9 +152,9 @@ export default {
...
@@ -164,9 +152,9 @@ export default {
id
()
{
id
()
{
return
this
.
$route
.
params
.
id
return
this
.
$route
.
params
.
id
},
},
resident
Info
()
{
user
Info
()
{
return
this
.
info
.
residentsRecord
||
{}
return
this
.
store
.
userInfo
}
}
,
},
},
created
()
{
created
()
{
if
(
!
this
.
id
)
{
if
(
!
this
.
id
)
{
...
@@ -177,7 +165,13 @@ export default {
...
@@ -177,7 +165,13 @@ export default {
},
},
methods
:
{
methods
:
{
init
()
{
init
()
{
this
.
collapseList
[
0
].
columns
=
this
.
columnsBase
this
.
collapseList
[
0
].
info
=
this
.
userInfo
this
.
collapseList
[
1
].
columns
=
this
.
columnsScreen
firstScreenDetail
({
id
:
this
.
id
}).
then
(
res
=>
{
this
.
info
=
res
.
data
||
{}
this
.
collapseList
[
1
].
info
=
this
.
info
})
},
},
onBack
()
{
onBack
()
{
this
.
$router
.
back
()
this
.
$router
.
back
()
...
@@ -243,7 +237,7 @@ export default {
...
@@ -243,7 +237,7 @@ export default {
table {
table {
text-align: left;
text-align: left;
border-bottom: 1px solid var(--van-cell-border-color);
//
border-bottom: 1px solid var(--van-cell-border-color);
>tr {
>tr {
>td {
>td {
padding-left: 14px;
padding-left: 14px;
...
@@ -256,6 +250,7 @@ table {
...
@@ -256,6 +250,7 @@ table {
}
}
}
}
.list {
.list {
color: #262626;
.label {
.label {
min-width: 5em;
min-width: 5em;
}
}
...
...
src/residentWX/utils/common.less
View file @
f00962fd
...
@@ -44,6 +44,9 @@
...
@@ -44,6 +44,9 @@
transition: all .2s;
transition: all .2s;
}
}
.van-collapse-item {
.van-collapse-item {
.van-collapse-item__content {
padding: 0;
}
&::after {
&::after {
display: none;
display: none;
}
}
...
...
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