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
b6636cd3
Commit
b6636cd3
authored
Jan 14, 2025
by
gengchunlei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
医生端小程序 v1.2 1、死亡记录
parent
c29634df
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
289 additions
and
9 deletions
+289
-9
Doctor.vue
src/doctor/Doctor.vue
+1
-1
Detail.vue
src/doctor/deathRecord/detail/Detail.vue
+14
-0
DeathRecordForm.vue
src/doctor/deathRecord/form/DeathRecordForm.vue
+135
-0
Index.vue
src/doctor/deathRecord/form/Index.vue
+111
-0
FormCont.vue
src/doctor/diagnose/form/FormCont.vue
+7
-5
PatientDetail.vue
src/doctor/patientDetail/PatientDetail.vue
+1
-1
FormCont.vue
src/doctor/screening/first/FormCont.vue
+3
-0
FormCont.vue
src/doctor/screening/second/FormCont.vue
+10
-0
Workbench.vue
src/doctor/workbench/Workbench.vue
+1
-1
index.js
src/router/index.js
+6
-1
No files found.
src/doctor/Doctor.vue
View file @
b6636cd3
...
...
@@ -66,7 +66,7 @@ export default {
if
(
!
token
)
{
token
=
sessionStorage
.
getItem
(
'token'
)
if
(
process
.
env
.
NODE_ENV
!==
'production'
)
{
token
=
'
a0b01a59-8e07-4a71-9c1c-0cf25e41810d
'
token
=
'
12d2fd58-ee1f-45b5-b455-cce7126fe19a
'
}
}
if
(
token
)
{
...
...
src/doctor/deathRecord/detail/Detail.vue
0 → 100644
View file @
b6636cd3
<
template
>
</
template
>
<
script
>
export
default
{
name
:
'Detail'
}
</
script
>
<
style
scoped
>
</
style
>
\ No newline at end of file
src/doctor/deathRecord/form/DeathRecordForm.vue
0 → 100644
View file @
b6636cd3
<
template
>
<div>
<van-form
ref=
'form'
>
<div
class=
'title'
>
死亡信息
</div>
<div
class=
'label-title'
>
死亡日期
</div>
<van-field
v-model=
'form.deathDate'
is-link
readonly
name=
'deathDate'
placeholder=
'死亡日期'
class=
'input-back mt-2 form-input'
:rules=
'rules.deathDate'
@
click=
'showDate = true'
/>
<van-popup
v-model:show=
'showDate'
position=
'bottom'
>
<van-date-picker
v-model=
'form._deathDate'
:min-date=
'deathDateRange.min'
:max-date=
'deathDateRange.max'
@
confirm=
'dataConfirm'
@
cancel=
'showDate = false'
/>
</van-popup>
<div
class=
'label-title mt-5'
>
死亡原因
</div>
<van-field
class=
'no-back form-input mt-2'
style=
'padding: 0'
>
<template
#
input
>
<van-radio-group
v-model=
'form.reasonItem'
shape=
"dot"
direction=
'horizontal'
class=
'w-full doc-radio-group'
:rules=
'rules.reasonItem'
>
<van-radio
v-for=
"item in store.getDict('CP00169')"
:key=
'item.value'
:name=
'item.value'
label-position=
'left'
>
<span
class=
'lh-24'
>
{{
item
.
name
}}
</span>
</van-radio>
</van-radio-group>
</
template
>
</van-field>
<van-field
v-if=
'form.reasonItem == 9'
v-model=
'form.deathReasonOther'
name=
'deathReasonOther'
placeholder=
'其他意外情况'
class=
'input-back mt-3 form-input'
rows=
'2'
autosize
type=
'textarea'
/>
</van-form>
</div>
</template>
<
script
>
import
dayjs
from
'dayjs'
import
{
useStore
}
from
'@/doctor/store'
export
default
{
name
:
'DeathRecordForm'
,
data
()
{
return
{
store
:
useStore
(),
showDate
:
false
,
// 筛查日期可选范围
deathDateRange
:
{
min
:
undefined
,
max
:
undefined
},
form
:
{},
rules
:
{
deathDate
:
[{
required
:
true
,
message
:
"请选择"
}],
reasonItem
:
[{
required
:
true
,
message
:
"请选择"
}],
}
}
},
created
()
{
const
date
=
dayjs
()
this
.
deathDateRange
.
max
=
new
Date
(
date
.
year
(),
date
.
month
(),
date
.
date
())
// this.deathDateRange.min = new Date(date.year() - 10)
this
.
form
.
_deathDate
=
[
date
.
year
(),
date
.
month
(),
date
.
date
()]
this
.
form
.
deathDate
=
dayjs
().
format
(
'YYYY-MM-DD'
)
},
methods
:
{
dataConfirm
({
selectedValues
})
{
this
.
form
.
deathDate
=
selectedValues
.
join
(
'-'
)
this
.
showDate
=
false
},
}
}
</
script
>
<
style
scoped
lang=
'less'
>
.title {
font-weight: bold;
margin-bottom: 20px;
}
.label-title {
font-size: 13px;
color: #595959;
font-weight: 500;
&::after {
content: "*";
color: red;
font-weight: bold;
margin-left: 4px;
}
}
.form-input {
padding: 8px 12px;
border-radius: 8px;
}
.input-back {
background: #FAFAFA;
}
.lh-24 {
//line-height: 24px;
}
:deep(.van-cell:after) {
border-bottom: 0px;
}
</
style
>
\ No newline at end of file
src/doctor/deathRecord/form/Index.vue
0 → 100644
View file @
b6636cd3
<
template
>
<div>
<van-nav-bar
title=
'新增死亡记录'
left-text=
''
left-arrow
@
click-left=
'toBack'
></van-nav-bar>
<div
class=
'p-4 h-overflow'
ref=
'all'
>
<archive-common
:info=
'info'
v-if=
'step == 1'
ref=
'baseInfo'
></archive-common>
<death-record-form
v-if=
'step == 2'
:info=
'info'
ref=
'deathRecordForm'
></death-record-form>
</div>
<div
class=
'bottom-small-line'
></div>
<div
class=
'pt-2 pb-2'
>
<div
class=
'px-5 grow flex flex-col justify-end'
v-if=
'step == 1'
>
<van-button
type=
'primary'
block
round
@
click=
'toNext(2)'
>
下一步
</van-button>
</div>
<div
class=
'px-5 grow flex flex-col justify-end'
v-if=
'step == 2'
>
<van-button
type=
'primary'
block
round
@
click=
'onsubmit'
>
提交
</van-button>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
useStore
}
from
'@/doctor/store'
import
ArchiveCommon
from
'@/doctor/components/archiveCommon/archiveCommon'
import
DeathRecordForm
from
'@/doctor/deathRecord/form/DeathRecordForm'
import
{
getChronicResidentsId
}
from
'@/api/doctor/generalFU'
export
default
{
name
:
'deathRecordIndex'
,
components
:
{
DeathRecordForm
,
ArchiveCommon
},
data
()
{
return
{
store
:
useStore
(),
info
:
{},
resident
:
{},
step
:
1
}
},
computed
:
{
routerDetail
()
{
return
this
.
$route
.
query
}
},
created
()
{
this
.
init
()
},
methods
:
{
async
init
()
{
this
.
info
=
{}
const
res
=
await
getChronicResidentsId
(
this
.
routerDetail
.
residentInfoId
)
const
{
id
,
createDate
,
createDoctorId
,
createDoctorName
,
createOfficeId
,
createOfficeName
,
createUnitId
,
createUnitName
,
updated
,
...
others
}
=
res
.
data
this
.
info
=
{
personId
:
id
,
...
others
,
}
},
async
toNext
(
val
)
{
this
.
$refs
.
all
.
scrollTo
(
0
,
0
)
if
(
val
==
2
)
{
await
this
.
$refs
.
baseInfo
.
onSubmit
()
}
this
.
step
=
val
},
onsubmit
()
{
},
toBack
()
{
if
(
this
.
step
!=
1
)
{
this
.
step
--
return
}
this
.
$router
.
back
()
}
}
}
</
script
>
<
style
scoped
lang=
'less'
>
:deep(.van-nav-bar .van-icon) {
color: #000000;
}
.h-overflow {
height: calc(100vh - 110px);
overflow-y: auto;
}
</
style
>
\ No newline at end of file
src/doctor/diagnose/form/FormCont.vue
View file @
b6636cd3
...
...
@@ -34,7 +34,7 @@
v-model:value=
"form.icdCode"
:diseaseType=
"diseaseType"
@
change=
"icdChange"
/>
<div
class=
'doc-form-label'
required
>
诊断日期
</div>
<van-field
v-model=
"form.diseaseDate"
...
...
@@ -69,7 +69,7 @@
:rules=
"rules.requiredSelect"
/>
</
template
>
<
template
v-else-if=
"diseaseType == 4"
>
<div
class=
'doc-form-label'
required
>
缺血性脑卒中
</div>
<van-field
...
...
@@ -114,7 +114,7 @@
:rules=
"rules.requiredSelect"
/>
</
template
>
<van-popup
v-model:show=
"resultSelectOption.show"
position=
"bottom"
>
<div
class=
"pt-4 pb-4 popup-checkbox"
>
...
...
@@ -132,7 +132,7 @@
class=
"py-3 px-4"
activeStyleNone
:clearable=
"false"
@
change=
"optionChange"
/>
<CheckBtn
v-else
v-model:value=
"resultSelectOption.value"
:options=
"resultSelectOption.array"
...
...
@@ -150,6 +150,7 @@
<
template
#
input
>
<van-radio-group
v-model=
"form.isInspect"
direction=
"horizontal"
shape=
"dot"
class=
"w-full doc-radio-group"
>
<van-radio
v-for=
"item in store.getDict('CP00120')"
:key=
"item.value"
:name=
"item.value"
...
...
@@ -171,6 +172,7 @@
<
template
#
input
>
<van-radio-group
v-model=
"form.isCheck"
direction=
"horizontal"
shape=
"dot"
class=
"w-full doc-radio-group"
>
<van-radio
v-for=
"item in store.getDict('CP00120')"
:key=
"item.value"
:name=
"item.value"
...
...
@@ -332,7 +334,7 @@ export default {
inspectFileList
:
e
.
inspectFileList
,
insType
:
pList
[
0
]?.
insType
,
insName
:
pList
[
0
]?.
insName
,
itemCode
:
pList
[
0
]?.
insType
+
'-2'
itemCode
:
pList
[
0
]?.
insType
+
'-2'
})
}
//未上传图片并存在结论的数据
...
...
src/doctor/patientDetail/PatientDetail.vue
View file @
b6636cd3
...
...
@@ -133,7 +133,7 @@ export default {
{
name
:
'新增专病高危筛查'
,
value
:
2
,
path
:
'/doctor/screening/secondForm'
},
{
name
:
'新增慢病诊断'
,
value
:
3
,
path
:
'/doctor/diagnose/form'
},
{
name
:
'新增通用随访'
,
value
:
4
,
path
:
'/doctor/followUp/generalFU/add'
},
{
name
:
'新增死亡记录'
,
value
:
5
,
path
:
'/doctor/deathRecord/add'
},
]
}
},
...
...
src/doctor/screening/first/FormCont.vue
View file @
b6636cd3
...
...
@@ -143,6 +143,7 @@
<
template
#
input
>
<van-radio-group
v-model=
"form.isSmoking"
direction=
"horizontal"
shape=
"dot"
class=
"w-full doc-radio-group"
>
<van-radio
v-for=
"item in store.getDict('CP00120')"
:key=
"item.value"
:name=
"item.value"
...
...
@@ -301,6 +302,7 @@
<
template
#
input
>
<van-radio-group
v-model=
"form.exerciseIntensity"
direction=
"horizontal"
shape=
"dot"
class=
"w-full doc-radio-group"
>
<van-radio
v-for=
"item in store.getDict('CP00120')"
:key=
"item.value"
:name=
"item.value"
...
...
@@ -318,6 +320,7 @@
<
template
#
input
>
<van-radio-group
v-model=
"form.screenResult"
direction=
"horizontal"
shape=
"dot"
class=
"w-full doc-radio-group"
>
<van-radio
v-for=
"item in store.getDict('CP00119')"
:key=
"item.value"
:name=
"item.value"
...
...
src/doctor/screening/second/FormCont.vue
View file @
b6636cd3
...
...
@@ -224,6 +224,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.mediumStrength'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group'
>
<van-radio
v-for=
"item in store.getDict('CP00120')"
:key=
'item.value'
:name=
'item.value'
...
...
@@ -513,6 +514,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.drinkFrequency'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group-now'
@
change=
'drinkFrequencyChange'
>
...
...
@@ -618,6 +620,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.giveDrink'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group-now'
style=
'background: #F5F5F5'
>
...
...
@@ -658,6 +661,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.isSmoking'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group-now'
>
<van-radio
v-for=
"item in store.getDict('CP00162')"
...
...
@@ -718,6 +722,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.secondSmoking'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group-now'
style=
'background: #F5F5F5'
>
...
...
@@ -740,6 +745,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.blackSpinySkin'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group'
>
<van-radio
v-for=
"item in store.getDict('CP00134')"
:key=
'item.value'
:name=
'item.value'
...
...
@@ -759,6 +765,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.mentalTension'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group'
>
<van-radio
v-for=
"item in store.getDict('CP00135')"
:key=
'item.value'
:name=
'item.value'
...
...
@@ -778,6 +785,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.xanthoma'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group'
>
<van-radio
v-for=
"item in store.getDict('CP00135')"
:key=
'item.value'
:name=
'item.value'
...
...
@@ -797,6 +805,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'form.tendoIncrassation'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group'
>
<van-radio
v-for=
"item in store.getDict('CP00120')"
:key=
'item.value'
:name=
'item.value'
...
...
@@ -816,6 +825,7 @@
<
template
#
input
>
<van-radio-group
v-model=
'riskScoreInfo'
direction=
'horizontal'
shape=
"dot"
class=
'w-full doc-radio-group'
>
<van-radio
v-for=
"item in store.getDict('CP00136')"
:key=
'item.value'
:name=
'item.value'
...
...
src/doctor/workbench/Workbench.vue
View file @
b6636cd3
...
...
@@ -28,7 +28,7 @@
<div
class=
"h-full flex flex-col workbench-search-box"
>
<div
class=
"px-4 py-3 grow"
>
<div
class=
"mb-3"
>
查询范围
</div>
<van-radio-group
v-model=
"configValue.range"
direction=
"horizontal"
>
<van-radio-group
v-model=
"configValue.range"
direction=
"horizontal"
shape=
"dot"
>
<van-radio
:name=
"1"
>
本科室
</van-radio>
<van-radio
:name=
"2"
>
本人
</van-radio>
</van-radio-group>
...
...
src/router/index.js
View file @
b6636cd3
...
...
@@ -99,7 +99,12 @@ const routes = [
path
:
'diagnose/detail'
,
name
:
'diagnose-detail'
,
component
:
()
=>
import
(
/* webpackChunkName: "doctor" */
'@/doctor/diagnose/detail/DiagnoseDtail.vue'
)
}
},
{
path
:
'deathRecord/add'
,
name
:
'deathRecord-add'
,
component
:
()
=>
import
(
/* webpackChunkName: "doctor" */
'@/doctor/deathRecord/form/Index.vue'
)
},
]
},
{
...
...
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