diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java index f14d80f..78e1dbe 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java @@ -1976,7 +1976,6 @@ public class ApplyOrderFacade { map1.put("params", jsonMapParams.toString()); data = HttpClientUtil.sendPost(HUADA_URL + "/intf?method=downloadReport&" + "timestamp=" + timestamp1 + "&syscode=" + syscode1 + "&sign=" + sign1, map1); } - System.out.println(data); JSONObject respJSON = JSON.parseObject(data); if ("200".equals(respJSON.get("code").toString())) { Object rowsJSON =respJSON.get("rows"); @@ -2181,57 +2180,61 @@ public class ApplyOrderFacade { return new BaseResponse().setErrorcode(ErrorCodeConstants.SYSTEM_ERROR).setErrormsg("获取报告失败"); } continue; - } } return baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功!"); } - private void dohandleResult(Object dataObj) { + private void dohandleResult(final Object dataObj) { if (dataObj == null) { return; } - HuadaCallbackModel huadaCallbackModel = JSONObject.parseObject(dataObj.toString(), HuadaCallbackModel.class); - System.out.println(huadaCallbackModel.toString()); - - String cardId = huadaCallbackModel.getCardId(); - Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(cardId)), Patients.class); - if (patients != null) { - String patientsId = patients.getId(); - huadaCallbackModel.setSampleReportId(huadaCallbackModel.getSampleNum()); - SieveResultModel model = getSieveResultModel(huadaCallbackModel, patientsId); - List sieveResultModels = mongoTemplate.find(Query.query(Criteria.where("sampleReportId").is(model.getSampleReportId())).with(new Sort(Sort.Direction.DESC, "resultTime")), SieveResultModel.class); - if (CollectionUtils.isNotEmpty(sieveResultModels)) { - SieveResultModel sieveResultModel = sieveResultModels.get(0); - Update update = new Update(); - Map object = BeanUtils.objectToObjectMap(model); - Set> entries = object.entrySet(); - for (Map.Entry entry : entries) { - Object entryValue = entry.getValue(); - if (entryValue != null) { - if (entryValue instanceof String) { - if (StringUtils.isEmpty(entryValue.toString())) { - continue; + new Thread(new Runnable() { + @Override + public void run() { + HuadaCallbackModel huadaCallbackModel = JSONObject.parseObject(dataObj.toString(), HuadaCallbackModel.class); + System.out.println(huadaCallbackModel.toString()); + + String cardId = huadaCallbackModel.getCardId(); + Patients patients = mongoTemplate.findOne(Query.query(Criteria.where("cardNo").is(cardId).and("yn").is(1)), Patients.class); + if (patients != null) { + String patientsId = patients.getId(); + huadaCallbackModel.setSampleReportId(huadaCallbackModel.getSampleNum()); + SieveResultModel model = getSieveResultModel(huadaCallbackModel, patientsId); + List sieveResultModels = mongoTemplate.find(Query.query(Criteria.where("sampleReportId").is(model.getSampleReportId())).with(new Sort(Sort.Direction.DESC, "resultTime")), SieveResultModel.class); + if (CollectionUtils.isNotEmpty(sieveResultModels)) { + SieveResultModel sieveResultModel = sieveResultModels.get(0); + Update update = new Update(); + Map object = BeanUtils.objectToObjectMap(model); + Set> entries = object.entrySet(); + for (Map.Entry entry : entries) { + Object entryValue = entry.getValue(); + if (entryValue != null) { + if (entryValue instanceof String) { + if (StringUtils.isEmpty(entryValue.toString())) { + continue; + } + } + update.set(entry.getKey(), entry.getValue()); } } - update.set(entry.getKey(), entry.getValue()); + mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(sieveResultModel.getId())), update, SieveResultModel.class); + logger.info(String.format("更新产筛结果: { %s }", update.toString())); + } else { + mongoTemplate.insert(model); + logger.info(String.format("新增产筛结果: { %s }", model.toString())); } + + // 后续业务操作 + SieveAddRequest sieveAddRequest = new SieveAddRequest(); + sieveAddRequest.setParentId(patientsId); + Integer userId = null; + sieveFacade.addOrUpdateSieveModel(sieveAddRequest, userId, model); } - mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(sieveResultModel.getId())), update, SieveResultModel.class); - logger.info(String.format("更新产筛结果: { %s }", update.toString())); - } else { - mongoTemplate.insert(model); - logger.info(String.format("新增产筛结果: { %s }", model.toString())); } - - // 后续业务操作 - SieveAddRequest sieveAddRequest = new SieveAddRequest(); - sieveAddRequest.setParentId(patientsId); - Integer userId = null; - sieveFacade.addOrUpdateSieveModel(sieveAddRequest, userId, model); - } + }).start(); } /*拼json使用*/ diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java index 51782e3..28dbf1b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java @@ -971,6 +971,7 @@ public class SieveFacade { sieveResultInfo.put("sampleInfoId", sieveResultModel.getSampleInfoId()); sieveResultInfo.put("sampleReportId", sieveResultModel.getSampleReportId()); + sieveResultInfo.put("hasReport", sieveResultModel.getHasReport()); String tszhzValue = "";