Room.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. package com.fdkankan.tk.entity;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.baomidou.mybatisplus.annotation.IdType;
  4. import com.baomidou.mybatisplus.annotation.TableField;
  5. import com.baomidou.mybatisplus.annotation.TableId;
  6. import com.baomidou.mybatisplus.annotation.TableLogic;
  7. import com.baomidou.mybatisplus.annotation.TableName;
  8. import java.io.Serializable;
  9. import java.util.ArrayList;
  10. import java.util.Date;
  11. import java.util.List;
  12. import com.fasterxml.jackson.annotation.JsonFormat;
  13. import com.fdkankan.tk.typehandle.JsonArrayTypeHandler;
  14. import lombok.Getter;
  15. import lombok.Setter;
  16. import lombok.ToString;
  17. import org.apache.commons.lang3.StringUtils;
  18. /**
  19. * <p>
  20. *
  21. * </p>
  22. *
  23. * @author
  24. * @since 2022-09-19
  25. */
  26. @Getter
  27. @Setter
  28. @ToString
  29. @TableName(value = "t_room",autoResultMap = true)
  30. public class Room implements Serializable {
  31. private static final long serialVersionUID = 1L;
  32. /**
  33. * 房间id
  34. */
  35. @TableId(value = "room_id")
  36. private String roomId;
  37. /**
  38. * 房间标题
  39. */
  40. @TableField("room_title")
  41. private String roomTitle;
  42. /**
  43. * 房间简介
  44. */
  45. @TableField("room_info")
  46. private String roomInfo;
  47. /**
  48. * 房间主持人昵称
  49. */
  50. @TableField("room_host_name")
  51. private String roomHostName;
  52. /**
  53. * 房间主持人用户名
  54. */
  55. @TableField("room_user_name")
  56. private String roomUserName;
  57. /**
  58. * 房间封面图
  59. */
  60. @TableField("room_cover_url")
  61. private String roomCoverUrl;
  62. /**
  63. * 房间分享二维码
  64. */
  65. @TableField("room_share_code")
  66. private String roomShareCode;
  67. /**
  68. * 房间主持人二维码
  69. */
  70. @TableField("room_host_code")
  71. private String roomHostCode;
  72. /**
  73. * 房间分享链接
  74. */
  75. @TableField("room_share_url")
  76. private String roomShareUrl;
  77. @TableField("tb_status")
  78. @TableLogic
  79. private Integer tbStatus;
  80. @TableField("create_time")
  81. private String createTime;
  82. @TableField("update_time")
  83. private String updateTime;
  84. //房间状态 ,0 未开启,1进行中,2已关闭
  85. @TableField("room_status")
  86. private Integer roomStatus;
  87. @TableField("last_look_time")
  88. private String lastLookTime;
  89. //房间状态 ,0 不显示,1显示
  90. @TableField("is_show")
  91. private Integer isShow;
  92. //使用开始时间 v1.1.0添加字段
  93. @TableField("use_start_time")
  94. private Date useStartTime;
  95. //使用结束时间 v1.1.0添加字段
  96. @TableField("use_end_time")
  97. private Date useEndTime;
  98. //房间密码 v1.1.0添加字段
  99. @TableField("visit_password")
  100. private String visitPassword;
  101. //带看锁,0没密码,1有密码 v1.1.0添加字段
  102. @TableField("take_look_lock")
  103. private Integer takeLookLock;
  104. //自由漫游锁,0没密码,1有密码 v1.1.0添加字段
  105. @TableField("free_roam_lock")
  106. private Integer freeRoamLock;
  107. //房间最大人数设置
  108. @TableField("max_man")
  109. private Integer maxMan;
  110. //分享次数
  111. //主持人状态,0未进入房间,1已进入房间
  112. @TableField("host_status")
  113. private Integer hostStatus;
  114. @TableField("head")
  115. private String head;
  116. @TableField("gps")
  117. private String gps;
  118. @TableField("platform")
  119. private String platform;
  120. @TableField(exist = false)
  121. private Boolean isHomeOwner = true;
  122. @TableField(typeHandler = JsonArrayTypeHandler.class)
  123. private JSONArray image;
  124. @TableField(typeHandler = JsonArrayTypeHandler.class)
  125. private JSONArray video;
  126. @TableField(exist = false)
  127. private Integer roomUserId;
  128. @TableField(exist = false)
  129. private Long roomViewCount;
  130. @TableField(exist = false)
  131. private List<Date> useTimeList;
  132. public List<Date> getUseTimeList() {
  133. if(useStartTime != null && useEndTime != null){
  134. useTimeList = new ArrayList<>();
  135. useTimeList.add(useStartTime);
  136. useTimeList.add(useEndTime);
  137. }
  138. return useTimeList;
  139. }
  140. public Date getUseStartTime() {
  141. if(useTimeList !=null && useTimeList.size() >1){
  142. return useTimeList.get(0);
  143. }
  144. return useStartTime;
  145. }
  146. public Date getUseEndTime() {
  147. if(useTimeList !=null && useTimeList.size() >1){
  148. return useTimeList.get(1);
  149. }
  150. return useEndTime;
  151. }
  152. }