|
|
@@ -138,9 +138,9 @@ public class SiMzFeeService {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, result.getString(ERROR_MESSAGE));
|
|
|
}
|
|
|
|
|
|
- private ResultVo<String> uploadOutpatientInfo(SpcChrDiseAcct diseInfo, SiPatInfo siPatInfo, String staffId) {
|
|
|
+ private ResultVo<String> uploadOutpatientInfo(SpcChrDiseAcct spcChrDiseAcct, SiPatInfo siPatInfo) {
|
|
|
JSONObject input = exec.makeTradeHeaderWithInsureArea(SiFunction.UPLOAD_OUTPATIENT_INFO,
|
|
|
- siPatInfo.getInsuplcAdmdvs(), staffId);
|
|
|
+ siPatInfo.getInsuplcAdmdvs(), spcChrDiseAcct.getStaffId());
|
|
|
JSONObject mdtrtinfo = new JSONObject();
|
|
|
List<Diagnoses> diagnosesList = new ArrayList<>();
|
|
|
String icdCodeNew = mzDao.selectIcdCodeNew(siPatInfo.getPatNo(), siPatInfo.getTimes());
|
|
|
@@ -170,7 +170,7 @@ public class SiMzFeeService {
|
|
|
}
|
|
|
}
|
|
|
if (siPatInfo.getMedType().equals("14") || siPatInfo.getMedType().equals("51")) {
|
|
|
- if (StringUtil.isBlank(diseInfo.getOpspDiseCode())) {
|
|
|
+ if (StringUtil.isBlank(spcChrDiseAcct.getOpspDiseCode())) {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "生育门诊与慢特病门诊的病种不能为空 !");
|
|
|
}
|
|
|
}
|
|
|
@@ -178,16 +178,17 @@ public class SiMzFeeService {
|
|
|
mdtrtinfo.put("psn_no", siPatInfo.getPsnNo());
|
|
|
mdtrtinfo.put("med_type", siPatInfo.getMedType());
|
|
|
mdtrtinfo.put("begntime", DateUtil.formatDatetime(siPatInfo.getVisitDatetime()));
|
|
|
- mdtrtinfo.put("main_cond_dscr", diseInfo.getOpspDiseName());
|
|
|
- mdtrtinfo.put("dise_codg", diseInfo.getOpspDiseCode());
|
|
|
- mdtrtinfo.put("dise_name", diseInfo.getOpspDiseName());
|
|
|
+ mdtrtinfo.put("main_cond_dscr", spcChrDiseAcct.getOpspDiseName());
|
|
|
+ mdtrtinfo.put("dise_codg", spcChrDiseAcct.getOpspDiseCode());
|
|
|
+ mdtrtinfo.put("dise_name", spcChrDiseAcct.getOpspDiseName());
|
|
|
mdtrtinfo.put("birctrl_type", "");
|
|
|
mdtrtinfo.put("birctrl_matn_date", "");
|
|
|
+ mdtrtinfo.put("exp_content", spcChrDiseAcct.getExpContent());
|
|
|
String ref = JSONObject.toJSONString(diagnosesList);
|
|
|
input.getJSONObject("input").put("mdtrtinfo", mdtrtinfo);
|
|
|
input.getJSONObject("input").put("diseinfo", JSONArray.parse(ref));
|
|
|
JSONObject result = exec.executeTrade(input, SiFunction.UPLOAD_OUTPATIENT_INFO);
|
|
|
- log.info("【操作员:{}】门诊就诊信息上传:\n参数:{},\n结果:{}", staffId, input, result);
|
|
|
+ log.info("【操作员:{}】门诊就诊信息上传:\n参数:{},\n结果:{}", spcChrDiseAcct.getStaffId(), input, result);
|
|
|
Integer infcode = result.getInteger(RESULT_CODE);
|
|
|
logDao.insert(new SiLog(input, result, siPatInfo.getPatNo(), siPatInfo.getTimes(), infcode, siPatInfo.getPsnNo()));
|
|
|
if (result.getIntValue(RESULT_CODE) == 0) {
|
|
|
@@ -208,14 +209,12 @@ public class SiMzFeeService {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "【门诊号:" + patNo +
|
|
|
"】未找到此患者的医保挂号信息,请核实。");
|
|
|
}
|
|
|
-
|
|
|
if (!p.getFromDirectReg()) {
|
|
|
- ResultVo<String> uplRes = uploadOutpatientInfo(p, siPatInfo, p.getStaffId());
|
|
|
+ ResultVo<String> uplRes = uploadOutpatientInfo(p, siPatInfo);
|
|
|
if (null != uplRes && uplRes.getCode() != ExceptionEnum.SUCCESS.getCode()) {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, uplRes.getMessage());
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
List<FeeDetail> feeDetails = mzDao.selectOutpatientFees(patNo, p.getTimes());
|
|
|
if (null == feeDetails || feeDetails.isEmpty()) {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "此患者没有需要上传的费用。");
|
|
|
@@ -622,7 +621,9 @@ public class SiMzFeeService {
|
|
|
siPatInfo = mzDao.selectSiPatInfoForMz(mzptnt.getPatNo(), mzptnt.getTimes());
|
|
|
siPatInfo.setFromDirectReg(true);
|
|
|
SpcChrDiseAcct spcChrDiseAcct = new SpcChrDiseAcct();
|
|
|
- ResultVo<String> upldMdtrtRes = uploadOutpatientInfo(spcChrDiseAcct, siPatInfo, param.getStaffId());
|
|
|
+ spcChrDiseAcct.setStaffId(param.getStaffId());
|
|
|
+ spcChrDiseAcct.setExpContent(param.getExpContent());
|
|
|
+ ResultVo<String> upldMdtrtRes = uploadOutpatientInfo(spcChrDiseAcct, siPatInfo);
|
|
|
if (null == upldMdtrtRes) {
|
|
|
revokeOutpatientRegistration(mzptnt);
|
|
|
return ResultVoUtil.fail(ExceptionEnum.NETWORK_ERROR);
|
|
|
@@ -683,7 +684,7 @@ public class SiMzFeeService {
|
|
|
}
|
|
|
|
|
|
public ResultVo<Integer> isPatientDuringSiSettle(String patientId) {
|
|
|
- int result = MzgjUtil.inProcessing(patientId) ? 1 : 0;
|
|
|
+ int result = MzgjUtil.inProcessing(patientId) ? 1 : 0;
|
|
|
return ResultVoUtil.success(result);
|
|
|
}
|
|
|
|