|
@@ -114,8 +114,7 @@
|
|
|
icon="el-icon-info"
|
|
|
iconColor="#F56C6C"
|
|
|
title="是否删除该诊断"
|
|
|
- @confirm="delZhenDuan(scope.$index, scope.row.disDiagNo)"
|
|
|
- >
|
|
|
+ @confirm="delZhenDuan(scope.$index, scope.row.disDiagNo)">
|
|
|
<template #reference>
|
|
|
<el-button icon="el-icon-delete" size="mini" type="danger">删除</el-button>
|
|
|
</template>
|
|
@@ -126,7 +125,7 @@
|
|
|
<el-tag size="small">手术操作信息</el-tag>
|
|
|
<el-button icon="el-icon-circle-plus" type="success" @click="tianJiaXiuGaiShouShu(-1)">新增手术</el-button>
|
|
|
<el-table id="sortable-oprninfo" :data="oprninfo" :height="store.state.app.windowSize.h / 2.5"
|
|
|
- highlight-current-row row-key="id" stripe>
|
|
|
+ border highlight-current-row row-key="id" stripe>
|
|
|
<el-table-column width="50">
|
|
|
<template #default>
|
|
|
<el-button class="shangxiatuodong"><i class="iconfont icon-shangxiatuodong"></i></el-button>
|
|
@@ -134,7 +133,11 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column label="手术及操作名称" prop="ssmc"></el-table-column>
|
|
|
<el-table-column label="序号" prop="ssxh" width="50"></el-table-column>
|
|
|
- <el-table-column label="手术及操作日期" prop="ssrq"></el-table-column>
|
|
|
+ <el-table-column label="手术开始时间" prop="opStartDate" width="140"></el-table-column>
|
|
|
+ <el-table-column label="手术结束时间" prop="opEndDate" width="140"></el-table-column>
|
|
|
+ <el-table-column label="麻醉开始时间" prop="anstStartDate" width="140"></el-table-column>
|
|
|
+ <el-table-column label="麻醉结束时间" prop="anstEndDate" width="140"></el-table-column>
|
|
|
+ <el-table-column label="手术及操作日期" prop="ssrq" width="140"></el-table-column>
|
|
|
<el-table-column label="手术级别" prop="ssjb"></el-table-column>
|
|
|
<el-table-column label="手术及操作编码 " prop="ssbm"></el-table-column>
|
|
|
<el-table-column label="手术及操作医师">
|
|
@@ -165,6 +168,28 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
+ <el-tag>患者输血信息</el-tag>
|
|
|
+ <el-button icon="el-icon-circle-plus" type="success" @click="xinZhengShuXueXinXi">新增输血信息</el-button>
|
|
|
+ <el-table :data="patientBldInfos" :height="store.state.app.windowSize.h / 3">
|
|
|
+ <el-table-column label="输血品种" prop="bldCatName"></el-table-column>
|
|
|
+ <el-table-column label="输血量" prop="bldAmt"></el-table-column>
|
|
|
+ <el-table-column label="输血计量单位" prop="bldUnit"></el-table-column>
|
|
|
+ <el-table-column label="操作" width="210">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-button icon="el-icon-edit" type="warning" @click="modifiedBloodTransfusion(scope.row)">
|
|
|
+ 修改
|
|
|
+ </el-button>
|
|
|
+ <el-popconfirm cancel-button-text="取消" confirm-button-text="确认" icon="el-icon-info" iconColor="#F56C6C"
|
|
|
+ title="是否删除该输血信息" @confirm="clickRemoveBloodTransfusion(scope.$index,scope.row.id)">
|
|
|
+ <template #reference>
|
|
|
+ <el-button icon="el-icon-delete" size="mini" type="danger">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-popconfirm>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <shu-xue-xin-xi v-if="shuXueXinXi.dialog" :data="shuXueXinXi.data" @addData="addBloodTransfusionData"
|
|
|
+ @close="shuXueXinXi.dialog = false"/>
|
|
|
</el-dialog>
|
|
|
<el-dialog v-model="zhenDuanDialog" width="60%">
|
|
|
<el-select v-model="diagnosticQuery.method" filterable style="width: 100px">
|
|
@@ -237,7 +262,6 @@
|
|
|
:data="formShouShu"
|
|
|
@addShouShuClick="addShouShuClick"
|
|
|
@close="shouShuDialog = false"/>
|
|
|
-
|
|
|
<shen-he-xin-xi v-if="shenHeRef" :data="props.data.shenHeXinXi" @close="shenHeRef = false"></shen-he-xin-xi>
|
|
|
<ShuJuDuiBi
|
|
|
v-if="shuJuDuiBiDialogRef"
|
|
@@ -257,8 +281,12 @@ import {searchYbDiag} from '@/api/yibao/dictionary'
|
|
|
import {decTypes, operations} from '../../../data'
|
|
|
import {clone} from '@/utils/clone'
|
|
|
import {ElMessage, ElMessageBox} from 'element-plus'
|
|
|
-import {getRenYuan} from '@/api/public-api'
|
|
|
-import {setlUploadAudit, shouShuBianMa, upldSetlList} from '@/api/medical-insurance/si-setl-upload'
|
|
|
+import {
|
|
|
+ removeBloodTransfusion,
|
|
|
+ setlUploadAudit,
|
|
|
+ shouShuBianMa,
|
|
|
+ upldSetlList
|
|
|
+} from '@/api/medical-insurance/si-setl-upload'
|
|
|
import {formatDatetime} from '@/utils/date'
|
|
|
import {listIsBlank, stringIsBlank, stringNotBlank} from '@/utils/blank-utils'
|
|
|
import {getAdmissCond, getsiDiagTypeName, maZuiName, qieKouName, shenHeQuanXian} from '../jieSuanDanXiuGai'
|
|
@@ -269,6 +297,7 @@ import Sortable from 'sortablejs'
|
|
|
import ShuJuDuiBi from '../ShuJuDuiBi.vue'
|
|
|
import {ArrayIsEqual} from "@/utils/list-utlis";
|
|
|
import JieSuanDanXiuGaiShouShu from "@/components/si-sheet-upload/jie-suan-dan-xiu-gai/JieSuanDanXiuGaiShouShu.vue";
|
|
|
+import ShuXueXinXi from "@/components/si-sheet-upload/ShuXueXinXi.vue";
|
|
|
|
|
|
const props = defineProps({
|
|
|
data: {},
|
|
@@ -453,25 +482,6 @@ const queryShouShu = () => {
|
|
|
queryShouShuCodeData.value.page = 1
|
|
|
queryShouShuCodeData.value.total = 0
|
|
|
}
|
|
|
-const queryShouShuClick = () => {
|
|
|
- if (queryShouShuCodeName.value.length < 1) {
|
|
|
- return
|
|
|
- }
|
|
|
- switch (queryShouShuCodeName.value) {
|
|
|
- case '手术编码':
|
|
|
- shouShuBianMa(queryShouShuCodeData.value.code, 1).then((res) => {
|
|
|
- shouShuData.value = res.records
|
|
|
- queryShouShuCodeData.value.total = res.total
|
|
|
- })
|
|
|
- return
|
|
|
- default:
|
|
|
- getRenYuan(queryShouShuCodeData.value.code).then((res) => {
|
|
|
- shouShuData.value = res
|
|
|
- queryShouShuCodeData.value.total = 0
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
-}
|
|
|
|
|
|
const shouShuCurrentPage = (val) => {
|
|
|
queryShouShuCodeData.value.page = val
|
|
@@ -481,14 +491,6 @@ const shouShuCurrentPage = (val) => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-const xuanZheShouShu = (val) => {
|
|
|
- formShouShu.value.ssbm = val.code
|
|
|
- formShouShu.value.ssmc = val.name
|
|
|
- setTimeout(() => {
|
|
|
- queryShouShuDialog.value = false
|
|
|
- }, 400)
|
|
|
-}
|
|
|
-
|
|
|
const addShouShuClick = async (val) => {
|
|
|
val.ssrq = formatDatetime(val.ssrq)
|
|
|
if (oprninfoIndex.value !== -1) {
|
|
@@ -712,6 +714,7 @@ let oldData = $ref({});
|
|
|
|
|
|
const init = () => {
|
|
|
setlinfo.value = clone(props.data)
|
|
|
+ patientBldInfos = clone(props.data.patientBldInfos)
|
|
|
// 如果新的没有就用老的
|
|
|
if (stringNotBlank(props.data.shenHeXinXi.id)) {
|
|
|
diseinfo.value = clone(props.data.newYbZyDisDiag)
|
|
@@ -783,6 +786,45 @@ function sortableOprninfo() {
|
|
|
Sortable.create(el, ops)
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+///////////////// 患者输血量信息
|
|
|
+let shuXueXinXi = $ref({
|
|
|
+ dialog: false,
|
|
|
+ data: {
|
|
|
+ id: -1,
|
|
|
+ patNo: '',
|
|
|
+ times: 0,
|
|
|
+ bldCat: '',
|
|
|
+ bldCatName: '',
|
|
|
+ bldAmt: 0,
|
|
|
+ bldUnit: ''
|
|
|
+ }
|
|
|
+})
|
|
|
+let patientBldInfos = $ref([])
|
|
|
+const xinZhengShuXueXinXi = () => {
|
|
|
+ shuXueXinXi.dialog = true
|
|
|
+ shuXueXinXi.data.id = -1
|
|
|
+ shuXueXinXi.data.patNo = setlinfo.value.inpatientNo
|
|
|
+ shuXueXinXi.data.times = setlinfo.value.admissTimes
|
|
|
+}
|
|
|
+
|
|
|
+const modifiedBloodTransfusion = (val) => {
|
|
|
+ shuXueXinXi.dialog = true
|
|
|
+ shuXueXinXi.data = val
|
|
|
+}
|
|
|
+
|
|
|
+const addBloodTransfusionData = (val) => {
|
|
|
+ patientBldInfos.push(val)
|
|
|
+}
|
|
|
+
|
|
|
+const clickRemoveBloodTransfusion = (index, id) => {
|
|
|
+ removeBloodTransfusion(id).then((res) => {
|
|
|
+ patientBldInfos.splice(index, 1)
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+///////////////// 患者输血量信息 结束
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
init()
|
|
|
keFouShenHe.value = !(stringNotBlank(props.data.shenHeXinXi.id) && props.data.shenHeXinXi.auditFlag === 0)
|