2024-04-03 11:12:02 +08:00
|
|
|
<template>
|
|
|
|
|
<div class="app-container">
|
2024-04-10 15:43:06 +08:00
|
|
|
<el-tabs v-model="queryParams.nodeExecuteStatus" @tab-click="handleClick">
|
|
|
|
|
<el-tab-pane label="未执行" name="UNEXECUTED"></el-tab-pane>
|
|
|
|
|
<el-tab-pane label="已执行" name="EXECUTED"></el-tab-pane>
|
|
|
|
|
</el-tabs>
|
2024-04-03 11:12:02 +08:00
|
|
|
<el-form
|
|
|
|
|
:model="queryParams"
|
|
|
|
|
ref="queryForm"
|
|
|
|
|
size="small"
|
|
|
|
|
:inline="true"
|
|
|
|
|
v-show="showSearch"
|
|
|
|
|
>
|
|
|
|
|
<el-form-item label="随访时间" prop="startDate">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
v-model="intentionalTime"
|
|
|
|
|
type="daterange"
|
|
|
|
|
range-separator="至"
|
|
|
|
|
start-placeholder="开始日期"
|
|
|
|
|
style="width: 300px"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
end-placeholder="结束日期"
|
|
|
|
|
@change="chooseTime"
|
|
|
|
|
>
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="姓名" prop="patientName">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="queryParams.patientName"
|
|
|
|
|
placeholder="请输入就诊流水号"
|
|
|
|
|
clearable
|
|
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="电话" prop="patientPhone">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="queryParams.patientPhone"
|
|
|
|
|
placeholder="请输入电话"
|
|
|
|
|
clearable
|
|
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item label="医院" prop="hospitalAgencyId">
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.hospitalAgencyId"
|
|
|
|
|
filterable
|
|
|
|
|
placeholder="请选择医院"
|
|
|
|
|
style="width: 200px"
|
|
|
|
|
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="campusAgencyId"
|
|
|
|
|
v-if="queryParams.hospitalAgencyId"
|
|
|
|
|
>
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.campusAgencyId"
|
|
|
|
|
filterable
|
|
|
|
|
placeholder="请选择院区"
|
|
|
|
|
style="width: 200px"
|
|
|
|
|
clearable
|
|
|
|
|
@clear="clearcampusAgency"
|
|
|
|
|
@change="changecampusAgency"
|
|
|
|
|
>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in campusAgencylist"
|
|
|
|
|
:key="item.id"
|
|
|
|
|
:label="item.agencyName"
|
|
|
|
|
:value="item.id"
|
|
|
|
|
>
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item
|
|
|
|
|
label="科室"
|
|
|
|
|
prop="departmentId"
|
|
|
|
|
v-if="queryParams.hospitalAgencyId"
|
|
|
|
|
>
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.departmentId"
|
|
|
|
|
filterable
|
|
|
|
|
placeholder="请选择科室"
|
|
|
|
|
style="width: 200px"
|
|
|
|
|
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>
|
|
|
|
|
<el-form-item
|
|
|
|
|
label="病区"
|
|
|
|
|
prop="wardId"
|
|
|
|
|
v-if="queryParams.hospitalAgencyId"
|
|
|
|
|
>
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.wardId"
|
|
|
|
|
filterable
|
|
|
|
|
placeholder="请选择病区"
|
|
|
|
|
style="width: 200px"
|
|
|
|
|
clearable
|
|
|
|
|
>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in wardlist"
|
|
|
|
|
:key="item.id"
|
|
|
|
|
:label="item.departmentName"
|
|
|
|
|
:value="item.id"
|
|
|
|
|
>
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="就诊类型" prop="visitMethod">
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.visitMethod"
|
|
|
|
|
placeholder="请选择就诊类型"
|
|
|
|
|
clearable
|
2024-04-09 16:20:00 +08:00
|
|
|
@change="change"
|
2024-04-03 11:12:02 +08:00
|
|
|
>
|
|
|
|
|
<el-option
|
2024-04-09 16:20:00 +08:00
|
|
|
v-for="item in visitoptions"
|
|
|
|
|
:key="item.value"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value"
|
|
|
|
|
>
|
|
|
|
|
</el-option>
|
|
|
|
|
<!-- <el-option
|
2024-04-03 11:12:02 +08:00
|
|
|
v-for="dict in dict.type.visit_type"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
2024-04-09 16:20:00 +08:00
|
|
|
/> -->
|
2024-04-03 11:12:02 +08:00
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="就诊流水号" prop="visitSerialNumber">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="queryParams.visitSerialNumber"
|
|
|
|
|
placeholder="请输入就诊流水号"
|
|
|
|
|
clearable
|
|
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item label="门诊/出院时间" prop="intentionalTimeStart">
|
|
|
|
|
<el-date-picker
|
2024-04-09 16:20:00 +08:00
|
|
|
@change="mzchange"
|
2024-04-03 11:12:02 +08:00
|
|
|
v-model="mzTime"
|
|
|
|
|
type="daterange"
|
|
|
|
|
range-separator="至"
|
|
|
|
|
start-placeholder="开始日期"
|
|
|
|
|
style="width: 300px"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
end-placeholder="结束日期"
|
|
|
|
|
>
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item label="入院时间" prop="intentionalTimeStart">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
v-model="ryTime"
|
|
|
|
|
type="daterange"
|
|
|
|
|
range-separator="至"
|
|
|
|
|
start-placeholder="开始日期"
|
|
|
|
|
style="width: 300px"
|
|
|
|
|
value-format="yyyy-MM-dd"
|
|
|
|
|
end-placeholder="结束日期"
|
|
|
|
|
@change="rychange"
|
|
|
|
|
>
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
<el-form-item label="诊断" prop="mainDiagnosis">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="queryParams.mainDiagnosis"
|
|
|
|
|
placeholder="请选择诊断"
|
|
|
|
|
clearable
|
|
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item
|
|
|
|
|
label="主治医生"
|
|
|
|
|
prop="attendingPhysicianId"
|
|
|
|
|
v-if="queryParams.hospitalAgencyId"
|
|
|
|
|
>
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="queryParams.attendingPhysicianId"
|
|
|
|
|
style="width: 200px"
|
|
|
|
|
filterable
|
|
|
|
|
placeholder="请选择主治医生"
|
|
|
|
|
clearable
|
|
|
|
|
>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in attendingPhysicianlist"
|
|
|
|
|
:key="item.userId"
|
|
|
|
|
:label="item.nickName"
|
|
|
|
|
:value="item.userId"
|
|
|
|
|
>
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
<el-form-item>
|
|
|
|
|
<el-button
|
|
|
|
|
type="primary"
|
|
|
|
|
icon="el-icon-search"
|
|
|
|
|
size="mini"
|
|
|
|
|
@click="handleQuery"
|
|
|
|
|
>搜索</el-button
|
|
|
|
|
>
|
|
|
|
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
|
|
|
|
|
>重置</el-button
|
|
|
|
|
>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-form>
|
|
|
|
|
|
|
|
|
|
<el-table
|
|
|
|
|
v-loading="loading"
|
|
|
|
|
:data="taskExecuteRecordList"
|
|
|
|
|
@selection-change="handleSelectionChange"
|
|
|
|
|
>
|
|
|
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
|
|
|
<el-table-column label="姓名" align="center" prop="patientName" />
|
|
|
|
|
<el-table-column label="电话" align="center" prop="patientPhone" />
|
|
|
|
|
<el-table-column label="性别" align="center" prop="visitSerialNumber">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
{{ scope.row.sex == "MALE" ? "男" : "" }}
|
|
|
|
|
{{ scope.row.sex == "FEMALE" ? "女" : "" }}
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="医院" align="center" prop="hospitalAgencyName" />
|
|
|
|
|
<el-table-column label="院区" align="center" prop="campusAgencyName" />
|
|
|
|
|
<el-table-column label="科室名称" align="center" prop="departmentName" />
|
|
|
|
|
<el-table-column label="病区名称" align="center" prop="wardName" />
|
|
|
|
|
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="门诊/住院号"
|
|
|
|
|
align="center"
|
|
|
|
|
prop="inHospitalNumber"
|
|
|
|
|
width="100"
|
|
|
|
|
/>
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="就诊流水号"
|
|
|
|
|
align="center"
|
|
|
|
|
prop="visitSerialNumber"
|
|
|
|
|
width="100"
|
|
|
|
|
/>
|
|
|
|
|
<el-table-column label="诊断" align="center" prop="mainDiagnosis" />
|
|
|
|
|
<el-table-column label="手术名称" align="center" prop="surgicalName" />
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="主治医生"
|
|
|
|
|
align="center"
|
|
|
|
|
prop="attendingPhysicianName"
|
|
|
|
|
/>
|
2024-04-09 16:20:00 +08:00
|
|
|
<el-table-column label="就诊类型" align="center" prop="suitRange">
|
2024-04-03 11:12:02 +08:00
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span
|
2024-04-09 16:20:00 +08:00
|
|
|
>{{ scope.row.suitRange == "OUTPATIENT_SERVICE" ? "门诊" : "" }}
|
|
|
|
|
{{ scope.row.suitRange == "IN_THE_HOSPITAL" ? "在院" : "" }}
|
|
|
|
|
{{ scope.row.suitRange == "DISCHARGE" ? "出院" : "" }}
|
2024-04-03 11:12:02 +08:00
|
|
|
</span>
|
|
|
|
|
</template></el-table-column
|
|
|
|
|
>
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="入院时间"
|
|
|
|
|
align="center"
|
|
|
|
|
prop="admissionTime"
|
|
|
|
|
width="180"
|
|
|
|
|
>
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span>{{ parseTime(scope.row.admissionTime, "{y}-{m}-{d}") }}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="门诊/出院时间"
|
|
|
|
|
align="center"
|
|
|
|
|
prop="visitOrDischargeTime"
|
|
|
|
|
width="180"
|
|
|
|
|
>
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span>{{
|
|
|
|
|
parseTime(scope.row.visitOrDischargeTime, "{y}-{m}-{d}")
|
|
|
|
|
}}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="随访时间"
|
|
|
|
|
align="center"
|
|
|
|
|
prop="executeTime"
|
|
|
|
|
width="180"
|
|
|
|
|
>
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span>{{ parseTime(scope.row.executeTime, "{y}-{m}-{d}") }}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
<el-table-column label="随访模板" align="center" prop="templateName">
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
<el-table-column
|
|
|
|
|
label="操作"
|
|
|
|
|
align="center"
|
|
|
|
|
class-name="small-padding fixed-width"
|
|
|
|
|
fixed="right"
|
|
|
|
|
>
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button
|
2024-04-10 15:43:06 +08:00
|
|
|
v-if="queryParams.nodeExecuteStatus == 'UNEXECUTED'"
|
2024-04-03 11:12:02 +08:00
|
|
|
size="mini"
|
|
|
|
|
type="text"
|
2024-04-10 15:43:06 +08:00
|
|
|
icon="el-icon-bank-card"
|
2024-04-03 11:12:02 +08:00
|
|
|
@click="handleUpdate(scope.row)"
|
|
|
|
|
>处理</el-button
|
|
|
|
|
>
|
2024-04-10 15:43:06 +08:00
|
|
|
<el-button
|
|
|
|
|
v-if="queryParams.nodeExecuteStatus == 'EXECUTED'"
|
|
|
|
|
size="mini"
|
|
|
|
|
type="text"
|
|
|
|
|
icon="el-icon-notebook-2"
|
2024-04-11 14:04:09 +08:00
|
|
|
@click="handleUpdate(scope.row)"
|
2024-04-10 15:43:06 +08:00
|
|
|
>详情</el-button
|
|
|
|
|
>
|
2024-04-03 11:12:02 +08:00
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
|
|
<pagination
|
|
|
|
|
v-show="total > 0"
|
|
|
|
|
:total="total"
|
|
|
|
|
:page.sync="queryParams.pageNum"
|
|
|
|
|
:limit.sync="queryParams.pageSize"
|
|
|
|
|
@pagination="getList"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
2024-04-09 16:20:00 +08:00
|
|
|
|
2024-04-03 11:12:02 +08:00
|
|
|
<script>
|
|
|
|
|
|
|
|
|
|
import { manualFollowUpList } from "@/api/system/followup"
|
|
|
|
|
import { usergetList } from "@/api/unitconfig/patientConfiguration";
|
|
|
|
|
|
|
|
|
|
import { getAge } from "@/utils/age";
|
|
|
|
|
import {
|
|
|
|
|
selectAgencyList, getAgencyList
|
|
|
|
|
} from "@/api/manage/selectAgencyList";
|
|
|
|
|
export default {
|
2024-04-10 15:43:06 +08:00
|
|
|
name: "Followup22",
|
2024-04-03 11:12:02 +08:00
|
|
|
dicts: ["visit_type"],
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
// 随访时间
|
|
|
|
|
intentionalTime: [],
|
|
|
|
|
// 门诊
|
|
|
|
|
mzTime: [],
|
|
|
|
|
// 入院
|
|
|
|
|
ryTime: [],
|
|
|
|
|
//医院list
|
|
|
|
|
hospitalAgencylist: [],
|
|
|
|
|
// 院区list
|
|
|
|
|
campusAgencylist: [],
|
|
|
|
|
//科室list
|
|
|
|
|
departmentlist: [],
|
|
|
|
|
//病区list
|
|
|
|
|
wardlist: [],
|
|
|
|
|
// 主治医生
|
|
|
|
|
attendingPhysicianlist: [],
|
|
|
|
|
|
|
|
|
|
// 遮罩层
|
|
|
|
|
loading: true,
|
|
|
|
|
// 选中数组
|
|
|
|
|
ids: [],
|
|
|
|
|
// 非单个禁用
|
|
|
|
|
single: true,
|
|
|
|
|
// 非多个禁用
|
|
|
|
|
multiple: true,
|
|
|
|
|
// 显示搜索条件
|
|
|
|
|
showSearch: true,
|
|
|
|
|
// 总条数
|
|
|
|
|
total: 0,
|
|
|
|
|
// 患者管理任务执行记录表格数据
|
|
|
|
|
taskExecuteRecordList: [],
|
|
|
|
|
// 弹出层标题
|
|
|
|
|
title: "",
|
|
|
|
|
// 是否显示弹出层
|
|
|
|
|
open: false,
|
|
|
|
|
// 查询参数
|
|
|
|
|
queryParams: {
|
|
|
|
|
pageNum: 1,
|
|
|
|
|
pageSize: 10,
|
2024-04-10 15:43:06 +08:00
|
|
|
nodeExecuteStatus: 'UNEXECUTED',
|
2024-04-03 11:12:02 +08:00
|
|
|
followStartTime: null,
|
|
|
|
|
followEndTime: null,
|
|
|
|
|
clinicalStartTime: null,
|
|
|
|
|
clinicalEndTime: null,
|
|
|
|
|
admissionEndTime: null,
|
|
|
|
|
admissionStartTime: null,
|
|
|
|
|
mainDiagnosis: null,
|
|
|
|
|
|
|
|
|
|
visitSerialNumber: null,
|
|
|
|
|
attendingPhysicianId: null,
|
|
|
|
|
patientId: null,
|
|
|
|
|
visitMethod: null,
|
|
|
|
|
manageRouteId: null,
|
|
|
|
|
manageRouteNodeId: null,
|
|
|
|
|
patientName: null,
|
|
|
|
|
startDate: null,
|
|
|
|
|
endDate: null,
|
|
|
|
|
manageRouteName: null,
|
|
|
|
|
manageRouteNodeName: null,
|
|
|
|
|
taskContent: null,
|
|
|
|
|
executeTime: null,
|
|
|
|
|
executePerson: null,
|
|
|
|
|
executeType: null,
|
|
|
|
|
executeRemark: null,
|
|
|
|
|
hospitalAgencyId: null,
|
|
|
|
|
campusAgencyId: null,
|
|
|
|
|
departmentId: null,
|
|
|
|
|
wardId: null,
|
|
|
|
|
},
|
|
|
|
|
// 表单参数
|
|
|
|
|
form: {},
|
2024-04-09 16:20:00 +08:00
|
|
|
visitoptions: [
|
|
|
|
|
{
|
|
|
|
|
value: 'IN_THE_HOSPITAL',
|
|
|
|
|
label: '在院'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'OUTPATIENT_SERVICE',
|
|
|
|
|
label: '门诊'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'DISCHARGE',
|
|
|
|
|
label: '出院'
|
|
|
|
|
},
|
|
|
|
|
],
|
2024-04-03 11:12:02 +08:00
|
|
|
// 表单校验
|
|
|
|
|
// rules: {
|
|
|
|
|
// patientId: [
|
|
|
|
|
// { required: true, message: "患者表id不能为空", trigger: "blur" },
|
|
|
|
|
// ],
|
|
|
|
|
// },
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
created() {
|
|
|
|
|
this.getList();
|
|
|
|
|
this.selectAgencyinfo();
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
2024-04-10 15:43:06 +08:00
|
|
|
handleClick(tab, event) {
|
|
|
|
|
this.intentionalTime = [],
|
|
|
|
|
this.mzTime = [],
|
|
|
|
|
this.ryTime = [],
|
|
|
|
|
this.queryParams.dischargeStartTime = null
|
|
|
|
|
this.queryParams.dischargeEndTime = null
|
|
|
|
|
this.queryParams.clinicalStartTime = null
|
|
|
|
|
this.queryParams.clinicalEndTime = null
|
|
|
|
|
this.queryParams.followStartTime = null
|
|
|
|
|
this.queryParams.followEndTime = null
|
|
|
|
|
this.queryParams.admissionEndTime=null
|
|
|
|
|
this.queryParams.admissionStartTime=null
|
|
|
|
|
this.queryParams.mainDiagnosis=null
|
|
|
|
|
this.queryParams.visitSerialNumber=null
|
|
|
|
|
this.queryParams.attendingPhysicianId=null
|
|
|
|
|
this.queryParams.visitMethod=null
|
|
|
|
|
this.queryParams.patientName=null
|
|
|
|
|
this.queryParams.hospitalAgencyId=null
|
|
|
|
|
this.queryParams.campusAgencyId=null
|
|
|
|
|
this.queryParams.departmentId=null
|
|
|
|
|
this.queryParams.wardId=null
|
|
|
|
|
this.queryParams.patientPhone=null
|
|
|
|
|
this.getList();
|
|
|
|
|
},
|
2024-04-09 16:20:00 +08:00
|
|
|
change(e) {
|
|
|
|
|
if (e == 'DISCHARGE') {
|
|
|
|
|
this.queryParams.clinicalStartTime = null
|
|
|
|
|
this.queryParams.clinicalEndTime = null
|
|
|
|
|
|
|
|
|
|
} else if (e == 'OUTPATIENT_SERVICE') {
|
|
|
|
|
this.queryParams.dischargeStartTime = null
|
|
|
|
|
this.queryParams.dischargeEndTime = null
|
2024-04-10 15:43:06 +08:00
|
|
|
} else {
|
2024-04-09 16:20:00 +08:00
|
|
|
|
|
|
|
|
this.queryParams.dischargeStartTime = null
|
|
|
|
|
this.queryParams.dischargeEndTime = null
|
|
|
|
|
this.queryParams.clinicalStartTime = null
|
|
|
|
|
this.queryParams.clinicalEndTime = null
|
|
|
|
|
}
|
|
|
|
|
console.log(e)
|
|
|
|
|
// DISCHARGE
|
|
|
|
|
// 出院
|
|
|
|
|
// OUTPATIENT
|
|
|
|
|
// 门诊
|
|
|
|
|
|
|
|
|
|
},
|
2024-04-03 11:12:02 +08:00
|
|
|
//主治医生
|
|
|
|
|
usergetListinfo() {
|
|
|
|
|
usergetList({
|
|
|
|
|
agencyId: this.queryParams.hospitalAgencyId,
|
|
|
|
|
postName: 'DOCTOR'
|
|
|
|
|
}).then(res => {
|
|
|
|
|
this.attendingPhysicianlist = res.data
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
//获取下级单位
|
|
|
|
|
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
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
//选中医院获取院区
|
|
|
|
|
changehospitalAgency(id) {
|
|
|
|
|
this.getAgencyListinfo('HOSPITAL', id)
|
|
|
|
|
this.queryParams.campusAgencyId = null
|
|
|
|
|
this.queryParams.departmentId = null
|
|
|
|
|
this.queryParams.wardId = null
|
|
|
|
|
this.queryParams.attendingPhysicianId = null
|
|
|
|
|
// })
|
|
|
|
|
//医生
|
|
|
|
|
this.usergetListinfo();
|
|
|
|
|
},
|
|
|
|
|
//选中院区获取科室
|
|
|
|
|
changecampusAgency(id) {
|
|
|
|
|
this.getAgencyListinfo('CAMPUS', id)
|
|
|
|
|
this.queryParams.departmentId = null
|
|
|
|
|
this.queryParams.wardId = null
|
|
|
|
|
// })
|
|
|
|
|
},
|
|
|
|
|
//选中科室获取病区
|
|
|
|
|
changedepartment(id) {
|
|
|
|
|
this.getAgencyListinfo('DEPARTMENT', id)
|
|
|
|
|
// let query = {
|
|
|
|
|
// nodeType: 'WARD',
|
|
|
|
|
// parentDepartmentId: id,
|
|
|
|
|
// }
|
|
|
|
|
// getDepartmentList(query).then(res => {
|
|
|
|
|
// this.wardlist = res.data
|
|
|
|
|
this.queryParams.wardId = null
|
|
|
|
|
// })
|
|
|
|
|
},
|
|
|
|
|
//清空医院
|
|
|
|
|
clearhospitalAgency() {
|
|
|
|
|
this.queryParams.campusAgencyId = null
|
|
|
|
|
this.queryParams.departmentId = null
|
|
|
|
|
this.queryParams.wardId = null
|
|
|
|
|
this.queryParams.attendingPhysicianId = null
|
|
|
|
|
},
|
|
|
|
|
//清空院区
|
|
|
|
|
clearcampusAgency() {
|
|
|
|
|
this.queryParams.departmentId = null
|
|
|
|
|
this.queryParams.wardId = null
|
|
|
|
|
this.getAgencyListinfo('HOSPITAL', this.queryParams.hospitalAgencyId)
|
|
|
|
|
},
|
|
|
|
|
//清空科室
|
|
|
|
|
cleardepartment() {
|
|
|
|
|
this.queryParams.wardId = null
|
|
|
|
|
this.getAgencyListinfo('CAMPUS', this.queryParams.campusAgencyId)
|
|
|
|
|
},
|
|
|
|
|
//获取医院list
|
|
|
|
|
selectAgencyinfo() {
|
|
|
|
|
let query = {
|
|
|
|
|
agencyStatus: "ON",
|
|
|
|
|
nodeType: "HOSPITAL",
|
|
|
|
|
};
|
|
|
|
|
selectAgencyList(query).then((res) => {
|
|
|
|
|
this.hospitalAgencylist = res.data;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
/** 查询患者管理任务执行记录列表 */
|
|
|
|
|
getList() {
|
|
|
|
|
this.loading = true;
|
|
|
|
|
manualFollowUpList(this.queryParams).then((response) => {
|
|
|
|
|
this.taskExecuteRecordList = response.rows;
|
|
|
|
|
this.total = response.total;
|
|
|
|
|
this.loading = false;
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
// 取消按钮
|
|
|
|
|
cancel() {
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.reset();
|
|
|
|
|
},
|
|
|
|
|
// 表单重置
|
|
|
|
|
reset() {
|
|
|
|
|
this.form = {
|
2024-04-10 15:43:06 +08:00
|
|
|
nodeExecuteStatus: 'UNEXECUTED',
|
2024-04-03 11:12:02 +08:00
|
|
|
id: null,
|
|
|
|
|
patientId: null,
|
|
|
|
|
manageRouteId: null,
|
|
|
|
|
manageRouteNodeId: null,
|
|
|
|
|
patientName: null,
|
|
|
|
|
manageRouteName: null,
|
|
|
|
|
manageRouteNodeName: null,
|
|
|
|
|
taskContent: null,
|
|
|
|
|
executeTime: null,
|
|
|
|
|
executePerson: null,
|
|
|
|
|
executeType: null,
|
|
|
|
|
executeRemark: null,
|
|
|
|
|
createBy: null,
|
|
|
|
|
createTime: null,
|
|
|
|
|
updateBy: null,
|
|
|
|
|
updateTime: null,
|
|
|
|
|
};
|
|
|
|
|
this.resetForm("form");
|
|
|
|
|
},
|
|
|
|
|
// 随访时间
|
|
|
|
|
chooseTime() {
|
|
|
|
|
if (this.intentionalTime == null) {
|
|
|
|
|
this.intentionalTime = [];
|
|
|
|
|
this.queryParams.followStartTime = null
|
|
|
|
|
this.queryParams.followEndTime = null
|
|
|
|
|
} else {
|
|
|
|
|
this.queryParams.followStartTime = this.intentionalTime[0]
|
2024-04-09 16:20:00 +08:00
|
|
|
this.queryParams.followEndTime = this.intentionalTime[1]
|
2024-04-03 11:12:02 +08:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 门诊
|
2024-04-09 16:20:00 +08:00
|
|
|
mzchange() {
|
2024-04-03 11:12:02 +08:00
|
|
|
if (this.mzTime == null) {
|
|
|
|
|
this.mzTime = [];
|
|
|
|
|
this.queryParams.clinicalStartTime = null
|
|
|
|
|
this.queryParams.clinicalEndTime = null
|
|
|
|
|
} else {
|
2024-04-09 16:20:00 +08:00
|
|
|
console.log(this.queryParams, '-----')
|
2024-04-10 15:43:06 +08:00
|
|
|
if (!this.queryParams.visitMethod || this.queryParams.visitMethod == 'IN_THE_HOSPITAL') {
|
2024-04-09 16:20:00 +08:00
|
|
|
this.queryParams.clinicalStartTime = this.mzTime[0]
|
|
|
|
|
this.queryParams.clinicalEndTime = this.mzTime[1]
|
|
|
|
|
this.queryParams.dischargeStartTime = this.queryParams.clinicalStartTime
|
|
|
|
|
this.queryParams.dischargeEndTime = this.queryParams.clinicalEndTime
|
|
|
|
|
} else if (this.queryParams.visitMethod == 'DISCHARGE') {
|
|
|
|
|
this.queryParams.dischargeStartTime = this.mzTime[0]
|
|
|
|
|
this.queryParams.dischargeEndTime = this.mzTime[1]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.queryParams.clinicalStartTime = null
|
|
|
|
|
this.queryParams.clinicalEndTime = null
|
|
|
|
|
|
|
|
|
|
} else if (this.queryParams.visitMethod == 'OUTPATIENT_SERVICE') {
|
|
|
|
|
this.queryParams.dischargeStartTime = null
|
|
|
|
|
this.queryParams.dischargeEndTime = null
|
|
|
|
|
this.queryParams.clinicalStartTime = this.mzTime[0]
|
|
|
|
|
this.queryParams.clinicalEndTime = this.mzTime[1]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2024-04-03 11:12:02 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
// 入院
|
2024-04-09 16:20:00 +08:00
|
|
|
rychange() {
|
2024-04-03 11:12:02 +08:00
|
|
|
if (this.ryTime == null) {
|
|
|
|
|
this.ryTime = [];
|
|
|
|
|
this.queryParams.admissionStartTime = null
|
|
|
|
|
this.queryParams.admissionEndTime = null
|
|
|
|
|
} else {
|
|
|
|
|
this.queryParams.admissionStartTime = this.ryTime[0]
|
|
|
|
|
this.queryParams.admissionEndTime = this.ryTime[1]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
/** 搜索按钮操作 */
|
|
|
|
|
handleQuery() {
|
|
|
|
|
this.queryParams.pageNum = 1;
|
|
|
|
|
this.getList();
|
|
|
|
|
},
|
|
|
|
|
/** 重置按钮操作 */
|
|
|
|
|
resetQuery() {
|
|
|
|
|
this.resetForm("queryForm");
|
2024-04-09 16:20:00 +08:00
|
|
|
this.queryParams = {
|
2024-04-03 16:42:11 +08:00
|
|
|
pageNum: 1,
|
|
|
|
|
pageSize: 10,
|
2024-04-10 15:43:06 +08:00
|
|
|
nodeExecuteStatus: 'UNEXECUTED',
|
2024-04-03 16:42:11 +08:00
|
|
|
followStartTime: null,
|
|
|
|
|
followEndTime: null,
|
|
|
|
|
clinicalStartTime: null,
|
|
|
|
|
clinicalEndTime: null,
|
|
|
|
|
admissionEndTime: null,
|
|
|
|
|
admissionStartTime: null,
|
|
|
|
|
mainDiagnosis: null,
|
|
|
|
|
visitSerialNumber: null,
|
|
|
|
|
attendingPhysicianId: null,
|
|
|
|
|
patientId: null,
|
|
|
|
|
visitMethod: null,
|
|
|
|
|
manageRouteId: null,
|
|
|
|
|
manageRouteNodeId: null,
|
|
|
|
|
patientName: null,
|
|
|
|
|
startDate: null,
|
|
|
|
|
endDate: null,
|
|
|
|
|
manageRouteName: null,
|
|
|
|
|
manageRouteNodeName: null,
|
|
|
|
|
taskContent: null,
|
|
|
|
|
executeTime: null,
|
|
|
|
|
executePerson: null,
|
|
|
|
|
executeType: null,
|
|
|
|
|
executeRemark: null,
|
|
|
|
|
hospitalAgencyId: null,
|
|
|
|
|
campusAgencyId: null,
|
|
|
|
|
departmentId: null,
|
|
|
|
|
wardId: null,
|
|
|
|
|
},
|
2024-04-09 16:20:00 +08:00
|
|
|
this.handleQuery();
|
2024-04-03 11:12:02 +08:00
|
|
|
this.intentionalTime = [];
|
|
|
|
|
this.mzTime = [];
|
|
|
|
|
this.ryTime = [];
|
|
|
|
|
},
|
|
|
|
|
// 多选框选中数据
|
|
|
|
|
handleSelectionChange(selection) {
|
|
|
|
|
this.ids = selection.map((item) => item.id);
|
|
|
|
|
this.single = selection.length !== 1;
|
|
|
|
|
this.multiple = !selection.length;
|
|
|
|
|
},
|
|
|
|
|
/** 新增按钮操作 */
|
|
|
|
|
handleAdd() {
|
|
|
|
|
this.reset();
|
|
|
|
|
this.open = true;
|
|
|
|
|
this.title = "添加患者管理任务执行记录";
|
|
|
|
|
},
|
2024-04-10 15:43:06 +08:00
|
|
|
/** 处理按钮操作 */
|
2024-04-03 11:12:02 +08:00
|
|
|
handleUpdate(row) {
|
|
|
|
|
console.log(row)
|
|
|
|
|
this.$router.push({
|
|
|
|
|
path: "/task/followupsee",
|
|
|
|
|
query: {
|
|
|
|
|
patientId: row.patientId,
|
2024-04-09 16:20:00 +08:00
|
|
|
taskType: row.taskType,
|
|
|
|
|
templateId: row.templateId,
|
2024-04-03 11:12:02 +08:00
|
|
|
cardNo: row.cardNo,
|
|
|
|
|
patientName: row.patientName,
|
2024-04-09 16:20:00 +08:00
|
|
|
manageRouteName: row.manageRouteName,
|
2024-04-10 15:43:06 +08:00
|
|
|
manageRouteNodeName: row.routeNodeName,
|
2024-04-03 11:12:02 +08:00
|
|
|
patientPhone: row.patientPhone,
|
|
|
|
|
sex: row.sex,
|
|
|
|
|
birthDate: row.birthDate,
|
|
|
|
|
familyMemberPhone: row.familyMemberPhone,
|
|
|
|
|
address: row.address,
|
|
|
|
|
patientSource: row.patientSource,
|
|
|
|
|
createTime: row.createTime,
|
|
|
|
|
age: row.birthDate ? getAge(row.birthDate) : "",
|
2024-04-09 16:20:00 +08:00
|
|
|
manageRouteId: row.manageRouteId,
|
|
|
|
|
manageRouteNodeId: row.manageRouteNodeId,
|
2024-04-11 14:04:09 +08:00
|
|
|
visitRecordId:row.visitRecordId,
|
2024-04-10 15:43:06 +08:00
|
|
|
|
|
|
|
|
departmentId: row.departmentId,
|
|
|
|
|
departmentName: row.departmentName,
|
|
|
|
|
diseaseTypeId: row.diseaseTypeId ? row.diseaseTypeId : null,
|
|
|
|
|
diseaseTypeName: row.diseaseTypeName ? row.diseaseTypeName : null,
|
2024-04-03 11:12:02 +08:00
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
2024-04-10 15:43:06 +08:00
|
|
|
},
|
|
|
|
|
// 详情
|
|
|
|
|
handledatail(row) {
|
|
|
|
|
console.log(row)
|
|
|
|
|
|
|
|
|
|
|
2024-04-03 11:12:02 +08:00
|
|
|
},
|
|
|
|
|
/** 提交按钮 */
|
|
|
|
|
submitForm() {
|
|
|
|
|
this.$refs["form"].validate((valid) => {
|
|
|
|
|
if (valid) {
|
|
|
|
|
if (this.form.id != null) {
|
|
|
|
|
updateTaskExecuteRecord(this.form).then((response) => {
|
|
|
|
|
this.$modal.msgSuccess("修改成功");
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.getList();
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
addTaskExecuteRecord(this.form).then((response) => {
|
|
|
|
|
this.$modal.msgSuccess("新增成功");
|
|
|
|
|
this.open = false;
|
|
|
|
|
this.getList();
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
// handleClick(tab, event) {
|
|
|
|
|
// this.intentionalTime = [];
|
|
|
|
|
// this.queryParams.startDate = null;
|
|
|
|
|
// this.queryParams.endDate = null;
|
|
|
|
|
// // this.signTime = []
|
|
|
|
|
// // this.queryParams.signTimeStart = null
|
|
|
|
|
// // this.queryParams.signTimeEnd = null
|
|
|
|
|
// this.getList();
|
|
|
|
|
// },
|
|
|
|
|
/** 删除按钮操作 */
|
|
|
|
|
handleDelete(row) {
|
|
|
|
|
const ids = row.id || this.ids;
|
|
|
|
|
this.$modal
|
|
|
|
|
.confirm(
|
|
|
|
|
'是否确认删除患者管理任务执行记录编号为"' + ids + '"的数据项?'
|
|
|
|
|
)
|
|
|
|
|
.then(function () {
|
|
|
|
|
return delTaskExecuteRecord(ids);
|
|
|
|
|
})
|
|
|
|
|
.then(() => {
|
|
|
|
|
this.getList();
|
|
|
|
|
this.$modal.msgSuccess("删除成功");
|
|
|
|
|
})
|
|
|
|
|
.catch(() => { });
|
|
|
|
|
},
|
|
|
|
|
/** 导出按钮操作 */
|
|
|
|
|
handleExport() {
|
|
|
|
|
this.download(
|
|
|
|
|
"system/taskExecuteRecord/export",
|
|
|
|
|
{
|
|
|
|
|
...this.queryParams,
|
|
|
|
|
},
|
|
|
|
|
`taskExecuteRecord_${new Date().getTime()}.xlsx`
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
</script>
|