|
@@ -1,12 +1,12 @@
|
|
|
<template>
|
|
|
- <div style="display: flex">
|
|
|
+ <div style="display: flex; width: 100%">
|
|
|
<div id="listPage" :style="pageStyle">
|
|
|
<div style="width: 100%; text-align: center; font-size: 22px; font-weight: bold; margin-bottom: 4px">{{ listTitle }}</div>
|
|
|
<div style="width: 100%; display: flex; font-size: 15px; margin-bottom: 8px">
|
|
|
<div style="width: 50%; text-align: left">统筹区划:{{ setlinfo.insuplcAdmdvsName }}</div>
|
|
|
<div style="width: 48%; text-align: right">打印日期:{{ nowdate }}</div>
|
|
|
</div>
|
|
|
- <div v-if="outParam.type === 1" class="si-content">
|
|
|
+ <div v-if="outParam.type === 21" class="si-content">
|
|
|
<div style="display: flex; text-align: left; margin-bottom: 4px">
|
|
|
<div style="width: 35%">医疗机构名称:长沙泰和医院</div>
|
|
|
<div style="width: 25%">医院等级:三级综合</div>
|
|
@@ -300,7 +300,7 @@
|
|
|
</tr>
|
|
|
</table>
|
|
|
</div>
|
|
|
- <div v-if="outParam.type === 2" class="si-content">
|
|
|
+ <div v-if="outParam.type === 11" class="si-content">
|
|
|
<div style="display: flex; text-align: left; margin-bottom: 4px">
|
|
|
<div style="width: 50%">医疗机构名称:长沙泰和医院</div>
|
|
|
<div style="width: 50%">就诊号:{{ setlinfo.mdtrtId }}</div>
|
|
@@ -441,46 +441,36 @@
|
|
|
<div v-if="showOperatePane" style="margin-left: 30px; padding: 20px 0">
|
|
|
<div>
|
|
|
<div style="display: inline-block; width: 70px">患者类别:</div>
|
|
|
- <el-select v-model="outParam.type" style="width: 130px" @change="setlinfo = {}">
|
|
|
- <el-option label="住院" :value="1"></el-option>
|
|
|
- <el-option label="门诊" :value="2"></el-option>
|
|
|
- </el-select>
|
|
|
+ <el-radio v-model="outParam.type" :label="21" @change="setlTypeChange">住院</el-radio>
|
|
|
+ <el-radio v-model="outParam.type" :label="11" @change="setlTypeChange">门诊</el-radio>
|
|
|
</div>
|
|
|
- <div style="height: 8px"></div>
|
|
|
- <div>
|
|
|
- <div style="display: inline-block; width: 70px">{{ patNoType }}号:</div>
|
|
|
- <el-input v-model="outParam.patNo" style="width: 130px" clearable></el-input>
|
|
|
+ <div style="margin-top: 8px">
|
|
|
+ <el-input v-model="outParam.patNo" clearable :placeholder="patNoType"></el-input>
|
|
|
</div>
|
|
|
- <div style="height: 8px"></div>
|
|
|
- <div>
|
|
|
- <div style="display: inline-block; width: 70px">{{ patNoType }}次数:</div>
|
|
|
- <el-select v-model="outParam.times" style="width: 130px" @focus="getTimesList">
|
|
|
- <el-option v-for="item in timesList" :key="item" :label="item" :value="item"></el-option>
|
|
|
+ <div style="margin-top: 8px">
|
|
|
+ <el-select v-model="outParam.label" @focus="getTimesList" placeholder="请选择结算条目" style="width: 230px">
|
|
|
+ <el-option v-for="item in timesList" :key="item.setlId" :value="item.label">
|
|
|
+ <span style="color: #8492a6; font-size: 12px">{{ item.times }}</span>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ <span v-show="outParam.type === 21">
|
|
|
+ <span style="color: #8492a6; font-size: 12px">{{ item.ledgerSn }}</span>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ </span>
|
|
|
+ <span>{{ item.endtime }}</span>
|
|
|
+ </el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
|
- <div style="height: 8px"></div>
|
|
|
- <div style="width: 200px; text-align: right">
|
|
|
+ <div style="width: 100%; text-align: right; margin-top: 8px">
|
|
|
<el-button icon="el-icon-printer" @click="siPrint">打印</el-button>
|
|
|
- <el-button type="primary" icon="el-icon-search" @click="beforeQrySetlinfo"> 查找</el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-search" @click="executeQrySetlinfo"> 查找</el-button>
|
|
|
</div>
|
|
|
- <div style="width: 200px; text-align: right; margin-top: 32px; text-decoration: underline">
|
|
|
+ <div style="width: 100%; text-align: right; margin-top: 32px; text-decoration: underline">
|
|
|
<a href="http://webhis.thyy.cn:8888/LODOP/Lodop.zip">下载打印控件</a>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div v-else style="position: fixed; top: 20px; left: 20px">
|
|
|
<el-button type="danger" icon="el-icon-printer" @click="siPrint">打印</el-button>
|
|
|
</div>
|
|
|
- <el-dialog v-model="showSetlindex" title="请点击要查询的结算条目" width="50%">
|
|
|
- <el-table :data="setlindex" stripe highlight-current-row max-height="300" @row-click="executeQrySetlinfo">
|
|
|
- <el-table-column prop="psnName" label="姓名" width="100"></el-table-column>
|
|
|
- <el-table-column prop="gendName" label="性别" width="60"></el-table-column>
|
|
|
- <el-table-column prop="patNo" label="住院号" width="100"></el-table-column>
|
|
|
- <el-table-column prop="times" label="住院次数" width="100"></el-table-column>
|
|
|
- <el-table-column prop="ledgerSn" label="账页号" width="60"></el-table-column>
|
|
|
- <el-table-column prop="setlTime" label="结算时间"></el-table-column>
|
|
|
- <el-table-column prop="medfeeSumamt" label="总费用"></el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -490,7 +480,7 @@ import { computed, onMounted, reactive, ref } from 'vue'
|
|
|
import store from '@/store'
|
|
|
import { ElMessage } from 'element-plus'
|
|
|
import router from '@/router'
|
|
|
-import { querySiSetlIndex, querySiSetlList, fetchSiTimesList } from '@/api/medical-insurance/si-query'
|
|
|
+import { querySiSetlList, fetchSiTimesList } from '@/api/medical-insurance/si-query'
|
|
|
import { getDate } from '@/utils/date'
|
|
|
|
|
|
export default {
|
|
@@ -507,61 +497,57 @@ export default {
|
|
|
background: 'white',
|
|
|
}
|
|
|
const outParam = reactive({
|
|
|
- type: 1,
|
|
|
+ type: 21,
|
|
|
patNo: null,
|
|
|
- times: null,
|
|
|
+ label: null,
|
|
|
})
|
|
|
const patNoType = computed(() => {
|
|
|
- return outParam.type === 2 ? '门诊' : '住院'
|
|
|
+ return outParam.type === 21 ? '请输入住院号' : '请输入门诊ID'
|
|
|
})
|
|
|
+ const oldPatNo = ref(null)
|
|
|
const timesList = ref([])
|
|
|
const getTimesList = () => {
|
|
|
if (!outParam.patNo) {
|
|
|
return
|
|
|
}
|
|
|
- fetchSiTimesList(outParam.patNo)
|
|
|
+ if (oldPatNo.value === outParam.patNo) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ oldPatNo.value = outParam.patNo
|
|
|
+ fetchSiTimesList(outParam.patNo, outParam.type)
|
|
|
.then((res) => {
|
|
|
timesList.value = res
|
|
|
})
|
|
|
.catch(() => {
|
|
|
timesList.value = []
|
|
|
- outParam.times = null
|
|
|
+ outParam.label = null
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+ const setlTypeChange = () => {
|
|
|
+ console.log('typechanged')
|
|
|
+ timesList.value = []
|
|
|
+ outParam.patNo = null
|
|
|
+ outParam.label = null
|
|
|
+ oldPatNo.value = null
|
|
|
+ }
|
|
|
+
|
|
|
const listTitle = computed(() => {
|
|
|
if (outParam.type === 0) {
|
|
|
return '湖南省长沙市城乡居民医疗费用“一站式”结算单'
|
|
|
- } else if (outParam.type === 1) {
|
|
|
+ } else if (outParam.type === 21) {
|
|
|
return '湖南省长沙市住院费用结算单'
|
|
|
}
|
|
|
return '湖南省长沙市(普通、特殊)门诊费用结算单'
|
|
|
})
|
|
|
const nowdate = getDate()
|
|
|
- const showSetlindex = ref(false)
|
|
|
- const setlindex = ref([])
|
|
|
const setlinfo = ref({
|
|
|
mdtrtId: '',
|
|
|
})
|
|
|
- const beforeQrySetlinfo = () => {
|
|
|
+ const executeQrySetlinfo = () => {
|
|
|
setlinfo.value = { mdtrtId: '' }
|
|
|
- if (outParam.type === 2) {
|
|
|
- executeQrySetlinfo(outParam)
|
|
|
- } else {
|
|
|
- querySiSetlIndex(outParam).then((res) => {
|
|
|
- if (res.length === 1) {
|
|
|
- executeQrySetlinfo(res[0])
|
|
|
- } else {
|
|
|
- setlindex.value = res
|
|
|
- showSetlindex.value = true
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- }
|
|
|
- const executeQrySetlinfo = (param) => {
|
|
|
- querySiSetlList(param).then((res) => {
|
|
|
+ querySiSetlList(outParam).then((res) => {
|
|
|
setlinfo.value = res
|
|
|
- showSetlindex.value = false
|
|
|
})
|
|
|
}
|
|
|
|
|
@@ -594,10 +580,11 @@ export default {
|
|
|
initLodop()
|
|
|
if (!showOperatePane) {
|
|
|
const params = router.currentRoute.value.params
|
|
|
- outParam.type = 2
|
|
|
+ outParam.type = 11
|
|
|
outParam.patNo = params.patientId
|
|
|
outParam.times = params.times
|
|
|
- executeQrySetlinfo(outParam)
|
|
|
+ outParam.label = null
|
|
|
+ executeQrySetlinfo()
|
|
|
}
|
|
|
})
|
|
|
|
|
@@ -611,11 +598,9 @@ export default {
|
|
|
listTitle,
|
|
|
setlinfo,
|
|
|
showOperatePane,
|
|
|
- setlindex,
|
|
|
- showSetlindex,
|
|
|
- beforeQrySetlinfo,
|
|
|
executeQrySetlinfo,
|
|
|
siPrint,
|
|
|
+ setlTypeChange,
|
|
|
}
|
|
|
},
|
|
|
}
|