夜得朦胧 1 rok pred
rodič
commit
53aac76c9c

+ 35 - 0
api-common/src/main/java/api/common/pojo/enums/MultiSimulationResultTypeEnum.java

@@ -0,0 +1,35 @@
+package api.common.pojo.enums;
+
+import lombok.Getter;
+
+import java.util.Objects;
+
+@Getter
+public enum MultiSimulationResultTypeEnum {
+
+    INIT_TYPE(0, "未知类型"),
+    COLLISION(1, "碰撞"),
+    ABNORMAL_PARKING(2, "异常停车"),
+    OUT_OF_PAVEMENT(3, "冲出车道");
+
+    private Integer resultType;
+
+    private String resultDetail;
+
+    MultiSimulationResultTypeEnum(Integer resultType, String resultDetail) {
+        this.resultType = resultType;
+        this.resultDetail = resultDetail;
+    }
+
+    public static MultiSimulationResultTypeEnum matchStatusEnumByStatus(Integer resultType) {
+        if (Objects.isNull(resultType)) {
+            return null;
+        }
+        for (MultiSimulationResultTypeEnum enums : MultiSimulationResultTypeEnum.values()) {
+            if (enums.getResultType().equals(resultType)){
+                return enums;
+            }
+        }
+        return null;
+    }
+}

+ 18 - 0
api-common/src/main/java/api/common/pojo/param/project/MultiSimulationProjectResultParam.java

@@ -0,0 +1,18 @@
+package api.common.pojo.param.project;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+
+@Getter
+@Setter
+@Accessors(chain = true)
+public class MultiSimulationProjectResultParam {
+    private String sceneId;
+    /**
+     * 该表主键id
+     */
+    private String projectResultId;
+
+
+}

+ 2 - 4
api-common/src/main/java/api/common/pojo/po/project/MultiSimulationProjectPO.java

@@ -28,10 +28,8 @@ public class MultiSimulationProjectPO implements Serializable {
 
     private Integer projectStatus;
 
-    private String projectResultOverallUrl;
-
-
-    private String projectResultSimulationUrl;
+//    private String projectResultOverallUrl;
+//    private String projectResultSimulationUrl;
 
     private Integer deleted;
 

+ 1 - 2
api-common/src/main/java/api/common/pojo/po/project/MultiSimulationProjectResultPO.java

@@ -12,14 +12,13 @@ import java.sql.Timestamp;
  * 多模式仿真
  */
 @Data
-@Builder
 @NoArgsConstructor
 @AllArgsConstructor
 public class MultiSimulationProjectResultPO implements Serializable {
     private String id;
     private String sceneId;
 
-    private String abnormalType;
+    private Integer abnormalType;
 
     private Integer abnormalTime;
     private Integer deleted;

+ 3 - 0
api-common/src/main/java/api/common/pojo/po/project/MultiSimulationScenePO.java

@@ -24,6 +24,9 @@ public class MultiSimulationScenePO implements Serializable {
     private String mapId;
     private Integer deleted;
 
+    private String projectResultOverallUrl;
+    private String projectResultSimulationUrl;
+
     private Timestamp createTime;
     private Timestamp updateTime;
 }

+ 20 - 0
api-common/src/main/java/api/common/pojo/vo/project/MultiSimulationProjectResultVO.java

@@ -0,0 +1,20 @@
+package api.common.pojo.vo.project;
+
+import api.common.pojo.po.project.MultiSimulationProjectResultPO;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+/**
+ * 多模式仿真
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class MultiSimulationProjectResultVO extends MultiSimulationProjectResultPO {
+    private String abnormalTimeDescription;
+}

+ 2 - 4
api-common/src/main/java/api/common/pojo/vo/project/MultiSimulationProjectVO.java

@@ -28,10 +28,8 @@ public class MultiSimulationProjectVO implements Serializable {
 
     private Integer projectStatus;
 
-    private String projectResultOverallUrl;
-
-
-    private String projectResultSimulationUrl;
+//    private String projectResultOverallUrl;
+//    private String projectResultSimulationUrl;
 
     private Integer deleted;
 

+ 43 - 0
api-common/src/main/java/api/common/pojo/vo/project/MultiSimulationSceneResultVO.java

@@ -0,0 +1,43 @@
+package api.common.pojo.vo.project;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 多模式仿真
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+public class MultiSimulationSceneResultVO implements Serializable {
+    private String id;
+
+    private String projectId;
+
+    private String sceneName;
+
+    private String projectResultOverallUrl;
+
+    private String projectResultSimulationUrl;
+
+    private Integer collisionTimes;
+
+    private Integer abnormalParkingTimes;
+
+    private Integer outOfPavementTimes;
+
+    private List<MultiSimulationProjectResultVO> collisionDetail;
+
+    private List<MultiSimulationProjectResultVO> abnormalParkingDetail;
+
+    private List<MultiSimulationProjectResultVO> outOfPavementDetail;
+
+
+}

+ 3 - 0
api-common/src/main/java/api/common/pojo/vo/project/MultiSimulationSceneVO.java

@@ -24,6 +24,9 @@ public class MultiSimulationSceneVO implements Serializable {
     private String mapId;
     private Integer deleted;
 
+    private String projectResultOverallUrl;
+    private String projectResultSimulationUrl;
+
     private Timestamp createTime;
     private Timestamp updateTime;
 

+ 36 - 0
api-common/src/main/java/api/common/util/TimeUtil.java

@@ -118,4 +118,40 @@ public class TimeUtil {
         return before.toString();
     }
 
+
+    public static String changeTimeFormat(int seconds) {
+        if (seconds > 0 && seconds < 60) {//小于1分钟
+            return seconds + "秒";
+        } else if (seconds >= 60 && seconds < 3600) {//大于等于1分钟小于1小时
+            int changeM = (int) Math.floor(seconds / 60);//整分钟数
+            int surplusM = (int) Math.floor(seconds % 60);//余下的秒数
+            if (surplusM > 0) {//余数不为0秒
+                return changeM + "分" + surplusM + "秒";
+            } else {//整分钟,没有余数
+                return changeM + "分";
+            }
+        } else if (seconds >= 3600) {//大于1小时
+            int changeH = (int) Math.floor(seconds / 3600);//整小时数
+            int surplusH = (int) Math.floor(seconds % 3600);//剩下的秒数
+            if (surplusH >= 60) {//余数大于大于1分钟
+                int changeM = (int) Math.floor(surplusH / 60);
+                int surplusM = (int) Math.floor(surplusH % 60);
+                if (surplusM > 0) {//余数大于0
+                    return changeH + "小时" + changeM + "分" + surplusM + "秒";
+                } else {//整分钟,没有余数
+                    return changeH + "小时" + changeM + "分";
+                }
+            } else if (surplusH < 60 && surplusH > 0) {//余数小于1分钟,大于0秒
+//                int surplusM = (int) Math.floor(surplusH % 1);
+                return changeH + "小时" + surplusH + "秒";
+            } else {
+                return changeH + "小时";
+            }
+        }
+        return "暂无数据";
+    }
+
+    public static void main(String[] args) {
+        System.out.println(changeTimeFormat(3601));
+    }
 }