Przeglądaj źródła

Merge branch 'master' of https://172.16.32.165/lighter/vue-intergration-platform

xiaochan 2 miesięcy temu
rodzic
commit
b378e20553

+ 16 - 8
src/views/hospitalization/zfsf/CashierProcessInfo.vue

@@ -438,8 +438,9 @@ import {stringIsBlank} from "@/utils/blank-utils";
 import { ElMessage, ElMessageBox } from 'element-plus'
 import {getDateTiffDays, getFormatDatetime} from "@/utils/date";
 import router from "@/router";
+import {queryHospitalName} from "@/api/zy-gl/zy-daily.js";
 
-
+const hospitalName = ref('')
 const zyFpPrintVisible = ref(false)
 const saveFlag = ref(false)
 const qxFlag =ref(false)
@@ -485,7 +486,6 @@ const saveCashData = ()=>{
     confirmButtonText: '是',
     cancelButtonText: '否',
   }).then(()=>{
-    console.log('patientInfo',patientInfo.value)
     let param = {
       inpatientNo : patientInfo.value.inpatientNo,
       admissTimes : patientInfo.value.admissTimes,
@@ -690,6 +690,7 @@ onMounted(()=>{
   queryFpVersion().then((res)=>{
    fpVersion.value =res
   })
+  queryHospitalName().then(res=>hospitalName.value = res)
   try {
     let patInfo = JSON.parse(window.atob(router.currentRoute.value.params.patientInfo))
     userIdCode.value = patInfo.userIdCode
@@ -973,6 +974,9 @@ const selectPrintZyFp = (row)=>{
 const selectDzfpRow = ref({})
 const selectDzfpTypeFlag = ref(null)
 const openDzfp = (row,typeFlag)=>{
+  queryPrintZyFpData(row).then(res=>{
+    printZyFpInfo.value = res
+  })
   selectDzfpRow.value = row
   selectDzfpTypeFlag.value = typeFlag
   dzfpVisible.value = true
@@ -1015,18 +1019,22 @@ const downDzFp = (row,typeFlag,type)=>{
       link.remove();
     }else {
       //打印二维码
-      let height = "70mm"
-      let  bkimgWidth = "110mm"
+      let height = "93mm"
+      let  bkimgWidth = "80mm"
       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_PAGESIZE(3,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.ADD_PRINT_TEXT("1mm", "6mm", "80mm", "3mm", hospitalName+"住院电子发票凭证");
+      LODOP.ADD_PRINT_TEXT("7mm", "3mm", "35mm", "3mm", "姓名:"+printZyFpInfo.value.name);
+      LODOP.ADD_PRINT_TEXT("7mm", "37mm", "40mm", "3mm", "住院号:"+printZyFpInfo.value.inpatientNo);
+      LODOP.ADD_PRINT_TEXT("13mm", "3mm", "75mm", "3mm", "科别:"+printZyFpInfo.value.wardName);
+      LODOP.ADD_PRINT_TEXT("19mm", "3mm", "75mm", "3mm", "住院总费用:"+printZyFpInfo.value.totalCharge);
+      LODOP.ADD_PRINT_TEXT("25mm", "3mm", "80mm", "3mm", hospitalName+"住院发票二维码");
+      LODOP.ADD_PRINT_IMAGE("31mm", "3mm", "60mm", "60mm", "data:image/png;base64,"+res.qrcode);
       LODOP.PRINT();
     }
     dzfpVisible.value = false

+ 113 - 27
src/views/hospitalization/zy-gl/AdvancePaymentDeal.vue

@@ -101,7 +101,7 @@
           <el-table-column align="center"  property="opIdName" label="操作员" />
           <el-table-column label="操作" width="200">
             <template #default="scope" >
-              <el-button v-if="formData.inOutFlag ===0 && scope.row.settleType === '0' && scope.row.status === '1' && scope.row.reportFlag !== '1'" size="small" type="danger" icon="Back"  @click="refundYjj(scope.row.inpatientNo,scope.row.receiptNo)" >退费</el-button>
+              <el-button v-if="formData.inOutFlag ===0 && scope.row.settleType === '0' && scope.row.status === '1' && scope.row.reportFlag !== '1'" size="small" type="danger" icon="Back"  @click="openRefund(scope.row)" >退费</el-button>
               <el-button v-if="formData.inOutFlag ===0 && scope.row.printed !==1 && scope.row.status ==='1' && scope.row.reportFlag !=='1' " size="small" type="primary" icon="Printer" @click="printShouJu(scope.row.inpatientNo,scope.row.receiptNo,false)">打印收据</el-button>
               <el-button v-if="formData.inOutFlag ===0 && scope.row.status ==='1' && scope.row.printed === 1 && scope.row.reportFlag !=='1' " size="small" type="primary" icon="Printer" @click="printShouJu(scope.row.inpatientNo,scope.row.receiptNo,true)" >重打收据</el-button>
             </template>
@@ -163,6 +163,41 @@
         <el-button @click="shouFeeVisible = false">关闭</el-button>
       </div>
     </template>
+  </el-dialog>
+  <el-dialog v-model="refundVisible" title="退费" width="400"   draggable>
+    <el-form   class="demo-ruleForm" label-width="127px"
+                >
+      <el-row>
+        <el-col :span="24">
+          <el-form-item label="支付方式*">
+            <el-select v-model="refundForm.depoType">
+              <el-option v-for="item in zdChequeTypes" :key="item.code" :label="item.name" :value="item.code"></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="24">
+          <el-form-item label="金额">
+            <el-input v-model="refundForm.depoAmount"  disabled/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="24">
+          <el-form-item label="收据号">
+            <el-input v-model="refundForm.receiptNo"  disabled/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+    </el-form>
+    <template #footer>
+      <div class="dialog-footer">
+        <el-button type="primary" @click="refundYjj(0)">普通退费</el-button>
+        <el-button type="success" @click="refundYjj(1)">原路退费</el-button>
+        <el-button @click="refundVisible = false">关闭</el-button>
+      </div>
+    </template>
   </el-dialog>
     <div id="report_table" v-show="false"
          style="width:192mm;height:97mm;margin:0 auto;border: 1px solid #337ab7;font-size: 10px;padding-top: 5mm;overflow-y: auto; overflow-x:hidden;">
@@ -322,25 +357,38 @@ const saveShouFee =()=>{
     })
 
 }
+
+const refundVisible = ref(false)
+
+const openRefund = (row)=>{
+  refundForm.value.inpatientNo = row.inpatientNo
+  refundForm.value.receiptNo = row.receiptNo
+  refundForm.value.depoType = row.depoType
+  refundForm.value.status = 2
+  refundForm.value.depoAmount = row.depoAmount
+  refundVisible.value = true
+}
+
+const refundForm =ref({
+  depoType:'',
+  inpatientNo:'',
+  depoAmount:'',
+  receiptNo:'',
+  status:2,
+  refundType:0,
+})
+
 // 退费
-const refundYjj = (inpatientNo,receiptNo)=>{
-  ElMessageBox.confirm('请确认是否退费?', {
-    cancelButtonText: '取消',
-    confirmButtonText: '确定',
+const refundYjj = (refundType)=>{
+  refundForm.value.refundType = refundType
+  saveAdvancePayment(refundForm.value).then(res=>{
+    ElMessage.success('退费成功')
+    if(stringNotBlank(res.warMessage)){
+      ElMessage.warning(warMessage)
+    }
+    queryPatientList(inpatientNo)
+    refundVisible.value = false
   })
-      .then(() => {
-        saveAdvancePayment({
-          inpatientNo:inpatientNo,
-          receiptNo:receiptNo,
-          status:'2'
-        }).then(res=>{
-          ElMessage.success('退费成功')
-          if(stringNotBlank(res.warMessage)){
-            ElMessage.warning(warMessage)
-          }
-          queryPatientList(inpatientNo)
-        })
-      })
 }
 
 // 打印收据 flag true 重打  false 首次打印
@@ -366,6 +414,7 @@ const printReal =(inpatientNo,receiptNo,flag)=>{
     printData.value.name = res.name
     printData.value.admissDeptName = res.admissDeptName
     printData.value.depoAmount = res.depoAmount
+    printData.value.depoTypeName = res.depoTypeName
     printData.value.depoAmountDx = res.depoAmountDx
     printData.value.opIdCodeName = res.opIdCodeName
     printData.value.receiptNo = res.receiptNo
@@ -374,23 +423,60 @@ const printReal =(inpatientNo,receiptNo,flag)=>{
     }else {
       printData.value.cdFlag = ''
     }
-    setTimeout(printSj,1000)
+    setTimeout(printSjNew,1000)
   })
 }
 
-function printSj(){
+function printSjNew(){
   let LODOP = getLodop();
   //设置默认打印机
   LODOP.SET_PRINTER_INDEX(-1);
   LODOP.SET_PRINT_STYLE("FontSize", 9); //字体大小
-  LODOP.SET_SHOW_MODE("BKIMG_WIDTH", "192mm");
-  LODOP.SET_SHOW_MODE("BKIMG_HEIGHT", "97mm");
-  LODOP.SET_PRINT_PAGESIZE(1, "192mm", "97mm", "CreateCustomPage");
-  LODOP.SET_PRINT_MODE("CREATE_CUSTOM_PAGE_NAME", "住院发票");//对新建的纸张重命名
-  let strStyle = "<style>table{width: 170mm;} table,td,th {border-width: 1px;border-style: solid;border-collapse: collapse;padding: 8px;}</style>"
-  LODOP.ADD_PRINT_HTM("0mm", "8mm", "120mm", "280mm", strStyle + document.getElementById("report_table_1").innerHTML);
-  // LODOP.PRINT();
+  LODOP.SET_SHOW_MODE("BKIMG_WIDTH", "80mm");
+  LODOP.SET_PRINT_PAGESIZE(3, "80mm", "97mm", "CreateCustomPage");
+  LODOP.SET_PRINT_MODE("CREATE_CUSTOM_PAGE_NAME", "住院预交金");//对新建的纸张重命名
+  LODOP.SET_PRINT_STYLE("FontSize", 11); //字体大小
+  LODOP.ADD_PRINT_TEXT("1mm", "6mm", "75mm", "3mm", hospitalName.value+"预交金缴费凭证(第一联)");
+  LODOP.ADD_PRINT_TEXT("6mm", "2mm", "30mm", "3mm", "姓名:"+printData.value.name);
+  LODOP.ADD_PRINT_TEXT("6mm", "32mm", "40mm", "3mm", "住院号:"+printData.value.inpatientNo);
+  LODOP.ADD_PRINT_TEXT("11mm", "2mm", "75mm", "3mm", "住院科室:"+printData.value.admissDeptName);
+  LODOP.ADD_PRINT_TEXT("16mm", "2mm", "75mm", "3mm", "收据号:"+printData.value.receiptNo);
+  LODOP.ADD_PRINT_TEXT("21mm", "2mm", "75mm", "3mm", "支付方式:"+printData.value.depoTypeName);
+  LODOP.ADD_PRINT_TEXT("26mm", "2mm", "35mm", "3mm", "金额:"+printData.value.depoAmount);
+  LODOP.ADD_PRINT_TEXT("26mm", "37mm", "45mm", "3mm", "大写金额:"+printData.value.depoAmountDx);
+  LODOP.ADD_PRINT_TEXT("31mm", "2mm", "75mm", "3mm", "收费员:"+printData.value.opIdCodeName);
+  LODOP.ADD_PRINT_TEXT("36mm", "2mm", "80mm", "3mm", "收费日期:"+getFormatDatetime(new Date(),'YYYY年MM月DD日'));
+  LODOP.ADD_PRINT_TEXT("42mm", "2mm", "80mm", "3mm", "1、此系临时收据,请妥善保管。出院时凭此");
+  LODOP.ADD_PRINT_TEXT("48mm", "2mm", "80mm", "3mm", "收据按实用医疗费用换取住院发票。");
+  LODOP.ADD_PRINT_TEXT("54mm", "2mm", "80mm", "3mm", "2、此收据遗失,请及时携带病人身份证和挂");
+  LODOP.ADD_PRINT_TEXT("60mm", "2mm", "80mm", "3mm", "失人身份证到出院结算处办理挂失手续。");
+  LODOP.ADD_PRINT_TEXT("66mm", "2mm", "80mm", "3mm", "如存在第三方肇事者预缴医疗费用,挂失时");
+  LODOP.ADD_PRINT_TEXT("72mm", "2mm", "80mm", "3mm", "另需公安机关出示证明。");
+  LODOP.ADD_PRINT_TEXT("78mm", "2mm", "80mm", "3mm", "3、如果您的缴费方式为银行卡支付,请您妥");
+  LODOP.ADD_PRINT_TEXT("84mm", "2mm", "80mm", "3mm", "善保管好缴费的刷卡单,并于办理出院退费");
+  LODOP.ADD_PRINT_TEXT("90mm", "2mm", "80mm", "3mm", "时带上缴费时所用银行卡。");
+  LODOP.ADD_PRINT_TEXT("103mm", "2mm", "80mm", "3mm", "-------------------------------------");
+  LODOP.ADD_PRINT_TEXT("110mm", "6mm", "75mm", "3mm", hospitalName.value+"预交金缴费凭证(第二联)");
+  LODOP.ADD_PRINT_TEXT("116mm", "2mm", "30mm", "3mm", "姓名:"+printData.value.name);
+  LODOP.ADD_PRINT_TEXT("116mm", "32mm", "40mm", "3mm", "住院号:"+printData.value.inpatientNo);
+  LODOP.ADD_PRINT_TEXT("122mm", "2mm", "75mm", "3mm", "住院科室:"+printData.value.admissDeptName);
+  LODOP.ADD_PRINT_TEXT("128mm", "2mm", "75mm", "3mm", "收据号:"+printData.value.receiptNo);
+  LODOP.ADD_PRINT_TEXT("134mm", "2mm", "75mm", "3mm", "支付方式:"+printData.value.depoTypeName);
+  LODOP.ADD_PRINT_TEXT("140mm", "2mm", "35mm", "3mm", "金额:"+printData.value.depoAmount);
+  LODOP.ADD_PRINT_TEXT("140mm", "37mm", "45mm", "3mm", "大写金额:"+printData.value.depoAmountDx);
+  LODOP.ADD_PRINT_TEXT("146mm", "2mm", "75mm", "3mm", "收费员:"+printData.value.opIdCodeName);
+  LODOP.ADD_PRINT_TEXT("152mm", "2mm", "80mm", "3mm", "收费日期:"+getFormatDatetime(new Date(),'YYYY年MM月DD日'));
+  LODOP.ADD_PRINT_TEXT("158mm", "2mm", "80mm", "3mm", "1、此系临时收据,请妥善保管。出院时凭此");
+  LODOP.ADD_PRINT_TEXT("164mm", "2mm", "80mm", "3mm", "收据按实用医疗费用换取住院发票。");
+  LODOP.ADD_PRINT_TEXT("170mm", "2mm", "80mm", "3mm", "2、此收据遗失,请及时携带病人身份证和挂");
+  LODOP.ADD_PRINT_TEXT("176mm", "2mm", "80mm", "3mm", "失人身份证到出院结算处办理挂失手续。");
+  LODOP.ADD_PRINT_TEXT("182mm", "2mm", "80mm", "3mm", "如存在第三方肇事者预缴医疗费用,挂失时");
+  LODOP.ADD_PRINT_TEXT("188mm", "2mm", "80mm", "3mm", "另需公安机关出示证明。");
+  LODOP.ADD_PRINT_TEXT("194mm", "2mm", "80mm", "3mm", "3、如果您的缴费方式为银行卡支付,请您妥");
+  LODOP.ADD_PRINT_TEXT("200mm", "2mm", "80mm", "3mm", "善保管好缴费的刷卡单,并于办理出院退费");
+  LODOP.ADD_PRINT_TEXT("206mm", "2mm", "80mm", "3mm", "时带上缴费时所用银行卡。");
   LODOP.PREVIEW();
+  // LODOP.PRINT();;
   clearPrintData()
 }