|
@@ -559,20 +559,26 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
|
|
public int chargeFeeForByjz(String opId, MzDepositFileVo mzDepositFileVo) throws MzException {
|
|
public int chargeFeeForByjz(String opId, MzDepositFileVo mzDepositFileVo) throws MzException {
|
|
Date now = new Date();
|
|
Date now = new Date();
|
|
int serialNo = mzSerialNoService.getSerialNo();
|
|
int serialNo = mzSerialNoService.getSerialNo();
|
|
- //如果有欠费记账的收费,新增退费重收记录
|
|
|
|
-// List<MzChargeDetail> newMzChargeDetailList = getMzChargeDetails(opId, mzDepositFileVo, now, serialNo);
|
|
|
|
-// getMzChargeDetailService().saveMzChargeDetail(newMzChargeDetailList);
|
|
|
|
List<MzDepositFile> newMzDepositFileList = getMzDepositFiles(mzDepositFileVo, now, serialNo, opId);
|
|
List<MzDepositFile> newMzDepositFileList = getMzDepositFiles(mzDepositFileVo, now, serialNo, opId);
|
|
if (newMzDepositFileList.size() > 0 && mzDepositFileMapper.selectBySameParams(newMzDepositFileList.get(0)) > 0) {
|
|
if (newMzDepositFileList.size() > 0 && mzDepositFileMapper.selectBySameParams(newMzDepositFileList.get(0)) > 0) {
|
|
throw new MzException("当前病人本次处方已经成功缴费,无需重复缴费");
|
|
throw new MzException("当前病人本次处方已经成功缴费,无需重复缴费");
|
|
}
|
|
}
|
|
- //本院记账需要把原缴费记录保存
|
|
|
|
|
|
+ //如果当前数据是在备份库中,那么久会还原到正式库
|
|
List<MzChargeDetail> mzChargeDetailList = mzChargeDetailMapper.selectByPatientIdAndTimesAndReceiptNo(mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes(), mzDepositFileVo.getReceiptNo());
|
|
List<MzChargeDetail> mzChargeDetailList = mzChargeDetailMapper.selectByPatientIdAndTimesAndReceiptNo(mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes(), mzDepositFileVo.getReceiptNo());
|
|
|
|
+ MzChargeDetail mzChargeDetail = new MzChargeDetail(mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes());
|
|
|
|
+ mzChargeDetail.setReceiptNo(mzDepositFileVo.getReceiptNo());
|
|
|
|
+ if(mzChargeDetailList==null || mzChargeDetailList.size()==0){
|
|
|
|
+ mzChargeDetailMapper.reInsertDetail(mzChargeDetail);
|
|
|
|
+ mzChargeDetailMapper.deleteFromBak(mzChargeDetail);
|
|
|
|
+ mzChargeDetail.setChequType(Constants.BYJZ);
|
|
|
|
+ mzChargeDetailMapper.updateMzChargeDetailFull(mzChargeDetail);
|
|
|
|
+ }
|
|
|
|
+ //本院记账需要把原缴费记录保存
|
|
|
|
+ mzChargeDetailList = mzChargeDetailMapper.selectByPatientIdAndTimesAndReceiptNo(mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes(), mzDepositFileVo.getReceiptNo());
|
|
mzDepositFileService.batchSaveMzDepositFile(newMzDepositFileList);
|
|
mzDepositFileService.batchSaveMzDepositFile(newMzDepositFileList);
|
|
List<MzReceiptSerial> newMzReceiptSerialList = getMzReceiptSerials(opId, mzDepositFileVo, now, serialNo);
|
|
List<MzReceiptSerial> newMzReceiptSerialList = getMzReceiptSerials(opId, mzDepositFileVo, now, serialNo);
|
|
mzReceiptSerialService.batchSaveMzReceiptSerial(newMzReceiptSerialList);
|
|
mzReceiptSerialService.batchSaveMzReceiptSerial(newMzReceiptSerialList);
|
|
//将新生成的收费流水号设置到收费明细
|
|
//将新生成的收费流水号设置到收费明细
|
|
- MzChargeDetail mzChargeDetail = new MzChargeDetail(mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes());
|
|
|
|
mzChargeDetail.setSerialNo(serialNo);
|
|
mzChargeDetail.setSerialNo(serialNo);
|
|
mzChargeDetail.setRealNo(serialNo);
|
|
mzChargeDetail.setRealNo(serialNo);
|
|
mzChargeDetail.setReceiptNo(mzDepositFileVo.getReceiptNo());
|
|
mzChargeDetail.setReceiptNo(mzDepositFileVo.getReceiptNo());
|
|
@@ -958,14 +964,14 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
|
|
return 1;
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
|
- @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT, timeout = 36000, rollbackFor = Exception.class)
|
|
|
|
- public int reSaveDetailFromBak(MzChargeDetail mzChargeDetail) {
|
|
|
|
- mzChargeDetailMapper.reInsertDetail(mzChargeDetail);
|
|
|
|
- mzChargeDetailMapper.deleteFromBak(mzChargeDetail);
|
|
|
|
- mzChargeDetail.setChequType(Constants.BYJZ);
|
|
|
|
- return mzChargeDetailMapper.updateMzChargeDetailFull(mzChargeDetail);
|
|
|
|
- }
|
|
|
|
|
|
+// @Override
|
|
|
|
+// @Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT, timeout = 36000, rollbackFor = Exception.class)
|
|
|
|
+// public int reSaveDetailFromBak(MzChargeDetail mzChargeDetail) {
|
|
|
|
+// mzChargeDetailMapper.reInsertDetail(mzChargeDetail);
|
|
|
|
+// mzChargeDetailMapper.deleteFromBak(mzChargeDetail);
|
|
|
|
+// mzChargeDetail.setChequType(Constants.BYJZ);
|
|
|
|
+// return mzChargeDetailMapper.updateMzChargeDetailFull(mzChargeDetail);
|
|
|
|
+// }
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|