From 19c74dc7fc321baa85ab9fc7c9bb1244dcc2005a Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期一, 23 九月 2024 13:00:22 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/BusServiceImpl.java | 41 ++++++++++++++++++++++++++++++++++------- 1 files changed, 34 insertions(+), 7 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/BusServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/BusServiceImpl.java index e424ff3..9c324c2 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/BusServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/BusServiceImpl.java @@ -16,7 +16,9 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; @Slf4j @Service("busService") @@ -38,27 +40,52 @@ if (Cools.isEmpty(param.getBatch())) { return "Batch cannot be empty!"; } + Set<String> oriStaNoSet = new HashSet<>(); + Set<String> oriLocNoSet = new HashSet<>(); + Set<String> destStaNoSet = new HashSet<>(); + Set<String> destLocNoSet = new HashSet<>(); for (TaskDto dto : param.getTaskList()) { + if (!Cools.isEmpty(dto.getOriSta()) && !Cools.isEmpty(dto.getOriLoc())) { + return "OriSta and OriLoc cannot exist at the same time!"; + } if (!Cools.isEmpty(dto.getOriSta())) { - if (!Cools.isEmpty(dto.getOriLoc())) { - return "OriSta and OriLoc cannot exist at the same time!"; - } if (Cools.isEmpty(dto.getDestSta()) && Cools.isEmpty(dto.getDestLoc())) { return "Destination cannot be empty!"; } } - - if (!Cools.isEmpty(dto.getDestSta())) { - if (!Cools.isEmpty(dto.getDestLoc())) { - return "DestSta and DestLoc cannot exist at the same time!"; + if (!Cools.isEmpty(dto.getOriLoc())) { + if (Cools.isEmpty(dto.getDestSta()) && Cools.isEmpty(dto.getDestLoc())) { + return "Destination cannot be empty!"; } + if (oriLocNoSet.contains(dto.getOriLoc())) { + return "OriLoc cannot be repeated"; + } else { + oriLocNoSet.add(dto.getOriLoc()); + } + } + + if (!Cools.isEmpty(dto.getDestSta()) && !Cools.isEmpty(dto.getDestLoc())) { + return "DestSta and DestLoc cannot exist at the same time!"; + } + if (!Cools.isEmpty(dto.getDestSta())) { if (Cools.isEmpty(dto.getOriSta()) && Cools.isEmpty(dto.getOriLoc())) { return "Origin cannot be empty!"; + } + } + if (!Cools.isEmpty(dto.getDestLoc())) { + if (Cools.isEmpty(dto.getOriSta()) && Cools.isEmpty(dto.getOriLoc())) { + return "Origin cannot be empty!"; + } + if (destLocNoSet.contains(dto.getDestLoc())) { + return "DestLoc cannot be repeated"; + } else { + destLocNoSet.add(dto.getDestLoc()); } } if (Cools.isEmpty(dto.getSeqNum())) { dto.setSeqNum(taskService.generateSeqNum()); } + } return null; } -- Gitblit v1.9.1