diff --git a/src/main/java/com/docus/server/report/api/dto/SdNurseInsertSugarRequest.java b/src/main/java/com/docus/server/report/api/dto/SdNurseInsertSugarRequest.java index 72b6d54..ca0030f 100644 --- a/src/main/java/com/docus/server/report/api/dto/SdNurseInsertSugarRequest.java +++ b/src/main/java/com/docus/server/report/api/dto/SdNurseInsertSugarRequest.java @@ -1,5 +1,7 @@ package com.docus.server.report.api.dto; +import java.util.Objects; + /** * 顺德人医 移动护理请求参数 * @@ -20,6 +22,9 @@ public class SdNurseInsertSugarRequest { private final String visit_id; public SdNurseInsertSugarRequest(String zyh, String visit_id, String tradeCode) { + Objects.requireNonNull(zyh); + Objects.requireNonNull(visit_id); + Objects.requireNonNull(tradeCode); this.tradeCode = tradeCode; this.zyh = zyh; this.visit_id = visit_id; diff --git a/src/main/java/com/docus/server/report/api/impl/ShunDePeopleServiceImpl.java b/src/main/java/com/docus/server/report/api/impl/ShunDePeopleServiceImpl.java index 41fd7d7..8fa046f 100644 --- a/src/main/java/com/docus/server/report/api/impl/ShunDePeopleServiceImpl.java +++ b/src/main/java/com/docus/server/report/api/impl/ShunDePeopleServiceImpl.java @@ -160,9 +160,9 @@ public class ShunDePeopleServiceImpl implements ShunDePeopleService { NURSE_INSERT_SUGAR_LOCK.lock(); try { String requestParam = Func.toJson(request); - log.info("[{}]查询移动护理 请求参数:{}", randomUuid, requestParam); + log.info("[{}]查询移动护理,请求地址:{},参数:{}", randomUuid,sdRyReportQueryConfig.getReportQueryNurseInsertSugarUrl(), requestParam); String respBody = sendPost(sdRyReportQueryConfig.getReportQueryNurseInsertSugarUrl(), requestParam); - log.info("[{}]查询移动护理 响应:{}", randomUuid, respBody); + log.info("[{}]查询移动护理,响应:{}", randomUuid, respBody); TimeUnit.MILLISECONDS.sleep(sdRyReportQueryConfig.getReportQueryNurseInsertSugarInterval()); return Func.readJson(respBody, SdNurseInsertSugarResponse.class); } catch (Exception ex) { diff --git a/src/main/java/com/docus/server/report/api/impl/TaskDistributeServiceImpl.java b/src/main/java/com/docus/server/report/api/impl/TaskDistributeServiceImpl.java index f64a1a2..6a29537 100644 --- a/src/main/java/com/docus/server/report/api/impl/TaskDistributeServiceImpl.java +++ b/src/main/java/com/docus/server/report/api/impl/TaskDistributeServiceImpl.java @@ -37,7 +37,7 @@ public class TaskDistributeServiceImpl implements TaskDistributeService { CommonResult reportDownTwoDtoCommonResult = Func.readJson(result, new TypeReference>() { }); if (reportDownTwoDtoCommonResult == null || reportDownTwoDtoCommonResult.getCode().equals(ResultCode.FAILED.getCode()) || reportDownTwoDtoCommonResult.getData() == null) { - log.warn("未查询到任务数据!"); + log.debug("未查询到任务数据!"); return null; } return reportDownTwoDtoCommonResult.getData(); diff --git a/src/main/java/com/docus/server/report/config/ZdAssortConfig.java b/src/main/java/com/docus/server/report/config/ZdAssortConfig.java index a181465..80dc888 100644 --- a/src/main/java/com/docus/server/report/config/ZdAssortConfig.java +++ b/src/main/java/com/docus/server/report/config/ZdAssortConfig.java @@ -1,26 +1,36 @@ package com.docus.server.report.config; import com.alibaba.fastjson.JSONObject; +import com.docus.core.util.Func; import com.docus.server.report.util.TableJsonRead; public class ZdAssortConfig { + private final static String DEFAULT_TYPE = "other"; + /** * 获取配置文件中类型对应的分类id + * * @param type 类型 * @return 分类id */ - public static String getZdAssortId(String type){ + public static String getZdAssortId(String type) { TableJsonRead jsonRead = new TableJsonRead(); JSONObject tableTypeJson = jsonRead.Read("data-config", "js-table-type.json", JSONObject.class); - return tableTypeJson.getString(type); + String zdAssortId = tableTypeJson.getString(type); + // 如果未获取到,并且类型不是默认的其他分类id,则取默认其他分类id + if (Func.isBlank(zdAssortId) && !DEFAULT_TYPE.equals(type)) { + return getOtherAssortId(); + } + return zdAssortId; } /** * 获取配置文件中默认其他的分类id + * * @return 分类id */ - public static String getOtherAssortId(){ - return getZdAssortId("other"); + public static String getOtherAssortId() { + return getZdAssortId(DEFAULT_TYPE); } } diff --git a/src/main/java/com/docus/server/report/controller/ReportDownController.java b/src/main/java/com/docus/server/report/controller/ReportDownController.java index 05514f0..ad981a2 100644 --- a/src/main/java/com/docus/server/report/controller/ReportDownController.java +++ b/src/main/java/com/docus/server/report/controller/ReportDownController.java @@ -6,6 +6,7 @@ import com.docus.infrastructure.web.api.CommonResult; import com.docus.server.collection.mapper.TBasicMapper; import com.docus.server.report.api.ShunDePeopleService; import com.docus.server.report.api.TaskDistributeService; +import com.docus.server.report.api.dto.SdNurseInsertSugarRequest; import com.docus.server.report.job.ReportJob; import com.docus.server.report.service.ReportService; import io.swagger.annotations.Api; @@ -44,6 +45,14 @@ public class ReportDownController { return CommonResult.success(shunDePeopleService.getBase64PdfFromPacs(examNo, reportNo)); } + @ApiOperation(value = "移动护理报告接口测试") + @GetMapping("/nurseInsertSugarTest") + public CommonResult nurseInsertSugarTest(@Param("inpatientNo") String inpatientNo, @Param("admissTimes") String admissTimes) { + final String traceCode = "nurse_print_doc"; + SdNurseInsertSugarRequest sdNurseInsertSugarRequest = new SdNurseInsertSugarRequest(inpatientNo, admissTimes, traceCode); + return CommonResult.success(shunDePeopleService.getNurseInsertSugarReport(sdNurseInsertSugarRequest)); + } + @ApiOperation(value = "获取任务测试") @PostMapping("/getTaskTest") public CommonResult getTaskTest(@RequestParam("collectorId") String collectorId) { diff --git a/src/main/java/com/docus/server/report/job/ReportJob.java b/src/main/java/com/docus/server/report/job/ReportJob.java index 523976e..2a75004 100644 --- a/src/main/java/com/docus/server/report/job/ReportJob.java +++ b/src/main/java/com/docus/server/report/job/ReportJob.java @@ -8,10 +8,7 @@ import com.docus.server.collection.entity.TBasic; import com.docus.server.collection.mapper.TBasicMapper; import com.docus.server.report.api.ShunDePeopleService; import com.docus.server.report.api.TaskDistributeService; -import com.docus.server.report.api.dto.ReportDownTwoDto; -import com.docus.server.report.api.dto.ReportDto; -import com.docus.server.report.api.dto.SdJxReportDto; -import com.docus.server.report.api.dto.SdPacsServerConfig; +import com.docus.server.report.api.dto.*; import com.docus.server.report.config.SdRyReportQueryConfig; import com.docus.server.report.config.ZdAssortConfig; import com.docus.server.report.entity.AfJobTime; @@ -137,9 +134,37 @@ public class ReportJob { */ @XxlJob("SdRyNurseInsertSugarCollectJob") public void sdRyNurseInsertSugarCollectJob(){ - String reportQueryZyInspectCollectorId = sdRyReportQueryConfig.getReportQueryZyInspectCollectorId(); - ReportDownTwoDto reportDownTwoDto = taskDistributeService.getNoviewTaskByCollectorId(reportQueryZyInspectCollectorId); - //todo 移动护理报告采集未完成 文永斌 2023年6月27日12:25:43 + String reportQueryNurseInsertSugarCollectorId = sdRyReportQueryConfig.getReportQueryNurseInsertSugarCollectorId(); + ReportDownTwoDto reportDownTwoDto = taskDistributeService.getNoviewTaskByCollectorId(reportQueryNurseInsertSugarCollectorId); + if (reportDownTwoDto==null) { + return; + } + String patientId = reportDownTwoDto.getPatient().getPatientId(); + String inpatientNo = reportDownTwoDto.getPatient().getInpatientNo(); + Integer admissTimes = reportDownTwoDto.getHospitals().get(0).getAdmissTimes(); + final String traceCode = "nurse_print_doc"; + SdNurseInsertSugarRequest sdNurseInsertSugarRequest = new SdNurseInsertSugarRequest(inpatientNo, admissTimes.toString(), traceCode); + SdNurseInsertSugarResponse sdNurseInsertSugarResponse = shunDePeopleService.getNurseInsertSugarReport(sdNurseInsertSugarRequest); + List nurseInsertSugarReportList = sdNurseInsertSugarResponse.getData(); + if(Func.isNotEmpty(nurseInsertSugarReportList)){ + ReportDto reportDto; + for (SdNurseInsertSugarResponse.NisData nisReport : nurseInsertSugarReportList) { + reportDto = new ReportDto(); + reportDto.setSysFlag(reportQueryNurseInsertSugarCollectorId); + reportDto.setTaskId(reportDownTwoDto.getTasks().get(0).getTaskId()); + reportDto.setDownUrl(nisReport.getUrl()); + reportDto.setFileTitle(nisReport.getForm_name()); + reportDto.setSerialnum(nisReport.getForm_id()); + reportDto.setAssortId(ZdAssortConfig.getZdAssortId(nisReport.getForm_type())); + reportDto.setAdmisstimes(admissTimes); + reportDto.setInpatientNo(inpatientNo); + reportDto.setPatientId(patientId); + reportDto.setDowntype(1); + reportDto.setFileSource("1"); + reportDto.setFilestoragetype("1"); + reportService.report(reportDto); + } + } }