|
@@ -52,7 +52,7 @@ public class XiangMuLuRuService {
|
|
|
*/
|
|
|
public ResultVo<List<ZyDetailCharge>> getHuanZheFeiYong(ZyDetailCharge param) {
|
|
|
if (StringUtil.isBlank(param.getInpatientNo()) || param.getAdmissTimes() == null) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "住院号或住院次数为空。๑乛◡乛๑");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "住院号或住院次数为空<br/>๑乛◡乛๑");
|
|
|
}
|
|
|
log.info("查询患者费用==》住院号{},住院次数:{},项目名称:{},录入日期:{},费用类型:{},科室:{}", param.getInpatientNo(), param.getAdmissTimes(),
|
|
|
param.getChargeCode(), param.getStartTime(), param.getOrderNo(), param.getDept());
|
|
@@ -74,7 +74,7 @@ public class XiangMuLuRuService {
|
|
|
param.getStartTime(), param.getOrderNo(), param.getDept());
|
|
|
}
|
|
|
if (list.isEmpty()) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST);
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST, "没有查询到符合费用。");
|
|
|
}
|
|
|
List<ZyDetailCharge> tuiFeiList = dao.tuiFeiList(param.getInpatientNo(), param.getAdmissTimes());
|
|
|
if (!tuiFeiList.isEmpty()) {
|
|
@@ -112,9 +112,9 @@ public class XiangMuLuRuService {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public ResultVo<String> xiangMuTuiFei(ZyDetailCharge param) {
|
|
|
if (param.getList() == null || param.getList().isEmpty()) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "请先选择需要退费的数据,一次性退费不得超过100条, ╮( •́ω•̀ )╭");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "请先选择需要退费的数据,一次性退费不得超过100条<br/> ╮( •́ω•̀ )╭");
|
|
|
} else if (param.getList().size() > 100) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "项目退费一次性大于100条数据,╮(﹀_﹀”)╭");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "项目退费一次性大于100条数据<br/>╮(﹀_﹀”)╭");
|
|
|
}
|
|
|
if (StringUtil.isBlank(param.getInpatientNo()) || param.getAdmissTimes() == null || param.getList().size() == 0) {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.NULL_POINTER, "患者信息不全");
|
|
@@ -123,7 +123,7 @@ public class XiangMuLuRuService {
|
|
|
List<ZyDetailCharge> chaKanSFtuiFei = dao.chaKanSFYiJingTuiFeiLe(param.getInpatientNo(), param.getAdmissTimes(), param.getList());
|
|
|
|
|
|
for (ZyDetailCharge charge : chaKanSFtuiFei) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为:【%s】已退费,请勿重复退费 ···=థ౪థ.... ", charge.getOriDetailSn()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为:【%s】已退费,请勿重复退费 <br/>···=థ౪థ.... ", charge.getOriDetailSn()));
|
|
|
}
|
|
|
// 判断是否为婴儿
|
|
|
if (param.getInpatientNo().contains("$")) {
|
|
@@ -146,21 +146,21 @@ public class XiangMuLuRuService {
|
|
|
for (ZyDetailCharge pojo : yuanTuiFeiList) {
|
|
|
// 判断患者的费用是否存在负数
|
|
|
if (pojo.getChargeFee().signum() == -1 || pojo.getChargeAmount().signum() == -1) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("患者费用存在负数,流水号:【%s】,该数据为退费数据。( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("患者费用存在负数,流水号:【%s】,该数据为退费数据。<br/>( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
}
|
|
|
// 管理员角色可以无视
|
|
|
if (!yongHuJueSe.contains(1)) {
|
|
|
// 科室开头 是 8 就不是医技科室 只有医技科室可以退药品
|
|
|
if (param.getDeptCode().startsWith("8")) {
|
|
|
if (!zhiXinKeShi.contains(pojo.getExecUnit())) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,请对应的执行科室进行退费。( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,请对应的执行科室进行退费。<br/>( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
}
|
|
|
// 护士是不可以退药品的
|
|
|
if (pojo.getChargeCode().equals("BILL01") || pojo.getChargeCode().equals("BILL02") || pojo.getChargeCode().equals("BILL28")) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,包含药品费用,无法退费。( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,包含药品费用,无法退费。<br/>( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
}
|
|
|
} else if (!param.getDeptCode().equals(pojo.getExecUnit())) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,请对应的执行科室进行退费。( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("流水号为【%s】,请对应的执行科室进行退费。<br/>( ´Д`)y━・~~", pojo.getDetailSn()));
|
|
|
}
|
|
|
}
|
|
|
sum = sum.add(pojo.getChargeFee().multiply(pojo.getChargeAmount()));
|
|
@@ -295,6 +295,9 @@ public class XiangMuLuRuService {
|
|
|
} else if (zyDetailCharge.getBillItemCode().equals("002")) {
|
|
|
zyDetailCharge.setSerial("01");
|
|
|
zyDetailCharge.setChargeCode("BILL02");
|
|
|
+ } else if (zyDetailCharge.getBillItemCode().equals("028")) {
|
|
|
+ zyDetailCharge.setSerial("01");
|
|
|
+ zyDetailCharge.setChargeCode("BILL28");
|
|
|
} else {
|
|
|
// Serial 00 项目标志 01 药品标志
|
|
|
zyDetailCharge.setSerial("00");
|
|
@@ -347,6 +350,9 @@ public class XiangMuLuRuService {
|
|
|
} else if (detailCharge.getBillItemCode().equals("002")) {
|
|
|
detailCharge.setSerial("01");
|
|
|
detailCharge.setGroupNo("73");
|
|
|
+ } else if (zyDetailCharge.getBillItemCode().equals("028")) {
|
|
|
+ zyDetailCharge.setSerial("01");
|
|
|
+ zyDetailCharge.setChargeCode("BILL28");
|
|
|
} else {
|
|
|
// Serial 00 项目标志 01 药品标志
|
|
|
detailCharge.setSerial("00");
|