| 
					
				 | 
			
			
				@@ -415,7 +415,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //如果有欠费记账的收费,新增退费重收记录 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        List<MzChargeDetail> newMzChargeDetailList = getMzChargeDetails(opId, mzDepositFileVo, now, serialNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        getMzChargeDetailService().saveMzChargeDetail(newMzChargeDetailList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<MzDepositFile> newMzDepositFileList = getMzDepositFiles(mzDepositFileVo, now, serialNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<MzDepositFile> newMzDepositFileList = getMzDepositFiles(mzDepositFileVo, now, serialNo,opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(newMzDepositFileList.size()>0 && mzDepositFileMapper.selectBySameParams(newMzDepositFileList.get(0))>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             throw new MzException("当前病人本次处方已经成功缴费,无需重复缴费"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1335,6 +1335,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzReceiptSerial.setChargeDate(now); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzReceiptSerial.setSerialNo(serialNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzReceiptSerial.setOperatorId(opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        newMzReceiptSerial.setPayId(opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzReceiptSerial.setReceiptSn(serialNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzReceiptSerial.setReceiptBill(""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzReceiptSerial.setChequeType(mzDepositFileVo.getMzDepositFiles().get(0).getChequeType()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1371,6 +1372,8 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setDcountDate(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setChargeDcountNo(YesNoEnum.NO.code); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setChargeDcountDate(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    j.setOperatorId(opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    j.setPayId(opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     newList.add(j); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1386,7 +1389,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * @param serialNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private List<MzDepositFile> getMzDepositFiles(MzDepositFileVo mzDepositFileVo, Date now, int serialNo) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private List<MzDepositFile> getMzDepositFiles(MzDepositFileVo mzDepositFileVo, Date now, int serialNo,String opId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<MzDepositFile> newList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<MzDepositFile> mzDepositFiles = mzDepositFileMapper.selectMzDepositFileByTimes(mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes(), mzDepositFileVo.getReceiptNo()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (mzDepositFiles != null && mzDepositFiles.size() > 0) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1401,6 +1404,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzDepositFile.setSerialNo(serialNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzDepositFile.setReceiptSn(serialNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newMzDepositFile.setChequeType(mzDepositFileVo.getMzDepositFiles().get(0).getChequeType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        newMzDepositFile.setOpId(opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         newList.add(newMzDepositFile); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setReceiptNo(0 - j.getReceiptNo()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1409,6 +1413,9 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setSerialNo(0 - j.getSerialNo()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setPayMark(PayMarkEnum.RETURN_PREMIUM.code); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     j.setChargeDate(now); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    j.setOpId(opId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    j.setChargeDate(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    j.setChequeNo(YesNoEnum.NO.code.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     newList.add(j); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }); 
			 |