|
@@ -1,13 +1,21 @@
|
|
|
<template>
|
|
|
- <window-size>
|
|
|
- <div style="display: flex; width: 100%; height: 100%;">
|
|
|
- <div style="width: 330px;height: 100%; padding: 0 12px; border-right: 1px solid lightgray">
|
|
|
+ <CyDialog title="费用清单"
|
|
|
+ full-screen
|
|
|
+ confirm-text="打印"
|
|
|
+ cancel-text="关闭"
|
|
|
+ :confirm-click="execPrint"
|
|
|
+ >
|
|
|
+ <div class="cy_display_flex">
|
|
|
+ <div>
|
|
|
<div class="flex-header">
|
|
|
- <el-input v-model="currentPatNo" placeholder="住院号" clearable style="width: 160px"></el-input>
|
|
|
+ <el-input v-model="currentPatNo" placeholder="住院号" clearable style="width: 120px"></el-input>
|
|
|
<el-button type="primary" icon="Search" style="margin-left: 20px" @click="fetchOverview">查询</el-button>
|
|
|
+ <el-button type="primary" icon="Upload" style="margin-left: 20px" @click="selfpayUpload">自费上传</el-button>
|
|
|
</div>
|
|
|
+
|
|
|
<div style="width: 336px">
|
|
|
- <el-table :data="patList" stripe highlight-current-row style="width: 336px"
|
|
|
+ <el-table :data="patList" stripe highlight-current-row
|
|
|
+ style="width: calc(100% - 10px)"
|
|
|
@row-click="fetchBriefPatInfo">
|
|
|
<el-table-column prop="times" label="次数" width="35"></el-table-column>
|
|
|
<el-table-column prop="name" label="姓名" width="70"></el-table-column>
|
|
@@ -20,142 +28,16 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</div>
|
|
|
+
|
|
|
</div>
|
|
|
- <div style="position: fixed; right: 16px; top: 16px; z-index: 999" v-if="props.showButton">
|
|
|
- <el-button type="success" plain circle icon="Upload" title="自费上传" @click="selfpayUpload"></el-button>
|
|
|
- <el-button type="primary" plain circle icon="Printer" title="打印" @click="execPrint"></el-button>
|
|
|
- <el-button type="danger" plain circle icon="Close" @click="closeTablet" title="关闭"></el-button>
|
|
|
- </div>
|
|
|
- <div id="printArea" style="width: calc(100% - 350px);height: 100%;margin: 0 10px">
|
|
|
- <table style="width: 100%">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <td colspan="8"
|
|
|
- style="width: 96%;height: 50px;text-align: center;vertical-align:center;">
|
|
|
- <div style="font-size: 20px;font-weight: bold;">住院病人费用明细清单</div>
|
|
|
- <div style="margin-top: 5px">
|
|
|
- 机构名称:长沙泰和医院 机构编码:H43010500370
|
|
|
- </div>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td colspan="8" style="font-size: 16px; font-weight: bold">
|
|
|
- 床号:{{ briefPatInfo.bedNo }}
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style="height: 22px">住院号:{{ briefPatInfo.patNo }}</td>
|
|
|
- <td colspan="2">姓名:{{ briefPatInfo.name }}</td>
|
|
|
- <td colspan="3">性别:{{ briefPatInfo.gender }}</td>
|
|
|
- <td colspan="2">科室:{{ briefPatInfo.dept }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style=";height: 22px">入院日期:{{ briefPatInfo.admdate }}</td>
|
|
|
- <td colspan="2">医疗类别:{{ briefPatInfo.medtype }}</td>
|
|
|
- <td colspan="3">可用余额:{{ briefPatInfo.balance }}</td>
|
|
|
- <td colspan="2">总费用:{{ briefPatInfo.totalCost }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style="border-bottom: 2px solid black;height: 22px">开始日期:{{ briefPatInfo.begndate }}</td>
|
|
|
- <td colspan="2" style="border-bottom: 2px solid black">结束日期:{{ briefPatInfo.enddate }}</td>
|
|
|
- <td colspan="3" style="border-bottom: 2px solid black">天数:{{ briefPatInfo.days }}</td>
|
|
|
- <td colspan="2" style="border-bottom: 2px solid black">账页号:{{ briefPatInfo.ledger }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style="height:28px;width: 20%;border-bottom: 1px solid lightgray">医保编码</td>
|
|
|
- <td style="width: 20%;border-bottom: 1px solid lightgray">项目名称</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">规格</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">单位</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">单价</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">数量</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">金额</td>
|
|
|
- <td style="width: 20%;border-bottom: 1px solid lightgray">执行科室</td>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody v-for="(val, key) in chargeListMap" :id="key">
|
|
|
- <tr>
|
|
|
- <td style="height: 28px;font-weight: bold;font-size: 14px; border-bottom: 1px solid #333">{{ key }}</td>
|
|
|
- </tr>
|
|
|
- <tr v-for="(item, index) in val" :key="index">
|
|
|
- <td style="width: 20%;height: 28px;padding: 4px 12px 4px 0">{{ item.code }}</td>
|
|
|
- <td style="width: 20%;height: 28px;padding: 4px 12px 4px 0">{{ item.name }}</td>
|
|
|
- <td style="width: 8%;height: 28px;padding: 4px 12px 4px 0">{{ item.specification }}</td>
|
|
|
- <td style="width: 8%;height: 28px;padding: 4px 12px 4px 0">{{ item.unit }}</td>
|
|
|
- <td style="width: 8%;height: 28px;padding: 4px 12px 4px 0">{{ item.priceString }}</td>
|
|
|
- <td style="width: 8%;height: 28px;padding: 4px 12px 4px 0">{{ item.quantityString }}</td>
|
|
|
- <td style="width: 8%;height: 28px;padding: 4px 12px 4px 0">{{ item.costString }}</td>
|
|
|
- <td style="width: 20%;height: 28px;padding: 4px 12px 4px 0">{{ item.execDept }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td colspan="7" style="border-bottom: 1px solid lightgray"></td>
|
|
|
- <td style="text-align: left; font-size: 15px;font-weight: bold;border-bottom: 1px solid lightgray">
|
|
|
- 小计:{{ sumsMap[key] }}
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- </tbody>
|
|
|
- <tbody>
|
|
|
- <tr>
|
|
|
- <td colspan="7" style="height:36px;border-bottom: 2px solid black"></td>
|
|
|
- <td style="text-align: left; font-size: 15px;font-weight: bold;border-bottom: 2px solid black">
|
|
|
- 总计:{{ sumsMap['总计'] }}
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
|
|
|
- <div style="width: calc(100% - 385px);height: max-content;
|
|
|
- padding: 0 10px; position: fixed; top: 0; right: 10px; background: white; ">
|
|
|
- <table style="width: 100%">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <td colspan="8"
|
|
|
- style="width: 96%;height: 50px;text-align: center;vertical-align:center;">
|
|
|
- <div style="font-size: 20px;font-weight: bold;">住院病人费用明细清单</div>
|
|
|
- <div style="margin-top: 5px">
|
|
|
- 机构名称:长沙泰和医院 机构编码:H43010500370
|
|
|
- </div>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td colspan="8" style="font-size: 16px; font-weight: bold">
|
|
|
- 床号:{{ briefPatInfo.bedNo }}
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style="height: 22px">住院号:{{ briefPatInfo.patNo }}</td>
|
|
|
- <td colspan="2">姓名:{{ briefPatInfo.name }}</td>
|
|
|
- <td colspan="3">性别:{{ briefPatInfo.gender }}</td>
|
|
|
- <td colspan="2">科室:{{ briefPatInfo.dept }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style=";height: 22px">入院日期:{{ briefPatInfo.admdate }}</td>
|
|
|
- <td colspan="2">医疗类别:{{ briefPatInfo.medtype }}</td>
|
|
|
- <td colspan="3">可用余额:{{ briefPatInfo.balance }}</td>
|
|
|
- <td colspan="2">总费用:{{ briefPatInfo.totalCost }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style="border-bottom: 2px solid black;height: 22px">开始日期:{{ briefPatInfo.begndate }}</td>
|
|
|
- <td colspan="2" style="border-bottom: 2px solid black">结束日期:{{ briefPatInfo.enddate }}</td>
|
|
|
- <td colspan="3" style="border-bottom: 2px solid black">天数:{{ briefPatInfo.days }}</td>
|
|
|
- <td colspan="2" style="border-bottom: 2px solid black">账页号:{{ briefPatInfo.ledger }}</td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td style="height:28px;width: 20%;border-bottom: 1px solid lightgray">医保编码</td>
|
|
|
- <td style="width: 20%;border-bottom: 1px solid lightgray">项目名称</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">规格</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">单位</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">单价</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">数量</td>
|
|
|
- <td style="width: 8%;border-bottom: 1px solid lightgray">金额</td>
|
|
|
- <td style="width: 20%;border-bottom: 1px solid lightgray">执行科室</td>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- </table>
|
|
|
+ <div class="cy_flex_1-x">
|
|
|
+ <ChargeTable :brief-pat-info="briefPatInfo"
|
|
|
+ :sumsMap="sumsMap"
|
|
|
+ :charge-list-map="chargeListMap"/>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
-
|
|
|
- </window-size>
|
|
|
+ </CyDialog>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
@@ -168,9 +50,11 @@ import {
|
|
|
} from "@/api/inpatient/charge-list";
|
|
|
import {ElMessage, ElMessageBox} from "element-plus";
|
|
|
import {getLodop, initLodop} from '@/utils/c-lodop'
|
|
|
+import ChargeTable from "@/components/medical-insurance/charge-list/ChargeTable.vue";
|
|
|
+import CyDialog from "@/components/cy/dialog/src/CyDialog.vue";
|
|
|
|
|
|
export default {
|
|
|
- components: {WindowSize},
|
|
|
+ components: {CyDialog, ChargeTable, WindowSize},
|
|
|
props: {
|
|
|
patNo: {
|
|
|
type: String,
|
|
@@ -249,6 +133,7 @@ export default {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+
|
|
|
const execPrint = () => {
|
|
|
if (!briefPatInfo.value.patNo) {
|
|
|
ElMessage({
|