|
|
@@ -348,31 +348,6 @@ public class XiangMuLuRuService {
|
|
|
}
|
|
|
|
|
|
|
|
|
- private ResultVo<String> getStringResultVo(List<Integer> yongHuJueSe, Set<String> zhiXinKeShi, ZyDetailCharge xuYaoTuiDeShuJu, ZyDetailCharge piPeiDeShuJu, Boolean panDuanYaoPin) {
|
|
|
- // 科室开头 是 8 就不是医技科室 只有医技科室可以退药品
|
|
|
- if (xuYaoTuiDeShuJu.getDeptCode().startsWith("8")) {
|
|
|
- //获取到这个人是否属于这个科室
|
|
|
- if (!zhiXinKeShi.contains(piPeiDeShuJu.getExecUnit())) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,请对应的执行科室进行退费。", piPeiDeShuJu.getDetailSn()));
|
|
|
- }
|
|
|
- // 护士是不可以退药品的
|
|
|
- if (panDuanYaoPin) {
|
|
|
- if (piPeiDeShuJu.getChargeCode().startsWith("BILL")) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,包含药品费用,无法退费。", piPeiDeShuJu.getDetailSn()));
|
|
|
- }
|
|
|
- }
|
|
|
- } else if (panDuanYaoPin) {
|
|
|
- String order = piPeiDeShuJu.getOrderNo().stripTrailingZeros().toPlainString();
|
|
|
- if (!xuYaoTuiDeShuJu.getDeptCode().equals(piPeiDeShuJu.getExecUnit())) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,请对应的执行科室进行退费。", piPeiDeShuJu.getDetailSn()));
|
|
|
- } else if (!"3".equals(order) && !"00".equals(piPeiDeShuJu.getSerial())) {
|
|
|
- // 只能退医技科室录入的药品费用
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,只能退本科室录入的药品。", piPeiDeShuJu.getDetailSn()));
|
|
|
- }
|
|
|
- }
|
|
|
- return null;
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 获取模板
|
|
|
*
|
|
|
@@ -820,17 +795,7 @@ public class XiangMuLuRuService {
|
|
|
BigDecimal chargeFeeSum = new BigDecimal(0);
|
|
|
BigDecimal chargeAmountSum = new BigDecimal(0);
|
|
|
|
|
|
- List<Integer> yongHuJueSe = dao.huoQuJueSe(TokenUtil.getTokenUserId());
|
|
|
-
|
|
|
- Set<String> zhiXinKeShi = dao.chaXunZhiZXinKeShi(zyDetailCharge.getDeptCode());
|
|
|
-
|
|
|
for (ZyDetailCharge detailCharge : zhenShuShuJu) {
|
|
|
- if (!BigUtils.dengYu(detailCharge.getOrderNo(), zyDetailCharge.getOrderNo())) {
|
|
|
- ResultVo<String> judgingMedicines = getStringResultVo(yongHuJueSe, zhiXinKeShi, zyDetailCharge, detailCharge, false);
|
|
|
- if (judgingMedicines != null) {
|
|
|
- return judgingMedicines;
|
|
|
- }
|
|
|
- }
|
|
|
if ("2".equals(detailCharge.getTransFlagYb())) {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为:{%d},已被正负抵消。", detailCharge.getDetailSn()));
|
|
|
}
|