|
@@ -192,13 +192,16 @@ public class DismissService {
|
|
|
hisTotalCharge = dao.getTotalChargeForCyjs(inpatientNo, admissTimes, ledgerSn);
|
|
|
}
|
|
|
ResultVo<Object> resultVo = YibaoHttpUtil.httpPost("preCalculateCost", param, responce);
|
|
|
- if (resultVo.getCode() != 200 && resultVo.getCode() != 2002) {
|
|
|
+ if (resultVo.getCode() != 200 && resultVo.getCode() != 2002 && !resultVo.getMessage().contains("没有找到费用明细")) {
|
|
|
ExceptionEnum exception = ExceptionEnum.LOGICAL_ERROR;
|
|
|
exception.setMessage(resultVo.getMessage());
|
|
|
throw new BizException(exception);
|
|
|
} else {
|
|
|
- HashMap<String, String> obj = FilterUtil.cast(resultVo.getData());
|
|
|
- String ybTotalCharge = obj.get("totalCost");
|
|
|
+ String ybTotalCharge = "0.00";
|
|
|
+ if (!resultVo.getMessage().contains("没有找到费用明细")) {
|
|
|
+ HashMap<String, String> obj = FilterUtil.cast(resultVo.getData());
|
|
|
+ ybTotalCharge = obj.get("totalCost");
|
|
|
+ }
|
|
|
if (DecimalUtil.feeDiffsOverOneRmb(hisTotalCharge, ybTotalCharge)) {
|
|
|
if (param.getDismissFlag() == 1) {
|
|
|
int count = dao.hasFeeNotUpload(inpatientNo, admissTimes, ledgerSn);
|
|
@@ -241,7 +244,7 @@ public class DismissService {
|
|
|
exception.setMessage(resultVo.getMessage());
|
|
|
throw new BizException(exception);
|
|
|
} else {
|
|
|
- obj = FilterUtil.cast(resultVo.getData());
|
|
|
+ HashMap<String, String> obj = FilterUtil.cast(resultVo.getData());
|
|
|
ybTotalCharge = obj.get("totalCost");
|
|
|
if (DecimalUtil.feeDiffsOverOneRmb(hisTotalCharge, ybTotalCharge)) {
|
|
|
ExceptionEnum exception = ExceptionEnum.LOGICAL_ERROR;
|
|
@@ -430,8 +433,9 @@ public class DismissService {
|
|
|
|
|
|
private int insertNewZyWorkLog(YbSettleFeePojo indata) {
|
|
|
final String userName = dao.getOperateName(indata.getStaffId());
|
|
|
+ String logType = indata.getFlag() == 1 ? "cyjs" : "zjdz";
|
|
|
return dao.insertNewZyWorkLog(indata.getInpatientNo(), indata.getAdmissTimes(), indata.getLedgerSn(),
|
|
|
- indata.getWardCode(), indata.getDeptCode(), indata.getStaffId(), userName);
|
|
|
+ indata.getWardCode(), logType, indata.getDeptCode(), indata.getStaffId(), userName);
|
|
|
}
|
|
|
|
|
|
private int hisMiddleSettle(YbSettleFeePojo indata) {
|