Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica.cloud.web-education-admin
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
提交
议题看板
打开侧边栏
jingqi.liu
pica.cloud.web-education-admin
提交
32627d1b
提交
32627d1b
编写于
5月 15, 2019
作者:
Yuanzhao.dai
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
居民列表
上级
d2c23d09
变更
5
显示空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
248 行增加
和
62 行删除
+248
-62
patients.js
src/router/patients.js
+2
-2
patientsapi.js
src/utils/patients/patientsapi.js
+22
-4
slidebar.vue
src/views/layout/slidebar.vue
+2
-2
patients-list.vue
src/views/patients/mypatients-manage/patients-list.vue
+187
-49
not-complete-list.vue
src/views/patients/not-complete/not-complete-list.vue
+35
-5
未找到文件。
src/router/patients.js
浏览文件 @
32627d1b
...
...
@@ -105,10 +105,10 @@ const patientsRouters = {
path
:
'not-complete'
,
component
:
notCompleteManage
,
name
:
'notCompleteManage'
,
redirect
:
'not-complete/
not-complete
'
,
redirect
:
'not-complete/
uncompleted-list
'
,
children
:
[
{
path
:
'
not-complete
'
,
path
:
'
uncompleted-list
'
,
component
:
notCompleteList
,
name
:
'notCompleteList'
,
meta
:
{
...
...
src/utils/patients/patientsapi.js
浏览文件 @
32627d1b
...
...
@@ -19,6 +19,15 @@ export const getConstants = (params) => {
/*居民管理*/
export
const
getPatientList
=
(
data
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/infolist`
),
method
:
'post'
,
data
:
data
,
description
:
'获取居民列表'
,
})
};
export
const
getDiseasesList
=
(
params
)
=>
{
return
fetch
({
headers
,
...
...
@@ -71,21 +80,30 @@ export const getNotCompleteList = (params) => {
description
:
'获取资料不全居民列表'
,
})
};
export
const
sendCompleteMessage
=
(
params
)
=>
{
export
const
sendCompleteMessage
=
(
data
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/remind`
),
method
:
'post'
,
data
:
params
,
data
:
data
,
description
:
'提醒居民完善信息'
,
})
};
export
const
getNotCompleteCount
=
(
params
)
=>
{
export
const
sendCompleteMessageList
=
(
data
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/list/remind`
),
method
:
'post'
,
data
:
data
,
description
:
'批量提醒居民完善信息'
,
})
};
export
const
getNotCompleteCount
=
(
data
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/uncomplate/counts`
),
method
:
'get'
,
data
:
params
,
data
:
data
,
description
:
'获取未完善居民人数'
,
})
};
...
...
src/views/layout/slidebar.vue
浏览文件 @
32627d1b
...
...
@@ -11,7 +11,7 @@
<p
class=
"redNum"
v-if=
"subItem.title == '资料不全居民'
&¬CompleteCount
&&$route.path!='/patients-manage/not-complete/
not-complete
'"
&&$route.path!='/patients-manage/not-complete/
uncompleted-list
'"
>
<span
v-if=
"notCompleteCount>999"
>
+999
</span>
<span
v-else
>
{{notCompleteCount}}
</span>
...
...
@@ -103,7 +103,7 @@ export default {
{
title
:
'资料不全居民'
,
icon
:
'el-icon-setting'
,
index
:
'patients-manage/not-complete/
not-complete
'
index
:
'patients-manage/not-complete/
uncompleted-list
'
}
]
}
...
...
src/views/patients/mypatients-manage/patients-list.vue
浏览文件 @
32627d1b
...
...
@@ -5,24 +5,38 @@
:curmbSecond=
"curmbSecond"
>
</bread-crumb>
<section
class=
"not-complete-content screenSet"
>
<h1
class=
"page-title"
>
我的居民:共
800
人
</h1>
<h1
class=
"page-title"
>
我的居民:共
{{
pagination
.
totalRows
}}
人
</h1>
<div
class=
"search-div"
>
<div
class=
"search-input"
>
<el-form
:model=
"searchData"
ref=
"searchData"
:inline=
"true"
:label-width=
"labelWidth"
>
<el-form
:model=
"searchData"
ref=
"searchData"
:inline=
"true"
>
<el-form-item
label=
"性别:"
prop=
"patientName"
>
<el-input
v-model=
"searchData.patientName"
size=
"small"
placeholder=
"请输入姓名"
clearable
></el-input>
<el-select
v-model=
"searchData.sex"
size=
"small"
clearable
:popper-append-to-body=
"false"
>
<el-option
v-for=
"item in sexList"
:key=
"item.no"
:label=
"item.value"
:value=
"item.no"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"年龄段:"
prop=
"mobile"
>
<el-input
v-model=
"searchData.mobile"
size=
"small"
placeholder=
"请输入手机号"
clearable
></el-input>
<el-select
v-model=
"searchData.age"
size=
"small"
clearable
:popper-append-to-body=
"false"
>
<el-option
v-for=
"item in agesList"
:key=
"item.value"
:label=
"item.value"
:value=
"item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"诊断:"
prop=
"startDate"
size=
"small"
>
<el-select
v-model=
"searchData.startDate"
size=
"small"
clearable
:popper-append-to-body=
"false"
>
<el-option
label=
"全部"
value=
""
></el-option>
<el-select
v-model=
"searchData.diseaseId"
size=
"small"
clearable
:popper-append-to-body=
"false"
>
<el-option
v-for=
"
(item, index) in followStartTim
eList"
:key=
"item
+index
"
:label=
"item"
:value=
"item"
>
v-for=
"
item in diseas
eList"
:key=
"item
.diseaseId
"
:label=
"item
.diseaseName
"
:value=
"item
.diseaseId
"
>
</el-option>
</el-select>
</el-form-item>
...
...
@@ -41,59 +55,63 @@
</el-form>
</div>
<div
class=
"search-btn"
>
<el-button
class=
"button-green"
type=
"primary"
size=
"small"
@
click=
"search
Resid
entList"
>
查询
</el-button>
<el-button
class=
"button-green"
type=
"primary"
size=
"small"
@
click=
"search
Pati
entList"
>
查询
</el-button>
<el-button
class=
"button-white"
plain
size=
"small"
@
click=
"resetSearchData('searchData')"
>
重置
</el-button>
</div>
</div>
<el-table
:data=
"notCompleteList"
:row-key=
"getRowKeys"
@
selection-change=
"handleSelectionChange"
:data=
"patientList"
style=
"width: 100%;"
>
<el-table-column
type=
"selection"
width=
"100"
>
</el-table-column>
<el-table-column
prop=
"headimgurl"
prop=
"nickname"
width=
"150"
label=
"姓名"
width=
"100"
lign=
"center"
>
<template
slot-scope=
"scope"
>
<img
class=
"user-photo"
:src=
"scope.row.headimgurl"
/>
</
template
>
</el-table-column>
<el-table-column
prop=
"
wechatUsername
"
width=
"
20
0"
prop=
"
sex
"
width=
"
8
0"
label=
"性别"
align=
"center"
>
<template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.sex==1"
>
男
</span>
<span
v-if=
"scope.row.sex==2"
>
女
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"
country
"
prop=
"
age
"
label=
"年龄"
width=
"80"
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"wechatCreatedTime"
prop=
"showLabelName"
:show-overflow-tooltip=
"true"
label=
"分组"
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"wechatCreatedTime"
prop=
"showDiseaseNames"
:show-overflow-tooltip=
"true"
label=
"诊断"
align=
"center"
>
</el-table-column>
<el-table-column
width=
"120"
label=
"操作"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<!--
<el-button
v-if=
"scope.row.isRemind==1"
type=
"text"
@
click=
"sendMessageSingle(scope.row)"
>
提醒完善信息
</el-button>
<el-button
v-else-if=
"scope.row.isRemind==2"
type=
"text"
style=
"color: #999"
>
提醒已发送
</el-button>
-->
<el-button
type=
"text"
@
click=
"goToDetails(scope.row)"
>
查看详情
</el-button>
</
template
>
</el-table-column>
<div
slot=
"empty"
>
<div
class=
"table-empty"
>
<img
src=
"../../../assets/image/no-content1.png"
>
<p>
没有查询到相关结果
</p>
</div>
</div>
</el-table>
<div
class=
"pagination"
v-if=
"
notCompleteList.length
"
>
<div
class=
"pagination"
v-if=
"
patientList
"
>
<el-pagination
background
@
size-change=
"handleSizeChange"
...
...
@@ -111,7 +129,10 @@
<
script
>
import
BreadCrumb
from
'../../../components/breadcrumb.vue'
import
{
getConstants
}
from
'../../../utils/patients/patientsapi'
import
{
getConstants
,
getDiseasesList
,
getLabelList
,
getPatientList
}
from
'../../../utils/patients/patientsapi'
export
default
{
name
:
"not-complete"
,
components
:
{
...
...
@@ -120,41 +141,150 @@
data
()
{
return
{
curmbFirst
:
'居民管理'
,
curmbSecond
:
'资料不全居民'
,
notCompleteList
:
[],
//未完善列表
curmbSecond
:
'我的居民'
,
pagination
:
{
pageNo
:
1
,
pageSize
:
15
,
totalRows
:
0
,
},
searchData
:
{},
getRowKeys
(
row
)
{
return
row
.
patientId
;
},
selectList
:
[]
selectList
:
[],
sexList
:
[],
//性别
agesList
:
[],
//年龄
diseaseList
:
[],
groupList
:
[],
patientList
:
[]
}
},
created
()
{
//const vm = this;
},
mounted
()
{
this
.
getConstantData
();
//获取性别、年龄段常量
this
.
getDiseaseData
();
//获取疾病种类
this
.
getGroupList
();
//获取分组
this
.
getPatients
({
...
this
.
searchData
});
//获取居民列表
},
methods
:
{
getConstantData
()
{
getConstants
({
numList
:
'P006,P057'
,
})
}).
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
sexList
=
data
.
data
.
P006
;
this
.
agesList
=
data
.
data
.
P057
;
}
}).
catch
((
error
)
=>
{
});
},
methods
:
{
handleSelectionChange
(
val
)
{
this
.
selectList
=
val
;
getDiseaseData
()
{
getDiseasesList
().
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
diseaseList
=
data
.
data
;
}
}).
catch
((
error
)
=>
{
});
},
getGroupList
()
{
getLabelList
({
type
:
1
,
token
:
localStorage
.
getItem
(
"token"
)
}).
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
groupList
=
data
.
data
.
labelNameList
;
}
}).
catch
((
error
)
=>
{
});
},
getPatients
(
payload
)
{
const
{
pageNo
,
pageSize
}
=
this
.
pagination
;
let
searchParams
=
{}
if
(
this
.
searchData
.
age
)
{
let
ageBegin
=
''
;
let
ageEnd
=
''
;
if
(
this
.
searchData
.
age
==
'84+'
)
{
ageBegin
=
'84'
;
ageEnd
=
'200'
;
}
else
{
const
ageItem
=
this
.
searchData
.
age
.
split
(
'-'
);
ageBegin
=
ageItem
[
0
];
ageEnd
=
ageItem
[
1
];
}
searchParams
=
{
...
payload
,
ageBegin
,
ageEnd
}
}
else
{
searchParams
=
payload
}
getPatientList
({
pageNo
,
pageSize
,
...
searchParams
}).
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
patientList
=
data
.
data
.
patientList
;
this
.
pagination
.
totalRows
=
data
.
data
.
totalRows
this
.
patientList
.
forEach
((
item
)
=>
{
item
.
disableNum
=
1
;
let
diseaseNames
=
[];
let
groupNames
=
[]
//转化分组
if
(
item
.
labelModels
)
{
item
.
labelModels
.
forEach
(
item
=>
{
groupNames
.
push
(
item
.
label
)
});
item
.
showLabelName
=
groupNames
.
join
(
'、'
);
}
else
{
item
.
showLabelName
=
'-'
;
}
//转化疾病
if
(
item
.
patientTypeModels
)
{
item
.
patientTypeModels
.
forEach
(
item
=>
{
diseaseNames
.
push
(
item
.
name
)
})
item
.
showDiseaseNames
=
diseaseNames
.
join
(
'、'
);
}
else
{
item
.
showDiseaseNames
=
'-'
;
}
})
}
}).
catch
((
data
)
=>
{
})
},
handleSizeChange
(
val
)
{
this
.
pagination
.
pageSize
=
val
this
.
getNotComplete
()
this
.
getPatients
({
...
this
.
searchData
})
},
handleCurrentChange
(
val
)
{
this
.
pagination
.
pageNo
=
val
this
.
getNotComplete
()
this
.
getPatients
({
...
this
.
searchData
})
},
searchPatientList
()
{
this
.
getPatients
({
...
this
.
searchData
})
},
resetSearchData
()
{
this
.
searchData
=
{}
this
.
getPatients
({
...
this
.
searchData
})
},
goToDetails
()
{
}
},
}
</
script
>
...
...
@@ -209,6 +339,14 @@
border-radius
:
50%
;
width
:
40px
;
}
.table-empty
{
img
{
width
:
100px
;
}
p
{
margin-top
:
-50px
;
}
}
}
/*重置表格选择框*/
.el-checkbox__input.is-checked
.el-checkbox__inner
,
.el-checkbox__input.is-indeterminate
.el-checkbox__inner
{
...
...
src/views/patients/not-complete/not-complete-list.vue
浏览文件 @
32627d1b
...
...
@@ -78,7 +78,10 @@
<
script
>
import
BreadCrumb
from
'../../../components/breadcrumb.vue'
import
{
getNotCompleteList
,
sendCompleteMessage
,
getNotCompleteCount
}
from
'../../../utils/patients/patientsapi'
import
{
getNotCompleteList
,
sendCompleteMessage
,
getNotCompleteCount
,
sendCompleteMessageList
}
from
'../../../utils/patients/patientsapi'
export
default
{
name
:
"not-complete"
,
components
:
{
...
...
@@ -159,13 +162,39 @@
});
},
sendCompleteMessageMultiple
(
item
)
{
sendCompleteMessageMultiple
()
{
if
(
!
this
.
selectList
.
length
)
{
this
.
$message
({
message
:
'请选择居民'
,
type
:
'warning'
});
return
;
}
let
patientIdList
=
[]
this
.
selectList
.
forEach
(
item
=>
{
patientIdList
.
push
(
item
.
patientId
)
})
sendCompleteMessageList
({
qrcodeType
:
1
,
patientIds
:
patientIdList
,
}).
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
$message
({
message
:
'已向居民发送提醒'
,
type
:
'success'
});
}
else
{
this
.
$message
({
message
:
data
.
message
,
type
:
'error'
});
}
}).
catch
(
function
(
error
)
{
this
.
$message
({
message
:
error
,
type
:
'error'
});
})
},
getNotCompleteNum
()
{
getNotCompleteCount
().
then
((
data
)
=>
{
...
...
@@ -245,6 +274,7 @@
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
background
:
#449284
!
important
;
}
}
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录