|
@@ -3,11 +3,15 @@
|
|
|
<el-header height="30">
|
|
|
<el-descriptions title="患者信息" border>
|
|
|
<template #extra>
|
|
|
- <el-button type="primary" @click="chaoZuoZhiNan = true" size="small">操作指南</el-button>
|
|
|
- <el-button type="primary" @click="ziDongPiPeiTuiFei" size="small">自动匹配</el-button>
|
|
|
+ <el-button type="primary" @click="chaoZuoZhiNan = true" icon="el-icon-bell" size="small">操作指南</el-button>
|
|
|
+ <el-button type="warning" @click="ziDongPiPeiTuiFei" icon="el-icon-refresh" size="small">自动匹配</el-button>
|
|
|
</template>
|
|
|
<el-descriptions-item label="姓名">{{ huanZheXinXi.name }}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="住院号">{{ huanZheXinXi.inpatientNo }}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="住院号">
|
|
|
+ <el-input size="mini" style="width: 120px" v-model="huanZheXinXi.inpatientNo" @keyup.enter="chaXunWeiGuiClick"></el-input>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ <el-button @click="chaXunWeiGuiClick">查询</el-button>
|
|
|
+ </el-descriptions-item>
|
|
|
<el-descriptions-item label="住院次数">{{ huanZheXinXi.admissTimes }}</el-descriptions-item>
|
|
|
<el-descriptions-item label="未匹配">{{ weiPiPei.data.length }} 条</el-descriptions-item>
|
|
|
<el-descriptions-item label="违规费用">{{ weiGuiFeiYong.data.length }} 条</el-descriptions-item>
|
|
@@ -144,10 +148,10 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { onMounted, ref, watch } from 'vue'
|
|
|
+import { ref, watch } from 'vue'
|
|
|
import store from '../../store'
|
|
|
-import { huoQuZhenShuKePiPei, caiFenPiPei, yiZhuTuiFeiPiPei } from '@/api/yibao/xiang-mu-lu-ru'
|
|
|
-import { ElMessageBox } from 'element-plus'
|
|
|
+import { huoQuZhenShuKePiPei, caiFenPiPei, yiZhuTuiFeiPiPei, weiGuiFeiYongFenXi } from '@/api/yibao/xiang-mu-lu-ru'
|
|
|
+import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
import { shortcuts } from '@/data/shortcuts'
|
|
|
import { getDateRangeFormatDate } from '../../utils/date'
|
|
|
export default {
|
|
@@ -163,7 +167,13 @@ export default {
|
|
|
setup(props, ctx) {
|
|
|
const windowSize = store.state.app.windowSize
|
|
|
const WinHeight = windowSize.h
|
|
|
- const huanZheXinXi = props.patient
|
|
|
+
|
|
|
+ const huanZheXinXi = ref({
|
|
|
+ inpatientNo: '',
|
|
|
+ admissTimes: 0,
|
|
|
+ name: '',
|
|
|
+ })
|
|
|
+
|
|
|
const feiYongXiuZhenDrawer = ref(false)
|
|
|
|
|
|
const weiGuiTabs = ref('未匹配')
|
|
@@ -288,29 +298,26 @@ export default {
|
|
|
watch(
|
|
|
() => props.init,
|
|
|
() => {
|
|
|
+ huanZheXinXi.value.deptCode = props.patient.deptCode
|
|
|
+ huanZheXinXi.value.inpatientNo = props.patient.inpatientNo
|
|
|
genXingShuJu()
|
|
|
}
|
|
|
)
|
|
|
|
|
|
- onMounted(() => {
|
|
|
- genXingShuJu()
|
|
|
- chaoZuoZhiNan.value = true
|
|
|
- })
|
|
|
+ ctx.emit('open', false)
|
|
|
|
|
|
const genXingShuJu = () => {
|
|
|
- // 违规的费用
|
|
|
- weiGuiFeiYong.value.currentPage = 1
|
|
|
- weiGuiFeiYong.value.pageSize = 40
|
|
|
- weiGuiFeiYong.value.data = props.patient.weiXieDaiYuanLiuShui
|
|
|
- // 没有匹配
|
|
|
- weiPiPei.value.currentPage = 1
|
|
|
- weiPiPei.value.pageSize = 15
|
|
|
- weiPiPei.value.data = props.patient.weiPiPei
|
|
|
-
|
|
|
- if (props.patient.weiPiPei.length === 0 && props.patient.weiXieDaiYuanLiuShui.length > 0) {
|
|
|
- weiGuiTabs.value = '违规退费'
|
|
|
+ if (huanZheXinXi.value.inpatientNo === '') {
|
|
|
+ qingKong()
|
|
|
+ ctx.emit('open', true)
|
|
|
+ setTimeout(() => {
|
|
|
+ ElMessage.warning({
|
|
|
+ message: '请输入住院号',
|
|
|
+ })
|
|
|
+ }, 1000)
|
|
|
} else {
|
|
|
- weiGuiTabs.value = '未匹配'
|
|
|
+ huanZheXinXi.value.inpatientNo = props.patient.inpatientNo
|
|
|
+ chaXunWeiGuiClick()
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -322,13 +329,54 @@ export default {
|
|
|
dangerouslyUseHTMLString: true,
|
|
|
})
|
|
|
.then(() => {
|
|
|
- yiZhuTuiFeiPiPei(props.patient.inpatientNo, props.patient.admissTimes, store.state.user.info.deptCode).then((res) => {
|
|
|
- ctx.emit('shuaXin')
|
|
|
+ yiZhuTuiFeiPiPei(huanZheXinXi.value.inpatientNo, huanZheXinXi.value.deptCode).then((res) => {
|
|
|
+ chaXunWeiGuiClick()
|
|
|
})
|
|
|
})
|
|
|
.catch(() => {})
|
|
|
}
|
|
|
|
|
|
+ const chaXunWeiGuiClick = () => {
|
|
|
+ weiGuiFeiYongFenXi(huanZheXinXi.value.inpatientNo, huanZheXinXi.value.deptCode).then((res) => {
|
|
|
+ huanZheXinXi.value.inpatientNo = res.inpatientNo
|
|
|
+ huanZheXinXi.value.admissTimes = res.admissTimes
|
|
|
+ huanZheXinXi.value.name = res.name
|
|
|
+ // 违规的费用
|
|
|
+ weiGuiFeiYong.value.currentPage = 1
|
|
|
+ weiGuiFeiYong.value.pageSize = 40
|
|
|
+ weiGuiFeiYong.value.data = res.weiXieDaiYuanLiuShui
|
|
|
+ // 没有匹配
|
|
|
+ weiPiPei.value.currentPage = 1
|
|
|
+ weiPiPei.value.pageSize = 15
|
|
|
+ weiPiPei.value.data = res.weiPiPei
|
|
|
+ console.log(res)
|
|
|
+
|
|
|
+ if ((weiPiPei.value.data.length > 0 && huanZheXinXi.value.default === '') || weiGuiFeiYong.value.data.length > 0) {
|
|
|
+ ctx.emit('open', true)
|
|
|
+ }
|
|
|
+
|
|
|
+ if (weiPiPei.value.data.length === 0 && weiGuiFeiYong.value.data.length > 0) {
|
|
|
+ weiGuiTabs.value = '违规退费'
|
|
|
+ } else {
|
|
|
+ weiGuiTabs.value = '未匹配'
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ const qingKong = () => {
|
|
|
+ huanZheXinXi.value.inpatientNo = ''
|
|
|
+ huanZheXinXi.value.admissTimes = null
|
|
|
+ huanZheXinXi.value.name = ''
|
|
|
+ // 违规的费用
|
|
|
+ weiGuiFeiYong.value.currentPage = 1
|
|
|
+ weiGuiFeiYong.value.pageSize = 40
|
|
|
+ weiGuiFeiYong.value.data = []
|
|
|
+ // 没有匹配
|
|
|
+ weiPiPei.value.currentPage = 1
|
|
|
+ weiPiPei.value.pageSize = 15
|
|
|
+ weiPiPei.value.data = []
|
|
|
+ }
|
|
|
+
|
|
|
return {
|
|
|
weiPiPei,
|
|
|
weiGuiFeiYong,
|
|
@@ -351,6 +399,7 @@ export default {
|
|
|
chaoZuoZhiNan,
|
|
|
keYiPiPeiDeZhenShuSizeChange,
|
|
|
ziDongPiPeiTuiFei,
|
|
|
+ chaXunWeiGuiClick,
|
|
|
}
|
|
|
},
|
|
|
}
|