Преглед на файлове

增加历史数据兼容

hurugang преди 5 години
родител
ревизия
820e1578be

+ 6 - 0
src/main/java/cn/hnthyy/thmz/controller/MzReceiptSerialController.java

@@ -158,6 +158,12 @@ public class MzReceiptSerialController {
             //将打印标志改为已经打印
             //mzChargeDetailService.modifyPrintFlag(patientId,timesList);
             MzReceiptSerial mzReceiptSerial = mzReceiptSerialService.queryAllSerialForThisTime(patientId, times);
+            if(mzReceiptSerial!=null && StringUtils.isBlank(mzReceiptSerial.getChequeType())){
+                resultMap.put("code", -1);
+                resultMap.put("message", "当前病人发票表中的收费类型为空,无法打印发票,请及时联系管理员");
+                log.info("当前病人发票表中的收费类型为空,无法打印发票,请及时联系管理员,patientId={},time={}", patientId, times);
+                return resultMap;
+            }
             String receipt = mzReceiptSerialService.printReceiptSerial(mzReceiptSerial,tokenUser);
             List<Integer> timesList = new ArrayList<>();
             List<MzReceiptSerialVo> mzReceiptSerialVos = getMzReceiptSerialVos(mzReceiptSerial, timesList, receipt);

+ 6 - 0
src/main/java/cn/hnthyy/thmz/mapper/his/MzReceiptSerialMapper.java

@@ -237,6 +237,12 @@ public interface MzReceiptSerialMapper {
             "<when test='payId!=null'>",
             ",pay_id =#{payId}",
             "</when>",
+            "<when test='chargeDcountDate!=null'>",
+            ",charge_dcount_date =#{chargeDcountDate,jdbcType=TIMESTAMP}",
+            "</when>",
+            "<when test='chargeDcountNo!=null'>",
+            ",charge_dcount_no =#{chargeDcountNo}",
+            "</when>",
             "</trim>",
             "</script>"})
     int updateMzReceiptSerialByReceiptNo(MzReceiptSerial mzReceiptSerial);

+ 5 - 1
src/main/java/cn/hnthyy/thmz/service/impl/his/MzReceiptSerialServiceImpl.java

@@ -23,7 +23,6 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
@@ -113,6 +112,11 @@ public class MzReceiptSerialServiceImpl implements MzReceiptSerialService {
         updateMzReceiptSerial.setReceiptBill(receipt.getReceiptCurrent());
         updateMzReceiptSerial.setOperatorId(user.getUserIdCode());
         updateMzReceiptSerial.setPayId(mzReceiptSerial.getOperatorId());
+        if(mzReceiptSerial.getDcountDate()!=null){
+            //日结不为空,说明是手机自助缴费且已经日结过了,需要将原来日结时间设置到缴费日结字段,因为发票打印成功会重置原来的日结时间和日结状态
+            updateMzReceiptSerial.setChargeDcountDate(mzReceiptSerial.getDcountDate());
+            updateMzReceiptSerial.setChargeDcountNo(mzReceiptSerial.getDcountNo());
+        }
         //如果是手机缴费,设置缴费方式为自助缴费
         if(Constants.BRZZJF_CODE.equals(mzReceiptSerial.getOperatorId()) && Constants.BYJZ.equals(mzReceiptSerial.getChequeType())){
             MzDepositFile mzDepositFile=mzDepositFileMapper.selectMzDepositFileBySerialNo(mzReceiptSerial.getSerialNo());