修改外呼记录
This commit is contained in:
parent
16d037590e
commit
172464c741
@ -8,4 +8,13 @@ export function uploadRobotPublishRecord(query) {
|
|||||||
params: query
|
params: query
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 问卷列表
|
||||||
|
|
||||||
|
export function selectQuestionInfoList(query) {
|
||||||
|
return request({
|
||||||
|
url: '/system/question/selectQuestionInfoList',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@ -2,8 +2,8 @@
|
|||||||
<div class="app-container" ref="layout">
|
<div class="app-container" ref="layout">
|
||||||
<div ref="topform" class="form">
|
<div ref="topform" class="form">
|
||||||
<SearchFilter
|
<SearchFilter
|
||||||
:labelWidths="280"
|
labelWidth="100px"
|
||||||
labelWidth="120px"
|
:labelWidths="310"
|
||||||
size="small"
|
size="small"
|
||||||
@search="handleQuery"
|
@search="handleQuery"
|
||||||
@reset="resetQuery"
|
@reset="resetQuery"
|
||||||
@ -11,7 +11,25 @@
|
|||||||
:query="query"
|
:query="query"
|
||||||
v-show="showSearch"
|
v-show="showSearch"
|
||||||
>
|
>
|
||||||
<el-form-item label="外呼时间" prop="startTime" label-width="120px">
|
<el-form-item label="患者姓名" prop="patientName">
|
||||||
|
<el-input
|
||||||
|
v-model="queryParams.patientName"
|
||||||
|
placeholder="请输入患者姓名"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="handleQuery"
|
||||||
|
style="width: 220px"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="患者电话" prop="patientPhone">
|
||||||
|
<el-input
|
||||||
|
v-model="queryParams.patientPhone"
|
||||||
|
placeholder="请输入患者电话"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="handleQuery"
|
||||||
|
style="width: 220px"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="外呼时间" prop="startTime">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="dischargeTime"
|
v-model="dischargeTime"
|
||||||
type="daterange"
|
type="daterange"
|
||||||
@ -20,17 +38,25 @@
|
|||||||
style="width: 220px"
|
style="width: 220px"
|
||||||
value-format="yyyy-MM-dd"
|
value-format="yyyy-MM-dd"
|
||||||
end-placeholder="结束日期"
|
end-placeholder="结束日期"
|
||||||
|
@change="changeTime"
|
||||||
>
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="问卷名称" prop="questionnaireName">
|
<el-form-item label="问卷名称" prop="questionnaireName">
|
||||||
<el-input
|
<el-select
|
||||||
v-model="queryParams.questionnaireName"
|
v-model="queryParams.questionInfoId"
|
||||||
placeholder="请输入问卷名称"
|
placeholder="请选择问卷名称"
|
||||||
clearable
|
clearable
|
||||||
@keyup.enter.native="handleQuery"
|
|
||||||
style="width: 220px"
|
style="width: 220px"
|
||||||
/>
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in questionnaireList"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.questionnaireName"
|
||||||
|
:value="item.id"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="任务节点类型" prop="taskNodeType">
|
<el-form-item label="任务节点类型" prop="taskNodeType">
|
||||||
<el-select
|
<el-select
|
||||||
@ -48,6 +74,44 @@
|
|||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="医院" prop="hospitalAgencyId">
|
||||||
|
<el-select
|
||||||
|
v-model="queryParams.hospitalAgencyId"
|
||||||
|
filterable
|
||||||
|
placeholder="请选择医院"
|
||||||
|
style="width: 220px"
|
||||||
|
clearable
|
||||||
|
@clear="clearhospitalAgency"
|
||||||
|
@change="changehospitalAgency"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in hospitalAgencylist"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.agencyName"
|
||||||
|
:value="item.id"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="科室" prop="departmentId">
|
||||||
|
<el-select
|
||||||
|
v-model="queryParams.departmentId"
|
||||||
|
filterable
|
||||||
|
placeholder="请选择科室"
|
||||||
|
style="width: 220px"
|
||||||
|
clearable
|
||||||
|
@clear="cleardepartment"
|
||||||
|
@change="changedepartment"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in departmentlist"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.departmentName"
|
||||||
|
:value="item.id"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
</SearchFilter>
|
</SearchFilter>
|
||||||
</div>
|
</div>
|
||||||
<div ref="table">
|
<div ref="table">
|
||||||
@ -61,7 +125,11 @@
|
|||||||
<el-table-column label="序号" type="index" width="48" align="center" />
|
<el-table-column label="序号" type="index" width="48" align="center" />
|
||||||
<el-table-column label="患者姓名" align="center" prop="patientName" />
|
<el-table-column label="患者姓名" align="center" prop="patientName" />
|
||||||
<el-table-column label="患者电话" align="center" prop="patientPhone" />
|
<el-table-column label="患者电话" align="center" prop="patientPhone" />
|
||||||
<el-table-column label="路径名称" align="center" prop="manageRouteName" />
|
<el-table-column
|
||||||
|
label="路径名称"
|
||||||
|
align="center"
|
||||||
|
prop="manageRouteName"
|
||||||
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="问卷模板名称"
|
label="问卷模板名称"
|
||||||
align="center"
|
align="center"
|
||||||
@ -72,22 +140,25 @@
|
|||||||
align="center"
|
align="center"
|
||||||
prop="scriptTemplateName"
|
prop="scriptTemplateName"
|
||||||
/>
|
/>
|
||||||
|
<el-table-column
|
||||||
|
label="医院"
|
||||||
|
align="center"
|
||||||
|
prop="hospitalAgencyName"
|
||||||
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="科室名称"
|
label="科室名称"
|
||||||
align="center"
|
align="center"
|
||||||
prop="departmentName"
|
prop="departmentName"
|
||||||
/>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="机构名称"
|
label="节点任务执行状态"
|
||||||
align="center"
|
align="center"
|
||||||
prop="hospitalAgencyName"
|
prop="nodeExecuteStatus"
|
||||||
/>
|
width="150"
|
||||||
<el-table-column label="节点任务执行状态" align="center" prop="nodeExecuteStatus" width="150">
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ scope.row.nodeExecuteStatus=="EXECUTED"?"已执行":""}}
|
{{ scope.row.nodeExecuteStatus == "EXECUTED" ? "已执行" : "" }}
|
||||||
{{ scope.row.nodeExecuteStatus=="UNEXECUTED"?"未执行":""}}
|
{{ scope.row.nodeExecuteStatus == "UNEXECUTED" ? "未执行" : "" }}
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@ -99,14 +170,11 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
label="执行时间"
|
label="执行时间"
|
||||||
align="center"
|
align="center"
|
||||||
prop="executeTime;"
|
prop="nodePlanTime"
|
||||||
|
width="150"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<el-table-column
|
<el-table-column label="调查结果" align="center" prop="contentedFlag" />
|
||||||
label="调查结果"
|
|
||||||
align="center"
|
|
||||||
prop="contentedFlag"
|
|
||||||
/>
|
|
||||||
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button size="mini" type="text" @click="handdatile(scope.row)">详情</el-button>
|
<el-button size="mini" type="text" @click="handdatile(scope.row)">详情</el-button>
|
||||||
@ -127,18 +195,30 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { uploadRobotPublishRecord } from "@/api/manage/Satisfactionsurvey"
|
import { uploadRobotPublishRecord, selectQuestionInfoList } from "@/api/manage/Satisfactionsurvey"
|
||||||
import SearchFilter from "../../components/SearchForm.vue";
|
import SearchFilter from "../../components/SearchForm.vue";
|
||||||
|
import { getAgencyList, selectAgencyList, } from "@/api/manage/selectAgencyList";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "visitout",
|
name: "visitout",
|
||||||
components: { SearchFilter },
|
components: { SearchFilter },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
maxTableHeight: undefined,
|
maxTableHeight: undefined,
|
||||||
query:{
|
query: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
},
|
},
|
||||||
|
// 问卷名称
|
||||||
|
questionnaireList: [],
|
||||||
|
//医院list
|
||||||
|
hospitalAgencylist: [],
|
||||||
|
// 院区list
|
||||||
|
campusAgencylist: [],
|
||||||
|
//科室list
|
||||||
|
departmentlist: [],
|
||||||
|
//病区list
|
||||||
|
wardlist: [],
|
||||||
//导入
|
//导入
|
||||||
fileList: [],
|
fileList: [],
|
||||||
// 遮罩层
|
// 遮罩层
|
||||||
@ -161,15 +241,22 @@ export default {
|
|||||||
// 是否显示弹出层
|
// 是否显示弹出层
|
||||||
uploadopen: false,
|
uploadopen: false,
|
||||||
// 查询参数
|
// 查询参数
|
||||||
dischargeTime: [],
|
dischargeTime: [],// 初始化为默认日期范围
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
startTime: null,
|
startTime: null,
|
||||||
endTime: null,
|
endTime: null,
|
||||||
questionnaireName: null,
|
questionnaireName: null,
|
||||||
taskNodeType:null,
|
taskNodeType: null,
|
||||||
|
patientName: null,
|
||||||
|
patientPhone: null,
|
||||||
|
hospitalAgencyId: null,
|
||||||
|
departmentId: null,
|
||||||
|
questionInfoId: null,
|
||||||
},
|
},
|
||||||
|
show: false,
|
||||||
|
|
||||||
options: [{
|
options: [{
|
||||||
value: 'PHONE_OUTBOUND',
|
value: 'PHONE_OUTBOUND',
|
||||||
label: '电话外呼'
|
label: '电话外呼'
|
||||||
@ -184,7 +271,13 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
this.selectAgencyinfo();
|
||||||
|
this.getDefaultDateRange()
|
||||||
this.getList();
|
this.getList();
|
||||||
|
this.getQuestion();
|
||||||
|
console.log(this.queryParams, 'queryParams11111111')
|
||||||
|
|
||||||
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getMaxTableHeight();
|
this.getMaxTableHeight();
|
||||||
@ -196,8 +289,33 @@ export default {
|
|||||||
this.queryParams.pageSize = size;
|
this.queryParams.pageSize = size;
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
|
changeTime(e) {
|
||||||
|
this.show = false;
|
||||||
|
},
|
||||||
|
getDefaultDateRange() {
|
||||||
|
this.show = true;
|
||||||
|
const endDate = new Date(); // 今天的日期
|
||||||
|
const startDate = new Date();
|
||||||
|
startDate.setDate(endDate.getDate() - 6); // 往前倒退七天
|
||||||
|
console.log(startDate, endDate);
|
||||||
|
this.dischargeTime[0] = startDate;
|
||||||
|
this.dischargeTime[1] = endDate;
|
||||||
|
console.log(this.dischargeTime, 'dischargeTime')
|
||||||
|
this.queryParams.startTime = this.formatDate(this.dischargeTime[0]);
|
||||||
|
this.queryParams.endTime = this.formatDate(this.dischargeTime[1]);
|
||||||
|
console.log(this.queryParams, 'queryParams')
|
||||||
|
},
|
||||||
|
formatDate(date) {
|
||||||
|
const year = date.getFullYear();
|
||||||
|
const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要加1
|
||||||
|
const day = String(date.getDate()).padStart(2, '0');
|
||||||
|
return `${year}-${month}-${day}`;
|
||||||
|
},
|
||||||
|
getQuestion() {
|
||||||
|
selectQuestionInfoList().then(response => {
|
||||||
|
this.questionnaireList = response
|
||||||
|
})
|
||||||
|
},
|
||||||
/** 查询患者信息列表 */
|
/** 查询患者信息列表 */
|
||||||
getList() {
|
getList() {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
@ -213,14 +331,23 @@ export default {
|
|||||||
/** 搜索按钮操作 */
|
/** 搜索按钮操作 */
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
if (this.dischargeTime?.length > 0) {
|
if (this.dischargeTime?.length > 0) {
|
||||||
|
if (this.show == true) {
|
||||||
|
this.queryParams.startTime = this.formatDate(this.dischargeTime[0]);
|
||||||
|
this.queryParams.endTime = this.formatDate(this.dischargeTime[1]);
|
||||||
|
|
||||||
|
} else if (this.show == false) {
|
||||||
this.queryParams.startTime = this.dischargeTime[0];
|
this.queryParams.startTime = this.dischargeTime[0];
|
||||||
this.queryParams.endTime = this.dischargeTime[1];
|
this.queryParams.endTime = this.dischargeTime[1];
|
||||||
} else {
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else {
|
||||||
this.queryParams.startTime = null;
|
this.queryParams.startTime = null;
|
||||||
this.queryParams.endTime = null;
|
this.queryParams.endTime = null;
|
||||||
}
|
}
|
||||||
this.queryParams.pageNum = 1;
|
this.queryParams.pageNum = 1;
|
||||||
this.query=this.queryParams
|
this.query = this.queryParams
|
||||||
console.log(this.queryParams, 'this.queryPara1111111111ms')
|
console.log(this.queryParams, 'this.queryPara1111111111ms')
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
@ -245,8 +372,81 @@ export default {
|
|||||||
this.single = selection.length !== 1;
|
this.single = selection.length !== 1;
|
||||||
this.multiple = !selection.length;
|
this.multiple = !selection.length;
|
||||||
},
|
},
|
||||||
|
//清空科室
|
||||||
|
cleardepartment() {
|
||||||
|
this.queryParams.wardId = null;
|
||||||
|
if (this.queryParams.departmentId) {
|
||||||
|
this.getAgencyListinfo("DEPARTMENT", this.queryParams.departmentId);
|
||||||
|
} else if (this.queryParams.campusAgencyId) {
|
||||||
|
this.getAgencyListinfo("CAMPUS", this.queryParams.campusAgencyId);
|
||||||
|
} else if (this.queryParams.hospitalAgencyId) {
|
||||||
|
this.getAgencyListinfo("HOSPITAL", this.queryParams.hospitalAgencyId);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//选中科室获取病区
|
||||||
|
changedepartment(id) {
|
||||||
|
this.getAgencyListinfo("DEPARTMENT", id);
|
||||||
|
// let query = {
|
||||||
|
// nodeType: 'WARD',
|
||||||
|
// parentDepartmentId: id,
|
||||||
|
// }
|
||||||
|
// getDepartmentList(query).then(res => {
|
||||||
|
// this.wardlist = res.data
|
||||||
|
this.queryParams.wardId = null;
|
||||||
|
// })
|
||||||
|
},
|
||||||
|
//选中医院获取院区
|
||||||
|
changehospitalAgency(id) {
|
||||||
|
this.getAgencyListinfo("HOSPITAL", id);
|
||||||
|
this.queryParams.departmentId = null;
|
||||||
|
// })
|
||||||
|
|
||||||
|
},
|
||||||
|
//清空医院
|
||||||
|
clearhospitalAgency() {
|
||||||
|
this.queryParams.departmentId = null;
|
||||||
|
setTimeout(() => {
|
||||||
|
this.attendingPhysicianlist = [];
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
//获取下级单位
|
||||||
|
getAgencyListinfo(nodeType, id) {
|
||||||
|
let query = {
|
||||||
|
nodeType: nodeType,
|
||||||
|
};
|
||||||
|
if (nodeType == "HOSPITAL") {
|
||||||
|
query.hospitalId = id;
|
||||||
|
} else if (nodeType == "CAMPUS") {
|
||||||
|
query.campusId = id;
|
||||||
|
} else if (nodeType == "DEPARTMENT") {
|
||||||
|
query.departmentId = id;
|
||||||
|
}
|
||||||
|
getAgencyList(query).then((res) => {
|
||||||
|
if (nodeType == "HOSPITAL") {
|
||||||
|
this.campusAgencylist = res.data.campusList;
|
||||||
|
this.departmentlist = res.data.departmentList;
|
||||||
|
} else if (nodeType == "CAMPUS") {
|
||||||
|
this.departmentlist = res.data.departmentList;
|
||||||
|
}
|
||||||
|
this.wardlist = res.data.wardList;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
selectAgencyinfo() {
|
||||||
|
let query = {
|
||||||
|
agencyStatus: "ON",
|
||||||
|
nodeType: "HOSPITAL",
|
||||||
|
};
|
||||||
|
selectAgencyList(query).then((res) => {
|
||||||
|
this.hospitalAgencylist = res.data;
|
||||||
|
if (this.hospitalAgencylist.length == 1) {
|
||||||
|
this.queryParams.hospitalAgencyId = this.hospitalAgencylist[0].id
|
||||||
|
this.getAgencyListinfo("HOSPITAL", this.hospitalAgencylist[0].id);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
// 详情
|
// 详情
|
||||||
handdatile(row){
|
handdatile(row) {
|
||||||
|
|
||||||
|
|
||||||
},
|
},
|
||||||
@ -289,4 +489,3 @@ export default {
|
|||||||
height: 0px !important;
|
height: 0px !important;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user