|
@@ -590,17 +590,14 @@ public class MedicalViewApiController {
|
|
|
if (returnList != null && returnList.size() > 0) {
|
|
|
for (Map<String, Object> map : returnList) {
|
|
|
PayInfo payInfo = tsmzService.uploadFees(whiteList.getOpId(), (String) map.get("patientId"), (Integer) map.get("times"), (Integer) map.get("receiptNo"));
|
|
|
- if (payInfo == null) {
|
|
|
- results.put("code", -1);
|
|
|
- results.put("message", "获取门诊统筹/特门费用失败");
|
|
|
- return results;
|
|
|
+ if (payInfo != null) {
|
|
|
+ BigDecimal totalAmt = (BigDecimal) map.get("totalAmt");
|
|
|
+ //个人医保账户支付
|
|
|
+ map.put("acctPay", payInfo.getAcctPay());
|
|
|
+ //医保统筹报销
|
|
|
+ map.put("fundPay", payInfo.getFundPay());
|
|
|
+ map.put("selfAmt", totalAmt.divide(BigDecimal.valueOf(100)).subtract(payInfo.getAcctPay()).subtract(payInfo.getFundPay()).multiply(BigDecimal.valueOf(100)));
|
|
|
}
|
|
|
- BigDecimal totalAmt = (BigDecimal) map.get("totalAmt");
|
|
|
- //个人医保账户支付
|
|
|
- map.put("acctPay", payInfo.getAcctPay());
|
|
|
- //医保统筹报销
|
|
|
- map.put("fundPay", payInfo.getFundPay());
|
|
|
- map.put("selfAmt", totalAmt.divide(BigDecimal.valueOf(100)).subtract(payInfo.getAcctPay()).subtract(payInfo.getFundPay()).multiply(BigDecimal.valueOf(100)));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -791,30 +788,26 @@ public class MedicalViewApiController {
|
|
|
List<MzDepositFile> mzDepositFiles = new ArrayList<>();
|
|
|
mzDepositFiles.add(mzDepositFile);
|
|
|
mzDepositFileVo.setMzDepositFiles(mzDepositFiles);
|
|
|
-
|
|
|
PayInfo payInfo = tsmzService.uploadFees(whiteList.getOpId(), mzDepositFileVo.getPatientId(), mzDepositFileVo.getTimes(), mzDepositFileVo.getReceiptNo());
|
|
|
- if (payInfo == null) {
|
|
|
- results.put("code", -1);
|
|
|
- results.put("message", "获取门诊统筹/特门费用失败");
|
|
|
- return results;
|
|
|
- }
|
|
|
- //如果门诊统筹支付有值,添加收费方式
|
|
|
- if(payInfo.getFundPay().compareTo(BigDecimal.ZERO)==1){
|
|
|
- MzDepositFile ybjzmzDepositFile =CloneUtil.clone(mzDepositFile);
|
|
|
- ybjzmzDepositFile.setAmount(payInfo.getFundPay());
|
|
|
- ybjzmzDepositFile.setChequeType(Constants.YBJZ);
|
|
|
- ybjzmzDepositFile.setPsordnum(null);
|
|
|
- ybjzmzDepositFile.setAgtordnum(null);
|
|
|
- mzDepositFiles.add(ybjzmzDepositFile);
|
|
|
- }
|
|
|
- //如果个人账户支付有值,添加收费方式
|
|
|
- if(payInfo.getAcctPay().compareTo(BigDecimal.ZERO)==1){
|
|
|
- MzDepositFile grzhmzDepositFile =CloneUtil.clone(mzDepositFile);
|
|
|
- grzhmzDepositFile.setAmount(payInfo.getAcctPay());
|
|
|
- grzhmzDepositFile.setChequeType(Integer.valueOf(2).equals(payInfo.getCardType())?Constants.SHENYBK:Constants.SSHIYBK);
|
|
|
- grzhmzDepositFile.setPsordnum(null);
|
|
|
- grzhmzDepositFile.setAgtordnum(null);
|
|
|
- mzDepositFiles.add(grzhmzDepositFile);
|
|
|
+ if (payInfo != null) {
|
|
|
+ //如果门诊统筹支付有值,添加收费方式
|
|
|
+ if(payInfo.getFundPay().compareTo(BigDecimal.ZERO)==1){
|
|
|
+ MzDepositFile ybjzmzDepositFile =CloneUtil.clone(mzDepositFile);
|
|
|
+ ybjzmzDepositFile.setAmount(payInfo.getFundPay());
|
|
|
+ ybjzmzDepositFile.setChequeType(Constants.YBJZ);
|
|
|
+ ybjzmzDepositFile.setPsordnum(null);
|
|
|
+ ybjzmzDepositFile.setAgtordnum(null);
|
|
|
+ mzDepositFiles.add(ybjzmzDepositFile);
|
|
|
+ }
|
|
|
+ //如果个人账户支付有值,添加收费方式
|
|
|
+ if(payInfo.getAcctPay().compareTo(BigDecimal.ZERO)==1){
|
|
|
+ MzDepositFile grzhmzDepositFile =CloneUtil.clone(mzDepositFile);
|
|
|
+ grzhmzDepositFile.setAmount(payInfo.getAcctPay());
|
|
|
+ grzhmzDepositFile.setChequeType(Integer.valueOf(2).equals(payInfo.getCardType())?Constants.SHENYBK:Constants.SSHIYBK);
|
|
|
+ grzhmzDepositFile.setPsordnum(null);
|
|
|
+ grzhmzDepositFile.setAgtordnum(null);
|
|
|
+ mzDepositFiles.add(grzhmzDepositFile);
|
|
|
+ }
|
|
|
}
|
|
|
mzChargeDetailService.chargeFee(whiteList.getOpId(), mzDepositFileVo, whiteList.getOpId());
|
|
|
results.put("resultCode", 0);
|