定义新实训数据结构
This commit is contained in:
parent
b892606e76
commit
17fbc6ae51
@ -0,0 +1,77 @@
|
||||
package club.joylink.rtss.entity.training2;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class Training2 {
|
||||
private Long id;
|
||||
|
||||
private Long mapId;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 地图定位json
|
||||
*/
|
||||
private String mapLocationJson;
|
||||
|
||||
/**
|
||||
* 初始背景
|
||||
*/
|
||||
private String bgSceneJson;
|
||||
|
||||
/**
|
||||
* List<Opera> 的json
|
||||
*/
|
||||
private String operaListJson;
|
||||
|
||||
/**
|
||||
* List<Step2> 的json
|
||||
*/
|
||||
private String stepListJson;
|
||||
|
||||
/**
|
||||
* 保存数据时的背景
|
||||
*/
|
||||
private String saveSceneJson;
|
||||
|
||||
/**
|
||||
* 仿真内所有成员
|
||||
*/
|
||||
private String memberJson;
|
||||
|
||||
/**
|
||||
* 参演的仿真成员
|
||||
*/
|
||||
private String playerJson;
|
||||
|
||||
/**
|
||||
* 满分
|
||||
*/
|
||||
private Integer fullMarks;
|
||||
|
||||
/**
|
||||
* 及格分
|
||||
*/
|
||||
private Integer passingMarks;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private String status;
|
||||
|
||||
private Long creatorId;
|
||||
|
||||
private LocalDateTime createTime;
|
||||
|
||||
private Long updaterId;
|
||||
|
||||
private LocalDateTime updateTime;
|
||||
}
|
@ -0,0 +1,89 @@
|
||||
package club.joylink.rtss.vo.client.training2;
|
||||
|
||||
import club.joylink.rtss.simulation.cbtc.ATS.operation.Operation;
|
||||
import club.joylink.rtss.util.JsonUtils;
|
||||
import club.joylink.rtss.vo.map.graph.Point;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 实训操作
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public class Opera {
|
||||
private String id = "1";
|
||||
|
||||
private Type type = Type.META;
|
||||
|
||||
public enum Type {
|
||||
/**
|
||||
* 元操作,最小操作单位
|
||||
*/
|
||||
META,
|
||||
ATS,
|
||||
CONVERSATION,
|
||||
}
|
||||
|
||||
@JsonIgnore
|
||||
private OperaDetail detail;
|
||||
|
||||
public String getDetailJson() {
|
||||
if (detail != null) {
|
||||
return JsonUtils.writeValueAsString(detail);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public void setDetailJson(String detailJson) {
|
||||
if (detailJson != null) {
|
||||
switch (type) {
|
||||
case META:
|
||||
this.detail = JsonUtils.read(detailJson, MetaOperaDetail.class);
|
||||
break;
|
||||
case ATS:
|
||||
this.detail = JsonUtils.read(detailJson, AtsOperaDetail.class);
|
||||
break;
|
||||
case CONVERSATION:
|
||||
this.detail = JsonUtils.read(detailJson, ConversationOperaDetail.class);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static abstract class OperaDetail {
|
||||
}
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public static class MetaOperaDetail extends OperaDetail{
|
||||
private String elementCode = "Signal_X1254";
|
||||
|
||||
private Point point;
|
||||
}
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public static class AtsOperaDetail extends OperaDetail{
|
||||
private Operation.Type operationType;
|
||||
|
||||
private Map<String, Object> params;
|
||||
}
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public static class ConversationOperaDetail extends OperaDetail{
|
||||
private String conversationId;
|
||||
|
||||
private List<String> memberIds;
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package club.joylink.rtss.vo.client.training2;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public class Step2 {
|
||||
private String id;
|
||||
|
||||
private String name;
|
||||
|
||||
private String description;
|
||||
|
||||
private List<String> operaIds;
|
||||
|
||||
/**
|
||||
* 步骤分值
|
||||
*/
|
||||
private Float score;
|
||||
|
||||
private Condition condition;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public class Condition {
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user