‘chenzhilei’ 1 mēnesi atpakaļ
vecāks
revīzija
5e06b2402b

+ 12 - 0
src/api/zfsf/cashier-process.js

@@ -185,6 +185,18 @@ export function downDzInvoice(data) {
         data
     })
 }
+/**
+ * 获取电子发票数据
+ * @param data
+ * @returns {*}
+ */
+export function selectDzfpUploadAboutSerialNo(params) {
+    return request({
+        url: '/cashierProcess/selectDzfpUploadAboutSerialNo',
+        method: 'get',
+        params
+    })
+}
 
 
 export function cashierDataTx(data) {

+ 47 - 35
src/views/hospitalization/zfsf/CashierProcessInfo.vue

@@ -434,7 +434,7 @@ import {queryCashierProcessInfo,
   cancelCashierData,
   queryPrintZyFpData,
   updatePrintZyFpData,
-  downDzInvoice,
+  selectDzfpUploadAboutSerialNo,
   queryFpVersion
 
 } from '@/api/zfsf/cashier-process.js'
@@ -996,6 +996,7 @@ const selectPrintZyFp = (row)=>{
 const selectDzfpRow = ref({})
 const selectDzfpTypeFlag = ref(null)
 const openDzfp = (row,typeFlag)=>{
+  console.log("selectDzfpRow",JSON.stringify(row))
   selectDzfpRow.value = row
   selectDzfpTypeFlag.value = typeFlag
   dzfpVisible.value = true
@@ -1023,42 +1024,53 @@ const clearSelectDzfp = ()=>{
 }
 
 const downDzFp = (row,typeFlag,type)=>{
+  
   row['typeFlag'] = typeFlag
-  downDzInvoice(row).then(res=>{
-    let LODOP = getLodop();
-    if(stringIsBlank(type) || type === '0'){
-      const link = document.createElement("a");
-      // 获取数据量
-      const blob = new Blob([base64ToArrayBuffer(res.fpInfo.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 = "93mm"
-      let  bkimgWidth = "80mm"
-      LODOP.PRINT_INITA(6, 0, bkimgWidth, height, "泰和住院电子发票二维码打印");
-      //设置默认打印机
-      LODOP.SET_PRINTER_INDEX(printCode.value);
-      LODOP.SET_SHOW_MODE("BKIMG_WIDTH", bkimgWidth);
-      LODOP.SET_PRINT_PAGESIZE(3,bkimgWidth, height, "CreateCustomPage");
-      LODOP.SET_PRINT_MODE("CREATE_CUSTOM_PAGE_NAME", "住院电子发票二维码");//对新建的纸张重命名
-      LODOP.SET_PRINT_STYLE("FontSize", 11); //字体大小
-      LODOP.ADD_PRINT_TEXT("1mm", "6mm", "80mm", "3mm", hospitalName.value+"住院电子发票凭证");
-      LODOP.ADD_PRINT_TEXT("7mm", "3mm", "35mm", "3mm", "姓名:"+res.zyReceipt.name);
-      LODOP.ADD_PRINT_TEXT("7mm", "37mm", "40mm", "3mm", "住院号:"+res.zyReceipt.inpatientNo);
-      LODOP.ADD_PRINT_TEXT("13mm", "3mm", "75mm", "3mm", "科别:"+res.zyReceipt.wardName);
-      LODOP.ADD_PRINT_TEXT("19mm", "3mm", "75mm", "3mm", "住院总费用:"+res.zyReceipt.totalCharge);
-      LODOP.ADD_PRINT_TEXT("25mm", "3mm", "80mm", "3mm", hospitalName.value+"住院发票二维码");
-      LODOP.ADD_PRINT_IMAGE("31mm", "3mm", "60mm", "60mm", "data:image/png;base64,"+res.fpInfo.qrcode);
-      LODOP.PRINT();
-      // LODOP.PREVIEW();
+  let params = {
+    inpatientNo:row.inpatientNo,
+    admissTimes:row.admissTimes
+  }
+  selectDzfpUploadAboutSerialNo(params).then(res=>{
+    // console.log("row",JSON.stringify(res))
+    if(res.res_url){
+        window.open(res.res_url)
+    } else {
+        ElMessage.error("未获取到电子发票,请重新上传发票!");
     }
+    // let LODOP = getLodop();
+    // if(stringIsBlank(type) || type === '0'){
+    //   const link = document.createElement("a");
+    //   // 获取数据量
+    //   const blob = new Blob([base64ToArrayBuffer(res.fpInfo.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 = "93mm"
+    //   let  bkimgWidth = "80mm"
+    //   LODOP.PRINT_INITA(6, 0, bkimgWidth, height, "泰和住院电子发票二维码打印");
+    //   //设置默认打印机
+    //   LODOP.SET_PRINTER_INDEX(printCode.value);
+    //   LODOP.SET_SHOW_MODE("BKIMG_WIDTH", bkimgWidth);
+    //   LODOP.SET_PRINT_PAGESIZE(3,bkimgWidth, height, "CreateCustomPage");
+    //   LODOP.SET_PRINT_MODE("CREATE_CUSTOM_PAGE_NAME", "住院电子发票二维码");//对新建的纸张重命名
+    //   LODOP.SET_PRINT_STYLE("FontSize", 11); //字体大小
+    //   LODOP.ADD_PRINT_TEXT("1mm", "6mm", "80mm", "3mm", hospitalName.value+"住院电子发票凭证");
+    //   LODOP.ADD_PRINT_TEXT("7mm", "3mm", "35mm", "3mm", "姓名:"+res.zyReceipt.name);
+    //   LODOP.ADD_PRINT_TEXT("7mm", "37mm", "40mm", "3mm", "住院号:"+res.zyReceipt.inpatientNo);
+    //   LODOP.ADD_PRINT_TEXT("13mm", "3mm", "75mm", "3mm", "科别:"+res.zyReceipt.wardName);
+    //   LODOP.ADD_PRINT_TEXT("19mm", "3mm", "75mm", "3mm", "住院总费用:"+res.zyReceipt.totalCharge);
+    //   LODOP.ADD_PRINT_TEXT("25mm", "3mm", "80mm", "3mm", hospitalName.value+"住院发票二维码");
+    //   LODOP.ADD_PRINT_IMAGE("31mm", "3mm", "60mm", "60mm", "data:image/png;base64,"+res.fpInfo.qrcode);
+    //   LODOP.PRINT();
+    //   // LODOP.PREVIEW();
+    // }
     dzfpVisible.value = false
   })
 }