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
1aa21d32
Commit
1aa21d32
authored
Jan 22, 2025
by
芮自成
Browse files
Options
Browse Files
Download
Plain Diff
代码合并
parents
9fb236ce
04d038f8
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
304 additions
and
27 deletions
+304
-27
index.html
public/index.html
+2
-2
disease.js
src/api/doctor/disease.js
+7
-1
doctorFetch.js
src/api/doctor/doctorFetch.js
+1
-2
generalFU.js
src/api/doctor/generalFU.js
+10
-0
FollowUpDetail.vue
src/doctor/followUp/detail/FollowUpDetail.vue
+121
-0
CrsVisitDetail.vue
src/doctor/followUp/detail/components/CrsVisitDetail.vue
+108
-0
GwDetail.vue
src/doctor/followUp/detail/components/GwDetail.vue
+32
-0
Detail.vue
src/doctor/followUp/generalFU/detail/Detail.vue
+7
-7
PatientDetail.vue
src/doctor/patientDetail/PatientDetail.vue
+2
-1
Visit.vue
src/doctor/patientDetail/components/disease/Visit.vue
+11
-11
index.js
src/router/index.js
+3
-3
No files found.
public/index.html
View file @
1aa21d32
...
...
@@ -7,7 +7,7 @@
<link
rel=
'icon'
href=
'<%= BASE_URL %>favicon.ico'
>
<title><
%=
htmlWebpackPlugin
.
options
.
title
%
></title>
<!-- 3.3.4/vconsole.min.js -->
<script
src=
'https://beta-copd-img.yiboshi.com/20241106/1730860078278931285.js'
></script
>
<!-- <script src='https://beta-copd-img.yiboshi.com/20241106/1730860078278931285.js'></script>--
>
</head>
<body>
<noscript>
...
...
@@ -79,7 +79,7 @@
<!-- built files will be auto injected -->
</body>
<script>
var
vConsole
=
new
VConsole
();
//
var vConsole =new VConsole();
// console.log('Hello world');
</script>
</html>
src/api/doctor/disease.js
View file @
1aa21d32
...
...
@@ -7,7 +7,7 @@ export function fetchDiseaseTypeList(params, loading) {
// 查询随访列表
export
function
getVisitManageList
(
params
,
loading
)
{
return
fetchBase
({
url
:
`/chronic-admin/v1/chronic-visit-record/
page
`
,
body
:
params
,
loading
})
return
fetchBase
({
url
:
`/chronic-admin/v1/chronic-visit-record/
record-list
`
,
body
:
params
,
loading
})
}
// 获取检验项目对码表
...
...
@@ -44,3 +44,8 @@ export function updateDiagnose(params) {
export
function
delDiagnose
(
params
)
{
return
fetchBase
({
url
:
`/chronic-admin/v1/chronic-diagnose-record/delete`
,
body
:
params
,
loading
:
true
})
}
// 报卡信息主键查询
export
function
fetchCurrencyByUuid
(
params
)
{
return
fetchBase
({
url
:
`/chronic-admin/v1/chronic-visit-record-crs/record-uuid`
,
body
:
params
,
loading
:
true
})
}
\ No newline at end of file
src/api/doctor/doctorFetch.js
View file @
1aa21d32
...
...
@@ -34,7 +34,6 @@ export function fetchBase({
backHome
()
return
}
let
bodys
=
{...
body
,
source
:
2
}
return
new
Promise
((
resolve
,
reject
)
=>
{
if
(
loading
)
{
loadingList
++
...
...
@@ -44,7 +43,7 @@ export function fetchBase({
method
:
method
,
url
:
`
${
url
}
`
,
params
:
params
,
data
:
body
s
,
data
:
body
,
headers
:
{
'Authorization'
:
`
${
token
}
`
,
'Content-Type'
:
contentType
...
...
src/api/doctor/generalFU.js
View file @
1aa21d32
...
...
@@ -79,3 +79,12 @@ export function upLoadMultifile(params) {
export
function
messageResend
(
params
)
{
return
fetchBase
({
url
:
`/chronic-admin/v1/chronic-visit-currency/resend-sms`
,
body
:
params
,
loading
:
true
})
}
//慢病管理列表主键查询
export
function
getVisitManageVByUuId
(
params
)
{
return
fetchBase
({
url
:
`/chronic-admin/v1/chronic-visit-record/record-uuid`
,
body
:
params
,
loading
:
true
})
}
//
\ No newline at end of file
src/doctor/followUp/detail/FollowUpDetail.vue
0 → 100644
View file @
1aa21d32
<
template
>
<div
class=
'h-full'
>
<!-- 公卫数据详情 -->
<GwDetail
:info=
"detailInfo"
v-if=
"showGw"
/>
<!-- 通用随访详情 -->
<CurrencyFUDetail
:id=
"detailInfo.relationId"
:resident-id=
"residentId"
v-else-if=
"showCommon"
></CurrencyFUDetail>
<!-- 专病随访详情 -->
<!--
<VisitDetail
:id=
"detailInfo.relationId"
:resident-id=
"residentId"
:disease-type=
"diseaseType"
v-else-if=
"showFU"
></VisitDetail>
-->
<!-- his -->
<!--
<HisDetail
:info=
"detailInfo"
v-else-if=
"showHis"
></HisDetail>
-->
<!-- 报卡随访详情 -->
<CrsVisitDetail
:relationUuid=
"detailInfo.relationUuid"
v-else-if=
"showCrs"
></CrsVisitDetail>
</div>
</
template
>
<
script
>
import
{
getVisitManageVByUuId
}
from
'@/api/doctor/generalFU'
import
GwDetail
from
'@/doctor/followUp/detail/components/GwDetail'
import
CrsVisitDetail
from
'@/doctor/followUp/detail/components/CrsVisitDetail'
import
CurrencyFUDetail
from
'@/doctor/followUp/generalFU/detail/Detail'
export
default
{
name
:
'FollowUpDetail'
,
components
:
{
CurrencyFUDetail
,
CrsVisitDetail
,
GwDetail
},
props
:
{
// id: [String, Number],
// residentId: [String, Number],
// diseaseType: [String, Number]
},
data
()
{
return
{
detailInfo
:
{},
showCommon
:
false
,
showFU
:
false
,
showHis
:
false
,
showCrs
:
false
,
showGw
:
false
}
},
watch
:
{
id
:
{
handler
()
{
this
.
load
()
},
immediate
:
true
}
},
computed
:
{
relationUuid
()
{
return
this
.
$route
.
query
.
relationUuid
},
diseaseType
()
{
return
this
.
$route
.
query
.
diseaseType
},
residentId
()
{
return
this
.
$route
.
query
.
residentInfoId
}
},
methods
:
{
load
()
{
let
par
=
{
relationUuid
:
this
.
relationUuid
}
getVisitManageVByUuId
(
par
).
then
(
res
=>
{
let
record
=
res
.
data
this
.
detailInfo
=
record
this
.
showGw
=
this
.
PhlIsShow
(
record
)
this
.
showFU
=
this
.
FUIsShow
(
record
)
this
.
showCommon
=
this
.
GAUIsShow
(
record
)
this
.
showHis
=
this
.
HisIsShow
(
record
)
this
.
showCrs
=
this
.
CrsIsShow
(
record
)
})
},
//判断是否是专病随访
FUIsShow
(
record
)
{
let
res
=
false
if
((
record
.
serveType
==
3
||
(
record
.
serveType
==
4
)
&&
record
.
source
!=
4
))
{
res
=
true
}
return
res
},
//判断是否是 通用随访
GAUIsShow
(
record
)
{
let
res
=
false
if
(
record
.
serveType
==
5
)
{
res
=
true
}
return
res
},
//判断是否是his
HisIsShow
(
record
)
{
let
res
=
false
if
(
record
.
serveType
==
1
||
record
.
serveType
==
2
)
{
res
=
true
}
return
res
},
//判断是否显示报卡随访
CrsIsShow
(
record
)
{
let
res
=
false
if
(
record
.
serveType
==
6
)
{
res
=
true
}
return
res
},
//判断是否显示报卡随访
PhlIsShow
(
record
)
{
let
res
=
false
if
(
record
.
source
==
4
)
{
res
=
true
}
return
res
}
}
}
</
script
>
<
style
scoped
lang=
'less'
>
</
style
>
\ No newline at end of file
src/doctor/followUp/detail/components/CrsVisitDetail.vue
0 → 100644
View file @
1aa21d32
<!--报卡详情-->
<
template
>
<div
class=
'h-full flex flex-col'
>
<div
class=
'p-3 text-black text-center shrink-0 doc-nav-bar'
>
<span
@
click=
'onBack'
class=
'text-12 back-bt'
>
<doc-icon
type=
'doc-left2'
/>
</span>
<span>
报卡随访详情
</span>
</div>
<div
class=
'p-3 grow cont-box'
>
<div
class=
'p-3 h-full cont-inner'
>
<van-collapse
:model-value=
'activeCollapse'
ref=
'collapse'
class=
'doc-collapse'
>
<van-collapse-item
key=
'1'
title=
'报卡随访详情'
name=
'1'
>
<template
#
right-icon
>
<doc-icon
type=
'doc-down'
/>
</
template
>
<div
class=
'list'
>
<div
class=
'flex justify-between py-1 border-bottom item'
>
<span
class=
'shrink-0 mr-2 label'
>
随访时间
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.visitDate || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
>
<span
class=
'shrink-0 mr-2 label'
>
随访方式
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.visitModeName || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
>
<span
class=
'shrink-0 mr-2 label'
>
随访状态
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.visitStatusName || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
v-if=
"detailInfo.visitStatus===4"
>
<span
class=
'shrink-0 mr-2 label'
>
死亡日期
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.deathDate || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
v-if=
"detailInfo.visitStatus===4"
>
<span
class=
'shrink-0 mr-2 label'
>
死因
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.deathReason || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
v-if=
"detailInfo.visitStatus===5"
>
<span
class=
'shrink-0 mr-2 label'
>
失访原因
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.lossVisitReasonName || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
v-if=
"detailInfo.visitStatus===1"
>
<span
class=
'shrink-0 mr-2 label'
>
治疗状态
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.treatmentStatusName || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
>
<span
class=
'shrink-0 mr-2 label'
>
随访单位
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.visitUnitName || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
>
<span
class=
'shrink-0 mr-2 label'
>
随访科室
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.visitOfficeName || '-'}}
</span></span>
</div>
<div
class=
'flex justify-between py-1 border-bottom item'
>
<span
class=
'shrink-0 mr-2 label'
>
随访医生
</span>
<span
class=
'text-end'
><span>
{{ detailInfo.visitDoctorName || '-'}}
</span></span>
</div>
</div>
</van-collapse-item>
</van-collapse>
</div>
</div>
</div>
</template>
<
script
>
import
{
fetchCurrencyByUuid
}
from
'@/api/doctor/disease'
export
default
{
name
:
'CrsVisitDetail'
,
props
:
{
relationUuid
:
[
String
,
String
]
},
data
()
{
return
{
activeCollapse
:
[
'1'
],
detailInfo
:
{}
}
},
created
()
{
this
.
load
()
},
methods
:
{
load
()
{
if
(
!
this
.
relationUuid
)
{
this
.
$message
.
info
(
'未获取到信息'
)
return
}
let
par
=
{
relationUuid
:
this
.
relationUuid
}
fetchCurrencyByUuid
(
par
).
then
(
res
=>
{
let
result
=
res
.
data
||
{}
this
.
detailInfo
=
result
}).
finally
(()
=>
{
})
},
onBack
()
{
this
.
$router
.
back
()
}
}
}
</
script
>
<
style
scoped
lang=
'less'
>
@import url('../../../utils/common.less');
</
style
>
\ No newline at end of file
src/doctor/followUp/detail/components/GwDetail.vue
0 → 100644
View file @
1aa21d32
<
template
>
<div
class=
'h-full gw-detail'
>
</div>
</
template
>
<
script
>
export
default
{
name
:
'GwDetail'
,
props
:
{
info
:
{
default
:
()
=>
({})
}
},
data
()
{
return
{
src
:
undefined
}
},
created
()
{
this
.
load
()
},
methods
:
{
load
()
{
}
},
}
</
script
>
<
style
lang=
'less'
scoped
>
</
style
>
src/doctor/followUp/generalFU/detail/Detail.vue
View file @
1aa21d32
...
...
@@ -255,8 +255,11 @@ import { fetchCurrencyById, messageResend } from '@/api/doctor/generalFU'
import
{
getTemplateDetail
}
from
'@/api/doctor/workbench'
export
default
{
name
:
'CurrencyFUDetail
.vue
'
,
name
:
'CurrencyFUDetail'
,
components
:
{
ImagePreview
,
Mp4
,
Mp3
},
props
:
{
id
:
String
,
},
data
()
{
return
{
activeCollapse
:
[],
...
...
@@ -307,9 +310,6 @@ export default {
}
},
computed
:
{
routerDetail
()
{
return
this
.
$route
.
query
},
residentInfo
()
{
return
this
.
info
.
residentsRecord
||
{}
},
...
...
@@ -374,12 +374,12 @@ export default {
},
methods
:
{
async
load
()
{
if
(
!
this
.
routerDetail
.
relationI
d
)
{
if
(
!
this
.
i
d
)
{
this
.
$message
.
info
(
'未获取到信息'
)
return
}
let
par
=
{
id
:
this
.
routerDetail
.
relationI
d
id
:
this
.
i
d
}
fetchCurrencyById
(
par
).
then
(
res
=>
{
let
result
=
res
.
data
||
{}
...
...
@@ -401,7 +401,7 @@ export default {
//重新发送
toReSend
()
{
let
par
=
{
id
:
this
.
routerDetail
.
relationI
d
id
:
this
.
i
d
}
messageResend
(
par
).
then
(()
=>
{
this
.
load
()
...
...
src/doctor/patientDetail/PatientDetail.vue
View file @
1aa21d32
...
...
@@ -15,7 +15,7 @@
<span
class=
'tag mr-2'
>
{{ residentInfo.genderName || '-' }}
</span>
<span
:class=
"[deathStatus == 9 ? 'tag-red' : 'tag' ,'mr-2']"
@
click=
'toDeath'
>
{{ deathStatus == 9 ? '死亡' : '存活' }}
</span>
<doc-icon
type=
'doc-edit'
class=
'text-primary'
@
click=
'toArchivesEdit'
v-if=
'deathStatus !=9'
/>
<doc-icon
type=
'doc-edit'
class=
'text-primary'
@
click=
'toArchivesEdit'
/>
<!-- <van-icon class="text-red" name="share" v-if='deathStatus ==9' @click='toCancelDeath'/>-->
</div>
<div
class=
'flex flex-col'
style=
'row-gap: .04rem;line-height: 1.5;'
>
...
...
@@ -245,6 +245,7 @@ export default {
residentInfoId
:
this
.
residentInfoId
,
// operateType=1 新增死亡 3-撤销删除
operateType
:
3
,
source
:
2
}
saveResidentsDeath
(
query
).
then
(
res
=>
{
if
(
res
.
code
==
'SUCCESS'
)
{
...
...
src/doctor/patientDetail/components/disease/Visit.vue
View file @
1aa21d32
...
...
@@ -48,14 +48,14 @@
<span
class=
"label"
>
随访机构
</span>
<span>
{{
item
.
serveUnitName
||
'-'
}}
</span>
</div>
<div
class=
"divider"
v-if=
"item.serveType == 5"
></div>
<div
class=
"bt-group"
v-if=
"item.serveType == 5"
>
<div
class=
"divider"
></div>
<div
class=
"bt-group"
>
<van-button
round
size=
"small"
class=
"doc-btn-primary"
@
click=
"toDetail(item)"
>
详情
</van-button>
<!--
<van-button
round
size=
"small"
class=
"doc-btn-primary"
v-if=
"item.allowUpdate == 1"
>
转诊
</van-button
>
<!--
<van-button
round
size=
"small"
class=
"doc-btn-primary"
v-if=
"item.allowUpdate == 1"
>
转诊
</van-button>
--
>
<van-button
round
size=
"small"
class=
"doc-btn-primary"
@
click=
'editBtn(item)'
v-if=
"!(item.allowUpdate !==1 || item.serveType == 5)"
>
修改
</van-button>
<van-button
round
size=
"small"
class=
"doc-btn-red"
@
click=
"delBtn(item)"
v-if=
"!(item.allowUpdate !==1 || item.serveType == 5)"
>
删除
</van-button>
-->
v-if=
"!(item.allowUpdate !==1 || item.serveType == 5)"
>
删除
</van-button>
</div>
</div>
</div>
...
...
@@ -113,8 +113,8 @@ export default {
methods
:
{
load
(
loading
=
true
)
{
const
query
=
{
pageIndex
:
this
.
pagination
.
pageIndex
,
pageSize
:
this
.
pagination
.
pageSize
,
//
pageIndex: this.pagination.pageIndex,
//
pageSize: this.pagination.pageSize,
residentInfoId
:
this
.
residentInfoId
,
diseaseType
:
this
.
diseaseType
,
}
...
...
@@ -122,7 +122,7 @@ export default {
if
(
this
.
pagination
.
pageIndex
===
1
)
{
this
.
list
=
[]
}
this
.
list
=
this
.
list
.
concat
(
res
.
data
.
dataList
||
[])
this
.
list
=
this
.
list
.
concat
(
res
.
data
||
[])
this
.
pagination
.
total
=
res
.
data
.
total
||
0
this
.
finished
=
this
.
list
.
length
>=
this
.
pagination
.
total
}).
finally
(()
=>
{
...
...
@@ -144,15 +144,15 @@ export default {
this
.
$message
.
info
(
'暂时无法查看 详情信息'
)
return
}
if
(
record
.
serveType
===
5
)
{
// 通用随访
this
.
$router
.
push
({
path
:
'/doctor/followUp/
generalFU/
detail'
,
path
:
'/doctor/followUp/detail'
,
query
:
{
relationId
:
record
.
relationId
relationUuid
:
record
.
relationUuid
,
residentInfoId
:
this
.
residentInfoId
,
diseaseType
:
this
.
diseaseType
,
}
})
}
},
editBtn
()
{
...
...
src/router/index.js
View file @
1aa21d32
...
...
@@ -81,9 +81,9 @@ const routes = [
component
:
()
=>
import
(
/* webpackChunkName: "doctor" */
'@/doctor/screening/detail/SecondDetail.vue'
)
},
{
path
:
'followUp/
generalFU/
detail'
,
name
:
'followUp-
generalFU-
detail'
,
component
:
()
=>
import
(
/* webpackChunkName: "doctor" */
'@/doctor/followUp/
generalFU/detail/
Detail'
)
path
:
'followUp/detail'
,
name
:
'followUp-detail'
,
component
:
()
=>
import
(
/* webpackChunkName: "doctor" */
'@/doctor/followUp/
detail/FollowUp
Detail'
)
},
{
path
:
'followUp/generalFU/add'
,
...
...
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