Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
pet-business-web
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
刘怀志
pet-business-web
Commits
58fe06f1
Commit
58fe06f1
authored
Jun 13, 2023
by
盖献康
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
77cc3e6f
bcc347c3
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
793 additions
and
464 deletions
+793
-464
record.js
src/api/business/record.js
+44
-0
registration.js
src/api/business/registration.js
+26
-0
medical-edit.vue
src/views/medical-record-management/medical-edit.vue
+492
-306
medical-record-management.vue
...s/medical-record-management/medical-record-management.vue
+5
-78
choose-pet.vue
...e-management/registration-queue/components/choose-pet.vue
+28
-45
doctor-card.vue
...-management/registration-queue/components/doctor-card.vue
+22
-5
doctor-detail.vue
...anagement/registration-queue/components/doctor-detail.vue
+1
-1
register-modle.vue
...nagement/registration-queue/components/register-modle.vue
+15
-6
registration-add.vue
...ervice-management/registration-queue/registration-add.vue
+160
-23
No files found.
src/api/business/record.js
0 → 100644
View file @
58fe06f1
import
request
from
'@/utils/request'
// 查询病历管理列表
export
function
listRecord
(
query
)
{
return
request
({
url
:
'/business/record/list'
,
method
:
'get'
,
params
:
query
})
}
// 查询病历管理详细
export
function
getRecord
(
id
)
{
return
request
({
url
:
'/business/record/'
+
id
,
method
:
'get'
})
}
// 新增病历管理
export
function
addRecord
(
data
)
{
return
request
({
url
:
'/business/record'
,
method
:
'post'
,
data
:
data
})
}
// 修改病历管理
export
function
updateRecord
(
data
)
{
return
request
({
url
:
'/business/record'
,
method
:
'put'
,
data
:
data
})
}
// 删除病历管理
export
function
delRecord
(
id
)
{
return
request
({
url
:
'/business/record/'
+
id
,
method
:
'delete'
})
}
src/api/business/registration.js
0 → 100644
View file @
58fe06f1
import
request
from
'@/utils/request'
// 查询宠物宠主信息
export
function
getPetInfo
(
query
)
{
return
request
({
url
:
'/business/register/getPetInfo'
,
method
:
'get'
,
params
:
query
})
}
// 获取当日值班医生列表
export
function
getDoctorInfo
(
query
)
{
return
request
({
url
:
'/business/register/getDoctorInfo'
,
method
:
'get'
,
params
:
query
})
}
// 根据手机号判断宠主是否存在,不存在新增宠主
export
function
checkPetOwner
(
query
)
{
return
request
({
url
:
'/business/register/checkPetOwner'
,
method
:
'get'
,
params
:
query
})
}
src/views/medical-record-management/medical-edit.vue
View file @
58fe06f1
This diff is collapsed.
Click to expand it.
src/views/medical-record-management/medical-record-management.vue
View file @
58fe06f1
...
...
@@ -103,7 +103,7 @@
<el-table
v-loading=
"loading"
:data=
"
case
List"
:data=
"
record
List"
:header-cell-style=
"
{background:'#E8E9E8'}"
border
@selection-change="handleSelectionChange"
...
...
@@ -157,86 +157,13 @@
:
total
=
"total"
@
pagination
=
"getList"
/>
<!--
添加或修改病例管理对话框
-->
<
el
-
dialog
:
title
=
"title"
:
visible
.
sync
=
"open"
append
-
to
-
body
width
=
"500px"
>
<
el
-
form
ref
=
"form"
:
model
=
"form"
:
rules
=
"rules"
label
-
width
=
"80px"
>
<
el
-
form
-
item
label
=
"宠物昵称"
prop
=
"petNickname"
>
<
el
-
input
v
-
model
=
"form.petNickname"
placeholder
=
"请输入宠物昵称"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"昵称"
prop
=
"nickname"
>
<
el
-
input
v
-
model
=
"form.nickname"
placeholder
=
"请输入昵称"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"宠物主手机号"
prop
=
"petOwnerNumber"
>
<
el
-
input
v
-
model
=
"form.petOwnerNumber"
placeholder
=
"请输入宠物主手机号"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"医生姓名"
prop
=
"doctorName"
>
<
el
-
input
v
-
model
=
"form.doctorName"
placeholder
=
"请输入医生姓名"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"所属医院"
prop
=
"deptId"
>
<
el
-
input
v
-
model
=
"form.deptId"
placeholder
=
"请输入所属医院"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"所属科室"
prop
=
"departmentId"
>
<
el
-
input
v
-
model
=
"form.departmentId"
placeholder
=
"请输入所属科室"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"诊断结果"
prop
=
"diagnosticResults"
>
<
el
-
input
v
-
model
=
"form.diagnosticResults"
placeholder
=
"请输入诊断结果"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"病例号"
prop
=
"visitNumber"
>
<
el
-
input
v
-
model
=
"form.visitNumber"
placeholder
=
"请输入病例号"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"就诊时间"
prop
=
"visitTime"
>
<
el
-
date
-
picker
v
-
model
=
"form.visitTime"
clearable
placeholder
=
"请选择就诊时间"
type
=
"date"
value
-
format
=
"yyyy-MM-dd"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"就诊诊位"
prop
=
"visitOffice"
>
<
el
-
input
v
-
model
=
"form.visitOffice"
placeholder
=
"请输入就诊诊位"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"诊断信息"
prop
=
"visitInformation"
>
<
el
-
input
v
-
model
=
"form.visitInformation"
placeholder
=
"请输入诊断信息"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"医嘱"
prop
=
"orders"
>
<
el
-
input
v
-
model
=
"form.orders"
placeholder
=
"请输入医嘱"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"用药信息"
prop
=
"medicationInformation"
>
<
el
-
input
v
-
model
=
"form.medicationInformation"
placeholder
=
"请输入用药信息"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"关联宠物"
prop
=
"petId"
>
<
el
-
input
v
-
model
=
"form.petId"
placeholder
=
"请输入关联宠物"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"关联宠物主"
prop
=
"petOwnerId"
>
<
el
-
input
v
-
model
=
"form.petOwnerId"
placeholder
=
"请输入关联宠物主"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"关联兽医"
prop
=
"doctorId"
>
<
el
-
input
v
-
model
=
"form.doctorId"
placeholder
=
"请输入关联兽医"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"宠物历史数据"
prop
=
"petJson"
>
<
el
-
input
v
-
model
=
"form.petJson"
placeholder
=
"请输入内容"
type
=
"textarea"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"医生历史数据"
prop
=
"doctorJson"
>
<
el
-
input
v
-
model
=
"form.doctorJson"
placeholder
=
"请输入内容"
type
=
"textarea"
/>
<
/el-form-item
>
<
el
-
form
-
item
label
=
"宠物主历史数据"
prop
=
"ownerJson"
>
<
el
-
input
v
-
model
=
"form.ownerJson"
placeholder
=
"请输入内容"
type
=
"textarea"
/>
<
/el-form-item
>
<
/el-form
>
<
div
slot
=
"footer"
class
=
"dialog-footer"
>
<
el
-
button
type
=
"primary"
@
click
=
"submitForm"
>
确
定
<
/el-button
>
<
el
-
button
@
click
=
"cancel"
>
取
消
<
/el-button
>
<
/div
>
<
/el-dialog
>
<
/div
>
<
/div
>
<
/template
>
<
script
>
import
{
listCase
}
from
'@/api/business/case'
import
{
listAllArticle
}
from
'@/api/business/article'
import
{
listRecord
}
from
'@/api/business/record'
export
default
{
name
:
'MedicalRecordManagement'
,
...
...
@@ -258,7 +185,7 @@ export default {
// 总条数
total
:
0
,
// 病例管理表格数据
case
List
:
[],
record
List
:
[],
// 弹出层标题
title
:
''
,
// 是否显示弹出层
...
...
@@ -383,8 +310,8 @@ export default {
/** 查询病例管理列表 */
getList
()
{
this
.
loading
=
true
list
Case
(
this
.
queryParams
).
then
(
response
=>
{
this
.
case
List
=
response
.
rows
list
Record
(
this
.
queryParams
).
then
(
response
=>
{
this
.
record
List
=
response
.
rows
this
.
total
=
response
.
total
this
.
loading
=
false
}
)
...
...
src/views/service-management/registration-queue/components/choose-pet.vue
View file @
58fe06f1
<
template
>
<el-dialog
class=
"pet-choose-modle"
title=
"选择宠物"
:visible
.
sync=
"isShow"
width=
"50%"
append-to-body
>
<el-dialog
class=
"pet-choose-modle"
title=
"选择宠物"
:visible
.
sync=
"isShow"
:before-close=
"closeModle"
width=
"50%"
append-to-body
>
<el-form
ref=
"queryForm"
:inline=
"true"
:model=
"queryParams"
label-width=
"100px"
size=
"small"
>
<div
class=
"basicInformation"
>
<div
class=
"title"
>
方式一:输入宠物ID查询
</div>
</div>
<el-form-item
prop=
"pet
Nicknam
e"
label=
"宠物ID:"
>
<el-form-item
prop=
"pet
Cod
e"
label=
"宠物ID:"
>
<el-input
v-model=
"queryParams.pet
Nicknam
e"
v-model=
"queryParams.pet
Cod
e"
clearable
placeholder=
"请输入宠物ID"
@
keyup
.
enter
.
native=
"handleQuery"
@
blur=
"handleQuery"
/>
</el-form-item>
<div
class=
"basicInformation"
>
<div
class=
"title"
>
方式二:通过宠主查询
</div>
</div>
<el-form-item
prop=
"
petBreed
"
label=
"宠主姓名:"
>
<el-form-item
prop=
"
ownerName
"
label=
"宠主姓名:"
>
<el-input
v-model=
"queryParams.
petBreed
"
v-model=
"queryParams.
ownerName
"
clearable
placeholder=
"请输入宠
物ID
"
placeholder=
"请输入宠
主姓名
"
@
keyup
.
enter
.
native=
"handleQuery"
@
blur=
"handleQuery"
/>
</el-form-item>
<el-form-item
prop=
"
insureList
"
label=
"手机号:"
>
<el-form-item
prop=
"
phone
"
label=
"手机号:"
>
<el-input
v-model=
"queryParams.
insur
e"
v-model=
"queryParams.
phon
e"
clearable
placeholder=
"手机号"
@
keyup
.
enter
.
native=
"handleQuery"
@
blur=
"handleQuery"
/>
</el-form-item>
</el-form>
...
...
@@ -45,13 +48,12 @@
>
<el-table-column
align=
"center"
min-width=
"30"
reserve-selection
type=
"selection"
/>
<el-table-column
align=
"center"
label=
"序号"
min-width=
"80"
show-overflow-tooltip
type=
"index"
/>
<el-table-column
align=
"center"
label=
"宠主姓名"
min-width=
"80"
prop=
"
petOwners.nickn
ame"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"手机号"
min-width=
"80"
prop=
"p
etOwners.nicknam
e"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"会员等级"
min-width=
"80"
prop=
"
petOwners.nickname
"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"会员卡余额"
min-width=
"80"
prop=
"
petOwners.nicknam
e"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"宠主姓名"
min-width=
"80"
prop=
"
ownerN
ame"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"手机号"
min-width=
"80"
prop=
"p
hon
e"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"会员等级"
min-width=
"80"
prop=
"
membershipLevel
"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"会员卡余额"
min-width=
"80"
prop=
"
balanc
e"
show-overflow-tooltip
/>
<el-table-column
align=
"center"
label=
"宠物昵称"
min-width=
"80"
prop=
"petNickname"
show-overflow-tooltip
/>
<el-table-column
:formatter=
"(row, col, cell) => options[cell.substring(0, 1)].children.find((
{value}) => value == Number(cell.substring(1)))
&&
options[cell.substring(0, 1)].children.find(({value}) => value == Number(cell.substring(1))).label"
align=
"center"
label=
"宠物品种"
min-width=
"80"
...
...
@@ -81,7 +83,7 @@
</template>
<
script
>
import
{
listPets
}
from
'@/api/business/pets
'
import
{
getPetInfo
}
from
'@/api/business/registration
'
import
{
deepClone
}
from
'@/utils'
export
default
{
name
:
'ChoosePet'
,
...
...
@@ -93,8 +95,8 @@ export default {
},
data
()
{
return
{
// 选中数
组
ids
:
[]
,
// 选中数
据
chooseData
:
{}
,
// 总条数
total
:
0
,
// 宠物表格数据
...
...
@@ -104,25 +106,14 @@ export default {
// 查询参数
queryParams
:
{
// 导出列表
idList
:
null
,
pageNum
:
1
,
pageSize
:
10
,
petNickname
:
null
,
petAge
:
null
,
petSex
:
null
,
petBreed
:
[],
sterilizationStatus
:
null
,
vaccineSituation
:
null
,
petPicture
:
null
,
petColor
:
null
,
petWeight
:
null
,
existState
:
null
,
createTime
:
null
,
petOwnersId
:
null
,
petCode
:
''
,
ownerName
:
''
,
phone
:
''
,
params
:
{
sort
:
null
},
createBy
:
null
}
},
options
:
[{
value
:
'0'
,
...
...
@@ -145,7 +136,8 @@ export default {
methods
:
{
/** 列表区--多选框选中数据 */
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
console
.
log
(
'selection'
,
selection
)
this
.
chooseData
=
selection
[
0
]
},
cellClass
(
row
)
{
if
(
row
.
columnIndex
===
0
)
{
...
...
@@ -153,7 +145,8 @@ export default {
}
},
choosePet
()
{
console
.
log
(
'1223'
)
this
.
$emit
(
'petChoose'
,
this
.
chooseData
)
this
.
$emit
(
'petModleClose'
,
false
)
},
closeModle
()
{
this
.
$emit
(
'petModleClose'
,
false
)
...
...
@@ -186,19 +179,9 @@ export default {
getList
()
{
this
.
loading
=
true
this
.
queryParams
.
params
=
{
...
this
.
queryParams
.
params
}
if
(
this
.
daterangeCreateTime
!=
null
&&
this
.
daterangeCreateTime
!==
''
)
{
this
.
queryParams
.
params
[
'beginCreateTime'
]
=
this
.
daterangeCreateTime
[
0
]
this
.
queryParams
.
params
[
'endCreateTime'
]
=
this
.
daterangeCreateTime
[
1
]
}
if
(
this
.
daterangeUpdateTime
!=
null
&&
this
.
daterangeUpdateTime
!==
''
)
{
this
.
queryParams
.
params
[
'beginUpdateTime'
]
=
this
.
daterangeUpdateTime
[
0
]
this
.
queryParams
.
params
[
'endUpdateTime'
]
=
this
.
daterangeUpdateTime
[
1
]
}
const
queryParams
=
deepClone
(
this
.
queryParams
)
queryParams
.
petSex
=
this
.
queryParams
.
petSex
&&
this
.
queryParams
.
petSex
.
join
(
','
)
queryParams
.
petBreed
=
this
.
queryParams
.
petBreed
&&
this
.
queryParams
.
petBreed
.
map
(
item
=>
item
.
join
(
''
)).
join
(
','
)
listPets
(
queryParams
).
then
(
response
=>
{
console
.
log
(
'这里面是很多列表页宠物的信息:'
,
this
.
petsList
)
getPetInfo
(
queryParams
).
then
(
response
=>
{
console
.
log
(
'查询宠物宠主信息:'
,
this
.
petsList
)
this
.
petsList
=
response
.
rows
this
.
total
=
response
.
total
this
.
loading
=
false
...
...
src/views/service-management/registration-queue/components/doctor-card.vue
View file @
58fe06f1
...
...
@@ -6,7 +6,7 @@
<div
class=
"tip-green"
/>
<div
class=
"tip-content"
>
进度
信息
>
挂号
信息
</div>
</div>
<!--进度内容-->
...
...
@@ -116,13 +116,13 @@
</el-button>
</div>
<div
class=
"register"
@
click=
"registration(1)"
>
<div
class=
"register"
@
click=
"registration(1
,'usual'
)"
>
<div
class=
"register-img"
>
<el-image
:src=
"require('@/assets/register/xinzengguahao_guahaohui@2x.png')"
/>
</div>
<el-button
type=
"text"
>
挂号
</el-button>
</div>
<div
class=
"add"
@
click=
"registration(1)"
>
<div
class=
"add"
@
click=
"registration(1
, 'add'
)"
>
<div
class=
"add-img"
>
<el-image
:src=
"require('@/assets/register/xinzengguahao_jiahao@2x.png')"
/>
</div>
...
...
@@ -136,14 +136,31 @@
</
template
>
<
script
>
import
{
getDoctorInfo
}
from
'@/api/business/registration'
export
default
{
name
:
'DoctorCard'
,
data
()
{
return
{
}
},
mounted
()
{
this
.
getDoctorList
()
},
methods
:
{
/** 获取当日值班医生列表*/
getDoctorList
()
{
getDoctorInfo
().
then
(
response
=>
{
console
.
log
(
'获取当日值班医生列表:'
,
response
)
})
},
/** 显示医生详情弹窗*/
doctorDetail
(
id
)
{
this
.
$emit
(
'doctorDetail'
,
id
)
},
registration
(
id
)
{
this
.
$emit
(
'registration'
,
id
)
/** 显示挂号/加号弹窗*/
registration
(
id
,
type
)
{
this
.
$emit
(
'registration'
,
{
id
,
type
})
}
}
}
...
...
src/views/service-management/registration-queue/components/doctor-detail.vue
View file @
58fe06f1
<
template
>
<el-dialog
class=
"doctor-detail-modle"
title=
"详情"
:visible
.
sync=
"isShow"
width=
"50%"
append-to-body
>
<el-dialog
class=
"doctor-detail-modle"
title=
"详情"
:visible
.
sync=
"isShow"
:before-close=
"closeModle"
width=
"50%"
append-to-body
>
<el-form
ref=
"doctorForm"
:model=
"doctorForm"
label-width=
"100px"
size=
"small"
>
<el-row>
<el-col
:span=
"8"
>
...
...
src/views/service-management/registration-queue/components/register-modle.vue
View file @
58fe06f1
<
template
>
<el-dialog
class=
"register-modle"
:title=
"
title"
:visible
.
sync=
"isShow"
width=
"50%
"
append-to-body
>
<el-dialog
class=
"register-modle"
:title=
"
registrationType === 'usual' ? '挂号' : '加号'"
:visible
.
sync=
"isShow"
width=
"50%"
:before-close=
"closeModle
"
append-to-body
>
<el-form
ref=
"queryForm"
:inline=
"true"
:model=
"queryParams"
label-width=
"100px"
size=
"small"
>
<el-form-item
prop=
"petNickname"
label=
"主治兽医:"
>
<el-input
...
...
@@ -64,7 +64,7 @@
@
pagination=
"getList"
/>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"
choosePe
t"
>
确 定
</el-button>
<el-button
type=
"primary"
@
click=
"
submi
t"
>
确 定
</el-button>
<el-button
@
click=
"closeModle"
>
取 消
</el-button>
</div>
</el-dialog>
...
...
@@ -77,13 +77,17 @@ import { listPets } from '@/api/business/pets'
export
default
{
name
:
'RegisterModle'
,
props
:
{
title
:
{
type
:
String
,
default
:
'挂号'
},
isShow
:
{
type
:
Boolean
,
default
:
false
},
registrationType
:
{
type
:
String
,
defalut
:
'usual'
},
doctorId
:
{
type
:
String
,
defalut
:
''
}
},
data
()
{
...
...
@@ -110,6 +114,11 @@ export default {
}
},
methods
:
{
submit
()
{},
/** 关闭弹窗*/
closeModle
()
{
this
.
$emit
(
'registerModleClose'
,
false
)
},
/** 列表区--多选框选中数据 */
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
...
...
src/views/service-management/registration-queue/registration-add.vue
View file @
58fe06f1
This diff is collapsed.
Click to expand it.
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