RoomResult.java 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package com.ym.pojo;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.JSONObject;
  4. import lombok.Data;
  5. import lombok.Getter;
  6. import lombok.Setter;
  7. import org.apache.commons.lang3.StringUtils;
  8. import java.util.ArrayList;
  9. import java.util.Date;
  10. import java.util.List;
  11. import java.util.Map;
  12. /**
  13. * Created by weiqinxiao on 2019/2/28.
  14. */
  15. public class RoomResult {
  16. private @Getter @Setter String roomId;
  17. //课程结束后是否自动关闭课程
  18. private @Getter @Setter Boolean autoCloseFlag = true;
  19. private @Getter @Setter Date startTime;
  20. private @Getter @Setter int surplusTime;
  21. private @Getter @Setter String imToken;
  22. private @Getter @Setter String authorization;
  23. private @Getter List<MemberResult> members = new ArrayList<>();
  24. private @Getter @Setter String display;
  25. private @Getter @Setter List<WhiteboardResult> whiteboards = new ArrayList<>();
  26. private @Getter @Setter MemberResult userInfo;
  27. @Data
  28. public static class MemberResult {
  29. String userId;
  30. String userName;
  31. String headUrl;
  32. int role;
  33. Date joinTime;
  34. boolean camera;
  35. boolean microphone;
  36. boolean handUpOn;
  37. ExamSongDownloadData examSongDownloadJson;
  38. CustomMessage playMidiJson;
  39. }
  40. @Data
  41. public static class WhiteboardResult {
  42. String whiteboardId;
  43. String name;
  44. int curPg;
  45. }
  46. public void setMembers(List<RoomMember> roomMemberList, Map<Integer,String> midiMap,Map<Integer,String> examSongMap) {
  47. for (RoomMember member : roomMemberList) {
  48. MemberResult result = new MemberResult();
  49. result.setUserId(member.getUid());
  50. result.setJoinTime(member.getJoinDt());
  51. result.setRole(member.getRole());
  52. result.setMicrophone(member.isMic());
  53. result.setCamera(member.isCamera());
  54. result.setUserName(member.getName());
  55. result.setHandUpOn(member.isHand());
  56. result.setHeadUrl(member.getHeadUrl());
  57. result.setPlayMidiJson(JSONObject.parseObject(midiMap.get(Integer.parseInt(member.getUid())),CustomMessage.class));
  58. ExamSongDownloadData examSongDownloadData;
  59. String json = examSongMap.get(Integer.parseInt(member.getUid()));
  60. if(StringUtils.isEmpty(json)){
  61. examSongDownloadData = new ExamSongDownloadData();
  62. }else {
  63. examSongDownloadData = JSON.parseObject(json,ExamSongDownloadData.class);
  64. }
  65. result.setExamSongDownloadJson(examSongDownloadData);
  66. members.add(result);
  67. }
  68. }
  69. public void setWhiteboards(List<Whiteboard> whiteboardList) {
  70. for (Whiteboard wb : whiteboardList) {
  71. WhiteboardResult r = new WhiteboardResult();
  72. r.setName(wb.getName());
  73. r.setWhiteboardId(wb.getWbid());
  74. r.setCurPg(wb.getCurPg());
  75. whiteboards.add(r);
  76. }
  77. }
  78. }