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
提交
05f02ff9
提交
05f02ff9
编写于
3月 29, 2019
作者:
yi.li
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
录入列表,查看详情,更改随访状态接口调整
上级
83f1723c
变更
7
展开全部
显示空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
243 行增加
和
158 行删除
+243
-158
index.js
src/store/followup/index.js
+3
-1
recordManage.js
src/store/followup/recordManage.js
+46
-0
followapis.js
src/utils/followup/followapis.js
+21
-1
set-time-node.vue
src/views/followup/plan-manage/dialog/set-time-node.vue
+35
-46
change-followup-status.vue
.../followup/record-manage/dialog/change-followup-status.vue
+18
-5
followupDetail.vue
src/views/followup/record-manage/dialog/followupDetail.vue
+36
-34
record-list.vue
src/views/followup/record-manage/record-list.vue
+84
-71
未找到文件。
src/store/followup/index.js
浏览文件 @
05f02ff9
import
planManage
from
'./planManage'
import
reservationManage
from
'./reservationManage'
import
workbench
from
'./workbench'
import
recordManage
from
'./recordManage'
const
followModules
=
{
planManage
,
reservationManage
,
workbench
workbench
,
recordManage
}
export
default
followModules
src/store/followup/recordManage.js
0 → 100644
浏览文件 @
05f02ff9
import
followApi
from
'../../utils/followup/followapis'
export
default
{
namespaced
:
true
,
state
:
{
recordList
:
{},
//录入列表
enteringInfo
:
{},
//单条信息查看
constantsData
:
{},
//获取常量
},
mutations
:
{
GET_RECORD_LIST
(
state
,
payload
)
{
state
.
recordList
=
payload
},
GET_ENTERING_INFO
(
state
,
payload
)
{
state
.
enteringInfo
=
payload
},
GET_CONSTANS_DATA
(
state
,
payload
)
{
state
.
constantsData
=
payload
},
},
actions
:
{
async
getRecordList
(
context
,
payload
)
{
await
followApi
.
getEnteringList
({
...
payload
}).
then
(({
data
})
=>
{
context
.
commit
(
'GET_RECORD_LIST'
,
data
);
});
},
async
getEnteringInfo
(
context
,
payload
)
{
await
followApi
.
getEnteringInfo
({},
{
...
payload
}).
then
(({
data
})
=>
{
context
.
commit
(
'GET_ENTERING_INFO'
,
data
);
});
},
// async getConstantsData(context, payload) {
// await followApi.getBasicData({
// ...payload
// }).then(({data}) => {
// context.commit('GET_CONSTANS_DATA', data)
// })
// },
},
}
src/utils/followup/followapis.js
浏览文件 @
05f02ff9
...
...
@@ -135,12 +135,26 @@ const recordManageApi = [
name
:
'getEnteringList'
,
description
:
'录入列表查看'
,
},
{
url
:
'/followup/entering/status/change'
,
method
:
'post'
,
params
:
'data'
,
name
:
'changeEnteringStatus'
,
description
:
'变更随访状态'
,
},
{
url
:
``
,
method
:
'get'
,
params
:
'params'
,
name
:
'getEnteringInfo'
,
description
:
'随访单条信息查看'
,
},
]
const
api
=
{};
const
apis
=
[...
planManageApi
,
...
reservationManageApi
,
...
basicDataApi
,
...
workbenchApi
];
const
apis
=
[...
planManageApi
,
...
reservationManageApi
,
...
basicDataApi
,
...
workbenchApi
,
...
recordManageApi
];
apis
.
forEach
(
item
=>
api
[
item
.
name
]
=
(
params
=
{},
extraConfig
=
{})
=>
{
// const config = {
...
...
@@ -164,6 +178,12 @@ apis.forEach(item => api[item.name] = (params = {}, extraConfig = {}) => {
url
:
getFollowUpSC
(
item
.
url
),
method
:
item
.
method
,
};
}
else
if
(
item
.
name
==
'getEnteringInfo'
)
{
let
url
=
`/followup/entering/
${
extraConfig
.
patientId
}
/fuInfo/
${
extraConfig
.
fuPlanPatientTimesId
}
`
config
=
{
url
:
getFollowUpApi
(
url
),
method
:
item
.
method
,
};
}
else
{
config
=
{
url
:
getFollowUpApi
(
item
.
url
),
...
...
src/views/followup/plan-manage/dialog/set-time-node.vue
浏览文件 @
05f02ff9
<
template
>
<div>
<p><el-button
plain
icon=
"el-icon-plus"
round
@
click=
"addNewNode(timeForm.formRef)"
:disabled=
"activeTab!=='setNewRef'"
>
新增时间节点
</el-button><br></p>
<p><el-button
plain
icon=
"el-icon-plus"
round
@
click=
"addNewNode(timeForm.formRef)"
>
新增时间节点
</el-button><br></p>
<div
class=
"add-time-content"
>
<div
class=
"time-line-scroll"
>
<!--
<el-button
type=
"primary"
size=
"mini"
round
>
设置随访时间
<i
class=
"el-icon-circle-close-outline"
></i></el-button>
-->
<!--
<el-button
type=
"primary"
@
click=
"changeTab(item)"
size=
"mini"
round
v-for=
"(item, index) in setTimeNodeList"
:key=
"index"
>
开始后
{{
item
.
followupTime
}}{{
item
.
followupMark
}}
<i
class=
"el-icon-circle-close-outline"
></i></el-button>
-->
<el-radio-group
v-model=
"activeTab"
@
change=
"changeTab"
>
<el-radio-button
v-if=
"setTimeNodeList.length > 0"
:key=
"item.formRef"
v-for=
"(item, index) in setTimeNodeList"
:label=
"index"
>
开始后
{{
item
.
followupTime
+
item
.
followupMark
}}
<i
class=
"el-icon-circle-close-outline"
@
click=
"deleteTimeNode(item, index)"
></i></el-radio-button>
<el-radio-button
label=
"setNewRef"
>
设置随访时间
</el-radio-button>
<el-radio-button
label=
"setNewRef"
v-if=
"showSetBtn"
>
设置随访时间
<i
class=
"el-icon-circle-close-outline"
@
click=
"deleteAddNode"
v-if=
"setTimeNodeList.length>0"
></i>
</el-radio-button>
</el-radio-group>
<!--
<el-button
type=
"primary"
:class=
"(activeTab || activeTab==0) ? 'blur-btn' : ''"
@
click=
"setTimeForm()"
>
设置随访时间
</el-button>
-->
</div>
...
...
@@ -125,16 +122,8 @@
activeTab
:
null
,
setTimeNodeList
:
[],
currentFormRef
:
1
,
showSetBtn
:
true
,
timeForm
:
_
.
cloneDeep
(
timeFormInit
),
// timeForm: {
// formRef: '',
// followupTime: '',
// followupMark: '',
// followupWay: '',
// pushTime: '',
// remindTime: [],
// followupForm: [],
// },
indexOptions
:
[
{
value
:
'0'
,
...
...
@@ -218,11 +207,11 @@
watch
:
{
activeTab
(
newVal
,
oldVal
)
{
console
.
log
(
'tab变化'
,
newVal
,
oldVal
)
if
(
oldVal
==
'setNewRef'
)
{
return
}
else
{
// if(oldVal == 'setNewRef' || newVal
== 'setNewRef') {
//
return
//
}else {
this
.
setTimeNodeList
[
oldVal
]
=
this
.
timeForm
;
}
//
}
}
},
methods
:
{
...
...
@@ -238,21 +227,24 @@
return
formName
;
},
addNewNode
(
formName
)
{
if
(
this
.
activeTab
!==
'setNewRef'
)
{
// 显示设置按钮
this
.
showSetBtn
=
true
;
this
.
activeTab
=
'setNewRef'
;
this
.
timeForm
=
_
.
cloneDeep
(
timeFormInit
);
this
.
timeForm
.
formRef
=
this
.
getNowTime
();
}
else
{
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
setTimeNodeList
.
push
(
this
.
timeForm
);
// this.store.commit('SET_TIME_NODE_LIST',this.setTimeNodeList)
// this.timeForm = JSON.parse(JSON.stringify(this.timeFormConst));
this
.
timeForm
=
_
.
cloneDeep
(
timeFormInit
);
this
.
timeForm
.
formRef
=
this
.
getNowTime
();
//新增一个form
// this.$refs[formRef].resetFields()
console
.
log
(
'数组'
,
this
.
setTimeNodeList
)
console
.
log
(
'timeForm新的'
,
this
.
timeForm
);
}
else
{
return
false
;
return
;
}
});
}
},
goSelectCartoon
()
{
this
.
isSelectCartoon
=
true
;
...
...
@@ -265,7 +257,6 @@
this
.
timeForm
.
hasSelected
=
''
;
},
changeTab
(
val
){
console
.
log
(
'tab切换'
,
val
)
this
.
activeTab
=
val
;
if
(
val
==
'setNewRef'
)
{
this
.
timeForm
=
_
.
cloneDeep
(
timeFormInit
);
...
...
@@ -273,22 +264,20 @@
}
else
{
this
.
timeForm
=
_
.
cloneDeep
(
this
.
setTimeNodeList
[
val
]);
}
// for(let i=0; i
<
this
.
setTimeNodeList
.
length
;
i
++
)
{
// if(this.setTimeNodeList[i].formRef === val) {
// this.timeForm = this.setTimeNodeList[i];
// console.log('当前tab的form',this.timeForm)
// }
// }
},
setTimeForm
()
{
this
.
activeTab
=
null
;
this
.
timeForm
=
_
.
cloneDeep
(
timeFormInit
);
this
.
timeForm
.
formRef
=
this
.
getNowTime
();
//新增一个form
},
deleteTimeNode
(
item
,
index
)
{
this
.
setTimeNodeList
.
splice
(
index
,
1
)
if
(
this
.
setTimeNodeList
.
length
==
0
)
{
this
.
activeTab
=
'setNewRef'
;
this
.
timeForm
=
_
.
cloneDeep
(
timeFormInit
);
this
.
timeForm
.
formRef
=
this
.
getNowTime
();
//新增一个form
}
},
deleteAddNode
()
{
this
.
showSetBtn
=
false
;
this
.
activeTab
=
0
;
this
.
timeForm
=
this
.
setTimeNodeList
[
0
];
}
},
}
</
script
>
...
...
src/views/followup/record-manage/dialog/change-followup-status.vue
浏览文件 @
05f02ff9
...
...
@@ -14,7 +14,7 @@
<span>
{{
statusForm
.
nickname
}}
</span>
</el-form-item>
<el-form-item
label=
"变更状态"
>
<span>
{{
statusForm
.
status
==
1
?
'
未完成'
:
'已
完成'
}}
</span>
<span>
{{
statusForm
.
status
==
1
?
'
已完成'
:
'未
完成'
}}
</span>
</el-form-item>
<el-form-item
label=
"变更原因"
prop=
"reason"
>
<el-input
type=
"textarea"
v-model=
"statusForm.reason"
placeholder=
"请输入变更原因"
maxlength=
"30"
rows=
"3"
style=
"width:60%;"
></el-input>
...
...
@@ -28,7 +28,7 @@
</div>
</
template
>
<
script
>
import
followApi
from
'@/utils/followup/followapis'
export
default
{
components
:
{},
data
(){
...
...
@@ -66,9 +66,22 @@
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
//后面更改为接口调用
// this.$emit('closeChangeStatus',false,this.statusForm);
followApi
.
changeEnteringStatus
({
info
:
{
fuPlanPatientTimesId
:
this
.
statusForm
.
fuPlanPatientTimesId
,
patientId
:
this
.
statusForm
.
patientId
,
status
:
this
.
statusForm
.
status
,
reason
:
this
.
statusForm
.
reason
,
}
}).
then
(({
data
})
=>
{
if
(
data
==
1
)
{
this
.
$message
.
success
(
'随访状态变更成功!'
);
this
.
$emit
(
'closeChangeStatus'
,
false
);
this
.
$refs
[
'statusForm'
].
resetFields
();
}
else
{
return
;
}
})
}
else
{
return
false
;
}
...
...
src/views/followup/record-manage/dialog/followupDetail.vue
浏览文件 @
05f02ff9
...
...
@@ -12,23 +12,23 @@
<div
class=
"base-content"
>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
姓名:
</div>
<div
class=
"c-content"
>
戴佳康
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
nickname
}}
</div>
</div>
<div
class=
"content-div "
>
<div
class=
"c-title"
>
性别:
</div>
<div
class=
"c-content"
>
男
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
sex
}}
</div>
</div>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
年龄:
</div>
<div
class=
"c-content"
>
55
岁
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
age
}}
岁
</div>
</div>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
身份证号:
</div>
<div
class=
"c-content"
>
3101110196011022419
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
idNo
}}
</div>
</div>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
联系方式:
</div>
<div
class=
"c-content"
>
13111111111
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
mobilePhone
}}
</div>
</div>
</div>
</div>
...
...
@@ -36,34 +36,34 @@
<div
class=
"base-content"
>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
随访计划名称:
</div>
<div
class=
"c-content"
>
2018年糖尿病随访
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
name
}}
</div>
</div>
</div>
<div
class=
"group-info base-content"
>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
随访时间点:
</div>
<div
class=
"c-content"
>
第
3
次随访
</div>
<div
class=
"c-content"
>
第
{{
enteringInfo
.
timeNo
}}
次随访
</div>
</div>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
随访方式:
</div>
<div
class=
"c-content"
>
门诊随访
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
fuPlanType
}}
</div>
</div>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
计划随访时间:
</div>
<div
class=
"c-content"
>
2019-03-23
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
fuPlanTime
}}
</div>
</div>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
随访预约时间:
</div>
<div
class=
"c-content"
>
2019-03-23 10:00-11:00
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
appointmentTime
}}
</div>
</div>
</div>
<div
class=
"group-info base-content flex-start"
>
<div
class=
"content-div"
>
<div
class=
"c-title"
>
随访状态:
</div>
<div
class=
"c-content"
>
已过期
</div>
<div
class=
"c-content"
>
{{
enteringInfo
.
status
}}
</div>
</div>
<div
class=
"content-div"
>
<p
class=
"tip"
>
备注:
更改随访状态原因
</p>
<p
class=
"tip"
>
备注:
{{
enteringInfo
.
remarks
}}
</p>
</div>
</div>
</div>
...
...
@@ -71,20 +71,10 @@
<div
class=
"list-item"
>
<p
class=
"title"
>
预约日志
</p>
</div>
<div
class=
"list-item"
>
<p
class=
"title"
>
2019-3-14,李时珍医生发送微信预约
</p>
<p
class=
"status"
>
居民未响应
</p>
<p
class=
"reason"
></p>
</div>
<div
class=
"list-item"
>
<p
class=
"title"
>
2019-3-20,李时珍医生发送短信预约
</p>
<p
class=
"status"
>
居民已预约
</p>
<p
class=
"reason"
></p>
</div>
<div
class=
"list-item"
>
<p
class=
"title"
>
2019-3-20,李时珍医生发送短信预约
</p>
<p
class=
"status"
>
居民已拒绝
</p>
<p
class=
"reason"
>
变更原因:当天居民临时有事
</p>
<div
class=
"list-item"
v-for=
"(item, index) in enteringInfo.appointmentLogs"
v-if=
"enteringInfo.appointmentLogs.length>0"
:key=
"index"
>
<p
class=
"title"
>
{{
item
.
appointmentDate
}}
,
{{
item
.
appointmentInfo
}}
</p>
<p
class=
"status"
>
{{
item
.
appointmentResult
}}
</p>
<p
class=
"reason"
v-if=
"item.reason"
>
变更原因:
{{
item
.
reason
}}
</p>
</div>
</div>
<div
class=
"base-info console-list"
>
...
...
@@ -92,42 +82,54 @@
<p
class=
"title"
>
患教资料
</p>
</div>
<div
class=
"list-item"
>
<p
class=
"time"
>
开始前三十天
</p>
<
p
class=
"link-p"
>
患教内容啦啦啦
</p
>
<p
class=
"time"
>
{{
enteringInfo
.
eduData
.
timeNodeInfo
}}
</p>
<
a
class=
"link-p"
:href=
"enteringInfo.eduData.shortUrl"
>
{{
enteringInfo
.
eduData
.
eduTitle
}}
</a
>
</div>
</div>
<div
class=
"base-info console-list"
>
<div
class=
"list-item"
>
<p
class=
"title"
>
随访登记表
</p>
</div>
<div
class=
"list-item"
>
<p
class=
"link-p"
>
随访登记表名称1
</p>
</div>
<div
class=
"list-item"
>
<p
class=
"link-p"
>
随访登记表名称2
</p>
<div
class=
"list-item"
v-for=
"(item, index) in enteringInfo.fuTable"
:key=
"index"
v-if=
"enteringInfo.fuTable.length>0"
>
<p
class=
"link-p"
>
{{
item
.
name
}}
</p>
</div>
</div>
</div>
</el-dialog>
</
template
>
<
script
>
import
{
mapState
,
mapActions
}
from
'vuex'
;
export
default
{
data
(){
return
{
dialogDetail
:
true
dialogDetail
:
true
,
// eduData: {},
}
},
props
:
{
dialogFormVisible
:
{
type
:
Boolean
,
default
:
false
},
enteringInfo
:
{
type
:
Object
,
default
:
{}
}
},
computed
:
{
// ...mapState('recordManage',{
// enteringInfo: state => state.enteringInfo,
// })
},
created
()
{
// if(this.dialogFormVisible == true) {
// this.getEnteringInfo({patientId: this.enteringRow.patientId,fuPlanPatientTimesId: this.enteringRow.fuPlanPatientTimesId});
// }
},
mounted
(){
},
methods
:
{
// ...mapActions('recordManage', ['getEnteringInfo']),
closeDetail
(){
this
.
$emit
(
'closeDetail'
,
false
)
},
...
...
src/views/followup/record-manage/record-list.vue
浏览文件 @
05f02ff9
此差异已折叠。
点击以展开。
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录