diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java b/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java index f80c5d5..b0b607c 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java @@ -405,6 +405,18 @@ public class PremaritalCheckup extends BaseModel { // 语言 private String yuyan; + + //色觉 + private String seJue; + + public String getSeJue() { + return seJue; + } + + public void setSeJue(String seJue) { + this.seJue = seJue; + } + public String getMailNo() { return mailNo; } 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 3ab7226..f14d80f 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 @@ -1730,9 +1730,9 @@ public class ApplyOrderFacade { timestamp = timestamp.replaceAll(" ", "%20");//空格替换成 %20 String syscode = signParams.get("syscode").toString(); String sign = signParams.get("sign").toString(); - System.out.println("timestamp"+timestamp+" syscode="+" sign="+sign); + System.out.println("timestamp" + timestamp + " syscode=" + " sign=" + sign); - System.out.println("saveSampleInfo param="+JsonUtil.obj2JsonString(map)); + System.out.println("saveSampleInfo param=" + JsonUtil.obj2JsonString(map)); String s = HttpClientUtil.sendPost(HUADA_URL + "/intf?method=saveSampleInfo&" + "timestamp=" + timestamp + "&syscode=" + syscode + "&sign=" + sign, map); System.out.println(s); //{"code":"200","msg":"success","rows":{"successedList":[{"msg":"INSP190001417198 ,样例号: 18S4074733R 保存成功!","result":true,"canseqId":"2018101700007123"}],"failedList":[]}} @@ -1954,7 +1954,6 @@ public class ApplyOrderFacade { try { Map signParams = getSignParams(SYSCODE, SECRET); String timestamp1 = signParams.get("timestamp").toString(); - timestamp1 = timestamp1.replaceAll(" ", "%20"); String syscode1 = signParams.get("syscode").toString(); String sign1 = signParams.get("sign").toString(); HashMap map1 = new HashMap<>(); @@ -1966,10 +1965,11 @@ public class ApplyOrderFacade { mapParams.put("syscode", syscode1); mapParams.put("sign", sign1); mapParams.put("timestamp", timestamp1); - data = HttpClientUtil.sendPost(HUADA_URL + "/external/downloadReport.do", map1); + data = HttpClientUtil.doPostSSL(HUADA_URL + "/external/downloadReport.do", JsonUtil.obj2Str(mapParams)); } else { + timestamp1 = timestamp1.replaceAll(" ", "%20"); Map mapParams = new HashMap<>(); mapParams.put("sampleReportId", sampleReportId); JSONObject jsonMapParams = new JSONObject(mapParams); @@ -1978,7 +1978,7 @@ public class ApplyOrderFacade { } System.out.println(data); JSONObject respJSON = JSON.parseObject(data); - if ("200".equals(respJSON.get("code"))) { + if ("200".equals(respJSON.get("code").toString())) { Object rowsJSON =respJSON.get("rows"); if (rowsJSON != null) { byte[] bytes = rowsJSON.toString().getBytes("iso8859-1"); @@ -2138,54 +2138,53 @@ public class ApplyOrderFacade { return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("标本号不存在"); } - new Thread(new Runnable() { - @Override - public void run() { - //查询报告详情 - Map signParams = getSignParams(SYSCODE, SECRET); - String timestamp = signParams.get("timestamp").toString(); - //timestamp = timestamp.replaceAll(" ", "%20");//空格替换成 %20 - String syscode = signParams.get("syscode").toString(); - String sign = signParams.get("sign").toString(); - + //查询报告详情 + Map signParams = getSignParams(SYSCODE, SECRET); + String timestamp = signParams.get("timestamp").toString(); + String syscode = signParams.get("syscode").toString(); + String sign = signParams.get("sign").toString(); - HashMap map = new HashMap<>(); - map.put("sampleNum", sampleNum); - map.put("syscode", syscode); - map.put("sign", sign); - map.put("timestamp", timestamp); - System.out.println("query report param "+JsonUtil.obj2Str(map)); + HashMap map = new HashMap<>(); + map.put("sampleNum", sampleNum); + map.put("syscode", syscode); + map.put("sign", sign); + map.put("timestamp", timestamp); + System.out.println("query report param "+JsonUtil.obj2Str(map)); - //重试三次 - for (int i = 0; i <3 ; i++) + //重试三次 + for (int i = 0; i <3 ; i++) + { + try { + String data = HttpClientUtil.doPostSSL(HUADA_URL + "/external/getReport.do", JsonUtil.obj2Str(map)); + if (StringUtils.isNotEmpty(data)) { - try { - String data = HttpClientUtil.sendPost(HUADA_URL + "/external/getReport.do", map); - if (StringUtils.isNotEmpty(data)) - { - JSONObject jsonObject = JSONObject.parseObject(data); - Object codeObj = jsonObject.get("code"); - if (codeObj != null && "200".equals(codeObj.toString())) - { - dohandleResult(jsonObject.get("data")); - break; - } - } - }catch (Exception e) + System.out.println(data); + JSONObject jsonObject = JSONObject.parseObject(data); + Object codeObj = jsonObject.get("code"); + if (codeObj != null && "200".equals(codeObj.toString()) && data.contains("success")) { - System.out.println(e.getMessage()+"调用失败"+i); - try { - Thread.sleep(1000); - }catch (Exception e1) - { - - } - continue; + dohandleResult(jsonObject.get("data")); + break; } } + }catch (Exception e) + { + System.out.println(e.getMessage()+" getReport.do fail "+i); + try { + Thread.sleep(1000); + }catch (Exception e1) + { + + } + if (i == 2) + { + return new BaseResponse().setErrorcode(ErrorCodeConstants.SYSTEM_ERROR).setErrormsg("获取报告失败"); + } + continue; } - }).start(); + } + return baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功!"); } @@ -2201,6 +2200,7 @@ public class ApplyOrderFacade { 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)) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java index f693a6e..64562d9 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java @@ -865,6 +865,7 @@ public class PremaritalCheckupFacade { checkup.setTingliLeft(addRequest.getTingliLeft()); checkup.setTingliRight(addRequest.getTingliRight()); checkup.setYuyan(addRequest.getYuyan()); + checkup.setSeJue(addRequest.getSeJue()); /* 基础数据 */ @@ -2150,6 +2151,7 @@ public class PremaritalCheckupFacade { checkupResult.setTingliLeft(result.getTingliLeft()); checkupResult.setTingliRight(result.getTingliRight()); checkupResult.setYuyan(result.getYuyan()); + checkupResult.setSeJue(result.getSeJue()); return checkupResult; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/HuadaCallbackModel.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/HuadaCallbackModel.java index 0797448..65467e8 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/HuadaCallbackModel.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/HuadaCallbackModel.java @@ -1,5 +1,7 @@ package com.lyms.platform.operate.web.request; +import java.util.List; + /** * 产华大基因,检查结果回调参数实体 * @@ -51,6 +53,37 @@ public class HuadaCallbackModel { private String reportType; //报告类型 正式报告、失败报告、重取样报告 + + private String autosomalResults; + + private List niftyAttachList; + + private String analyzeResult; + + public List getNiftyAttachList() { + return niftyAttachList; + } + + public void setNiftyAttachList(List niftyAttachList) { + this.niftyAttachList = niftyAttachList; + } + + public String getAnalyzeResult() { + return analyzeResult; + } + + public void setAnalyzeResult(String analyzeResult) { + this.analyzeResult = analyzeResult; + } + + public String getAutosomalResults() { + return autosomalResults; + } + + public void setAutosomalResults(String autosomalResults) { + this.autosomalResults = autosomalResults; + } + public String getReportType() { return reportType; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PremaritalCheckupAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PremaritalCheckupAddRequest.java index a085d4c..83d7dc0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PremaritalCheckupAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PremaritalCheckupAddRequest.java @@ -414,6 +414,17 @@ public class PremaritalCheckupAddRequest { // 语言 private String yuyan; + //色觉 + private String seJue; + + public String getSeJue() { + return seJue; + } + + public void setSeJue(String seJue) { + this.seJue = seJue; + } + public String getMailNo() { return mailNo; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupPageResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupPageResult.java index 649b02e..02ab576 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupPageResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupPageResult.java @@ -385,6 +385,17 @@ public class PremaritalCheckupPageResult { // 语言 private String yuyan; + //色觉 + private String seJue; + + public String getSeJue() { + return seJue; + } + + public void setSeJue(String seJue) { + this.seJue = seJue; + } + public String getMailNo() { return mailNo; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupResult.java index 43cea54..7b3afae 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PremaritalCheckupResult.java @@ -390,6 +390,17 @@ public class PremaritalCheckupResult { // 语言 private String yuyan; + //色觉 + private String seJue; + + public String getSeJue() { + return seJue; + } + + public void setSeJue(String seJue) { + this.seJue = seJue; + } + public String getMailNo() { return mailNo; }