This commit is contained in:
2024-06-28 16:48:42 +08:00
parent 6c904dc547
commit 913c3d7892
2 changed files with 110 additions and 286 deletions

View File

@ -1,39 +1,19 @@
<template> <template>
<div class="app-container" ref="layout"> <div class="app-container" ref="layout">
<el-tabs <el-tabs v-model="queryParams.routeCheckStatus" @tab-click="handleClick" style="flex: 1">
v-model="queryParams.routeCheckStatus"
@tab-click="handleClick"
style="flex: 1"
>
<el-tab-pane label="未审核" name="UNAUDITED"></el-tab-pane> <el-tab-pane label="未审核" name="UNAUDITED"></el-tab-pane>
<el-tab-pane label="已审核" name="AGREE"></el-tab-pane> <el-tab-pane label="已审核" name="AGREE"></el-tab-pane>
<el-tab-pane label="已忽略" name="DISAGREE"></el-tab-pane> <el-tab-pane label="已忽略" name="DISAGREE"></el-tab-pane>
</el-tabs> </el-tabs>
<div ref="topform" class="form"> <div ref="topform" class="form">
<el-form <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="80px">
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
label-width="80px"
>
<el-form-item label="患者姓名" prop="patientName"> <el-form-item label="患者姓名" prop="patientName">
<el-input <el-input v-model="queryParams.patientName" placeholder="请输入患者姓名" clearable @keyup.enter.native="handleQuery"
v-model="queryParams.patientName" style="width: 200px" />
placeholder="请输入患者姓名"
clearable
@keyup.enter.native="handleQuery"
style="width: 200px"
/>
</el-form-item> </el-form-item>
<el-form-item label="患者电话" prop="patientPhone"> <el-form-item label="患者电话" prop="patientPhone">
<el-input <el-input v-model="queryParams.patientPhone" placeholder="请输入患者电话" clearable @keyup.enter.native="handleQuery"
v-model="queryParams.patientPhone" style="width: 200px" />
placeholder="请输入患者电话"
clearable
@keyup.enter.native="handleQuery"
style="width: 200px"
/>
</el-form-item> </el-form-item>
<!-- <el-form-item <!-- <el-form-item
label="出院/就诊时间" label="出院/就诊时间"
@ -52,160 +32,58 @@
</el-date-picker> </el-date-picker>
</el-form-item> --> </el-form-item> -->
<el-form-item label="签约时间" prop="signTimeStart"> <el-form-item label="签约时间" prop="signTimeStart">
<el-date-picker <el-date-picker v-model="signTime" type="daterange" range-separator="" start-placeholder="开始日期"
v-model="signTime" style="width: 300px" value-format="yyyy-MM-dd" end-placeholder="结束日期">
type="daterange"
range-separator="至"
start-placeholder="开始日期"
style="width: 300px"
value-format="yyyy-MM-dd"
end-placeholder="结束日期"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="诊断" prop="mainDiagnosis"> <el-form-item label="诊断" prop="mainDiagnosis">
<el-input <el-input v-model="queryParams.mainDiagnosis" placeholder="请选择诊断" clearable style="width: 200px"
v-model="queryParams.mainDiagnosis" @keyup.enter.native="handleQuery" />
placeholder="请选择诊断"
clearable
style="width: 200px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="患者来源" prop="patientSource"> <el-form-item label="患者来源" prop="patientSource">
<el-select <el-select v-model="queryParams.patientSource" placeholder="请选择患者来源" clearable style="width: 200px">
v-model="queryParams.patientSource" <el-option v-for="dict in dict.type.patient_source" :key="dict.value" :label="dict.label"
placeholder="请选择患者来源" :value="dict.value" />
clearable
style="width: 200px"
>
<el-option
v-for="dict in dict.type.patient_source"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="医院" prop="hospitalAgencyId"> <el-form-item label="医院" prop="hospitalAgencyId">
<el-select <el-select v-model="queryParams.hospitalAgencyId" filterable placeholder="请选择医院" style="width: 200px"
v-model="queryParams.hospitalAgencyId" clearable @clear="clearhospitalAgency" @change="changehospitalAgency">
filterable <el-option v-for="item in hospitalAgencylist" :key="item.id" :label="item.agencyName" :value="item.id">
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-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="院区" prop="campusAgencyId" v-if="queryParams.hospitalAgencyId">
label="院区" <el-select v-model="queryParams.campusAgencyId" filterable placeholder="请选择院区" style="width: 200px" clearable
prop="campusAgencyId" @clear="clearcampusAgency" @change="changecampusAgency">
v-if="queryParams.hospitalAgencyId" <el-option v-for="item in campusAgencylist" :key="item.id" :label="item.agencyName" :value="item.id">
>
<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-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="科室" prop="departmentId" v-if="queryParams.hospitalAgencyId">
label="科室" <el-select v-model="queryParams.departmentId" filterable placeholder="请选择科室" style="width: 200px" clearable
prop="departmentId" @clear="cleardepartment" @change="changedepartment">
v-if="queryParams.hospitalAgencyId" <el-option v-for="item in departmentlist" :key="item.id" :label="item.departmentName" :value="item.id">
>
<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-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="病区" prop="wardId" v-if="queryParams.hospitalAgencyId">
label="病区" <el-select v-model="queryParams.wardId" filterable placeholder="请选择病区" style="width: 200px" clearable>
prop="wardId" <el-option v-for="item in wardlist" :key="item.id" :label="item.departmentName" :value="item.id">
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-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
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-item>
</el-form> </el-form>
</div> </div>
<div ref="table"> <div ref="table">
<el-table <el-table :max-height="maxTableHeight" v-loading="loading" :data="patientInfoList">
:max-height="maxTableHeight"
v-loading="loading"
:data="patientInfoList"
>
<el-table-column label="序号" type="index" width="50" align="center" /> <el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column <el-table-column label="患者姓名" align="center" prop="patientName" width="80" />
label="患者姓名" <el-table-column label="患者电话" align="center" prop="patientPhone" width="120" />
align="center"
prop="patientName"
width="80"
/>
<el-table-column
label="患者电话"
align="center"
prop="patientPhone"
width="120"
/>
<el-table-column label="性别" align="center" prop="sex" width="50"> <el-table-column label="性别" align="center" prop="sex" width="50">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.sex == "MALE" ? "男" : "" }} {{ scope.row.sex == "MALE" ? "男" : "" }}
@ -213,38 +91,13 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="年龄" align="center" prop="age" width="50" /> <el-table-column label="年龄" align="center" prop="age" width="50" />
<el-table-column <el-table-column label="出生日期" align="center" prop="birthDate" width="100" />
label="出生日期" <el-table-column label="医院" align="center" prop="hospitalAgencyName" :show-overflow-tooltip="true" />
align="center" <el-table-column label="院区" align="center" prop="campusAgencyName" :show-overflow-tooltip="true" />
prop="birthDate" <el-table-column label="科室名称" align="center" prop="departmentName" :show-overflow-tooltip="true" />
width="100"
/>
<el-table-column
label="医院"
align="center"
prop="hospitalAgencyName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="院区"
align="center"
prop="campusAgencyName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="科室名称"
align="center"
prop="departmentName"
:show-overflow-tooltip="true"
/>
<el-table-column label="病区名称" align="center" prop="wardName" /> <el-table-column label="病区名称" align="center" prop="wardName" />
<el-table-column <el-table-column label="住院/门诊号" align="center" prop="inHospitalNumber" width="105"
label="住院/门诊号" :show-overflow-tooltip="true" />
align="center"
prop="inHospitalNumber"
width="105"
:show-overflow-tooltip="true"
/>
<!-- <el-table-column label="就诊方式" align="center" prop="visitMethod" width="80"> --> <!-- <el-table-column label="就诊方式" align="center" prop="visitMethod" width="80"> -->
<!-- <template slot-scope="scope"> <!-- <template slot-scope="scope">
<dict-tag :options="dict.type.patient_source" :value="scope.row.visitMethod" /> <dict-tag :options="dict.type.patient_source" :value="scope.row.visitMethod" />
@ -252,48 +105,24 @@
<!-- </el-table-column> --> <!-- </el-table-column> -->
<el-table-column label="就诊方式" align="center" prop="visitMethod"> <el-table-column label="就诊方式" align="center" prop="visitMethod">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag <dict-tag :options="dict.type.visit_method" :value="scope.row.visitMethod" />
:options="dict.type.visit_method"
:value="scope.row.visitMethod"
/>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column label="医生" align="center" prop="attendingPhysicianName" width="80" :show-overflow-tooltip="true"/> --> <!-- <el-table-column label="医生" align="center" prop="attendingPhysicianName" width="80" :show-overflow-tooltip="true"/> -->
<el-table-column <el-table-column label="主要诊断" align="center" prop="signDiagnosis" :show-overflow-tooltip="true" width="100" />
label="主要诊断" <el-table-column label="签约时间" align="center" prop="signTime" width="100">
align="center"
prop="signDiagnosis"
:show-overflow-tooltip="true"
width="100"
/>
<el-table-column
label="签约时间"
align="center"
prop="signTime"
width="100"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.signTime, "{y}-{m}-{d}") }}</span> <span>{{ parseTime(scope.row.signTime, "{y}-{m}-{d}") }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="画像审核状态" align="center" prop="portaitCheckStatus" width="100">
label="画像审核状态"
align="center"
prop="portaitCheckStatus"
width="100"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.portaitCheckStatus == "AGREE" ? "审核通过" : "" }} {{ scope.row.portaitCheckStatus == "AGREE" ? "审核通过" : "" }}
{{ scope.row.portaitCheckStatus == "DISAGREE" ? "已忽略" : "" }} {{ scope.row.portaitCheckStatus == "DISAGREE" ? "已忽略" : "" }}
{{ scope.row.portaitCheckStatus == "" ? "未审核" : "" }} {{ scope.row.portaitCheckStatus == "" ? "未审核" : "" }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="路径审核状态" align="center" prop="routeCheckStatus" width="100">
label="路径审核状态"
align="center"
prop="routeCheckStatus"
width="100"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.routeCheckStatus == "AGREE" ? "审核通过" : "" }} {{ scope.row.routeCheckStatus == "AGREE" ? "审核通过" : "" }}
{{ scope.row.routeCheckStatus == "DISAGREE" ? "已忽略" : "" }} {{ scope.row.routeCheckStatus == "DISAGREE" ? "已忽略" : "" }}
@ -301,38 +130,18 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
label="操作"
align="center"
class-name="small-padding fixed-width"
fixed="right"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button size="mini" type="text" @click="handleAuthRole(scope.row)"
size="mini" v-if="queryParams.routeCheckStatus == 'UNAUDITED'">审核</el-button>
type="text" <el-button size="mini" type="text" @click="handleLook(scope.row)"
@click="handleAuthRole(scope.row)" v-if="queryParams.routeCheckStatus != 'UNAUDITED'">查看</el-button>
v-if="queryParams.routeCheckStatus == 'UNAUDITED'"
>审核</el-button
>
<el-button
size="mini"
type="text"
@click="handleLook(scope.row)"
v-if="queryParams.routeCheckStatus != 'UNAUDITED'"
>查看</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<myPagination <myPagination v-show="total > 0" :total="total" :pageSize="queryParams.pageSize"
v-show="total > 0" :indexFromWrap="queryParams.pageNum" @updateCPage="updateCPage"></myPagination>
:total="total"
:pageSize="queryParams.pageSize"
:indexFromWrap="queryParams.pageNum"
@updateCPage="updateCPage"
></myPagination>
</div> </div>
</template> </template>
@ -405,6 +214,10 @@ export default {
}; };
}, },
created() { created() {
if (localStorage.getItem('routeCheckStatus')) {
this.queryParams.routeCheckStatus = localStorage.getItem('routeCheckStatus')
localStorage.removeItem('routeCheckStatus')
}
this.getList(); this.getList();
this.selectAgencyinfo(); this.selectAgencyinfo();
}, },
@ -439,6 +252,7 @@ export default {
}, },
// //
handleLook(row) { handleLook(row) {
localStorage.setItem('routeCheckStatus', this.queryParams.routeCheckStatus)
this.$router.push({ this.$router.push({
path: "/task/LookAuditing", path: "/task/LookAuditing",
query: { query: {
@ -450,12 +264,13 @@ export default {
}, },
/** 审核操作 */ /** 审核操作 */
handleAuthRole(row) { handleAuthRole(row) {
localStorage.setItem('routeCheckStatus', this.queryParams.routeCheckStatus)
this.$router.push({ this.$router.push({
path: "/task/Auditing", path: "/task/Auditing",
query: { query: {
patientId: row.patientId, patientId: row.patientId,
signRecordId: row.id, signRecordId: row.id,
routeCheckStatus:row.routeCheckStatus routeCheckStatus: row.routeCheckStatus
}, },
}); });
}, },

View File

@ -355,6 +355,10 @@ export default {
}; };
}, },
created() { created() {
if (localStorage.getItem('serviceStatus')) {
this.queryParams.serviceStatus = localStorage.getItem('serviceStatus')
localStorage.removeItem('serviceStatus')
}
this.selectAgencyinfo(); this.selectAgencyinfo();
}, },
mounted() { mounted() {
@ -477,18 +481,19 @@ export default {
// //
addTask() { addTask() {
if (this.addTaskitem) { if (this.addTaskitem) {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => { localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
this.$router.push({ // this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
path: "/patient/ManuallyCreatingTasks", this.$router.push({
query: { path: "/patient/ManuallyCreatingTasks",
signPatientRecordId: this.addTaskitem.id, query: {
patientId: this.addTaskitem.patientId, signPatientRecordId: this.addTaskitem.id,
patientName: this.addTaskitem.patientName, patientId: this.addTaskitem.patientId,
departmentId: this.addTaskitem.departmentId, patientName: this.addTaskitem.patientName,
departmentName: this.addTaskitem.departmentName, departmentId: this.addTaskitem.departmentId,
}, departmentName: this.addTaskitem.departmentName,
}); },
}) });
// })
} else { } else {
this.$message.error('请先选择一名签约服务中患者'); this.$message.error('请先选择一名签约服务中患者');
} }
@ -548,28 +553,29 @@ export default {
this.getList(); this.getList();
}, },
handlenewsign(row) { handlenewsign(row) {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => { localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
this.$router.replace({ // this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
path: "/patient/newSigning", this.$router.replace({
query: { path: "/patient/newSigning",
departmentId: row.departmentId, query: {
patientName: row.patientName, departmentId: row.departmentId,
patientPhone: row.patientPhone, patientName: row.patientName,
visitMethod: row.visitMethod, patientPhone: row.patientPhone,
signDiagnosis: row.signDiagnosis, visitMethod: row.visitMethod,
visitSerialNumber: row.visitSerialNumber, signDiagnosis: row.signDiagnosis,
hospitalAgencyName: row.hospitalAgencyName, visitSerialNumber: row.visitSerialNumber,
hospitalAgencyId: row.hospitalAgencyId, hospitalAgencyName: row.hospitalAgencyName,
inHospitalNumber: row.inHospitalNumber, hospitalAgencyId: row.hospitalAgencyId,
departmentName: row.departmentName, inHospitalNumber: row.inHospitalNumber,
paymentStatus: row.paymentStatus, departmentName: row.departmentName,
sex: row.sex, paymentStatus: row.paymentStatus,
age: row.birthDate ? getAge(row.birthDate) : '', sex: row.sex,
patientId: row.patientId, age: row.birthDate ? getAge(row.birthDate) : '',
createTime: row.createTime, patientId: row.patientId,
}, createTime: row.createTime,
}); },
}) });
// })
}, },
selectAgencyinfo() { selectAgencyinfo() {
let query = { let query = {
@ -665,19 +671,21 @@ export default {
}, },
// //
handleContinue(row) { handleContinue(row) {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => { localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
this.$router.replace({ // this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
path: "/patient/continueSigning", this.$router.replace({
query: { path: "/patient/continueSigning",
hospitalAgencyId: row.hospitalAgencyId, query: {
hospitalAgencyName: row.hospitalAgencyName, hospitalAgencyId: row.hospitalAgencyId,
patientSignRecordId: row.id, hospitalAgencyName: row.hospitalAgencyName,
}, patientSignRecordId: row.id,
}); },
}) });
// })
}, },
/** 详情操作 */ /** 详情操作 */
handleAuthRole(row) { handleAuthRole(row) {
localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
this.$router.push({ this.$router.push({
path: "/patient/patientdetails", path: "/patient/patientdetails",
query: { query: {
@ -697,6 +705,7 @@ export default {
}, },
// //
handledata(row) { handledata(row) {
localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
this.$router.push({ this.$router.push({
path: "/patient/Datadetails", path: "/patient/Datadetails",
query: { query: {