|
@@ -11,6 +11,7 @@ import thyyxxk.webserver.config.exception.ExceptionEnum;
|
|
|
import thyyxxk.webserver.dao.his.yibao.ZhuYuanYiZhuDao;
|
|
|
import thyyxxk.webserver.entity.ResultVo;
|
|
|
import thyyxxk.webserver.entity.datamodify.YzActOrder;
|
|
|
+import thyyxxk.webserver.service.PublicServer;
|
|
|
import thyyxxk.webserver.utils.*;
|
|
|
|
|
|
import java.util.List;
|
|
@@ -29,11 +30,12 @@ public class ZhuYuanYiZhuServer {
|
|
|
|
|
|
private final ZhuYuanYiZhuDao dao;
|
|
|
|
|
|
- private final ActOrderNoUtil actOrderNoUtil;
|
|
|
|
|
|
- public ZhuYuanYiZhuServer(ZhuYuanYiZhuDao dao, ActOrderNoUtil actOrderNoUtil) {
|
|
|
+ private final PublicServer publicServer;
|
|
|
+
|
|
|
+ public ZhuYuanYiZhuServer(ZhuYuanYiZhuDao dao, PublicServer publicServer) {
|
|
|
this.dao = dao;
|
|
|
- this.actOrderNoUtil = actOrderNoUtil;
|
|
|
+ this.publicServer = publicServer;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -49,11 +51,9 @@ public class ZhuYuanYiZhuServer {
|
|
|
infantFlag = 1;
|
|
|
}
|
|
|
if (StringUtil.isBlank(param.getInpatientNo()) || param.getAdmissTimes() == null) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST, "住院号或住院次数为空。");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST, "住院号或住院次数为空。( >﹏<。)");
|
|
|
}
|
|
|
IPage<YzActOrder> page = new Page<>(param.getCurrentPage(), param.getPageSize());
|
|
|
- log.info("查询患者的医嘱==>住院号:{},住院次数:{},医嘱编码:{},医嘱号:{},开始时间:{},结束时间:{},婴儿:{},费用类型:{}", param.getInpatientNo(), param.getAdmissTimes(),
|
|
|
- param.getOrderCode(), param.getActOrderNo(), param.getQueryStartTime(), param.getQueryEndTime(), infantFlag, param.getTfFlag());
|
|
|
dao.getYzXinXi(page, param.getInpatientNo(), param.getAdmissTimes(), param.getOrderCode(),
|
|
|
param.getActOrderNo(), param.getQueryStartTime(), param.getQueryEndTime(), infantFlag, param.getTfFlag());
|
|
|
if (page.getRecords().isEmpty()) {
|
|
@@ -65,29 +65,29 @@ public class ZhuYuanYiZhuServer {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public ResultVo<String> yiZhuTuiFei(YzActOrder param) {
|
|
|
if (ListUtil.isBlank(param.getTuiFeiList())) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "请先选择退费数据");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "请先选择退费数据,¬o( ̄- ̄メ)");
|
|
|
}
|
|
|
if (param.getTuiFeiList().size() >= 100) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "一次性退费超过100条");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "一次性退费超过100条,¬o( ̄- ̄メ)");
|
|
|
}
|
|
|
List<YzActOrder> yuanYiZhuShuJu = dao.yuanYiZhu(param.getInpatientNo(), param.getAdmissTimes(), param.getTuiFeiList());
|
|
|
if (ListUtil.isBlank(yuanYiZhuShuJu)) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "未查询到对应的住院号。");
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "未查询到对应的住院号。┌(。Д。)┐");
|
|
|
}
|
|
|
for (YzActOrder yzActOrder : yuanYiZhuShuJu) {
|
|
|
// 同时满足 tf_flag 不等于 0 以及 价格 不为负数 才能退费
|
|
|
if (yzActOrder.getTfFlag() != 0) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("医嘱号为:【%s】已退费无法重复退费。", yzActOrder.getActOrderNo()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("医嘱号为:【%s】已退费无法重复退费。( ´Д`)y━・~~", yzActOrder.getActOrderNo()));
|
|
|
} else if (yzActOrder.getDrugQuan().signum() == -1) {
|
|
|
- return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("医嘱号为:【%s】费用为负数无法退费。", yzActOrder.getActOrderNo()));
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, String.format("医嘱号为:【%s】费用为负数无法退费。( ´Д`)y━・~~", yzActOrder.getActOrderNo()));
|
|
|
}
|
|
|
yzActOrder.setDrugQuan(yzActOrder.getDrugQuan().negate());
|
|
|
- yzActOrder.setNewActOrderNo(actOrderNoUtil.getActOrderNo());
|
|
|
+ yzActOrder.setNewActOrderNo(publicServer.getActOrderNo());
|
|
|
}
|
|
|
dao.yiZhuTuiFei(yuanYiZhuShuJu, TokenUtil.getTokenUserId());
|
|
|
dao.genXinTuiFeiFlag(param.getInpatientNo(), param.getAdmissTimes(), param.getTuiFeiList());
|
|
|
- log.info("医嘱退费:{}", JSON.toJSONStringWithDateFormat(yuanYiZhuShuJu, DateUtil.DEFAULT_PATTERN));
|
|
|
- return ResultVoUtil.success(ExceptionEnum.SUCCESS, "操作成功。");
|
|
|
+ log.info("医嘱退费:操作人:{},数据:{}", TokenUtil.getTokenUserId(), JSON.toJSONStringWithDateFormat(yuanYiZhuShuJu, DateUtil.DEFAULT_PATTERN));
|
|
|
+ return ResultVoUtil.success(ExceptionEnum.SUCCESS, "操作成功。*.。(๑・∀・๑)*.。");
|
|
|
}
|
|
|
|
|
|
}
|