|
@@ -129,9 +129,9 @@
|
|
|
<template #default="scope">
|
|
|
<el-button v-if="scope.row.inpatientNo !=null && fpVersion==='0'" icon="Printer" type="success" @click="selectPrintZyFp(scope.row)">打印</el-button>
|
|
|
<el-button v-if="scope.row.inpatientNo !=null && fpVersion==='1'" icon="Upload" title="上传电子发票" type="primary" @click="uploadZyFp(scope.row,3)"></el-button>
|
|
|
- <el-button v-if="scope.row.inpatientNo !=null && fpVersion==='1'" icon="Download" title="下载电子发票" type="primary" @click="downDzFp(scope.row,3)"></el-button>
|
|
|
+ <el-button v-if="scope.row.inpatientNo !=null && fpVersion==='1'" icon="Download" title="下载电子发票" type="primary" @click="openDzfp(scope.row,3)"></el-button>
|
|
|
<el-button v-if="scope.row.inpatientNo !=null && fpVersion==='1'" icon="Delete" title="作废电子发票" type="danger" @click="uploadZyFp(scope.row,4)"></el-button>
|
|
|
- <el-button v-if="scope.row.inpatientNo !=null && fpVersion==='1'" icon="Download" title="下载已作废电子发票" type="danger" @click="downDzFp(scope.row,4)"></el-button>
|
|
|
+ <el-button v-if="scope.row.inpatientNo !=null && fpVersion==='1'" icon="Download" title="下载已作废电子发票" type="danger" @click="downDzFp(scope.row,4,'0')"></el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column property="ledgerSn" label="账页" />
|
|
@@ -396,6 +396,19 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog
|
|
|
+ v-model="dzfpVisible"
|
|
|
+ width="400"
|
|
|
+ title="下载电子发票"
|
|
|
+ @closed="clearSelectDzfp"
|
|
|
+ >
|
|
|
+ <template #footer>
|
|
|
+ <div class="dialog-footer">
|
|
|
+ <el-button type="success" @click="downDzFp(selectDzfpRow,selectDzfpTypeFlag,'1')">打印电子发票二维码</el-button>
|
|
|
+ <el-button type="primary" @click="downDzFp(selectDzfpRow,selectDzfpTypeFlag,'0')">下载电子发票pdf文件</el-button>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
</template>
|
|
|
|
|
|
<script setup >
|
|
@@ -439,6 +452,7 @@ const patientInfo = ref({
|
|
|
wardName : ''
|
|
|
}
|
|
|
)
|
|
|
+const dzfpVisible = ref(false)
|
|
|
const setShowFlag = ref(false)
|
|
|
const patientBaseListRef = ref(null)
|
|
|
const posTransactionRef = ref(null)
|
|
@@ -956,6 +970,14 @@ const selectPrintZyFp = (row)=>{
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+const selectDzfpRow = ref({})
|
|
|
+const selectDzfpTypeFlag = ref(null)
|
|
|
+const openDzfp = (row,typeFlag)=>{
|
|
|
+ selectDzfpRow.value = row
|
|
|
+ selectDzfpTypeFlag.value = typeFlag
|
|
|
+ dzfpVisible.value = true
|
|
|
+}
|
|
|
+
|
|
|
const uploadZyFp=(row,typeFlag)=>{
|
|
|
row['typeFlag'] = typeFlag
|
|
|
let typeFlagStr = typeFlag == 3 ? '上传' : '作废'
|
|
@@ -970,20 +992,44 @@ const uploadZyFp=(row,typeFlag)=>{
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-const downDzFp = (row,typeFlag)=>{
|
|
|
+const clearSelectDzfp = ()=>{
|
|
|
+ selectDzfpRow.value = {}
|
|
|
+ selectDzfpTypeFlag.value = null
|
|
|
+}
|
|
|
+
|
|
|
+const downDzFp = (row,typeFlag,type)=>{
|
|
|
row['typeFlag'] = typeFlag
|
|
|
downDzInvoice(row).then(res=>{
|
|
|
- const link = document.createElement("a");
|
|
|
- // 获取数据量
|
|
|
- const blob = new Blob([base64ToArrayBuffer(res.pdfFileStr)]);
|
|
|
- // 下载文件
|
|
|
- const objectUrl = URL.createObjectURL(blob);
|
|
|
- link.href = objectUrl;
|
|
|
- var timestamp = Date.parse(new Date());
|
|
|
- link.download = timestamp + ".pdf";
|
|
|
- link.click();
|
|
|
- URL.revokeObjectURL(objectUrl);
|
|
|
- link.remove();
|
|
|
+ if(stringIsBlank(type) || type === '0'){
|
|
|
+ const link = document.createElement("a");
|
|
|
+ // 获取数据量
|
|
|
+ const blob = new Blob([base64ToArrayBuffer(res.pdfFileStr)]);
|
|
|
+ // 下载文件
|
|
|
+ const objectUrl = URL.createObjectURL(blob);
|
|
|
+ link.href = objectUrl;
|
|
|
+ var timestamp = Date.parse(new Date());
|
|
|
+ link.download = timestamp + ".pdf";
|
|
|
+ link.click();
|
|
|
+ URL.revokeObjectURL(objectUrl);
|
|
|
+ link.remove();
|
|
|
+ }else {
|
|
|
+ //打印二维码
|
|
|
+ let height = "70mm"
|
|
|
+ let bkimgWidth = "110mm"
|
|
|
+ let LODOP = getLodop()
|
|
|
+ LODOP.PRINT_INITA(6, 0, bkimgWidth, height, "泰和住院电子发票二维码打印");
|
|
|
+ //设置默认打印机
|
|
|
+ LODOP.SET_PRINTER_INDEX(-1);
|
|
|
+ LODOP.SET_SHOW_MODE("BKIMG_WIDTH", bkimgWidth);
|
|
|
+ LODOP.SET_SHOW_MODE("BKIMG_HEIGHT", height);
|
|
|
+ LODOP.SET_PRINT_PAGESIZE(1,bkimgWidth, height, "CreateCustomPage");
|
|
|
+ LODOP.SET_PRINT_MODE("CREATE_CUSTOM_PAGE_NAME", "住院电子发票二维码");//对新建的纸张重命名
|
|
|
+ LODOP.SET_PRINT_STYLE("FontSize", 11); //字体大小
|
|
|
+ LODOP.ADD_PRINT_TEXT("6mm", "3mm", "60mm", "3mm", "湖南泰和医院管理有限公司发票二维码");
|
|
|
+ LODOP.ADD_PRINT_IMAGE("10mm", "3mm", "50mm", "50mm", "data:image/png;base64,"+res.qrcode);
|
|
|
+ LODOP.PRINT();
|
|
|
+ }
|
|
|
+ dzfpVisible.value = false
|
|
|
})
|
|
|
}
|
|
|
|