|
@@ -16,56 +16,64 @@
|
|
|
<el-main>
|
|
|
<div class="his-info">
|
|
|
<el-tag>患者基本信息</el-tag>
|
|
|
- <el-row style="height: 28px; line-height: 28px">
|
|
|
- <el-col :span="2">住院号:</el-col>
|
|
|
- <el-col :span="4">{{ patient.inpatientNo }}</el-col>
|
|
|
- <el-col :span="2">住院次数:</el-col>
|
|
|
- <el-col :span="4">{{ patient.admissTimes }}</el-col>
|
|
|
- <el-col :span="2">病人类别:</el-col>
|
|
|
- <el-col :span="4">{{ patient.visitTypeName }}</el-col>
|
|
|
- <el-col :span="2">身份证号:</el-col>
|
|
|
- <el-col :span="4">{{ patient.socialNo }}</el-col>
|
|
|
- </el-row>
|
|
|
- <el-row style="height: 28px; line-height: 28px">
|
|
|
- <el-col :span="2">姓名:</el-col>
|
|
|
- <el-col :span="4">{{ patient.name }}</el-col>
|
|
|
- <el-col :span="2">性别:</el-col>
|
|
|
- <el-col :span="4">{{ cptSex(patient.sex) }}</el-col>
|
|
|
- <el-col :span="2">出生日期:</el-col>
|
|
|
- <el-col :span="4">{{ patient.birthDate }}</el-col>
|
|
|
- <el-col :span="2">联系电话:</el-col>
|
|
|
- <el-col :span="4">{{ patient.homeTel }}</el-col>
|
|
|
- </el-row>
|
|
|
- <el-row style="height: 28px; line-height: 28px">
|
|
|
- <el-col :span="2">入院医生:</el-col>
|
|
|
- <el-col :span="4">{{ patient.admissPhysicianName }}</el-col>
|
|
|
- <el-col :span="2">入院诊断:</el-col>
|
|
|
- <el-col :span="4">{{ patient.admissDiagStr }}</el-col>
|
|
|
- <el-col :span="2">门诊诊断:</el-col>
|
|
|
- <el-col :span="4">{{ patient.clinicDiagStr }}</el-col>
|
|
|
- <el-col :span="2">病区:</el-col>
|
|
|
- <el-col :span="4">{{ patient.admissWardName }}</el-col>
|
|
|
- </el-row>
|
|
|
- <el-row style="height: 28px; line-height: 28px">
|
|
|
- <el-col :span="2">入院日期:</el-col>
|
|
|
- <el-col :span="4">{{ patient.admissDate }}</el-col>
|
|
|
- <el-col :span="2">小科室:</el-col>
|
|
|
- <el-col :span="4">{{ patient.smallDeptName }}</el-col>
|
|
|
- <el-col :span="2">床位:</el-col>
|
|
|
- <el-col :span="4">{{ patient.bedNo }}</el-col>
|
|
|
- <el-col :span="2">管床医生:</el-col>
|
|
|
- <el-col :span="4">{{ patient.referPhysicianName }}</el-col>
|
|
|
- </el-row>
|
|
|
- <el-row style="height: 28px; line-height: 28px">
|
|
|
- <el-col :span="2">医保身份:</el-col>
|
|
|
- <el-col :span="4">{{ patient.responceTypeName }}</el-col>
|
|
|
- <el-col :span="2">是否转诊:</el-col>
|
|
|
- <el-col :span="4">{{ filterYesOrNo(patient.xnhHasreferral) }}</el-col>
|
|
|
- <el-col :span="2">转诊单号:</el-col>
|
|
|
- <el-col :span="4">{{ patient.xnhReferralno }}</el-col>
|
|
|
- <el-col :span="2">参保区划:</el-col>
|
|
|
- <el-col :span="4">{{ patient.admdvs }}</el-col>
|
|
|
- </el-row>
|
|
|
+ <el-descriptions :column="4" border>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 住院号 </template>
|
|
|
+ {{ patient.inpatientNo }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 住院次数 </template>
|
|
|
+ {{ patient.admissTimes }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 身份证号 </template>
|
|
|
+ {{ patient.socialNo }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 出生日期 </template>
|
|
|
+ {{ patient.birthDate }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 姓名 </template>
|
|
|
+ {{ patient.name }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 性别 </template>
|
|
|
+ {{ patient.sex }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 参保区划 </template>
|
|
|
+ {{ patient.admdvs }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 联系电话 </template>
|
|
|
+ {{ patient.homeTel }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 入院医生 </template>
|
|
|
+ {{ patient.admissPhysicianName }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 病区 </template>
|
|
|
+ {{ patient.admissWardName }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 入院日期 </template>
|
|
|
+ {{ patient.admissDate }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 管床医生 </template>
|
|
|
+ {{ patient.referPhysicianName }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 床位 </template>
|
|
|
+ {{ patient.bedNo }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template #label> 小科室 </template>
|
|
|
+ {{ patient.smallDeptName }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</div>
|
|
|
<div style="height: 8px"></div>
|
|
|
<el-tag>医保入院诊断</el-tag>
|
|
@@ -121,28 +129,42 @@
|
|
|
</div>
|
|
|
</el-drawer>
|
|
|
<el-dialog title="人员信息" v-model="showPsnInsuinfo" width="65%">
|
|
|
- <el-tag>参保信息</el-tag>
|
|
|
- <el-table :data="psnBaseinfo.insuinfo" @row-click="handleClickInsuinfo" stripe height="180">
|
|
|
- <el-table-column label="余额" prop="balc"></el-table-column>
|
|
|
- <el-table-column label="险种类型" prop="insutypeName"></el-table-column>
|
|
|
- <el-table-column label="人员类别" prop="psnTypeName"></el-table-column>
|
|
|
- <el-table-column label="参保状态" prop="psnInsuStasName"></el-table-column>
|
|
|
- <el-table-column label="个人参保日期" prop="psnInsuDate"></el-table-column>
|
|
|
- <el-table-column label="暂停参保日期" prop="pausInsuDate"></el-table-column>
|
|
|
- <el-table-column label="公务员标志" prop="cvlservFlagName"></el-table-column>
|
|
|
- <el-table-column label="参保地医保区划" prop="insuplcAdmdvs"></el-table-column>
|
|
|
- <el-table-column label="参保地名称" prop="insuplcAdmdvsName"></el-table-column>
|
|
|
- <el-table-column label="单位名称" prop="empName"></el-table-column>
|
|
|
- </el-table>
|
|
|
- <div style="height: 16px"></div>
|
|
|
- <el-tag>身份信息</el-tag>
|
|
|
- <el-table :data="psnBaseinfo.idetinfo" stripe height="180">
|
|
|
- <el-table-column label="人员身份类别" prop="psnIdetTypeName"></el-table-column>
|
|
|
- <el-table-column label="人员类别等级" prop="psnTypeLv"></el-table-column>
|
|
|
- <el-table-column label="备注" prop="memo"></el-table-column>
|
|
|
- <el-table-column label="开始时间" prop="begntime"></el-table-column>
|
|
|
- <el-table-column label="结束时间" prop="endtime"></el-table-column>
|
|
|
- </el-table>
|
|
|
+ <el-tag>{{ injuryMode ? '工伤信息' : '参保信息' }}</el-tag>
|
|
|
+ <div v-if="injuryMode">
|
|
|
+ <el-table :data="injuryinfo" @row-click="handleClickInjuryinfo" stripe height="180">
|
|
|
+ <el-table-column label="电脑号" prop="indiId"></el-table-column>
|
|
|
+ <el-table-column label="工伤个人业务序号" prop="serialPers"></el-table-column>
|
|
|
+ <el-table-column label="工伤认定号" prop="identifyCode"></el-table-column>
|
|
|
+ <el-table-column label="认定申请时间" prop="identyDate"></el-table-column>
|
|
|
+ <el-table-column label="受伤部位" prop="injuryPart"></el-table-column>
|
|
|
+ <el-table-column label="报告时间" prop="reportDate"></el-table-column>
|
|
|
+ <el-table-column label="事故发生时间" prop="accidentDate"></el-table-column>
|
|
|
+ <el-table-column label="事故详细情况" prop="accidentDetail"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <el-table :data="psnBaseinfo.insuinfo" @row-click="handleClickInsuinfo" stripe height="180">
|
|
|
+ <el-table-column label="余额" prop="balc"></el-table-column>
|
|
|
+ <el-table-column label="险种类型" prop="insutypeName"></el-table-column>
|
|
|
+ <el-table-column label="人员类别" prop="psnTypeName"></el-table-column>
|
|
|
+ <el-table-column label="参保状态" prop="psnInsuStasName"></el-table-column>
|
|
|
+ <el-table-column label="个人参保日期" prop="psnInsuDate"></el-table-column>
|
|
|
+ <el-table-column label="暂停参保日期" prop="pausInsuDate"></el-table-column>
|
|
|
+ <el-table-column label="公务员标志" prop="cvlservFlagName"></el-table-column>
|
|
|
+ <el-table-column label="参保地医保区划" prop="insuplcAdmdvs"></el-table-column>
|
|
|
+ <el-table-column label="参保地名称" prop="insuplcAdmdvsName"></el-table-column>
|
|
|
+ <el-table-column label="单位名称" prop="empName"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div style="height: 16px"></div>
|
|
|
+ <el-tag>身份信息</el-tag>
|
|
|
+ <el-table :data="psnBaseinfo.idetinfo" stripe height="180">
|
|
|
+ <el-table-column label="人员身份类别" prop="psnIdetTypeName"></el-table-column>
|
|
|
+ <el-table-column label="人员类别等级" prop="psnTypeLv"></el-table-column>
|
|
|
+ <el-table-column label="备注" prop="memo"></el-table-column>
|
|
|
+ <el-table-column label="开始时间" prop="begntime"></el-table-column>
|
|
|
+ <el-table-column label="结束时间" prop="endtime"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
</el-dialog>
|
|
|
<el-dialog title="人员待遇信息" v-model="showTrtInfos" width="65%">
|
|
|
<el-table :data="trtInfos" stripe>
|
|
@@ -182,6 +204,7 @@ import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
import { nullPatient } from '@/utils/validate'
|
|
|
import { getBizAppyTypes, getMedTypesByFlag, getDiagTypes } from '@/api/medical-insurance/si-dict'
|
|
|
import { checkPersonTreatment, obtainBasicPersonInfo, queryPersonnelAssignmentInfo } from '@/api/medical-insurance/si-query'
|
|
|
+import { getPersonBaseinfo, admissRegistration } from '@/api/medical-insurance/si-injury'
|
|
|
import { admissRegister } from '@/api/medical-insurance/si-inpatient'
|
|
|
import { getZyInYbDiags } from '@/api/yibao/patient'
|
|
|
import { baseinfo } from '@/data/inpatient'
|
|
@@ -205,6 +228,9 @@ export default {
|
|
|
const insuRowClickFlag = ref(null)
|
|
|
const zyInYbDiags = ref([])
|
|
|
const medTypes = ref([])
|
|
|
+ const injuryMode = computed(() => {
|
|
|
+ return store.state.ptnt.injuryMode
|
|
|
+ })
|
|
|
|
|
|
const actived = ref(false)
|
|
|
onActivated(() => {
|
|
@@ -227,6 +253,8 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
|
|
|
+ const injuryinfo = ref([])
|
|
|
+
|
|
|
const getPsnInsuinfo = (flag) => {
|
|
|
if (nullPatient()) {
|
|
|
return
|
|
@@ -249,35 +277,69 @@ export default {
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- insuRowClickFlag.value = flag
|
|
|
- const param = {
|
|
|
- medType: patient.value.medType,
|
|
|
- patNo: patient.value.inpatientNo,
|
|
|
- times: patient.value.admissTimes,
|
|
|
- ledgerSn: patient.value.ledgerSn,
|
|
|
- socialNo: patient.value.socialNo,
|
|
|
- name: patient.value.name,
|
|
|
- admdvs: patient.value.admdvs,
|
|
|
- needSaving: 1,
|
|
|
+
|
|
|
+ if (injuryMode.value) {
|
|
|
+ getPersonBaseinfo(patient.value).then((res) => {
|
|
|
+ injuryinfo.value = res
|
|
|
+ showPsnInsuinfo.value = true
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ insuRowClickFlag.value = flag
|
|
|
+ const param = {
|
|
|
+ medType: patient.value.medType,
|
|
|
+ patNo: patient.value.inpatientNo,
|
|
|
+ times: patient.value.admissTimes,
|
|
|
+ ledgerSn: patient.value.ledgerSn,
|
|
|
+ socialNo: patient.value.socialNo,
|
|
|
+ name: patient.value.name,
|
|
|
+ admdvs: patient.value.admdvs,
|
|
|
+ needSaving: 1,
|
|
|
+ }
|
|
|
+ obtainBasicPersonInfo(param).then((res) => {
|
|
|
+ if (flag === 0) {
|
|
|
+ const param = {
|
|
|
+ patNo: patient.value.inpatientNo,
|
|
|
+ times: patient.value.admissTimes,
|
|
|
+ psnNo: res.psnNo,
|
|
|
+ bizAppyType: bizAppyType.value,
|
|
|
+ }
|
|
|
+ queryPersonnelAssignmentInfo(param).then((res) => {
|
|
|
+ fixMedins.value = res
|
|
|
+ showFixMedins.value = true
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ patient.value.psnNo = res.psnNo
|
|
|
+ psnBaseinfo.value = res
|
|
|
+ showPsnInsuinfo.value = true
|
|
|
+ }
|
|
|
+ })
|
|
|
}
|
|
|
- obtainBasicPersonInfo(param).then((res) => {
|
|
|
- if (flag === 0) {
|
|
|
+ }
|
|
|
+
|
|
|
+ const handleClickInjuryinfo = (row) => {
|
|
|
+ ElMessageBox.confirm('审核通过将直接进行医保入院登记,确定审核通过?', '提示', {
|
|
|
+ type: 'warning',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
const param = {
|
|
|
- patNo: patient.value.inpatientNo,
|
|
|
- times: patient.value.admissTimes,
|
|
|
- psnNo: res.psnNo,
|
|
|
- bizAppyType: bizAppyType.value,
|
|
|
+ baseinfo: patient.value,
|
|
|
+ injuryinfo: row,
|
|
|
}
|
|
|
- queryPersonnelAssignmentInfo(param).then((res) => {
|
|
|
- fixMedins.value = res
|
|
|
- showFixMedins.value = true
|
|
|
+ admissRegistration(param).then((res) => {
|
|
|
+ approveYbsf(patient.value).then(() => {
|
|
|
+ ElMessage({
|
|
|
+ message: '审核已通过,医保入院登记成功。',
|
|
|
+ type: 'success',
|
|
|
+ duration: 2500,
|
|
|
+ showClose: true,
|
|
|
+ })
|
|
|
+ showPsnInsuinfo.value = false
|
|
|
+ })
|
|
|
})
|
|
|
- } else {
|
|
|
- patient.value.psnNo = res.psnNo
|
|
|
- psnBaseinfo.value = res
|
|
|
- showPsnInsuinfo.value = true
|
|
|
- }
|
|
|
- })
|
|
|
+ })
|
|
|
+ .catch(() => {})
|
|
|
}
|
|
|
|
|
|
const handleClickInsuinfo = (row) => {
|
|
@@ -419,7 +481,8 @@ export default {
|
|
|
zyInYbDiags,
|
|
|
tableHeight,
|
|
|
drawerVisible,
|
|
|
- getDiagTypeName,
|
|
|
+ injuryMode,
|
|
|
+ injuryinfo,
|
|
|
cancelData,
|
|
|
maleIcon,
|
|
|
femaleIcon,
|
|
@@ -434,9 +497,11 @@ export default {
|
|
|
trtInfos,
|
|
|
showTrtInfos,
|
|
|
cptSex,
|
|
|
+ getDiagTypeName,
|
|
|
filterYesOrNo,
|
|
|
getPsnInsuinfo,
|
|
|
handleClickInsuinfo,
|
|
|
+ handleClickInjuryinfo,
|
|
|
reject,
|
|
|
showDrawer,
|
|
|
handleClickRow,
|