zouxuan il y a 2 ans
Parent
commit
ea2b9ef6b2

+ 60 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ImNetworkRoomMemberResult.java

@@ -0,0 +1,60 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 网络教室成员(ImNetworkRoomMember)表实体类
+ *
+ * @author zx
+ * @since 2022-03-30 16:36:37
+ */
+@Data
+@ApiModel(value = "im_network_room_member-网络教室成员")
+public class ImNetworkRoomMemberResult implements Serializable {
+    @ApiModelProperty(value = "主键;")
+    private Long id;
+
+    @ApiModelProperty(value = "房间号")
+    private String roomId;
+
+    @ApiModelProperty(value = "转换后的第三方用户编号")
+    private String userId;
+
+    @ApiModelProperty(value = "用户名")
+    private String userName;
+
+    @ApiModelProperty(value = "用户头像")
+    private String avatar;
+
+    @ApiModelProperty(value = "进入时间;")
+    private Long joinTime;
+
+    @ApiModelProperty(value = "角色0学员1老师;")
+    private Integer role;
+
+    @ApiModelProperty(value = "是否开启摄像头;")
+    private boolean camera;
+
+    @ApiModelProperty(value = "是否开启麦克风")
+    private boolean microphone;
+
+    @ApiModelProperty(value = "是否开启音乐模式")
+    private boolean musicModeOn;
+
+    @ApiModelProperty(value = "是否举手")
+    private boolean handUpOn;
+
+    @ApiModelProperty(value = "当前用户伴奏信息")
+    private List<CourseScheduleStudentMusicSheetResult> scheduleStudentMusicScores;
+}
+

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ImNetworkRoomResult.java

@@ -20,10 +20,10 @@ public class ImNetworkRoomResult extends ImNetworkRoom {
     private Integer surplusTime;
 
     @ApiModelProperty(value = "房间成员列表,包含当前用户;")
-    private List<ImNetworkRoomMember> members;
+    private List<ImNetworkRoomMemberResult> members;
 
     @ApiModelProperty(value = "当前用户")
-    private ImNetworkRoomMember userInfo;
+    private ImNetworkRoomMemberResult userInfo;
 
     @ApiModelProperty(value = "节拍器参数")
     private ImNetworkMetronomeMessage playMidiJson = new ImNetworkMetronomeMessage();

+ 5 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/ImNetworkRoomServiceImpl.java

@@ -1,6 +1,7 @@
 package com.yonge.cooleshow.biz.dal.service.impl;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
@@ -120,12 +121,12 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
             List<CourseScheduleStudentMusicSheetResult> lists = JSON.parseArray(toJSONString, CourseScheduleStudentMusicSheetResult.class);
             roomMember.setScheduleStudentMusicScores(lists);
         }
-        joinRoomResult.setUserInfo(roomMember);
+        joinRoomResult.setUserInfo(JSONObject.parseObject(JSONObject.toJSONString(roomMember),ImNetworkRoomMemberResult.class));
         //获取教室剩余时长
         joinRoomResult.setSurplusTime(DateUtil.secondsBetween(now, courseSchedule.getEndTime()));
         //获取房间所有成员
         List<ImNetworkRoomMember> roomMemberList = imNetworkRoomMemberService.lambdaQuery().eq(ImNetworkRoomMember::getRoomId,roomId).list();
-        joinRoomResult.setMembers(roomMemberList);
+        joinRoomResult.setMembers(JSONObject.parseArray(JSONObject.toJSONString(roomMemberList),ImNetworkRoomMemberResult.class));
         //如果是老师,
         if(userRole == RoleEnum.RoleTeacher){
             //重置节拍器数据
@@ -193,12 +194,12 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
             List<CourseScheduleStudentMusicSheetResult> lists = JSON.parseArray(toJSONString, CourseScheduleStudentMusicSheetResult.class);
             roomMember.setScheduleStudentMusicScores(lists);
         }
-        joinRoomResult.setUserInfo(roomMember);
+        joinRoomResult.setUserInfo(JSONObject.parseObject(JSONObject.toJSONString(roomMember),ImNetworkRoomMemberResult.class));
         //获取教室剩余时长
         joinRoomResult.setSurplusTime(DateUtil.secondsBetween(new Date(), courseSchedule.getEndTime()));
         //获取房间所有成员
         List<ImNetworkRoomMember> roomMemberList = imNetworkRoomMemberService.lambdaQuery().eq(ImNetworkRoomMember::getRoomId,roomId).list();
-        joinRoomResult.setMembers(roomMemberList);
+        joinRoomResult.setMembers(JSONObject.parseArray(JSONObject.toJSONString(roomMemberList),ImNetworkRoomMemberResult.class));
         //如果是老师,
         if(userRole == RoleEnum.RoleTeacher){
             //获取所有学员的伴奏下载详情