From a6d5da1f95610d9874b61129346740a09df179f6 Mon Sep 17 00:00:00 2001 From: wyb <1977763549@qq.com> Date: Mon, 30 Dec 2024 17:04:53 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=AD=9B=E9=80=89=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE=E9=83=BD=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E6=96=87=E4=BB=B6=EF=BC=8C=E5=88=99=E7=9B=B4=E6=8E=A5=E5=88=A0?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../demo/controller/SyncBasicDataController.java | 15 +++++++++++++++ .../docus/demo/facade/ISyncBasicDataService.java | 2 ++ .../com/docus/demo/service/SyncBasicDataImpl.java | 13 +++++++++++++ 3 files changed, 30 insertions(+) diff --git a/src/main/java/com/docus/demo/controller/SyncBasicDataController.java b/src/main/java/com/docus/demo/controller/SyncBasicDataController.java index 326cdd1..0accff6 100644 --- a/src/main/java/com/docus/demo/controller/SyncBasicDataController.java +++ b/src/main/java/com/docus/demo/controller/SyncBasicDataController.java @@ -18,6 +18,7 @@ import org.springframework.web.multipart.MultipartFile; import java.time.LocalDate; import java.time.temporal.TemporalAdjusters; import java.util.Collections; +import java.util.List; @Api(value = "数据同步接口", tags = "数据同步接口") @RestController("/sync") @@ -148,4 +149,18 @@ public class SyncBasicDataController { } } + + @ApiOperation("根据 病案号、姓名、出院日期、住院次数 进行筛选数据保留一条") + @PostMapping("/chooseByInpatientNo") + public CommonResult chooseByInpatientNo(@RequestBody List inpatientNos){ + log.info("根据 病案号、姓名、出院日期、住院次数 进行筛选数据保留一条"); + try { + syncBasicDataService.choose(inpatientNos); + log.info("根据 病案号、姓名、出院日期、住院次数 进行筛选数据保留一条,已完成!"); + return CommonResult.success("筛选完成!"); + } catch (Exception ex) { + log.error("根据 病案号、姓名、出院日期、住院次数 进行筛选数据保留一条,出现异常!" + ex.getMessage(), ex); + return CommonResult.failed("筛选异常!"); + } + } } diff --git a/src/main/java/com/docus/demo/facade/ISyncBasicDataService.java b/src/main/java/com/docus/demo/facade/ISyncBasicDataService.java index b5bbceb..9957887 100644 --- a/src/main/java/com/docus/demo/facade/ISyncBasicDataService.java +++ b/src/main/java/com/docus/demo/facade/ISyncBasicDataService.java @@ -17,4 +17,6 @@ public interface ISyncBasicDataService { void scanBasicCorrect(List basicCorrectDtos); void choose(); + + void choose(List inpatientNos); } diff --git a/src/main/java/com/docus/demo/service/SyncBasicDataImpl.java b/src/main/java/com/docus/demo/service/SyncBasicDataImpl.java index ab8301e..0c895c4 100644 --- a/src/main/java/com/docus/demo/service/SyncBasicDataImpl.java +++ b/src/main/java/com/docus/demo/service/SyncBasicDataImpl.java @@ -175,6 +175,14 @@ public class SyncBasicDataImpl implements ISyncBasicDataService { log.info("本次筛选完成!"); } + @Override + public void choose(List inpatientNos) { + for (String inpatientNo : inpatientNos) { + choose(inpatientNo); + log.info("已经筛选病案号:{} ", inpatientNo); + } + } + /** * 根据 病案号、姓名、出院日期、住院次数 判断是同一个人,进行数据筛选。 * 有盘号/箱号 优先级 +10 @@ -330,6 +338,11 @@ public class SyncBasicDataImpl implements ISyncBasicDataService { }).collect(Collectors.toList()); if (CollUtil.isEmpty(allScanAssorts)) { + List notSelectedPids = allPatientIds.stream().filter(e -> !e.equals(selectPatientId)).collect(Collectors.toList()); + basicMapper.delTbasic(notSelectedPids); + for (String notSelectedPid : notSelectedPids) { + basicMapper.delTbasicSub(notSelectedPid); + } return; }