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
提交
60f30af2
提交
60f30af2
编写于
5月 14, 2019
作者:
yi.li
浏览文件
操作
浏览文件
下载
差异文件
添加接口
上级
75ef9018
381deb5a
变更
8
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
651 行增加
和
11 行删除
+651
-11
App.vue
src/App.vue
+1
-1
opinionDialog.vue
src/components/opinionDialog.vue
+301
-0
env-config.js
src/utils/env-config.js
+5
-0
fetch.js
src/utils/fetch.js
+13
-4
index.js
src/utils/index.js
+5
-0
patientsapi.js
src/utils/patients/patientsapi.js
+51
-1
header.vue
src/views/layout/header.vue
+56
-2
not-complete-list.vue
src/views/patients/not-complete/not-complete-list.vue
+219
-3
未找到文件。
src/App.vue
浏览文件 @
60f30af2
...
...
@@ -48,7 +48,7 @@ export default {
},
created
()
{
vm
=
this
//
vm.getToken()
vm
.
getToken
()
},
mounted
()
{
...
...
src/components/opinionDialog.vue
0 → 100644
浏览文件 @
60f30af2
<
template
>
<div
class=
"opinion-container"
>
<el-dialog
title=
"意见反馈"
:center=
"true"
:visible
.
sync=
"dialogFormVisible"
:before-close=
"beforeClose"
>
<el-form
:model=
"form"
:rules=
"rules"
ref=
"opinionForm"
>
<el-form-item
label=
"意见反馈:"
:label-width=
"formLabelWidth"
prop=
"opinion"
>
<el-input
type=
"textarea"
:rows=
"10"
:maxlength=
"maxlength"
v-model=
"form.opinion"
autocomplete=
"off"
placeholder=
"请告诉我们您遇到的问题或者建议"
></el-input>
<span
class=
"text-count"
>
{{
currentCount
}}
/2000
</span>
</el-form-item>
<el-form-item
label=
"上传图片:"
:label-width=
"formLabelWidth"
prop=
"imgs"
>
<el-upload
class=
"upload-demo"
:action=
"action"
:headers=
"headers"
multiple
list-type=
"picture"
:limit=
"imgLimit"
:accept=
"'image/jpg,image/jpeg,image/png,image/bmp'"
:data=
"imgFile"
:before-upload=
"getImgParam"
:on-remove=
"handleRemove"
:on-success=
"handleSuccess"
:on-error=
"handleError"
:on-exceed=
"handleExceed"
:disabled=
"addImageDisabled"
:file-list=
"fileList"
>
<el-button
size=
"small"
type=
"primary"
@
click=
"addImage"
:disabled=
"addImageDisabled"
>
添加图片
</el-button>
<div
slot=
"tip"
class=
"el-upload__tip"
>
最多5张,每张小于5M,支持jpg,png,bmp
</div>
</el-upload>
</el-form-item>
<el-form-item
label=
"联系方式:"
:label-width=
"formLabelWidth"
prop=
"contact"
>
<el-input
v-model=
"form.contact"
maxlength=
"11"
autocomplete=
"off"
placeholder=
"请输入您的联系方式,如有需要我们会尽快联系您"
></el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"beforeClose"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"submitFrom('opinionForm')"
>
提 交
</el-button>
</div>
<div
slot=
"footer"
class=
"dialog-footer bottom-msg"
>
<div
class=
"disblock"
>
<h1>
客服电话:400-920-8877 工作日:9:00~18:00
</h1>
</div>
<div
class=
"disblock"
>
<img
src=
"https://file.yunqueyi.com/File/static/qrcode_for_yunqueyi.jpg"
alt=
""
>
<div
class=
"ewm-wrap"
>
<h1>
您可以在「云鹊医」公众号里直接留言
</h1>
<h1>
扫一扫二维码关注云鹊医公众号
</h1>
</div>
</div>
</div>
</el-dialog>
<el-dialog
width=
"60%"
title=
""
:center=
"true"
:visible
.
sync=
"innerVisible"
:before-close=
"beforeCloseInner"
:custom-class=
"'result-opinion'"
append-to-body
>
<div
class=
"result-msg"
>
<i
class=
"el-icon-success"
></i>
<span>
提交成功
</span>
</div>
<div
class=
"msg-wrap"
>
<h1>
感谢您的反馈,我们会在
<span>
1个工作日
</span>
内答复您的问题
</h1>
<h1>
请耐心等待
</h1>
</div>
<div
class=
"btn-wrap"
>
<el-button
type=
"primary"
class=
"button"
@
click=
"beforeCloseInner"
>
我知道了
</el-button>
</div>
</el-dialog>
</div>
</
template
>
<
script
>
import
fetch
from
'@/utils/fetch'
import
{
envConfig
}
from
'@/utils/env-config'
import
{
uploadImg
}
from
'@/utils/index'
import
{
getQiniuToken
,
submitFeedback
}
from
'@/utils/patients/patientsapi'
export
default
{
data
(){
return
{
maxlength
:
2000
,
form
:
{
opinion
:
''
,
imgs
:
''
,
contact
:
''
,
},
innerVisible
:
false
,
dialogFormVisible
:
true
,
formLabelWidth
:
'100px'
,
rules
:
{
opinion
:
[
{
required
:
true
,
message
:
'请输入意见反馈'
,
trigger
:
'blur'
}
]
},
addImageDisabled
:
false
,
imgLimit
:
5
,
// 最多允许上传的图片个数
action
:
'https://upload.qiniup.com/'
,
token
:
''
,
headers
:
{
token
:
''
},
imgToken
:
null
,
//qiniu上传token
imgFile
:
{},
fileList
:
[],
urlString
:
''
}
},
created
(){
this
.
token
=
'D34A213A354849A0B08A241771F7A675'
;
// this.token = localStorage.getItem('storageToken');
this
.
headers
.
token
=
this
.
token
},
computed
:
{
currentCount
(){
return
this
.
form
.
opinion
.
length
}
},
methods
:
{
// 获取七牛token
addImage
(){
if
(
this
.
fileList
.
length
>=
this
.
imgLimit
){
this
.
$message
.
warning
(
`最多上传
${
this
.
imgLimit
}
张图片`
);
return
;
}
getQiniuToken
().
then
((
res
)
=>
{
if
(
res
.
code
==
'000000'
){
this
.
imgToken
=
res
.
data
.
token
;
}
else
{
this
.
$message
.
error
(
res
.
message
);
}
})
},
beforeClose
(
e
){
this
.
$emit
(
'closeDialog'
,
false
)
},
beforeCloseInner
(
e
){
this
.
$emit
(
'closeDialog'
,
false
)
},
submitFrom
(
formName
){
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
const
data
=
{
input_text
:
this
.
form
.
opinion
,
system_type
:
'workStation'
,
token
:
this
.
token
,
contact_information
:
this
.
form
.
contact
,
url
:
this
.
urlString
,
};
submitFeedback
(
data
).
then
(
res
=>
{
this
.
dialogFormVisible
=
false
;
this
.
innerVisible
=
true
;
})
}
else
{
return
false
;
}
});
},
getImgParam
(
file
)
{
const
isLt2M
=
file
.
size
/
1024
/
1024
<
5
;
if
(
!
isLt2M
)
{
this
.
$message
.
error
(
'上传图片大小不能超过 5MB!'
);
return
isLt2M
;
}
const
date
=
new
Date
();
const
year
=
date
.
getFullYear
();
const
month
=
date
.
getMonth
()
+
1
;
// const day = date.getDate();
// const hour = date.getHours();
// const minute = date.getMinutes();
// const second = date.getSeconds();
// this.imgFile.imageType = this.imageType;
this
.
imgFile
.
file
=
file
;
this
.
imgFile
.
name
=
file
.
name
;
this
.
imgFile
.
key
=
`qiniu/image/feedback/
${
year
}
/
${
month
}
/
${
file
.
name
}
`
;
this
.
imgFile
.
token
=
this
.
imgToken
;
},
handleRemove
(){},
handleSuccess
(
response
,
file
,
fileList
){
const
imgDomin
=
uploadImg
();
this
.
urlString
+=
`
${
imgDomin
}
/
${
response
.
key
}
;`
this
.
$message
.
success
(
`上传成功!`
);
if
(
fileList
.
length
>=
this
.
imgLimit
){
this
.
addImageDisabled
=
true
;
}
},
handleError
(
err
,
file
,
fileList
){
this
.
$message
.
error
(
JSON
.
stringify
(
err
)
+
'| 如果出现这个错误信息,说明图片上传失败,请检查代码,如果没有问题,请查看服务器是否有问题!并且删除这段代码提示,只保留前面错误信息提示即可!'
);
},
// 超出限制时
handleExceed
(
files
,
fileList
){
if
(
fileList
.
length
>=
this
.
imgLimit
){
this
.
$message
.
warning
(
`最多上传
${
this
.
imgLimit
}
张图片`
);
}
},
}
}
</
script
>
<
style
lang=
"scss"
>
.opinion-container
{
.text-count
{
position
:
absolute
;
right
:
5px
;
bottom
:
3px
;
line-height
:
28px
;
}
.el-form-item__label
{
text-align
:
center
;
}
.el-upload__tip
{
display
:
inline
;
margin-left
:
10px
;
}
.el-upload-list--picture
.el-upload-list__item-thumbnail
{
margin-left
:
-74px
;
}
.el-upload-list__item
{
width
:
92px
;
display
:
inline-block
;
margin-right
:
5px
;
.el-upload-list__item-name
{
display
:
none
;
}
}
.el-upload-list--picture
.el-upload-list__item-status-label
{
background
:
#449284
;
}
.el-dialog__footer
{
padding
:
0
;
}
.bottom-msg
{
margin-top
:
30px
;
padding
:
20px
0
;
background
:
#efefef
;
.disblock
{
width
:
48%
;
display
:
inline-block
;
vertical-align
:
middle
;
img
,
div
{
display
:
inline-block
;
vertical-align
:
middle
;
}
h1
{
color
:
#000
;
font-size
:
14px
;
line-height
:
28px
;
}
img
{
width
:
80px
;
height
:
80px
;
}
.ewm-wrap
{
h1
{
text-align
:
left
;
}
}
}
}
}
.result-opinion
{
border-radius
:
8px
!
important
;
text-align
:
center
;
.result-msg
{
text-align
:
center
;
color
:
#449284
;
span
{
color
:
#000
;
margin-left
:
5px
;
font-size
:
20px
;
}
}
.msg-wrap
{
margin
:
10px
0
;
text-align
:
center
;
h1
{
font-size
:
18px
;
}
span
{
color
:
#449284
;
}
}
.btn-wrap
{
text-align
:
center
;
padding
:
10px
5px
;
}
}
</
style
>
src/utils/env-config.js
浏览文件 @
60f30af2
...
...
@@ -10,6 +10,7 @@ export const envConfig = {
// baseUrl: 'https://test1-sc.yunqueyi.com/',
//baseUrl: 'https://uat-sc.yunqueyi.com/',
baseUrl
:
'https://dev-sc.yunqueyi.com/'
,
apiUrl
:
'https://dev-api.yunqueyi.com/'
,
qiniuFileUrl
:
"https://dev-sc.yunqueyi.com/contents/admin/qiniu/token1"
,
qiniuResourceUrl
:
"https://test1-videos.yunqueyi.com"
,
qiniuImgUrl
:
"https://test1-file.yunqueyi.com"
,
...
...
@@ -20,6 +21,7 @@ export const envConfig = {
},
dev
:
{
baseUrl
:
'https://dev-sc.yunqueyi.com/'
,
apiUrl
:
'https://dev-api.yunqueyi.com/'
,
qiniuFileUrl
:
"https://dev-sc.yunqueyi.com/contents/admin/qiniu/token1"
,
qiniuResourceUrl
:
"https://test1-videos.yunqueyi.com"
,
qiniuImgUrl
:
"https://test1-file.yunqueyi.com"
,
...
...
@@ -30,6 +32,7 @@ export const envConfig = {
},
test
:
{
baseUrl
:
'https://test1-sc.yunqueyi.com/'
,
apiUrl
:
'https://test1-api.yunqueyi.com/'
,
qiniuFileUrl
:
"https://test1-sc.yunqueyi.com/contents/admin/qiniu/token1"
,
qiniuResourceUrl
:
"https://test1-videos.yunqueyi.com"
,
qiniuImgUrl
:
"https://test1-file.yunqueyi.com"
,
...
...
@@ -40,6 +43,7 @@ export const envConfig = {
},
uat
:
{
baseUrl
:
'https://uat-sc.yunqueyi.com/'
,
apiUrl
:
'https://uat-api.yunqueyi.com/'
,
qiniuFileUrl
:
"https://uat-sc.yunqueyi.com/contents/admin/qiniu/token1"
,
qiniuResourceUrl
:
"https://video.yunqueyi.com"
,
// 视频
qiniuImgUrl
:
"https://files.yunqueyi.com"
,
...
...
@@ -50,6 +54,7 @@ export const envConfig = {
},
pro
:
{
baseUrl
:
'https://sc.yunqueyi.com/'
,
apiUrl
:
'https://api.yunqueyi.com/'
,
qiniuFileUrl
:
"https://sc.yunqueyi.com/contents/admin/qiniu/token1"
,
qiniuResourceUrl
:
"https://video.yunqueyi.com"
,
qiniuImgUrl
:
"https://files.yunqueyi.com"
,
...
...
src/utils/fetch.js
浏览文件 @
60f30af2
...
...
@@ -11,11 +11,20 @@ const service = axios.create({
// request拦截器
service
.
interceptors
.
request
.
use
(
config
=>
{
if
(
config
.
headers
[
'sysCode'
]
==
undefined
)
{
config
.
headers
[
'sysCode'
]
=
12
const
noSysCode
=
config
.
headers
.
noSysCode
;
if
(
noSysCode
){
delete
config
.
headers
.
sysCode
;
delete
config
.
headers
.
deviceInfo
;
delete
config
.
headers
.
noSysCode
;
delete
config
.
headers
.
token
;
}
else
{
if
(
config
.
headers
[
'sysCode'
]
==
undefined
)
{
config
.
headers
[
'sysCode'
]
=
12
}
config
.
headers
[
'token'
]
=
'D34A213A354849A0B08A241771F7A675'
// config.headers['token'] = localStorage.getItem('storageToken')
config
.
headers
[
'deviceInfo'
]
=
JSON
.
stringify
({
"app_channel"
:
""
,
"app_mac"
:
""
,
"app_uuid"
:
""
,
"app_version"
:
""
,
"device_brand"
:
""
,
"device_ip"
:
""
,
"device_model"
:
""
,
"device_net"
:
""
,
"device_ops"
:
""
,
"resolution_wh"
:
""
,
"system_level"
:
""
,
"device_type"
:
'10'
})
}
config
.
headers
[
'token'
]
=
localStorage
.
getItem
(
'storageToken'
)
config
.
headers
[
'deviceInfo'
]
=
JSON
.
stringify
({
"app_channel"
:
""
,
"app_mac"
:
""
,
"app_uuid"
:
""
,
"app_version"
:
""
,
"device_brand"
:
""
,
"device_ip"
:
""
,
"device_model"
:
""
,
"device_net"
:
""
,
"device_ops"
:
""
,
"resolution_wh"
:
""
,
"system_level"
:
""
,
"device_type"
:
'10'
})
// if (config.data && config.data.setEntry) {
// config.headers['sysCode'] = config.data.sysCode || 10
// if(config.data.token){
...
...
src/utils/index.js
浏览文件 @
60f30af2
...
...
@@ -177,6 +177,11 @@ export function getSaasDomain(url) {
return
getConfigByEnvType
(
'saasDomainUrl'
)
+
url
}
// 获取saas端api域名地址
export
function
getSaasApiDomain
(
url
)
{
return
getConfigByEnvType
(
'apiUrl'
)
+
url
}
// 根据不同环境,生成URL
function
getConfigByEnvType
(
urlType
)
{
return
envConfig
[
process
.
env
.
BUILD_ENV
][
urlType
]
...
...
src/utils/patients/patientsapi.js
浏览文件 @
60f30af2
import
fetch
from
'../fetch'
;
import
{
getBaseUrl
,
getSaasDomain
}
from
'@/utils/index'
import
{
getBaseUrl
,
getSaasDomain
,
getSaasApiDomain
}
from
'@/utils/index'
const
headers
=
{
...
...
@@ -16,6 +16,27 @@ export const getDiseasesList = (params) => {
})
};
// 获取七牛上传token
export
const
getQiniuToken
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`file/image/token`
),
method
:
'get'
,
params
:
params
,
})
};
// 意见反馈 getSaasApiDomain
export
const
submitFeedback
=
(
data
)
=>
{
return
fetch
({
headers
:
{
noSysCode
:
true
,
"Content-Type"
:
'application/json'
},
url
:
getSaasApiDomain
(
`web/companys/feedback`
),
method
:
'post'
,
data
:
data
,
})
export
const
getPatientDetail
=
(
patientId
)
=>
{
return
fetch
({
headers
,
...
...
@@ -26,3 +47,32 @@ export const getPatientDetail = (patientId) => {
})
};
};
/*资料不全居民*/
export
const
getNotCompleteList
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/uncomplate/
${
params
.
pageNo
}
/
${
params
.
pageSize
}
`
),
method
:
'get'
,
description
:
'获取资料不全居民列表'
,
})
};
export
const
sendCompleteMessage
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/remind`
),
method
:
'post'
,
data
:
params
,
description
:
'提醒居民完善信息'
,
})
};
export
const
getNotCompleteCount
=
(
params
)
=>
{
return
fetch
({
headers
,
url
:
getBaseUrl
(
`healths/patients/uncomplate/counts`
),
method
:
'get'
,
data
:
params
,
description
:
'获取未完善居民人数'
,
})
};
src/views/layout/header.vue
浏览文件 @
60f30af2
...
...
@@ -4,6 +4,7 @@
<img
src=
"../../assets/image/index_logoicon.png"
/>
<p>
云鹊医工作站
</p>
</div>
<div
class=
"user-info"
>
<el-dropdown
trigger=
"click"
@
command=
"handleCommand"
>
<div
class=
"el-dropdown-link"
>
...
...
@@ -16,13 +17,37 @@
</el-dropdown-menu>
</el-dropdown>
</div>
<div
class=
"exp-msg"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"9"
class=
"msg-opinion"
>
<div
class=
"grid-content bg-purple"
>
<i
class=
"el-icon-edit"
></i>
<h1
@
click=
"opinionShow=true"
>
意见反馈
</h1>
</div>
</el-col>
<el-col
:span=
"15"
class=
"msg-phone"
>
<div
class=
"grid-content bg-purple-light"
>
<i
class=
"el-icon-phone"
></i>
<h1>
400-920-8877
</h1>
</div>
</el-col>
</el-row>
</div>
<opinionDialog
v-if=
"opinionShow"
@
closeDialog=
"closeDialog"
></opinionDialog>
</div>
</
template
>
<
script
>
import
{
getLoginUrl
,
getInnerLoginUrl
,
getYunQueYiUrl
}
from
'../../utils/index.js'
import
{
mapGetters
}
from
'vuex'
import
opinionDialog
from
'@/components/opinionDialog'
let
vm
=
null
export
default
{
components
:
{
opinionDialog
},
props
:
{
portrait
:
{
type
:
String
...
...
@@ -37,7 +62,8 @@ export default {
data
()
{
return
{
name
:
''
,
systemInfoList
:
[]
systemInfoList
:
[],
opinionShow
:
false
}
},
computed
:
{
...
...
@@ -61,7 +87,10 @@ export default {
if
(
command
===
'forward'
)
{
window
.
location
.
href
=
getYunQueYiUrl
()
}
}
},
closeDialog
(
val
){
this
.
opinionShow
=
val
}
}
}
</
script
>
...
...
@@ -95,6 +124,31 @@ export default {
margin-left
:
60px
;
}
}
.exp-msg
{
float
:
right
;
line-height
:
64px
;
.msg-opinion
{
width
:
140px
;
}
.msg-phone
{
width
:
180px
;
}
.grid-content
{
i
,
h1
{
display
:
inline-block
;
vertical-align
:
middle
;
font-size
:
16px
;
line-height
:
32px
;
color
:
#838683
;
cursor
:
pointer
;
}
h1
{
padding-right
:
20px
;
border-right
:
1px
solid
#838683
;
}
}
}
.user-info
{
float
:
right
;
padding-right
:
50px
;
...
...
src/views/patients/not-complete/not-complete-list.vue
浏览文件 @
60f30af2
...
...
@@ -5,13 +5,80 @@
:curmbSecond=
"curmbSecond"
>
</bread-crumb>
<section
class=
"not-complete-content screenSet"
>
<h1>
资料不全居民
</h1>
<h1
class=
"page-title"
>
资料不全居民
</h1>
<p
class=
"tip"
v-if=
"notCompleteList.length"
>
共
<span
class=
"fontGreen"
>
{{
pagination
.
totalRows
}}
位
</span>
居民仅通过微信扫码与您绑定,但未完善姓名、手机号等关键信息。提醒居民完善信息后,您将可以对居民进行消息推送和随访计划设置。
<el-button
type=
"primary"
style=
"float: right;"
size=
"small"
@
click=
"sendCompleteMessageMultiple"
>
批量提醒
</el-button>
</p>
<el-table
v-if=
"notCompleteList.length"
:data=
"notCompleteList"
:row-key=
"getRowKeys"
@
selection-change=
"handleSelectionChange"
style=
"width: 100%;"
>
<el-table-column
type=
"selection"
width=
"100"
>
</el-table-column>
<el-table-column
prop=
"headimgurl"
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=
"200"
label=
"微信昵称"
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"country"
label=
"地区"
align=
"center"
>
</el-table-column>
<el-table-column
prop=
"wechatCreatedTime"
label=
"添加时间"
align=
"center"
>
</el-table-column>
<el-table-column
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>
</
template
>
</el-table-column>
</el-table>
<div
class=
"pagination"
v-if=
"notCompleteList.length"
>
<el-pagination
background
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"pagination.pageNo"
:page-sizes=
"[15, 30, 50, 100]"
:page-size=
"pagination.pageSize"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"pagination.totalRows"
>
</el-pagination>
</div>
<div
v-if=
"!notCompleteList.length"
class=
"blank-wrap"
>
<div
class=
"blank-content"
>
<img
src=
"../../../assets/image/no-content1.png"
/>
<p>
暂无资料不全居民
</p>
</div>
</div>
</section>
</section>
</template>
<
script
>
import
BreadCrumb
from
'../../../components/breadcrumb.vue'
import
{
getNotCompleteList
,
sendCompleteMessage
,
getNotCompleteCount
}
from
'../../../utils/patients/patientsapi'
export
default
{
name
:
"not-complete"
,
components
:
{
...
...
@@ -21,16 +88,165 @@
return
{
curmbFirst
:
'居民管理'
,
curmbSecond
:
'资料不全居民'
,
notCompleteList
:
[],
//未完善列表
pagination
:
{
pageNo
:
1
,
pageSize
:
15
,
},
getRowKeys
(
row
)
{
return
row
.
patientId
;
},
selectList
:
[]
}
},
created
()
{
//const vm = this;
},
mounted
()
{
this
.
getNotComplete
()
this
.
getNotCompleteNum
()
},
methods
:
{
handleSelectionChange
(
val
)
{
this
.
selectList
=
val
;
},
handleSizeChange
(
val
)
{
this
.
pagination
.
pageSize
=
val
this
.
getNotComplete
()
},
handleCurrentChange
(
val
)
{
this
.
pagination
.
pageNo
=
val
this
.
getNotComplete
()
},
getNotComplete
()
{
//获取未完善居民列表
const
{
pageNo
,
pageSize
}
=
this
.
pagination
getNotCompleteList
({
pageNo
,
pageSize
,
}).
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
notCompleteList
=
data
.
data
console
.
log
(
'1212'
,
this
.
notCompleteList
)
}
}).
catch
(
function
(
error
)
{
this
.
$message
({
message
:
error
,
type
:
'error'
});
});
},
sendMessageSingle
(
item
)
{
//发送单个提醒
sendCompleteMessage
({
qrcodeType
:
1
,
patientId
:
item
.
patientId
,
}).
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'
});
});
},
sendCompleteMessageMultiple
(
item
)
{
if
(
!
this
.
selectList
.
length
)
{
this
.
$message
({
message
:
'请选择居民'
,
type
:
'warning'
});
}
},
getNotCompleteNum
()
{
getNotCompleteCount
().
then
((
data
)
=>
{
if
(
data
.
code
==
"000000"
)
{
this
.
pagination
.
totalRows
=
data
.
data
;
}
}).
catch
(
function
(
error
)
{
this
.
$message
({
message
:
error
,
type
:
'error'
});
});
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
>
.not-complete-wrap
{
.not-complete-content
{
padding
:
1
0px
;
padding
:
3
0px
;
background
:
#ffffff
;
.tip
{
font-size
:
12px
;
padding
:
30px
0
;
line-height
:
32px
;
}
.page-title
{
font-size
:
20px
;
color
:
#F1E2F3
D
;
padding-bottom
:
20px
;
border-bottom
:
1px
solid
#efefef
;
}
.blank-wrap
{
@media
screen
and
(
min-width
:
1240px
)
and
(
max-width
:
1545px
){
height
:
300px
;
}
@media
screen
and
(
min-width
:
1545px
)
and
(
max-width
:
1600px
){
height
:
500px
;
}
@media
screen
and
(
min-width
:
1600px
){
height
:
600px
;
}
.blank-content
{
text-align
:
center
;
img
{
width
:
100px
;
}
p
{
font-size
:
20px
;
color
:
#999
;
}
}
}
.user-photo
{
border-radius
:
50%
;
width
:
40px
;
}
}
/*重置表格选择框*/
.el-checkbox__input.is-checked
.el-checkbox__inner
,
.el-checkbox__input.is-indeterminate
.el-checkbox__inner
{
border-color
:
#449284
;
background-color
:
#449284
;
}
.el-checkbox__inner
{
border-color
:
#DCDFE6
!
important
;
}
.el-checkbox__input.is-focus
,
.el-checkbox__inner
:hover
,
.el-checkbox__inner.is-focus
{
border-color
:
#449284
!
important
;
}
.el-button--text
{
color
:
#449284
;
}
.fontGreen
{
color
:
#449284
;
}
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
background
:
#449284
!
important
;
}
}
</
style
>
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录