Revert "Fix Bug #550: AI修复"

This reverts commit 16c42ca108.
This commit is contained in:
2026-05-27 08:59:07 +08:00
parent bd14563691
commit 9db5ced4e3
5432 changed files with 778638 additions and 171 deletions

View File

@@ -0,0 +1,170 @@
<template>
<div class="recordBill">
<div :id="'exeSheetTitle' + printData.id" class="printView_header">
<div style="text-align: center; height: 60px">
{{ userStore.hospitalName }}医嘱执行单
</div>
<div>
<span style="display: inline-block; width: 100px">床号{{ printData.patientInfo.encounterLocationName }}</span>
<span style="display: inline-block; width: 180px">姓名{{ printData.patientInfo.name }}</span>
<span style="display: inline-block; width: 140px">年龄{{ printData.patientInfo.patientAge }}</span>
<span style="display: inline-block; width: 280px">诊断{{ printData.patientInfo.diag }}</span>
</div>
<!-- <div>
<span style="display: inline-block; width: 200px">档案号{{printData.patientInfo.hisNo}}</span>
<span style="display: inline-block; width: 260px">入室时间{{printData.patientInfo.checkInTime}}</span>
<span style="display: inline-block; width: 140px">性别{{!printData.patientInfo.gender? '':printData.patientInfo.gender.display}}</span>
</div>-->
</div>
<div :id="'exeSheet' + printData.id" class="printView_content">
<table border="1" cellSpacing="0" width="97%" cellPadding="1" style=" border-collapse:collapse; font-size: 13px" bordercolor="#333333">
<thead>
<TR>
<TD rowspan="1">
<DIV style="width: 65px;text-align: center">医嘱日期</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 120px" align="center">医嘱</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 10px" align="center" />
</TD>
<TD colspan="1">
<DIV style="width: 70px" align="center">嘱托</DIV>
</TD>
<TD rowspan="1">
<DIV style="width: 60px" align="center">用量</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 40px" align="center">用法</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 40px" align="center">频次</DIV>
</TD>
<TD rowspan="1">
<DIV style="width: 65px" align="center">开立医生</DIV>
</TD>
<TD rowspan="1">
<DIV style="width: 65px" align="center">执行时间</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 65px" align="center">执行护士</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 55px" align="center">终止时间</DIV>
</TD>
<TD colspan="1">
<DIV style="width: 55px" align="center">终止人</DIV>
</TD>
</TR>
</thead>
<tbody>
<tr v-for="item in printData.recordData" :key="item.id">
<td v-html="item.moTime" />
<td v-html="item.orderName" />
<td v-html="item.flag" />
<td v-html="item.remark" />
<td v-html="item.doseOnce<=0?'':(item.doseOnce+ item.doseUnit)" />
<td v-html="item.usageName" />
<td v-html="item.frequency" />
<td :id="item.id">
<span v-if="(item.docSignImage === ''||item.docSignImage === null)">{{ item.moDocName }}</span>
<img v-if="(item.docSignImage !== ''&&item.docSignImage !== null)" :src="'data:image/png;base64,'+ item.docSignImage" style="height: 100%; width: 100%;object-fit: cover;">
</td>
<td v-html="item.occurrence" />
<td :id="item.id">
<span v-if="(item.perNurserSignImage === ''||item.perNurserSignImage === null)">{{ item.performName }}</span>
<img v-if="(item.perNurserSignImage !== ''&&item.perNurserSignImage !== null)" :src="'data:image/png;base64,'+ item.perNurserSignImage" style="height: 100%; width: 100%;object-fit: cover;">
</td>
<td />
<td />
</tr>
</tbody>
</table>
</div>
</div>
</template>
<script>
// 迁移到 hiprint
import { simplePrint, PRINT_TEMPLATE } from '@/utils/printUtils.js'
import useUserStore from '@/store/modules/user'
export default {
setup() {
const userStore = useUserStore();
return { userStore };
},
props: {
printData: {
type: Object,
default() {
return {}
}
}
},
data() {
return {}
},
mounted() {},
methods: {
/**
* 使用 hiprint 执行打印
*/
async printTest() {
try {
// 构建打印数据
const recordData = (this.printData.recordData || []).map(item => ({
moTime: item.moTime || '',
orderName: item.orderName || '',
flag: item.flag || '',
remark: item.remark || '',
doseOnceUnit: item.doseOnce <= 0 ? '' : (item.doseOnce + item.doseUnit),
usageName: item.usageName || '',
frequency: item.frequency || '',
moDocName: item.moDocName || '',
occurrence: item.occurrence || '',
performName: item.performName || ''
}))
const printData = {
hospitalName: this.userStore.hospitalName,
bedName: this.printData.patientInfo ? this.printData.patientInfo.encounterLocationName : '',
patientName: this.printData.patientInfo ? this.printData.patientInfo.name : '',
patientAge: this.printData.patientInfo ? this.printData.patientInfo.patientAge : '',
diag: this.printData.patientInfo ? this.printData.patientInfo.diag : '',
recordData: recordData
}
// 使用 hiprint 打印
await simplePrint(PRINT_TEMPLATE.EXE_ORDER_SHEET, printData)
} catch (error) {
console.error('医嘱执行单打印失败:', error)
}
}
}
}
</script>
<style scoped lang="less">
.recordBill {
display: grid;
grid-template-rows: 90px 1fr;
height: 500px !important;
width: 680px;
/deep/ .el-table .cell {
font-size: 10px !important;
}
.printView_header {
grid-template-rows: 40px 30px 30px;
height: 200px !important;
h4{
text-align: center;
margin: 15px;
}
}
.printView_content{
}
}
</style>