Просмотр исходного кода

数据库结构类型调整,添加枚举

zhanghaijun лет назад: 2
Родитель
Сommit
026c12fe16
16 измененных файлов с 182 добавлено и 108 удалено
  1. 1 1
      train-server/src/main/java/top/haijunit/train/controller/DemoController.java
  2. 24 0
      train-server/src/main/java/top/haijunit/train/domain/constant/SignalStateConverter.java
  3. 38 0
      train-server/src/main/java/top/haijunit/train/domain/constant/SignalStateEnum.java
  4. 6 8
      train-server/src/main/java/top/haijunit/train/domain/entity/DeviceEntity.java
  5. 3 2
      train-server/src/main/java/top/haijunit/train/domain/entity/EmergencyStopEntity.java
  6. 5 4
      train-server/src/main/java/top/haijunit/train/domain/entity/PlatformEntity.java
  7. 6 3
      train-server/src/main/java/top/haijunit/train/domain/entity/RouteEntity.java
  8. 9 7
      train-server/src/main/java/top/haijunit/train/domain/entity/SelectionEntity.java
  9. 6 4
      train-server/src/main/java/top/haijunit/train/domain/entity/SignStopEntity.java
  10. 8 5
      train-server/src/main/java/top/haijunit/train/domain/entity/SignalEntity.java
  11. 3 2
      train-server/src/main/java/top/haijunit/train/domain/entity/StationDoorEntity.java
  12. 7 6
      train-server/src/main/java/top/haijunit/train/domain/entity/SwitchEntity.java
  13. 1 1
      train-server/src/main/java/top/haijunit/train/listener/MessageEventListener.java
  14. 63 63
      train-server/src/main/resources/db/changelog/db-server-train.xml
  15. 1 1
      train-server/src/main/resources/db/changelog/db-server.xml
  16. 1 1
      train-server/src/main/resources/db/changelog/db_platform.txt

+ 1 - 1
train-server/src/main/java/top/haijunit/train/controller/DemoController.java

@@ -39,7 +39,7 @@ public class DemoController {
     public ResultData<List<DeviceEntity>> userList() {
         DeviceEntity device = new DeviceEntity();
         device.setCode(IdUtil.fastUUID());
-        device.setDeviceType(CommandEnum.PLATFORM_DOOR_LOCK);
+        device.setCommand(CommandEnum.PLATFORM_DOOR_LOCK);
         device.setStatus("1");
         deviceRepository.save(device);
         return ResultData.success(deviceRepository.findAll());

+ 24 - 0
train-server/src/main/java/top/haijunit/train/domain/constant/SignalStateConverter.java

@@ -0,0 +1,24 @@
+package top.haijunit.train.domain.constant;
+
+import jakarta.persistence.AttributeConverter;
+import jakarta.persistence.Converter;
+
+import java.util.Optional;
+
+/**
+ * @author zhanghaijun
+ * @date 2023/11/27 15:48
+ * @description [一句话描述该类的功能]
+ */
+@Converter(autoApply = true)
+public class SignalStateConverter implements AttributeConverter<SignalStateEnum, Integer> {
+    @Override
+    public Integer convertToDatabaseColumn(SignalStateEnum signalState) {
+        return Optional.of(signalState).map(SignalStateEnum::getCode).orElse(SignalStateEnum.RED.getCode());
+    }
+
+    @Override
+    public SignalStateEnum convertToEntityAttribute(Integer code) {
+        return SignalStateEnum.getByCode(code);
+    }
+}

+ 38 - 0
train-server/src/main/java/top/haijunit/train/domain/constant/SignalStateEnum.java

@@ -0,0 +1,38 @@
+package top.haijunit.train.domain.constant;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ * @author zhanghaijun
+ * @date 2023/11/27 15:45
+ * @description [一句话描述该类的功能]
+ */
+@Getter
+@AllArgsConstructor
+public enum SignalStateEnum {
+
+    RED(1, "red", "禁止通行"),
+    GREEN(2, "green", "允许通行"),
+    YELLOW(3, "yellow", "道岔"),
+    RED_YELLOW(4, "red_yellow", "");
+
+    @JsonValue
+    private final Integer code;
+    private final String color;
+    private final String describe;
+
+    @JsonCreator(mode = JsonCreator.Mode.DELEGATING)
+    public static SignalStateEnum getByCode(Integer code) {
+        for (SignalStateEnum genderEnum : values()) {
+            if (Objects.equals(genderEnum.getCode(), code)) {
+                return genderEnum;
+            }
+        }
+        return null;
+    }
+}

+ 6 - 8
train-server/src/main/java/top/haijunit/train/domain/entity/DeviceEntity.java

@@ -1,6 +1,9 @@
 package top.haijunit.train.domain.entity;
 
-import jakarta.persistence.*;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.GenerationType;
+import jakarta.persistence.Id;
 import lombok.Data;
 import top.haijunit.train.socket.CommandEnum;
 
@@ -20,17 +23,12 @@ public class DeviceEntity implements Serializable {
     private Long id;
 
     /** 资源类型 */
-    @Column(name = "device_type", nullable = false, unique = true)
-    private CommandEnum deviceType;
-
+    private CommandEnum command;
     /** 标识编码 */
-    @Column(nullable = false, unique = true)
     private String code;
-
     /** 状态 */
-    @Column(nullable = false, unique = true)
     private String status;
-
+    /** 其他信息 */
     private String other;
 
 }

+ 3 - 2
train-server/src/main/java/top/haijunit/train/domain/entity/EmergencyStopEntity.java

@@ -5,6 +5,7 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
 
 import java.io.Serializable;
 
@@ -22,7 +23,7 @@ public class EmergencyStopEntity implements Serializable {
     private Long id;
 
     // 所属站台
-    private String stationId;
+    private Long stationId;
     // 上下行
-    private String direction;
+    private DirectionEnum direction;
 }

+ 5 - 4
train-server/src/main/java/top/haijunit/train/domain/entity/PlatformEntity.java

@@ -5,6 +5,7 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
 
 import java.io.Serializable;
 
@@ -21,9 +22,9 @@ public class PlatformEntity implements Serializable {
     private Long id;
 
     // 所属车站
-    private String stationId;
+    private Long stationId;
     // 上下行
-    private String direction;
-    // 默认停站时间
-    private String stopTime;
+    private DirectionEnum direction;
+    // 默认停站时间 单位秒
+    private Integer stopSecond;
 }

+ 6 - 3
train-server/src/main/java/top/haijunit/train/domain/entity/RouteEntity.java

@@ -5,8 +5,11 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
+import top.haijunit.train.domain.constant.SignalStateEnum;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 /**
  * @author zhang
@@ -25,7 +28,7 @@ public class RouteEntity implements Serializable {
     // 关联信号机
     private String signalIds;
     // 关联信号机状态
-    private String signalState;
+    private SignalStateEnum signalState;
     // 关联区段列表
     private String seleIds;
     // 关联道岔
@@ -33,7 +36,7 @@ public class RouteEntity implements Serializable {
     // 关联道岔状态
     private String switchState;
     // 触发点位置
-    private double trigPosition;
+    private BigDecimal trigPosition;
     // 进路方向
-    private String direction;
+    private DirectionEnum direction;
 }

+ 9 - 7
train-server/src/main/java/top/haijunit/train/domain/entity/SelectionEntity.java

@@ -5,8 +5,10 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 /**
  * @author zhang
@@ -23,17 +25,17 @@ public class SelectionEntity implements Serializable {
     // 名称
     private String name;
     // 起始公里标
-    private String startKilometer;
+    private BigDecimal startKilometer;
     // 长度
-    private String selectionLength;
+    private BigDecimal selectionLength;
     // 前一区段号
-    private String preId;
+    private Long preId;
     // 后一区段号
-    private String nextId;
+    private Long nextId;
     // 上下行
-    private String direction;
+    private DirectionEnum direction;
     // 折返标志
-    private String zfState;
+    private Boolean zfState;
     // 所属车站编号
-    private String stationId;
+    private Long stationId;
 }

+ 6 - 4
train-server/src/main/java/top/haijunit/train/domain/entity/SignStopEntity.java

@@ -5,8 +5,10 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 /**
  * @author zhang
@@ -21,11 +23,11 @@ public class SignStopEntity implements Serializable {
     private Long id;
 
     // 所属站台
-    private String stationId;
+    private Long stationId;
     // 上下行
-    private String direction;
+    private DirectionEnum direction;
     // 所属区段号
-    private String selectionId;
+    private Long selectionId;
     // 所属区段偏移
-    private String selectionOff;
+    private BigDecimal selectionOff;
 }

+ 8 - 5
train-server/src/main/java/top/haijunit/train/domain/entity/SignalEntity.java

@@ -5,8 +5,11 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
+import top.haijunit.train.domain.constant.SignalStateEnum;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 /**
  * @author zhang
@@ -23,13 +26,13 @@ public class SignalEntity implements Serializable {
     // 名称
     private String name;
     // 公里标
-    private String kilometer;
+    private BigDecimal kilometer;
     // 状态:红、绿、黄、红黄
-    private String colorState;
+    private SignalStateEnum colorState;
     // 区段号
-    private String selectionId;
+    private Long selectionId;
     // 类型:上行、下行
-    private String direction;
+    private DirectionEnum direction;
     // 车站编号
-    private String stationId;
+    private Long stationId;
 }

+ 3 - 2
train-server/src/main/java/top/haijunit/train/domain/entity/StationDoorEntity.java

@@ -5,6 +5,7 @@ import jakarta.persistence.GeneratedValue;
 import jakarta.persistence.GenerationType;
 import jakarta.persistence.Id;
 import lombok.Data;
+import top.haijunit.train.domain.constant.DirectionEnum;
 
 import java.io.Serializable;
 
@@ -21,7 +22,7 @@ public class StationDoorEntity implements Serializable {
     private Long id;
 
     // 所属站台
-    private String stationId;
+    private Long stationId;
     // 上下行
-    private String direction;
+    private DirectionEnum direction;
 }

+ 7 - 6
train-server/src/main/java/top/haijunit/train/domain/entity/SwitchEntity.java

@@ -7,6 +7,7 @@ import jakarta.persistence.Id;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 /**
  * @author zhang
@@ -24,17 +25,17 @@ public class SwitchEntity implements Serializable {
     // 名称
     private String name;
     // 公里标
-    private String kilometer;
+    private BigDecimal kilometer;
     // 类型
-    private String type;
+    private Integer type;
     // 岔前区段号
-    private String preSelectionId;
+    private Long preSelectionId;
     // 岔后区段号
-    private String nextSelectionId;
+    private Long nextSelectionId;
     // 岔后侧向区段号
-    private String nextSideSelectionId;
+    private Long nextSideSelectionId;
     // 关联道岔
     private Long switchTie;
     // 所属车站编号
-    private String stationId;
+    private Long stationId;
 }

+ 1 - 1
train-server/src/main/java/top/haijunit/train/listener/MessageEventListener.java

@@ -60,7 +60,7 @@ public class MessageEventListener implements ApplicationListener<MessageEvent> {
                     return;
                 }
                 DeviceEntity device = new DeviceEntity();
-                device.setDeviceType(commandEnum);
+                device.setCommand(commandEnum);
                 device.setCode(code);
                 device.setStatus(status);
                 device.setOther(other);

+ 63 - 63
train-server/src/main/resources/db/changelog/db-server-train.xml

@@ -11,10 +11,10 @@
             </column>
             <column name="name" type="VARCHAR(128)" defaultValue="" remarks="名称"/>
             <column name="kilometer" type="DOUBLE(10,5)" defaultValueNumeric="0.00" remarks="公里标(单位m)"/>
-            <column name="color_state" type="VARCHAR(64)" defaultValue="" remarks="状态:红、绿、黄、红黄"/>
-            <column name="selection_id" type="VARCHAR(128)" defaultValue="" remarks="区段号"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="上行、下行"/>
-            <column name="station_id" type="VARCHAR(64)" defaultValue="" remarks="归属车站/编码"/>
+            <column name="color_state" type="${number.type}" defaultValueNumeric="1" remarks="状态:红、绿、黄、红黄"/>
+            <column name="selection_id" type="${autoing.type}" defaultValueNumeric="0" remarks="区段号"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="上行、下行"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="归属车站/编码"/>
         </createTable>
     </changeSet>
     <changeSet id="load-db_signal-data" author="zhanghaijun" failOnError="false" runOnChange="true">
@@ -22,11 +22,11 @@
         <loadUpdateData file="db_signal.txt" tableName="db_signal" primaryKey="id" relativeToChangelogFile="true" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
             <column name="id" type="NUMERIC"/>
             <column name="name" type="STRING"/>
-            <column name="kilometer" type="STRING"/>
-            <column name="color_state" type="STRING"/>
+            <column name="kilometer" type="NUMERIC"/>
+            <column name="color_state" type="NUMERIC"/>
             <column name="selection_id" type="NUMERIC"/>
-            <column name="direction" type="STRING"/>
-            <column name="station_id" type="STRING"/>
+            <column name="direction" type="NUMERIC"/>
+            <column name="station_id" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
 
@@ -35,16 +35,16 @@
             <column name="id" type="${autoing.type}" autoIncrement="true" remarks="编号">
                 <constraints nullable="false" primaryKey="true"/>
             </column>
-            <column name="station_id" type="VARCHAR(128)" defaultValue="" remarks="所属站台"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="上下行"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属站台"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="上下行"/>
         </createTable>
     </changeSet>
     <changeSet id="load-emergency_stop-data" author="zhanghaijun" failOnError="false" runOnChange="true">
         <delete tableName="db_emergency_stop" catalogName="${catalog.name}" schemaName="${schema.name}"/>
         <loadUpdateData tableName="db_emergency_stop" file="db_emergency_stop.txt" relativeToChangelogFile="true" primaryKey="id" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
             <column name="id" type="NUMERIC"/>
-            <column name="station_id" type="STRING"/>
-            <column name="direction" type="STRING"/>
+            <column name="station_id" type="NUMERIC"/>
+            <column name="direction" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
 
@@ -53,18 +53,18 @@
             <column name="id" type="${autoing.type}" autoIncrement="true" remarks="编号">
                 <constraints nullable="false" primaryKey="true"/>
             </column>
-            <column name="station_id" type="VARCHAR(128)" defaultValue="" remarks="所属车站"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="上下行"/>
-            <column name="stop_time" type="VARCHAR(128)" defaultValue="" remarks="默认停站时间"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属车站"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="上下行"/>
+            <column name="stop_second" type="${number.type}" defaultValueNumeric="30" remarks="默认停站时间"/>
         </createTable>
     </changeSet>
     <changeSet id="load-db_platform-data" author="zhanghaijun" failOnError="false" runOnChange="true">
         <delete tableName="db_platform" catalogName="${catalog.name}" schemaName="${schema.name}"/>
         <loadUpdateData tableName="db_platform" file="db_platform.txt" relativeToChangelogFile="true" primaryKey="id" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
             <column name="id" type="NUMERIC"/>
-            <column name="station_id" type="STRING"/>
-            <column name="direction" type="STRING"/>
-            <column name="stop_time" type="STRING"/>
+            <column name="station_id" type="NUMERIC"/>
+            <column name="direction" type="NUMERIC"/>
+            <column name="stop_second" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
     <changeSet id="db_route" author="zhanghaijun" failOnError="false" runOnChange="true">
@@ -74,12 +74,12 @@
             </column>
             <column name="name" type="VARCHAR(128)" defaultValue="" remarks="进路名称"/>
             <column name="signal_ids" type="VARCHAR(128)" defaultValue="" remarks="关联信号机"/>
-            <column name="signal_state" type="VARCHAR(128)" defaultValue="" remarks="关联信号机状态"/>
+            <column name="signal_state" type="${number.type}" defaultValueNumeric="0" remarks="关联信号机状态"/>
             <column name="sele_ids" type="VARCHAR(128)" defaultValue="" remarks="关联区段列表"/>
             <column name="switch_id" type="VARCHAR(128)" defaultValue="" remarks="关联道岔"/>
             <column name="switch_state" type="VARCHAR(128)" defaultValue="" remarks="关联道岔状态"/>
-            <column name="trig_position" type="VARCHAR(128)" defaultValue="" remarks="触发点位置"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="进路方向"/>
+            <column name="trig_position" type="DECIMAL(10, 2)" defaultValueNumeric="0.00" remarks="触发点位置"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="进路方向"/>
         </createTable>
     </changeSet>
     <changeSet id="load-db_route-data" author="zhanghaijun" failOnError="false" runOnChange="true">
@@ -88,12 +88,12 @@
             <column name="id" type="NUMERIC"/>
             <column name="name" type="STRING"/>
             <column name="signal_ids" type="STRING"/>
-            <column name="signal_state" type="STRING"/>
+            <column name="signal_state" type="NUMERIC"/>
             <column name="sele_ids" type="STRING"/>
             <column name="switch_id" type="STRING"/>
             <column name="switch_state" type="STRING"/>
-            <column name="trig_position" type="STRING"/>
-            <column name="direction" type="STRING"/>
+            <column name="trig_position" type="NUMERIC"/>
+            <column name="direction" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
 
@@ -103,27 +103,27 @@
                 <constraints nullable="false" primaryKey="true"/>
             </column>
             <column name="name" type="VARCHAR(128)" defaultValue="" remarks="名称"/>
-            <column name="start_kilometer" type="VARCHAR(128)" defaultValue="" remarks="起始公里标"/>
-            <column name="selection_length" type="VARCHAR(128)" defaultValue="" remarks="长度"/>
-            <column name="pre_id" type="VARCHAR(128)" defaultValue="" remarks="前一区段号"/>
-            <column name="next_id" type="VARCHAR(128)" defaultValue="" remarks="后一区段号"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="上下行"/>
-            <column name="zf_state" type="VARCHAR(128)" defaultValue="" remarks="折返标志"/>
-            <column name="station_id" type="VARCHAR(128)" defaultValue="" remarks="所属车站编号"/>
+            <column name="start_kilometer" type="DECIMAL(10, 2)" defaultValueNumeric="0.00" remarks="起始公里标"/>
+            <column name="selection_length" type="DECIMAL(10, 2)" defaultValueNumeric="0.00" remarks="长度"/>
+            <column name="pre_id" type="${autoing.type}" defaultValueNumeric="0" remarks="前一区段号"/>
+            <column name="next_id" type="${autoing.type}" defaultValueNumeric="0" remarks="后一区段号"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="上下行"/>
+            <column name="zf_state" type="boolean" defaultValueBoolean="false" remarks="折返标志"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属车站编号"/>
         </createTable>
     </changeSet>
     <changeSet id="load-selection-data" author="zhanghaijun" failOnError="false" runOnChange="true">
         <delete tableName="db_selection" catalogName="${catalog.name}" schemaName="${schema.name}"/>
         <loadUpdateData tableName="db_selection" file="db_selection.txt" relativeToChangelogFile="true" primaryKey="id" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
-            <column name="id" type="STRING"/>
+            <column name="id" type="NUMERIC"/>
             <column name="name" type="STRING"/>
-            <column name="startKilometer" type="STRING"/>
-            <column name="length" type="STRING"/>
-            <column name="preId" type="STRING"/>
-            <column name="nextId" type="STRING"/>
-            <column name="direction" type="STRING"/>
-            <column name="zfState" type="STRING"/>
-            <column name="station_id" type="STRING"/>
+            <column name="startKilometer" type="NUMERIC"/>
+            <column name="length" type="NUMERIC"/>
+            <column name="preId" type="NUMERIC"/>
+            <column name="nextId" type="NUMERIC"/>
+            <column name="direction" type="NUMERIC"/>
+            <column name="zfState" type="BOOLEAN"/>
+            <column name="station_id" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
 
@@ -148,16 +148,16 @@
             <column name="id" type="${autoing.type}" autoIncrement="true" remarks="编号">
                 <constraints nullable="false" primaryKey="true"/>
             </column>
-            <column name="station_id" type="VARCHAR(128)" defaultValue="" remarks="所属站台"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="上下行"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属站台"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="上下行"/>
         </createTable>
     </changeSet>
     <changeSet id="load-db_station_door-data" author="zhanghaijun" failOnError="false" runOnChange="true">
         <delete tableName="db_station_door" catalogName="${catalog.name}" schemaName="${schema.name}"/>
         <loadUpdateData tableName="db_station_door" file="db_station_door.txt" relativeToChangelogFile="true" primaryKey="id" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
             <column name="id" type="NUMERIC"/>
-            <column name="station_id" type="STRING"/>
-            <column name="direction" type="STRING"/>
+            <column name="station_id" type="NUMERIC"/>
+            <column name="direction" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
 
@@ -166,20 +166,20 @@
             <column name="id" type="${autoing.type}" autoIncrement="true" remarks="编号">
                 <constraints nullable="false" primaryKey="true"/>
             </column>
-            <column name="station_id" type="VARCHAR(128)" defaultValue="" remarks="所属站台"/>
-            <column name="direction" type="VARCHAR(128)" defaultValue="" remarks="上下行"/>
-            <column name="selection_id" type="VARCHAR(128)" defaultValue="" remarks="所属区段号"/>
-            <column name="selection_off" type="VARCHAR(128)" defaultValue="" remarks="所属区段偏移"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属站台"/>
+            <column name="direction" type="${number.type}" defaultValueNumeric="1" remarks="上下行"/>
+            <column name="selection_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属区段号"/>
+            <column name="selection_off" type="DECIMAL(10, 2)" defaultValueNumeric="0.00" remarks="所属区段偏移"/>
         </createTable>
     </changeSet>
     <changeSet id="load-stopSign-data" author="zhanghaijun" failOnError="false" runOnChange="true">
         <delete tableName="db_stop_sign" catalogName="${catalog.name}" schemaName="${schema.name}"/>
         <loadUpdateData tableName="db_stop_sign" file="db_stop_sign.txt" relativeToChangelogFile="true" primaryKey="id" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
             <column name="id" type="NUMERIC"/>
-            <column name="station_id" type="STRING"/>
-            <column name="direction" type="STRING"/>
-            <column name="selection_id" type="STRING"/>
-            <column name="selection_off" type="STRING"/>
+            <column name="station_id" type="NUMERIC"/>
+            <column name="direction" type="NUMERIC"/>
+            <column name="selection_id" type="NUMERIC"/>
+            <column name="selection_off" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
     <changeSet id="db_switch" author="zhanghaijun" failOnError="false" runOnChange="true">
@@ -188,13 +188,13 @@
                 <constraints nullable="false" primaryKey="true"/>
             </column>
             <column name="name" type="VARCHAR(128)" defaultValue="" remarks="名称"/>
-            <column name="kilometer" type="VARCHAR(128)" defaultValue="" remarks="公里标"/>
-            <column name="type" type="VARCHAR(128)" defaultValue="" remarks="类型"/>
-            <column name="pre_selection_id" type="VARCHAR(128)" defaultValue="" remarks="岔前区段区段号"/>
-            <column name="next_selection_id" type="VARCHAR(128)" defaultValue="" remarks="岔后区段号"/>
-            <column name="next_side_selection_id" type="VARCHAR(128)" defaultValue="" remarks="岔后侧向区段号"/>
+            <column name="kilometer" type="DECIMAL(10, 2)" defaultValueNumeric="0.00" remarks="公里标"/>
+            <column name="type" type="${number.type}" defaultValueNumeric="1" remarks="类型"/>
+            <column name="pre_selection_id" type="${autoing.type}" defaultValueNumeric="0" remarks="岔前区段区段号"/>
+            <column name="next_selection_id" type="${autoing.type}" defaultValueNumeric="0" remarks="岔后区段号"/>
+            <column name="next_side_selection_id" type="${autoing.type}" defaultValueNumeric="0" remarks="岔后侧向区段号"/>
             <column name="switch_tie" type="${autoing.type}" defaultValueNumeric="0" remarks="关联道岔"/>
-            <column name="station_id" type="VARCHAR(128)" defaultValue="" remarks="所属车站编号"/>
+            <column name="station_id" type="${autoing.type}" defaultValueNumeric="0" remarks="所属车站编号"/>
         </createTable>
     </changeSet>
     <changeSet id="load-db_switch-data" author="zhanghaijun" failOnError="false" runOnChange="true">
@@ -202,12 +202,12 @@
         <loadUpdateData tableName="db_switch" file="db_switch.txt" relativeToChangelogFile="true" primaryKey="id" quotchar="'" catalogName="${catalog.name}" schemaName="${schema.name}">
             <column name="id" type="NUMERIC"/>
             <column name="name" type="STRING"/>
-            <column name="kilometer" type="STRING"/>
-            <column name="type" type="STRING"/>
-            <column name="pre_selection_id" type="STRING"/>
-            <column name="next_selection_id" type="STRING"/>
-            <column name="next_side_selection_id" type="STRING"/>
-            <column name="station_id" type="STRING"/>
+            <column name="kilometer" type="NUMERIC"/>
+            <column name="type" type="NUMERIC"/>
+            <column name="pre_selection_id" type="NUMERIC"/>
+            <column name="next_selection_id" type="NUMERIC"/>
+            <column name="next_side_selection_id" type="NUMERIC"/>
+            <column name="station_id" type="NUMERIC"/>
         </loadUpdateData>
     </changeSet>
     <changeSet id="db_train" author="zhanghaijun" failOnError="false" runOnChange="true">

+ 1 - 1
train-server/src/main/resources/db/changelog/db-server.xml

@@ -46,8 +46,8 @@
             <column name="id" type="${autoing.type}" autoIncrement="true" remarks="编号">
                 <constraints nullable="false" primaryKey="true"/>
             </column>
+            <column name="command" type="${number.type}" defaultValueNumeric="0" remarks="命令编码"/>
             <column name="code" type="VARCHAR(128)" defaultValue="" remarks="设备编码"/>
-            <column name="device_type" type="${number.type}" defaultValueNumeric="0" remarks="设备类型"/>
             <column name="status" type="VARCHAR(64)" defaultValue="" remarks="设备状态"/>
             <column name="other" type="VARCHAR(64)" defaultValue="" remarks="其他信息"/>
         </createTable>

+ 1 - 1
train-server/src/main/resources/db/changelog/db_platform.txt

@@ -1,4 +1,4 @@
-id,station_id,direction,stop_time
+id,station_id,direction,stop_second
 105001,104001,1,30
 105002,104001,2,30
 105003,104002,1,30