报告打印统计功能修改
This commit is contained in:
parent
688f4fc5e2
commit
3964129d1a
@ -102,7 +102,7 @@
|
||||
<el-button @click="handleQuery">
|
||||
<Icon icon="ep:search" class="mr-2px" /> 搜索
|
||||
</el-button>
|
||||
<el-button type="primary" plain>
|
||||
<el-button type="primary" plain v-if="false">
|
||||
<Icon icon="ep:printer" class="mr-2px" /> 打印
|
||||
</el-button>
|
||||
</div>
|
||||
@ -116,7 +116,7 @@
|
||||
:stripe="true"
|
||||
:show-overflow-tooltip="true"
|
||||
:data="list_infos"
|
||||
height="max(30vh,294px)"
|
||||
height="max(calc(100vh - 460px),280px)"
|
||||
@row-click="handleRowClick"
|
||||
>
|
||||
<el-table-column type="index" label="序号" align="center" width="54px" />
|
||||
@ -318,19 +318,24 @@
|
||||
</el-form>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="报告单" name="reportInfo">
|
||||
<div class="flex-center" id="printMe" style="height: calc(100% - 15px)">
|
||||
<div
|
||||
class="flex-center"
|
||||
id="printMe"
|
||||
style="min-height: calc(100% - 15px)"
|
||||
v-if="reportInfoType == 'us'"
|
||||
>
|
||||
<div class="ultrasound-report" id="PDF">
|
||||
<h2>超声检查报告单</h2>
|
||||
<hr />
|
||||
<div class="patient-info">
|
||||
<p class="info-item">姓名:{{ infoParams.pname }}</p>
|
||||
<p class="info-item">送检科室:{{ infoParams.billDoctorDepartment }}</p>
|
||||
<p class="info-item">门诊号:{{ infoParams.regId }}</p>
|
||||
<p class="info-item">姓名:{{ infoParams.pname }}</p>
|
||||
<p class="info-item">性别:{{ infoParams.gender }}</p>
|
||||
<p class="info-item">年龄:{{ age }}</p>
|
||||
<p class="info-item">设备:{{ infoParams.deviceName }}</p>
|
||||
<p class="info-item">年龄:{{ age }}岁</p>
|
||||
<p class="info-item">检查号:{{ infoParams.examId }}</p>
|
||||
<p class="info-item">检查类型:{{ infoParams.examItemName }}</p>
|
||||
<p class="info-item">设备:{{ infoParams.deviceName }}</p>
|
||||
<p class="info-item">送检科室:{{ infoParams.billDoctorDepartment }}</p>
|
||||
</div>
|
||||
<hr />
|
||||
<h3>超声图像:</h3>
|
||||
@ -361,12 +366,99 @@
|
||||
<p>{{ infoParams.diagResults }}</p>
|
||||
</div>
|
||||
<div style="position: absolute; bottom: 20px; right: 20px">
|
||||
<p>医生签名:{{}}</p>
|
||||
<!-- <p>时间:xxx</p> -->
|
||||
<p>医生签名:{{ infoParams.reviewDoctor }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<el-divider />
|
||||
<div>
|
||||
<el-button
|
||||
type="primary"
|
||||
style="width: 100px; float: right"
|
||||
class="ignore-print"
|
||||
v-print="'printMe'"
|
||||
>打印</el-button
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="flex-center"
|
||||
id="printMe"
|
||||
style="min-height: calc(100% - 15px)"
|
||||
v-if="reportInfoType == 'ct'"
|
||||
>
|
||||
<div class="ultrasound-report2" id="PDF">
|
||||
<el-row style="font-size: 14px">
|
||||
<el-col :span="12">
|
||||
<h2 class="ml-6px">科右前旗康立寿医院</h2>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<h2 style="text-align: right" class="mr-6px">CT检查报告单</h2>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<hr />
|
||||
<el-row style="font-size: 14px">
|
||||
<el-col :span="24" class="mb-8px">
|
||||
<div class="ml-6px">患者编号:</div>
|
||||
<div class="ml-6px">{{ infoParams.regId }}</div>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<div class="ml-6px">检查编号:</div>
|
||||
<div class="ml-6px">{{ infoParams.examId }}</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<hr />
|
||||
<div class="patient-info2">
|
||||
<p class="info-item" v-if="false">门诊号:{{ infoParams.regId }}</p>
|
||||
<p class="info-item">姓名:{{ infoParams.pname }}</p>
|
||||
<p class="info-item">性别:{{ infoParams.gender }}</p>
|
||||
<p class="info-item">年龄:{{ age }}岁</p>
|
||||
<p class="info-item" v-if="false">检查号:{{ infoParams.examId }}</p>
|
||||
<p class="info-item" v-if="false">检查类型:{{ infoParams.examItemName }}</p>
|
||||
<p class="info-item">设备:{{ infoParams.deviceName }}</p>
|
||||
<p class="info-item">送检科室:{{ infoParams.billDoctorDepartment }}</p>
|
||||
</div>
|
||||
<hr />
|
||||
<div class="ultrasound-findings">
|
||||
<h3>检查项目:</h3>
|
||||
<p>{{ infoParams.examItemName }}</p>
|
||||
</div>
|
||||
<div class="ultrasound-findings">
|
||||
<h3>影像学表现:</h3>
|
||||
<p>{{ infoParams.examDescription }}</p>
|
||||
</div>
|
||||
<div class="ultrasound-recommendation">
|
||||
<h3>影像学诊断:</h3>
|
||||
<p>{{ infoParams.diagResults }}</p>
|
||||
</div>
|
||||
<div style="width: 94%; position: absolute; bottom: 20px; right: 20px">
|
||||
<hr />
|
||||
<el-row style="font-size: 14px">
|
||||
<el-col :span="6" class="pl-6px">报告医师:{{ infoParams.diagDoctor }}</el-col>
|
||||
<el-col :span="6"
|
||||
>报告日期:{{
|
||||
formatDate(infoParams.diagDate as unknown as Date, 'YYYY-MM-DD')
|
||||
}}</el-col
|
||||
>
|
||||
<el-col :span="6">审核医师:{{ infoParams.reviewDoctor }}</el-col>
|
||||
<el-col :span="6"
|
||||
>审核日期:{{
|
||||
formatDate(infoParams.reviewDate as unknown as Date, 'YYYY-MM-DD')
|
||||
}}</el-col
|
||||
>
|
||||
</el-row>
|
||||
<div
|
||||
style="
|
||||
font-size: 11px;
|
||||
text-align: center;
|
||||
margin-top: 12px;
|
||||
margin-bottom: -14px;
|
||||
"
|
||||
>
|
||||
本报告只作临床参考,不作证明材料
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<el-divider />
|
||||
<!--功能区-->
|
||||
<div>
|
||||
<el-button
|
||||
type="primary"
|
||||
@ -376,7 +468,6 @@
|
||||
>打印</el-button
|
||||
>
|
||||
</div>
|
||||
<div> </div>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
@ -387,7 +478,7 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { dateFormatter, dateFormatter2 } from '@/utils/formatTime'
|
||||
import { formatDate, dateFormatter, dateFormatter2 } from '@/utils/formatTime'
|
||||
import download from '@/utils/download'
|
||||
import { ReportPrintStatisticsApi } from '@/api/applyregistration/reportPrintStatistics'
|
||||
import { ultrasoniccomApi } from '@/api/ultrasoniccom'
|
||||
@ -407,6 +498,7 @@ const infoFormRef = ref()
|
||||
const message = useMessage()
|
||||
const { t } = useI18n()
|
||||
const activeTabName = ref('diagnosisInfo')
|
||||
const reportInfoType = ref('') //us、ct
|
||||
const diagnosisInfo_readonly = ref(true)
|
||||
const deviceList = ref<any[]>([])
|
||||
const reportimages = ref<any[]>([])
|
||||
@ -427,7 +519,7 @@ const queryParams = ref({
|
||||
examDate_ge: '',
|
||||
examDate_le: '',
|
||||
deviceName: '',
|
||||
deviceType: '', //固定默认值
|
||||
deviceType: '',
|
||||
pname: ''
|
||||
})
|
||||
const infoParams0 = ref({
|
||||
@ -446,7 +538,12 @@ const infoParams = ref({
|
||||
examDescription: '',
|
||||
diagResults: '',
|
||||
examItemName: '',
|
||||
deviceName: ''
|
||||
deviceName: '',
|
||||
deviceType: '',
|
||||
diagDoctor: '',
|
||||
diagDate: '',
|
||||
reviewDoctor: '',
|
||||
reviewDate: ''
|
||||
})
|
||||
//表格核心
|
||||
const list_infos = ref<any[]>([])
|
||||
@ -490,9 +587,15 @@ const resetDiagnosisInfo = async () => {
|
||||
examDescription: '',
|
||||
diagResults: '',
|
||||
examItemName: '',
|
||||
deviceName: ''
|
||||
deviceName: '',
|
||||
deviceType: '',
|
||||
diagDoctor: '',
|
||||
diagDate: '',
|
||||
reviewDoctor: '',
|
||||
reviewDate: ''
|
||||
}
|
||||
age.value = ''
|
||||
reportInfoType.value = ''
|
||||
reportimages.value = []
|
||||
infoFormRef.value?.clearValidate()
|
||||
}
|
||||
@ -521,7 +624,10 @@ const handleRowClick = (row) => {
|
||||
if (row) {
|
||||
infoParams.value = row
|
||||
calculateAge(row.birthday)
|
||||
loadimage(row.orgId, row.regId)
|
||||
if (row.deviceType && row.deviceType.trim().toLowerCase() == 'us') {
|
||||
reportInfoType.value = 'us'
|
||||
loadimage(row.orgId, row.regId)
|
||||
} else reportInfoType.value = 'ct'
|
||||
}
|
||||
}
|
||||
|
||||
@ -547,7 +653,7 @@ console.log(infoParams0)
|
||||
* **/
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
<style lang="scss" scoped>
|
||||
.el-form-item__label {
|
||||
white-space: nowrap;
|
||||
}
|
||||
@ -568,40 +674,82 @@ console.log(infoParams0)
|
||||
border: 1px solid #ececec;
|
||||
}
|
||||
|
||||
/* 报告样式 */
|
||||
/**** 超声检查报告单 ****/
|
||||
.ultrasound-report {
|
||||
font-family: Arial, sans-serif;
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
width: 94%;
|
||||
margin: 6px auto;
|
||||
padding: 20px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 8px;
|
||||
position: relative;
|
||||
height: 800px;
|
||||
min-height: 750px;
|
||||
}
|
||||
|
||||
.ultrasound-report h1,
|
||||
.ultrasound-report h2 {
|
||||
text-align: center;
|
||||
}
|
||||
/* 报告的P标签 */
|
||||
|
||||
.patient-info {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.patient-info p,
|
||||
|
||||
.patient-info p {
|
||||
font-size: 14px;
|
||||
margin: 4px 6px;
|
||||
min-width: calc(25% - 2 * 6px - 2px);
|
||||
}
|
||||
|
||||
.ultrasound-recommendation {
|
||||
margin-bottom: 90px;
|
||||
}
|
||||
|
||||
.ultrasound-findings p,
|
||||
.ultrasound-recommendation p {
|
||||
margin: 5px 0;
|
||||
font-size: 16px;
|
||||
margin: 5px 2px 5px 30px;
|
||||
}
|
||||
|
||||
.ultrasound-findings h3,
|
||||
.ultrasound-recommendation h3 {
|
||||
margin-top: 20px;
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
.image-gallery {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
margin: 20px 0;
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
/* 不打印区域 */
|
||||
@media print {
|
||||
.ignore-print {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
/**** CT报告单 ****/
|
||||
.ultrasound-report2 {
|
||||
font-family: Arial, sans-serif;
|
||||
width: 94%;
|
||||
margin: 6px auto;
|
||||
padding: 20px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 8px;
|
||||
position: relative;
|
||||
min-height: 750px;
|
||||
}
|
||||
|
||||
.patient-info2 {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.patient-info2 p {
|
||||
font-size: 14px;
|
||||
margin: 4px 6px;
|
||||
min-width: calc(33.33% - 2 * 6px - 2px);
|
||||
}
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user