|
|
@@ -0,0 +1,36 @@
|
|
|
+package top.haijunit.train.service;
|
|
|
+
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import top.haijunit.train.domain.constant.RouteStatus;
|
|
|
+import top.haijunit.train.domain.dto.RouteDto;
|
|
|
+import top.haijunit.train.domain.dto.TrainDto;
|
|
|
+import top.haijunit.train.domain.entity.RouteEntity;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author zhang
|
|
|
+ * @date 2023/11/21 06:45
|
|
|
+ * @description 进路业务处理
|
|
|
+ */
|
|
|
+@Slf4j
|
|
|
+public class RouteService {
|
|
|
+
|
|
|
+ List<RouteDto> routeList = new ArrayList<>();
|
|
|
+
|
|
|
+ public void run(TrainDto train) {
|
|
|
+ for (RouteDto route : routeList) {
|
|
|
+ if (!route.isTrigger(train)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (route.isValid() && route.isContainSwitch()) {
|
|
|
+ // TODO 出清且包含到拆
|
|
|
+ route.setStatus(RouteStatus.LOCK);
|
|
|
+ } else if (route.isValid()) {
|
|
|
+ // TODO 出清且不包括到道岔
|
|
|
+ route.setStatus(RouteStatus.LOCK);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|