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
c2a75122
Commit
c2a75122
authored
Sep 03, 2024
by
songrui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
筛查详情
parent
d4a1b02e
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
251 additions
and
35 deletions
+251
-35
screening.js
src/api/screening.js
+9
-0
Resident.vue
src/resident/Resident.vue
+2
-1
Detail.vue
src/resident/screening/first/detail/Detail.vue
+165
-0
List.vue
src/resident/screening/first/detail/List.vue
+37
-0
BaseInfo.vue
src/resident/screening/first/form/BaseInfo.vue
+3
-7
CheckTip.vue
src/resident/screening/first/form/CheckTip.vue
+0
-2
IdCheck.vue
src/resident/screening/first/form/IdCheck.vue
+3
-7
Index.vue
src/resident/screening/first/form/Index.vue
+1
-8
ScreenInfo.vue
src/resident/screening/first/form/ScreenInfo.vue
+3
-7
common.less
src/resident/utils/common.less
+15
-0
index.js
src/router/index.js
+10
-0
vue.config.js
vue.config.js
+3
-3
No files found.
src/api/screening.js
View file @
c2a75122
...
...
@@ -5,3 +5,12 @@ export function queryResidentInfo(params) {
return
fetchBase
({
url
:
`/chronic-resident/v1/chronic-residents-record/search-info`
,
body
:
params
,
loading
:
true
})
}
// 查询筛查记录列表
export
function
querScreenList
(
params
)
{
return
fetchBase
({
url
:
`/chronic-resident/v1/chronic-screening-record/screen-list`
,
body
:
params
,
loading
:
true
})
}
// 查询筛查记录详情
export
function
querScreenDetail
(
params
)
{
return
fetchBase
({
url
:
`/chronic-resident/v1/chronic-screening-record/record`
,
body
:
params
,
loading
:
true
})
}
src/resident/Resident.vue
View file @
c2a75122
...
...
@@ -30,7 +30,8 @@ export default {
cellBorderColor
:
'#d9d9d9'
}
}
},
setup
()
{
},
setup
()
{
const
store
=
useStore
()
return
{
store
}
},
...
...
src/resident/screening/first/detail/Detail.vue
0 → 100644
View file @
c2a75122
<
template
>
<div
class=
"h-full pb-5"
>
<div
class=
"p-3 text-16 text-black text-center shrink-0 top-bar"
>
<span
class=
"back-bt"
>
<span
@
click=
"onBack"
>
<doc-icon
type=
"doc-left"
/>
</span>
</span>
<span>
慢病自我初筛详情
</span>
</div>
<div
class=
"py-4 border-bottom"
>
<div
class=
"px-4 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>
{{
residentInfo
[
item
.
key
]
||
'-'
}}
</span>
</div>
</div>
<div
class=
"py-4 border-bottom"
>
<div
class=
"px-4 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>
</template>
<
script
>
import
{
showNotify
}
from
'vant'
import
{
querScreenDetail
}
from
'@/api/screening.js'
export
default
{
data
()
{
return
{
info
:
{},
columnsBase
:
[
{
title
:
'姓名'
,
key
:
'residentName'
},
{
title
:
'性别'
,
key
:
'genderName'
},
{
title
:
'出生日期'
,
key
:
'dataBirth'
},
{
title
:
'年龄'
,
key
:
'currentAge'
},
{
title
:
'民族'
,
key
:
'nationalName'
},
{
title
:
'本人电话'
,
key
:
'telephone'
},
{
title
:
'现住址'
,
key
:
'presentCodeName'
},
{
title
:
'详细地址'
,
key
:
'nowAddress'
},
{
title
:
'户籍地址'
,
key
:
'registeredCodeName'
},
{
title
:
'详细地址'
,
key
:
'permanentAddress'
}
],
columnsScreen
:
[
{
title
:
'年龄'
,
key
:
'currentAge'
,
unit
:
'岁'
},
{
title
:
'既往史'
,
key
:
'medicalHistoryName'
},
{
title
:
'身高'
,
key
:
'height'
,
unit
:
'cm'
},
{
title
:
'体重'
,
key
:
'weight'
,
unit
:
'kg'
},
{
title
:
'BMI'
,
key
:
'bmi'
,
unit
:
'kg/m²'
},
{
title
:
'腰围'
,
key
:
'waistline'
,
unit
:
'cm'
},
{
title
:
'是否吸烟'
,
key
:
'isSmokingName'
},
{
title
:
'家族史'
,
key
:
'familyHistoryName'
},
{
title
:
'血压值'
,
key
:
'pressure'
},
{
title
:
'空腹血糖'
,
key
:
'fastingGlucose'
,
unit
:
'mmol/L'
},
{
title
:
'低密度脂蛋白胆固醇'
,
key
:
'ldlCholesterin'
,
unit
:
'mmol/L'
},
{
title
:
'血清总胆固醇'
,
key
:
'serumCholesterin'
,
unit
:
'mmol/L'
},
{
title
:
'高密度脂蛋白胆固醇'
,
key
:
'hdlCholesterin'
,
unit
:
'mmol/L'
},
{
title
:
'运动'
,
key
:
'exerciseIntensityName'
},
{
title
:
'慢病高危评估结果'
,
key
:
'screenResultName'
},
{
title
:
'筛查日期'
,
key
:
'screenDate'
},
{
title
:
'筛查机构'
,
key
:
'screenUnitName'
}
]
}
},
computed
:
{
id
()
{
return
this
.
$route
.
params
.
id
},
residentInfo
()
{
return
this
.
info
.
residentsRecord
||
{}
}
},
created
()
{
if
(
!
this
.
id
)
{
showNotify
({
type
:
'warning'
,
message
:
'未获取到查询信息'
,
duration
:
0
})
return
}
this
.
init
()
},
methods
:
{
init
()
{
querScreenDetail
({
id
:
this
.
id
}).
then
(
res
=>
{
this
.
info
=
res
.
data
||
{}
})
},
onBack
()
{
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
@import url('../../../utils/common.less');
table {
text-align: left;
border-bottom: 1px solid var(--van-cell-border-color);
>tr {
>td {
padding-left: 14px;
padding-bottom: 12px;
&:first-child {
text-align: right;
padding-left: 0;
}
}
}
}
.list {
.label {
min-width: 5em;
}
}
</
style
>
src/resident/screening/first/detail/List.vue
0 → 100644
View file @
c2a75122
<
template
>
<div>
</div>
</
template
>
<
script
>
import
{
showNotify
}
from
'vant'
import
{
querScreenList
}
from
'@/api/screening.js'
export
default
{
computed
:
{
routeQuery
()
{
return
this
.
$route
.
query
},
idCard
()
{
return
this
.
routeQuery
.
idCard
}
},
created
()
{
if
(
!
this
.
idCard
)
{
showNotify
({
type
:
'warning'
,
message
:
'未获取到用户信息'
,
duration
:
0
})
return
}
this
.
init
()
},
methods
:
{
init
()
{
querScreenList
({
idCard
:
this
.
idCard
})
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
</
style
>
src/resident/screening/first/form/BaseInfo.vue
View file @
c2a75122
<
template
>
<div
class=
"base-info"
>
<div
class=
"flex py-4"
style=
"border-bottom: 1px solid var(--van-cell-border-color);"
>
<div
class=
"flex py-4 border-bottom"
>
<div
class=
"px-4 title"
>
居民信息
</div>
<div
class=
"text-12"
>
请准确填写您的证件信息,标*内容为必填
</div>
</div>
...
...
@@ -255,13 +254,10 @@ export default {
// 现住址
showPresent
:
false
,
// 户籍地址
showRegistered
:
false
showRegistered
:
false
,
store
:
useStore
()
}
},
setup
()
{
const
store
=
useStore
()
return
{
store
}
},
computed
:
{
residentsRecord
()
{
return
this
.
checkInfo
.
residentsRecord
...
...
src/resident/screening/first/form/CheckTip.vue
View file @
c2a75122
...
...
@@ -42,8 +42,6 @@
</
template
>
<
script
>
import
{
isWeiXin
}
from
'@/utils/common.js'
export
default
{
inject
:
[
'checkInfo'
],
methods
:
{
...
...
src/resident/screening/first/form/IdCheck.vue
View file @
c2a75122
<
template
>
<div
class=
"h-full flex flex-col id-check"
>
<div
class=
"flex items-end py-4"
style=
"border-bottom: 1px solid var(--van-cell-border-color);"
>
<div
class=
"flex items-end py-4 border-bottom"
>
<div
class=
"px-4 font-semibold title"
>
居民证件信息
</div>
<div
class=
"text-12"
>
请准确填写您的证件信息,标*内容为必填
</div>
</div>
...
...
@@ -61,14 +60,11 @@ export default {
rules
:
{
idCard
:
[{
required
:
true
,
message
:
'请输入'
},
idCardRule
],
certificateType
:
[{
required
:
true
,
message
:
'请选择'
}]
}
},
store
:
useStore
()
}
},
inject
:
[
'checkInfo'
],
setup
()
{
const
store
=
useStore
()
return
{
store
}
},
created
()
{
this
.
init
()
},
...
...
src/resident/screening/first/form/Index.vue
View file @
c2a75122
...
...
@@ -97,12 +97,5 @@ export default {
</
script
>
<
style
lang=
"less"
scoped
>
.top-bar {
position: relative;
border-bottom: 1px solid #3C3C435C;
.back-bt {
position: absolute;
left: .16rem;
}
}
@import '../../../utils/common.less';
</
style
>
src/resident/screening/first/form/ScreenInfo.vue
View file @
c2a75122
<
template
>
<div
class=
"screen-info"
>
<div
class=
"flex items-end py-4"
style=
"border-bottom: 1px solid var(--van-cell-border-color);"
>
<div
class=
"flex items-end py-4 border-bottom"
>
<div
class=
"px-4 font-semibold title"
>
筛查信息
</div>
<div
class=
"text-12"
>
请根据您身体实际情况填写以下内容
</div>
</div>
...
...
@@ -412,13 +411,10 @@ export default {
screenDateRange
:
{
min
:
new
Date
(
2024
,
9
,
2
),
max
:
undefined
}
},
store
:
useStore
()
}
},
setup
()
{
const
store
=
useStore
()
return
{
store
}
},
computed
:
{
// BMI
bmi
()
{
...
...
src/resident/utils/common.less
View file @
c2a75122
...
...
@@ -10,4 +10,18 @@
width: 3px;
margin-right: 6px;
}
}
// 顶部导航栏
.top-bar {
position: relative;
border-bottom: 1px solid #3C3C435C;
.back-bt {
position: absolute;
left: .16rem;
}
}
.border-bottom {
border-bottom: 1px solid var(--van-cell-border-color);
}
\ No newline at end of file
src/router/index.js
View file @
c2a75122
...
...
@@ -10,6 +10,16 @@ const routes = [
path
:
'screening/first/form'
,
name
:
'resident-screening-first-form'
,
component
:
()
=>
import
(
/* webpackChunkName: "page-resident" */
'@/resident/screening/first/form/Index.vue'
)
},
{
path
:
'screening/first/detail'
,
name
:
'resident-screening-first-detail'
,
component
:
()
=>
import
(
/* webpackChunkName: "page-resident" */
'@/resident/screening/first/detail/List.vue'
)
},
{
path
:
'screening/first/detail/:id'
,
name
:
'resident-screening-first-detail-id'
,
component
:
()
=>
import
(
/* webpackChunkName: "page-resident" */
'@/resident/screening/first/detail/Detail.vue'
)
}
]
},
...
...
vue.config.js
View file @
c2a75122
...
...
@@ -30,11 +30,11 @@ module.exports = defineConfig({
}
},
'/chronic-resident'
:
{
//
target: 'http://192.168.1.43:8903',
target
:
'https://beta-tumour.zmnyjk.com'
,
target
:
'http://192.168.1.43:8903'
,
//
target: 'https://beta-tumour.zmnyjk.com',
changOrigin
:
true
,
pathRewrite
:
{
'^/chronic-resident'
:
'/
chronic-resident
'
'^/chronic-resident'
:
'/'
}
}
},
...
...
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