From e722841e60b545656de142e50fe3d7e068d05478 Mon Sep 17 00:00:00 2001 From: chenqi Date: Wed, 4 Mar 2026 11:13:40 +0800 Subject: [PATCH] =?UTF-8?q?feat(print):=20=E6=B7=BB=E5=8A=A0=E9=97=A8?= =?UTF-8?q?=E8=AF=8A=E6=89=8B=E6=9C=AF=E6=94=B6=E8=B4=B9=E5=87=AD=E8=AF=81?= =?UTF-8?q?=E6=89=93=E5=8D=B0=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 OutpatientSurgeryCharge.json 打印配置文件 - 配置门诊收费凭证的页面布局和样式设置 - 添加患者基本信息显示区域(姓名、性别、年龄等) - 实现收费项目明细表格展示功能 - 集成支付方式统计(现金、微信、支付宝、医保等) - 添加手术计费流程图展示 - 设置页眉页脚和水印选项 - 配置打印元素的位置和格式参数 --- .../Print/OutpatientSurgeryCharge.json | 510 ++++++++++++++++++ 1 file changed, 510 insertions(+) create mode 100644 openhis-ui-vue3/src/components/Print/OutpatientSurgeryCharge.json diff --git a/openhis-ui-vue3/src/components/Print/OutpatientSurgeryCharge.json b/openhis-ui-vue3/src/components/Print/OutpatientSurgeryCharge.json new file mode 100644 index 00000000..99521484 --- /dev/null +++ b/openhis-ui-vue3/src/components/Print/OutpatientSurgeryCharge.json @@ -0,0 +1,510 @@ +{ + "panels": [ + { + "index": 0, + "name": 1, + "paperType": "自定义", + "height": 297, + "width": 80, + "paperList": { + "type": "自定义", + "width": 80, + "height": 297 + }, + "panelPageRule": "none", + "paperHeader": 0, + "paperFooter": 597, + "paperNumberDisabled": true, + "paperNumberContinue": true, + "expandCss": "", + "panelAngle": 0, + "overPrintOptions": { + "content": "", + "opacity": 0.7, + "type": 1 + }, + "watermarkOptions": { + "content": "", + "fillStyle": "rgba(87, 13, 248, 0.5)", + "fontSize": "36px", + "rotate": 25, + "width": 413, + "height": 310, + "timestamp": true, + "format": "YYYY-MM-DD HH:mm" + }, + "panelLayoutOptions": { + "layoutType": "column", + "layoutRowGap": 0, + "layoutColumnGap": 0 + }, + "printElements": [ + { + "options": { + "left": 0, + "top": 8, + "height": 14, + "width": 226.5, + "title": "{{HOSPITAL_NAME}}门诊收费凭证", + "coordinateSync": false, + "widthHeightSync": false, + "fontWeight": "bold", + "textAlign": "center", + "fontSize": 11 + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 26, + "height": 10, + "width": 80, + "title": "患者:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "patientName" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 100, + "top": 26, + "height": 10, + "width": 60, + "title": "性别:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "sex" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 160, + "top": 26, + "height": 10, + "width": 60, + "title": "年龄:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "age" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 38, + "height": 10, + "width": 100, + "title": "科室:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "organizationName" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 120, + "top": 38, + "height": 10, + "width": 100, + "title": "医生:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "practitionerName" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 50, + "height": 10, + "width": 80, + "title": "病人类型:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "personType" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 100, + "top": 50, + "height": 10, + "width": 120, + "title": "门诊号:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "busNo" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 62, + "height": 10, + "width": 150, + "title": "收费时间:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "chargeTime" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 0, + "top": 76, + "height": 2, + "width": 226.5, + "coordinateSync": false, + "widthHeightSync": false, + "borderWidth": 1, + "borderStyle": "solid", + "borderColor": "#000000" + }, + "printElementType": { + "title": "线", + "type": "line" + } + }, + { + "options": { + "left": 10, + "top": 82, + "height": 10, + "width": 80, + "title": "收费项目", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "fontWeight": "bold" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 100, + "top": 82, + "height": 10, + "width": 40, + "title": "数量", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "fontWeight": "bold", + "textAlign": "center" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 145, + "top": 82, + "height": 10, + "width": 80, + "title": "金额", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "fontWeight": "bold", + "textAlign": "right" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 0, + "top": 94, + "height": 40, + "width": 226.5, + "title": "费用明细", + "field": "chargeItem", + "coordinateSync": false, + "widthHeightSync": false, + "textAlign": "center", + "fontSize": 8, + "columns": [ + [ + { + "title": "收费项目", + "width": 95, + "field": "chargeItemName", + "checked": true, + "columnId": "chargeItemName", + "fixed": false, + "rowspan": 1, + "colspan": 1 + }, + { + "title": "数量", + "width": 40, + "field": "quantityValue", + "checked": true, + "columnId": "quantityValue", + "fixed": false, + "rowspan": 1, + "colspan": 1 + }, + { + "title": "金额", + "width": 50, + "field": "totalPrice", + "checked": true, + "columnId": "totalPrice", + "fixed": false, + "rowspan": 1, + "colspan": 1, + "formatter2": "function(value, row, index, options, rowIndex, column) {\n if (!value) return '';\n return `${value}`;\n}" + } + ] + ] + }, + "printElementType": { + "title": "表格", + "type": "table", + "editable": true, + "columnDisplayEditable": true, + "columnDisplayIndexEditable": true, + "columnTitleEditable": true, + "columnResizable": true, + "columnAlignEditable": true, + "isEnableEditField": true, + "isEnableContextMenu": true, + "isEnableInsertRow": true, + "isEnableDeleteRow": true, + "isEnableInsertColumn": true, + "isEnableDeleteColumn": true, + "isEnableMergeCell": true + } + }, + { + "options": { + "left": 0, + "top": 136, + "height": 2, + "width": 226.5, + "coordinateSync": false, + "widthHeightSync": false, + "borderWidth": 1, + "borderStyle": "solid", + "borderColor": "#000000" + }, + "printElementType": { + "title": "线", + "type": "line" + } + }, + { + "options": { + "left": 10, + "top": 142, + "height": 10, + "width": 80, + "title": "合计:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "FULAMT_OWNPAY_AMT" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 100, + "top": 142, + "height": 10, + "width": 120, + "title": "现金:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "textAlign": "right", + "field": "SELF_CASH_PAY" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 154, + "height": 10, + "width": 100, + "title": "微信:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "SELF_VX_PAY" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 120, + "top": 154, + "height": 10, + "width": 100, + "title": "支付宝:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "textAlign": "right", + "field": "SELF_ALI_PAY" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 166, + "height": 10, + "width": 150, + "title": "医保账户:", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 9, + "field": "SELF_YB_ZH_PAY" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 0, + "top": 180, + "height": 2, + "width": 226.5, + "coordinateSync": false, + "widthHeightSync": false, + "borderWidth": 1, + "borderStyle": "dashed", + "borderColor": "#CCCCCC" + }, + "printElementType": { + "title": "线", + "type": "line" + } + }, + { + "options": { + "left": 0, + "top": 186, + "height": 12, + "width": 226.5, + "title": "门诊手术计费流程", + "coordinateSync": false, + "widthHeightSync": false, + "fontWeight": "bold", + "textAlign": "center", + "fontSize": 10, + "color": "#0066CC" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + }, + { + "options": { + "left": 10, + "top": 200, + "height": 85, + "width": 206.5, + "coordinateSync": false, + "widthHeightSync": false, + "field": "surgeryFlowImage", + "imgSrc": "/img/surgery-charge-flow.png", + "fit": "contain" + }, + "printElementType": { + "title": "图片", + "type": "image" + } + }, + { + "options": { + "left": 0, + "top": 288, + "height": 10, + "width": 226.5, + "title": "请妥善保管,有疑问请咨询服务台", + "coordinateSync": false, + "widthHeightSync": false, + "fontSize": 8, + "textAlign": "center", + "color": "#666666" + }, + "printElementType": { + "title": "文本", + "type": "text" + } + } + ] + } + ] +} \ No newline at end of file