diff --git a/eladmin-system/src/main/resources/db/migration/V7__add_event_status.sql b/eladmin-system/src/main/resources/db/migration/V7__add_event_status.sql new file mode 100644 index 00000000..41eaf794 --- /dev/null +++ b/eladmin-system/src/main/resources/db/migration/V7__add_event_status.sql @@ -0,0 +1,4 @@ +alter table event + add column status varchar(255), + add column is_public bit default 0, + add column allow_wait_list bit default 0; diff --git a/sport/src/main/java/com/srr/domain/Event.java b/sport/src/main/java/com/srr/domain/Event.java index 153872ee..2a114ae0 100644 --- a/sport/src/main/java/com/srr/domain/Event.java +++ b/sport/src/main/java/com/srr/domain/Event.java @@ -15,6 +15,7 @@ */ package com.srr.domain; +import com.srr.enumeration.EventStatus; import com.srr.enumeration.Format; import lombok.Data; import cn.hutool.core.bean.BeanUtil; @@ -114,6 +115,17 @@ public class Event implements Serializable { @ApiModelProperty(value = "createBy") private Long createBy; + @Column(name = "`status`") + @Enumerated(EnumType.STRING) + @ApiModelProperty(value = "status") + private EventStatus status; + + @Column(name = "`is_public`") + private boolean isPublic; + + @Column(name = "`allow_wait_list`") + private boolean allowWaitList; + public void copy(Event source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } diff --git a/sport/src/main/java/com/srr/domain/Team.java b/sport/src/main/java/com/srr/domain/Team.java new file mode 100644 index 00000000..3b6b07a3 --- /dev/null +++ b/sport/src/main/java/com/srr/domain/Team.java @@ -0,0 +1,32 @@ +package com.srr.domain; + +import io.swagger.annotations.ApiModelProperty; + +import javax.persistence.*; +import java.io.Serializable; +import java.util.List; + +@Entity +@Table(name = "`team`") +public class Team implements Serializable { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + @ApiModelProperty(value = "id", hidden = true) + private Long id; + + @Column(name = "`name`") + @ApiModelProperty(value = "Name") + private String name; + + @Column(name = "`team_size`") + @ApiModelProperty(value = "Team size") + private int teamSize; + + @OneToMany(mappedBy = "team") + @JoinTable(name = "team_players", + joinColumns = {@JoinColumn(name = "team_id",referencedColumnName = "id")}) + @ApiModelProperty(value = "Players") + private List players; // +} diff --git a/sport/src/main/java/com/srr/domain/TeamPlayer.java b/sport/src/main/java/com/srr/domain/TeamPlayer.java new file mode 100644 index 00000000..1e09bb27 --- /dev/null +++ b/sport/src/main/java/com/srr/domain/TeamPlayer.java @@ -0,0 +1,31 @@ +package com.srr.domain; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import javax.persistence.*; +import java.io.Serializable; + +@Getter +@Setter +@Entity +@Table(name = "`team_player`") +public class TeamPlayer implements Serializable { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + @ApiModelProperty(value = "id", hidden = true) + private Long id; + + @ManyToOne + @JoinColumn(name = "team_id") + private Team team; + + @ManyToOne + @JoinColumn(name = "player_id") + private Player player; + + @Column(name = "`is_checked_in`") + private boolean isCheckedIn; +} diff --git a/sport/src/main/java/com/srr/dto/EventDto.java b/sport/src/main/java/com/srr/dto/EventDto.java index 793c4ad7..b83aed93 100644 --- a/sport/src/main/java/com/srr/dto/EventDto.java +++ b/sport/src/main/java/com/srr/dto/EventDto.java @@ -15,6 +15,7 @@ */ package com.srr.dto; +import com.srr.enumeration.EventStatus; import com.srr.enumeration.Format; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -78,4 +79,10 @@ public class EventDto implements Serializable { @ApiModelProperty(value = "createBy") private Long createBy; + + private EventStatus status; + + private boolean isPublic; + + private boolean allowWaitList; } \ No newline at end of file diff --git a/sport/src/main/java/com/srr/enumeration/EventStatus.java b/sport/src/main/java/com/srr/enumeration/EventStatus.java new file mode 100644 index 00000000..aa10d100 --- /dev/null +++ b/sport/src/main/java/com/srr/enumeration/EventStatus.java @@ -0,0 +1,7 @@ +package com.srr.enumeration; + +public enum EventStatus { + OPEN, + IN_PROGRESS, + CLOSED +}