|
|
@@ -13,9 +13,11 @@ import thyyxxk.webserver.dao.his.zhuyuanyisheng.YiZhuLuRuDao;
|
|
|
import thyyxxk.webserver.entity.ResultVo;
|
|
|
import thyyxxk.webserver.entity.casefrontsheet.YshHzRecord;
|
|
|
import thyyxxk.webserver.entity.datamodify.GetDropdownBox;
|
|
|
+import thyyxxk.webserver.entity.hospitalizationCosts.ZyDetailChargeTable;
|
|
|
import thyyxxk.webserver.entity.login.UserInfo;
|
|
|
import thyyxxk.webserver.entity.zhuyuanyisheng.yizhuluru.XinZhenYiZhu;
|
|
|
import thyyxxk.webserver.service.PublicServer;
|
|
|
+import thyyxxk.webserver.service.hospitalizationCosts.HospitalizationCostsService;
|
|
|
import thyyxxk.webserver.service.redislike.RedisLikeService;
|
|
|
import thyyxxk.webserver.utils.ListUtil;
|
|
|
import thyyxxk.webserver.utils.ResultVoUtil;
|
|
|
@@ -39,18 +41,19 @@ public class HuiZhenShenQingService {
|
|
|
private final HuiZhenShenQingDao dao;
|
|
|
private final PublicServer publicServer;
|
|
|
private final YiZhuLuRuDao yiZhuLuRuDao;
|
|
|
-
|
|
|
private final RedisLikeService redisLikeService;
|
|
|
+ private final HospitalizationCostsService refundService;
|
|
|
|
|
|
private HuiZhenShenQingService getThis() {
|
|
|
return SpringUtil.getBean(this.getClass());
|
|
|
}
|
|
|
|
|
|
- public HuiZhenShenQingService(HuiZhenShenQingDao dao, PublicServer publicServer, YiZhuLuRuDao yiZhuLuRuDao, RedisLikeService redisLikeService) {
|
|
|
+ public HuiZhenShenQingService(HuiZhenShenQingDao dao, PublicServer publicServer, YiZhuLuRuDao yiZhuLuRuDao, RedisLikeService redisLikeService, HospitalizationCostsService h) {
|
|
|
this.dao = dao;
|
|
|
this.publicServer = publicServer;
|
|
|
this.yiZhuLuRuDao = yiZhuLuRuDao;
|
|
|
this.redisLikeService = redisLikeService;
|
|
|
+ this.refundService = h;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -151,13 +154,24 @@ public class HuiZhenShenQingService {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "该会诊已经完成了无法删除。");
|
|
|
}
|
|
|
|
|
|
+ List<ZyDetailChargeTable> zy = dao.selectChargeByOrderNo(inpatientNo, admissTimes, actOrderNo);
|
|
|
+ int count = 0;
|
|
|
+
|
|
|
+ if (ListUtil.notBlank(zy)) {
|
|
|
+ HospitalizationCostsService.RefundParam param = new HospitalizationCostsService.RefundParam();
|
|
|
+ param.setPatNo(inpatientNo);
|
|
|
+ param.setTimes(admissTimes);
|
|
|
+ param.setFeeList(zy);
|
|
|
+ count = refundService.thereAreNoRestrictionsOnRefunds(param);
|
|
|
+ }
|
|
|
|
|
|
//会诊申请是根据 住院号,住院次数,申请次数 来获取到 一条
|
|
|
dao.shanChuShenQing(inpatientNo, admissTimes, reqTimes);
|
|
|
//医嘱 只要根据医嘱号来删除
|
|
|
dao.shanChuYiZhu(actOrderNo);
|
|
|
log.info("删除会诊申请==》操作人:{},数据:{}", TokenUtil.getTokenUserId(), JSON.toJSONString(huiZhenXinXi.get(0)));
|
|
|
- return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, "删除成功");
|
|
|
+ String message = count > 0 ? "删除成功,会诊费用已退费。" : "删除成功";
|
|
|
+ return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, message);
|
|
|
}
|
|
|
|
|
|
/**
|