浏览代码

修改网络教室部分逻辑

Pq 3 年之前
父节点
当前提交
603cac6f15

+ 4 - 4
live_teaching/src/main/java/com/daya/live_teaching/api/LiveTeachingUrls.java

@@ -8,7 +8,7 @@ public class LiveTeachingUrls {
 //            public static final String DOMAIN = "http://192.168.3.38:8000/";
 
     public static final String DOMAIN    = BuildConfig.BASE_SERVER_URL;
-    static final        String api       = "api-im/";
+    static final        String api       = "api-classroom/";
     public static final String LOGIN     = api + "room/join";
     public static final String hereWhite = api + "hereWhite/create";
     public static final String SIGN_IN   = api + "room/signIn";
@@ -54,9 +54,9 @@ public class LiveTeachingUrls {
 
 
     public static final String SWITCH_DISPLAY              = api + "room/display";
-    public static final String PUSH_DOWNLOAD_EXAM_SONG_MSG = api + "room/pushDownloadMusicScoreMsg";
+    public static final String PUSH_DOWNLOAD_EXAM_SONG_MSG = api + "room/pushDownloadMusicSheetMsg";
 
-    public static final String ADJUST_EXAM_SONG = api + "room/adjustMusicScore";
-    public static final String JOIN_ROOM_STATUS_NOTIFY = api + "room/joinRoomStatusNotify";
+    public static final String ADJUST_EXAM_SONG = api + "room/musicSheetDownNotify";
+    public static final String JOIN_ROOM_STATUS_NOTIFY = api + "room/joinRoomFailure";
 
 }

+ 0 - 3
live_teaching/src/main/java/com/daya/live_teaching/im/provider/RoleChangedMessageItemProvider.java

@@ -67,9 +67,6 @@ public class RoleChangedMessageItemProvider extends BaseNotificationProvider<Rol
         String userNameUnion = userNameUnionBuilder.substring(0, userNameUnionBuilder.length() - 1);
         // 根据身份不同显示不同的信息
         switch (role) {
-            case ASSISTANT:
-                content = context.getString(R.string.class_conversation_notify_role_to_assistant, userNameUnion);
-                break;
             case LECTURER:
                 content = context.getString(R.string.class_conversation_notify_role_to_lecturer, userNameUnion);
                 break;

+ 0 - 3
live_teaching/src/main/java/com/daya/live_teaching/im/ui/ClassMessageListAdapter.java

@@ -119,9 +119,6 @@ public class ClassMessageListAdapter extends MessageListAdapter {
                         case LECTURER:
                             resourceId = R.drawable.class_portrait_lecturer;
                             break;
-                        case ASSISTANT:
-                            resourceId = R.drawable.class_portrait_assistant;
-                            break;
                         default:
                             resourceId = R.drawable.class_portrait_listener;
                     }

+ 72 - 73
live_teaching/src/main/java/com/daya/live_teaching/model/ClassMember.java

@@ -2,22 +2,48 @@ package com.daya.live_teaching.model;
 
 import android.text.TextUtils;
 
-import com.google.gson.annotations.SerializedName;
-
 import java.io.Serializable;
 import java.util.List;
-import java.util.Objects;
 
 public class ClassMember implements Serializable {
-    private boolean camera;
+    private boolean cameraFlag;
+    public String courseScheduleId;
+    public String id;
     private long joinTime;
-    private boolean microphone;
+
+    public boolean isMicrophone() {
+        return micFlag;
+    }
+
+    public void setMicrophone(boolean micFlag) {
+        this.micFlag = micFlag;
+    }
+
+    private boolean micFlag;//是否开启麦克风
     private int role;
     private String userId;
     private String headUrl;
     private String userName;
-    private boolean musicMode;
-    private boolean handUpOn;//是否举手
+
+    public boolean isMusicMode() {
+        return musicModeFlag;
+    }
+
+    public void setMusicMode(boolean musicModeFlag) {
+        this.musicModeFlag = musicModeFlag;
+    }
+
+    private boolean musicModeFlag;//音乐模式是否开启
+
+    public boolean isHandUpOn() {
+        return handFlag;
+    }
+
+    public void setHandUpOn(boolean handFlag) {
+        this.handFlag = handFlag;
+    }
+
+    private boolean handFlag;//是否举手
     private boolean isVisibiliyMic;//是否显示麦克风按钮
     private boolean isOnStage;//是否上台
 
@@ -33,21 +59,6 @@ public class ClassMember implements Serializable {
         this.headUrl = headUrl;
     }
 
-    public boolean isMusicMode() {
-        return musicMode;
-    }
-
-    public void setMusicMode(boolean musicMode) {
-        this.musicMode = musicMode;
-    }
-
-    public boolean isHandUpOn() {
-        return handUpOn;
-    }
-
-    public void setHandUpOn(boolean handUpOn) {
-        this.handUpOn = handUpOn;
-    }
 
     public boolean isOnStage() {
         return isOnStage;
@@ -65,13 +76,6 @@ public class ClassMember implements Serializable {
         isVisibiliyMic = visibiliyMic;
     }
 
-    public boolean isCamera() {
-        return camera;
-    }
-
-    public void setCamera(boolean camera) {
-        this.camera = camera;
-    }
 
     public long getJoinTime() {
         return joinTime;
@@ -81,14 +85,6 @@ public class ClassMember implements Serializable {
         this.joinTime = joinTime;
     }
 
-    public boolean isMicrophone() {
-        return microphone;
-    }
-
-    public void setMicrophone(boolean microphone) {
-        this.microphone = microphone;
-    }
-
     public Role getRole() {
         return Role.createRole(role);
     }
@@ -121,21 +117,27 @@ public class ClassMember implements Serializable {
         this.playMidiJson = playMidiJson;
     }
 
+    public boolean isCamera() {
+        return cameraFlag;
+    }
 
+    public void setCamera(boolean cameraFlag) {
+        this.cameraFlag = cameraFlag;
+    }
     public static class PlayMidiJsonBean implements Serializable {
+
         /**
          * customType : 0
-         * enable : false
-         * userId :
+         * enable : true
+         * playVolume : 0
          * rate : 0
+         * roomId : 0
+         * type :
+         * userId :
          */
 
-        private int customType;
-        private boolean enable;
-        @SerializedName("userId")
-        private String userIdX;
-        private int rate;
-        private int playVolume;
+        public int customType;
+        public boolean enable;
 
         public int getPlayVolume() {
             return playVolume;
@@ -145,12 +147,18 @@ public class ClassMember implements Serializable {
             this.playVolume = playVolume;
         }
 
-        public int getCustomType() {
-            return customType;
+        public int playVolume;
+        public int rate;
+        public int roomId;
+        public String type;
+        public String userId;
+
+        public int getRate() {
+            return rate;
         }
 
-        public void setCustomType(int customType) {
-            this.customType = customType;
+        public void setRate(int rate) {
+            this.rate = rate;
         }
 
         public boolean isEnable() {
@@ -161,20 +169,12 @@ public class ClassMember implements Serializable {
             this.enable = enable;
         }
 
-        public String getUserIdX() {
-            return userIdX;
-        }
-
-        public void setUserIdX(String userIdX) {
-            this.userIdX = userIdX;
-        }
-
-        public int getRate() {
-            return rate;
+        public int getCustomType() {
+            return customType;
         }
 
-        public void setRate(int rate) {
-            this.rate = rate;
+        public void setCustomType(int customType) {
+            this.customType = customType;
         }
     }
 
@@ -188,6 +188,17 @@ public class ClassMember implements Serializable {
     }
 
     public static class ScheduleStudentMusicScoresBean implements Serializable {
+        private int accompanimentPlayStatus;
+        private int downStatus;
+        private String id;
+        private String musicScoreAccompanimentId;
+        private int playStatus;
+        private int speed;
+        private String url;
+        private String mp3Url;
+        private String musicScoreName;
+        private int isAccompaniment;
+
         public ScheduleStudentMusicScoresBean() {
 
         }
@@ -219,18 +230,6 @@ public class ClassMember implements Serializable {
          * mp3Url :
          */
 
-        private int accompanimentPlayStatus;
-        private int downStatus;
-        private String id;
-        private String musicScoreAccompanimentId;
-        private int playStatus;
-        private int speed;
-        private String url;
-        private String mp3Url;
-        private String musicScoreName;
-        private int isAccompaniment;
-
-
         public int getIsAccompaniment() {
             return isAccompaniment;
         }

+ 46 - 84
live_teaching/src/main/java/com/daya/live_teaching/model/LoginResult.java

@@ -4,66 +4,25 @@ import java.io.Serializable;
 import java.util.List;
 
 public class LoginResult implements Serializable {
-    private String            authorization;
-    private String            display;
-    private String            imToken;
-    private String            roomId;
-    private int surplusTime;
-    private int soundVolume; //音量
-    private String            whiteBoradUuid;//白板uuid 白板对象赋值
-    private String            whiteBoradRoomToken; //白板token白板对象赋值
-    private UserInfo          userInfo;
-    private List<ClassMember> members;
-    private List<WhiteBoard>  whiteboards;
-    private boolean autoCloseFlag ;//课程结束后是否自动关闭课程
-    private int autoCloseNetworkRoomTime ;//课程结束后多少分钟关闭网络教室
-    public boolean isAutoCloseFlag() {
-        return autoCloseFlag;
-    }
-
-    public int getAutoCloseNetworkRoomTime() {
-        return autoCloseNetworkRoomTime;
-    }
-
-    public void setAutoCloseFlag(boolean autoCloseFlag) {
-        this.autoCloseFlag = autoCloseFlag;
-    }
-
-    public void setAutoCloseNetworkRoomTime(int autoCloseNetworkRoomTime) {
-        this.autoCloseNetworkRoomTime = autoCloseNetworkRoomTime;
-    }
-
-    public int getSurplusTime() {
-        return surplusTime;
-    }
-
-    public void setSurplusTime(int surplusTime) {
-        this.surplusTime = surplusTime;
-    }
-
-    public String getWhiteBoradUuid() {
-        return whiteBoradUuid;
-    }
-
-    public void setWhiteBoradUuid(String whiteBoradUuid) {
-        this.whiteBoradUuid = whiteBoradUuid;
-    }
-
-    public String getWhiteBoradRoomToken() {
-        return whiteBoradRoomToken;
-    }
-
-    public void setWhiteBoradRoomToken(String whiteBoradRoomToken) {
-        this.whiteBoradRoomToken = whiteBoradRoomToken;
-    }
-
-    public String getAuthorization() {
-        return authorization;
-    }
 
-    public void setAuthorization(String authorization) {
-        this.authorization = authorization;
-    }
+    /**
+     * autoCloseNetworkRoomTime :
+     * courseScheduleId : 0
+     * createTime :
+     * display :
+     * id : 0
+     * midiJson : {"customType":0,"enable":true,"playVolume":0,"rate":0,"roomId":0,"type":"","userId":""}
+     * roomId :
+     * roomMember : {"avatar":"","cameraFlag":true,"courseScheduleId":0,"handFlag":true,"id":0,"joinTime":"","micFlag":true,"musicModeFlag":true,"musicSheetResults":[{"accompanimentPlayStatus":0,"audioFileUrl":"","courseScheduleId":0,"createTime":"","downStatus":0,"id":0,"mp3Url":"","musicSheetAccompanimentId":0,"musicSheetName":"","playStatus":0,"soundVolume":0,"speed":0,"updateTime":"","userId":0,"userType":0}],"role":0,"roomId":"","userId":0,"username":""}
+     * roomMemberList : [{}]
+     * soundVolume : 0
+     * surplusTime : 0
+     * updateTime :
+     */
+
+    public String autoCloseNetworkRoomTime;
+    public int courseScheduleId;
+    public String createTime;
 
     public String getDisplay() {
         return display;
@@ -73,51 +32,54 @@ public class LoginResult implements Serializable {
         this.display = display;
     }
 
-    public String getImToken() {
-        return imToken;
-    }
-
-    public void setImToken(String imToken) {
-        this.imToken = imToken;
-    }
+    public String display;
+    public int id;
+    public ClassMember.PlayMidiJsonBean midiJson;
 
     public String getRoomId() {
         return roomId;
     }
 
-    public void setRoomId(String roomId) {
-        this.roomId = roomId;
-    }
+    public String roomId;
 
     public UserInfo getUserInfo() {
-        return userInfo;
+        return roomMember;
     }
 
-    public void setUserInfo(UserInfo userInfo) {
-        this.userInfo = userInfo;
+    public void setUserInfo(UserInfo roomMember) {
+        this.roomMember = roomMember;
     }
 
-    public List<ClassMember> getMembers() {
-        return members;
+    public UserInfo roomMember;
+
+    public int getSoundVolume() {
+        return soundVolume;
     }
 
-    public void setMembers(List<ClassMember> members) {
-        this.members = members;
+    public void setSoundVolume(int soundVolume) {
+        this.soundVolume = soundVolume;
     }
 
-    public List<WhiteBoard> getWhiteboards() {
-        return whiteboards;
+    public int soundVolume;
+
+    public int getSurplusTime() {
+        return surplusTime;
     }
 
-    public void setWhiteboards(List<WhiteBoard> whiteboards) {
-        this.whiteboards = whiteboards;
+    public void setSurplusTime(int surplusTime) {
+        this.surplusTime = surplusTime;
     }
 
-    public int getSoundVolume() {
-        return soundVolume;
+    public int surplusTime;
+    public String updateTime;
+
+    public List<ClassMember> getMembers() {
+        return roomMemberList;
     }
 
-    public void setSoundVolume(int soundVolume) {
-        this.soundVolume = soundVolume;
+    public void setMembers(List<ClassMember> roomMemberList) {
+        this.roomMemberList = roomMemberList;
     }
+
+    public List<ClassMember> roomMemberList;
 }

+ 3 - 7
live_teaching/src/main/java/com/daya/live_teaching/model/Role.java

@@ -12,22 +12,18 @@ import com.daya.live_teaching.permission.PermissionGroupLevel;
  */
 public enum Role {
     /**
-     * 助教权限组
-     */
-    ASSISTANT(1, PermissionGroupLevel.GROUP_ASSISTANT),
-    /**
      * 讲师权限组
      */
-    LECTURER(2, PermissionGroupLevel.GROUP_LECTURER),
+    LECTURER(1, PermissionGroupLevel.GROUP_LECTURER),
 
     /**
      * 学员权限组
      */
-    STUDENT(3, PermissionGroupLevel.GROUP_STUDENT),
+    STUDENT(0, PermissionGroupLevel.GROUP_STUDENT),
     /**
      * 旁听者权限组
      */
-    LISTENER(4, PermissionGroupLevel.GROUP_LISTENER);
+    LISTENER(3, PermissionGroupLevel.GROUP_LISTENER);
 
 
 

+ 5 - 6
live_teaching/src/main/java/com/daya/live_teaching/model/ScreenDisplay.java

@@ -89,12 +89,11 @@ public class ScreenDisplay {
     }
 
     public enum Display {
-        ASSISTANT(0),   //0 助教
-        LECTURER(1),    //1 讲师
-        WHITEBOARD(2),  //2 白板
-        SCREEN(3),      //3 屏幕
-        NONE(4),       //4清空 display
-        STUDENT(5);     //5学生
+        LECTURER(0),    //1 讲师
+        WHITEBOARD(1),  //2 白板
+        SCREEN(2),      //3 屏幕
+        NONE(3),       //4清空 display
+        STUDENT(4);     //5学生
         private int type;
 
         Display(int type) {

+ 1 - 29
live_teaching/src/main/java/com/daya/live_teaching/repository/ClassRepository.java

@@ -611,35 +611,7 @@ public class ClassRepository extends BaseRepository {
                 result.setAccept(speechResultMessage.isAccept());
                 eventListener.onRequestSpeechResult(result);
                 return true;
-            } else if (content instanceof AssistantTransferMessage) {    // 转让助教
-                AssistantTransferMessage assistantTransferMessage = (AssistantTransferMessage) content;
-
-                List<RoleChangedUser> roleChangedUserList = new ArrayList<>();
-                RoleChangedUser assistant = new RoleChangedUser();
-                assistant.setRole(Role.ASSISTANT.getValue());
-                assistant.setUserId(assistantTransferMessage.getToUserId());
-                roleChangedUserList.add(assistant);
-
-                // 操作者
-                RoleChangedUser oldAssistant = new RoleChangedUser();
-                oldAssistant.setRole(Role.STUDENT.getValue());
-                oldAssistant.setUserId(assistantTransferMessage.getOpUserId());
-                roleChangedUserList.add(oldAssistant);
-
-                eventListener.onRoleChanged(roleChangedUserList, assistantTransferMessage.getOpUserId());
-                return true;
-
-            } else if (content instanceof UpgradeRoleMessage) {      // 邀请升级
-                UpgradeRoleMessage upgradeRoleMessage = (UpgradeRoleMessage) content;
-                UpgradeRoleInvite upgradeRoleInvite = new UpgradeRoleInvite();
-                upgradeRoleInvite.setOpUserId(upgradeRoleMessage.getOpUserId());
-                upgradeRoleInvite.setOpUserName(upgradeRoleMessage.getOpUserName());
-                upgradeRoleInvite.setAction(upgradeRoleMessage.getAction());
-                upgradeRoleInvite.setRole(upgradeRoleMessage.getRole());
-                upgradeRoleInvite.setTicket(upgradeRoleMessage.getTicket());
-                eventListener.onInviteUpgradeRole(upgradeRoleInvite);
-                return true;
-            } else if (content instanceof PlayMidiMessage) {      // 播放节拍器
+            }  else if (content instanceof PlayMidiMessage) {      // 播放节拍器
                 PlayMidiMessage playMidiMessage = (PlayMidiMessage) content;
                 PlayMidi playMidi = new PlayMidi();
                 playMidi.setUserId(playMidiMessage.getUserId());

+ 9 - 11
live_teaching/src/main/java/com/daya/live_teaching/repository/UserRepository.java

@@ -44,6 +44,7 @@ public class UserRepository extends BaseRepository {
         this.imToken = imToken;
         login(roomId, isListener, userName, callBack);
     }
+
     //加入房间
     public void login(String roomId, boolean isListener, String userName, final ResultCallback<LoginResult> callBack) {
         HashMap<String, Object> bodyMap = new HashMap<>();
@@ -61,20 +62,21 @@ public class UserRepository extends BaseRepository {
                     return;
                 }
                 // 进入音视频房间
-                RtcManager.getInstance().joinRtcRoom(result.getRoomId(), new ResultCallback<String>() {
+                RtcManager.getInstance().joinRtcRoom(result.roomId, new ResultCallback<String>() {
                     @Override
                     public void onSuccess(String rtcRoomId) {
-                        UserInfo loginUser = result.getUserInfo();
-                        if (loginUser != null) {
-                            if (loginUser.getRole() == Role.LECTURER) {
-                                List<ClassMember.ScheduleStudentMusicScoresBean> userMusicScoresBeans = loginUser.getScheduleStudentMusicScores();
-                                List<ClassMember> members = result.getMembers();
+                        UserInfo roomMember = result.roomMember;
+                        if (roomMember != null) {
+                            if (roomMember.getRole() == Role.LECTURER) {
+                                List<ClassMember.ScheduleStudentMusicScoresBean> userMusicScoresBeans = roomMember.getScheduleStudentMusicScores();
+                                List<ClassMember> members = result.roomMemberList;
                                 if (userMusicScoresBeans != null && userMusicScoresBeans.size() > 0 && members != null && members.size() > 0) {
                                     for (ClassMember.ScheduleStudentMusicScoresBean scoresBean : userMusicScoresBeans) {
                                         int downStatus = 1;
                                         if (scoresBean != null) {
                                             for (ClassMember member : members) {
                                                 if (member.getRole() != Role.LECTURER) {
+                                                    member.setPlayMidiJson(result.midiJson);
                                                     List<ClassMember.ScheduleStudentMusicScoresBean> memberMusicScoresBeans = member.getScheduleStudentMusicScores();
                                                     for (ClassMember.ScheduleStudentMusicScoresBean memberScoresBean : memberMusicScoresBeans) {
                                                         if (memberScoresBean != null &&
@@ -90,13 +92,9 @@ public class UserRepository extends BaseRepository {
                                         }
                                     }
                                 }
-                                loginUser.setScheduleStudentMusicScores(userMusicScoresBeans);
+                                roomMember.setScheduleStudentMusicScores(userMusicScoresBeans);
                             }
 
-                            io.rong.imlib.model.UserInfo userInfo
-                                    = new io.rong.imlib.model.UserInfo(
-                                    loginUser.getUserId(), loginUser.getUserName(), Uri.parse(""));
-                            joinRoomStatusNotify(result.getRoomId(), UserHelper.getUserId(), true);
                             callBack.onSuccess(result);
                         } else {
                             callBack.onFail(-1, "加入房间错误,请重试");

+ 6 - 7
live_teaching/src/main/java/com/daya/live_teaching/ui/LiveActivity.java

@@ -104,7 +104,7 @@ public class LiveActivity extends BaseActivity<ActivityLiveBinding> {
     private int visibilityTopFragmentdMillis = 5000;
     private String roomId;
     private boolean isTeacher;
-    private UserInfo userInfo;
+    private ClassMember userInfo;
     private VideoListFragment videoListFragment;
     AlphaAnimation alphaAnimation = null;
     private FrameLayout topOperateControlFragmentViewLayout;
@@ -507,8 +507,8 @@ public class LiveActivity extends BaseActivity<ActivityLiveBinding> {
             finish();
         }
         roomId = loginResult.getRoomId();
-        userInfo = loginResult.getUserInfo();
-        autoCloseNetworkRoomTime = loginResult.getAutoCloseNetworkRoomTime();
+        userInfo = loginResult.roomMember;
+        autoCloseNetworkRoomTime = Integer.parseInt(loginResult.autoCloseNetworkRoomTime);
 
         handler = new Handler();
         classViewModel = ViewModelProviders.of(this, new ClassViewModel.Factory(loginResult, this.getApplication())).get(ClassViewModel.class);
@@ -709,7 +709,7 @@ public class LiveActivity extends BaseActivity<ActivityLiveBinding> {
             finish();
         }
 
-        userInfo = loginResult.getUserInfo();
+        userInfo = loginResult.roomMember;
         if (userInfo != null) {
             userInfo.setCamera(!isCloseCamera);
         }
@@ -780,7 +780,7 @@ public class LiveActivity extends BaseActivity<ActivityLiveBinding> {
             public void onChanged(PassedTime passedTime) {
                 String time = passedTime.getPassedTime();
                 tvTime.setText(time);
-                if ("00:00:00".equals(time) && loginResult.isAutoCloseFlag() && isFinish && autoCloseNetworkRoomTime > 0) {
+                if ("00:00:00".equals(time) && isFinish && autoCloseNetworkRoomTime > 0) {
                     classViewModel.startQuitRoomPaseedTime(autoCloseNetworkRoomTime * 60);
                 }
                 if (passedTime.isTwinkle()) {
@@ -1022,7 +1022,7 @@ public class LiveActivity extends BaseActivity<ActivityLiveBinding> {
             toast = "老师开启了你的音乐模式";
         }
         int finalContentMessage = contentMessage;
-        LiveCommonDialog dialog =new LiveCommonDialog(this);
+        LiveCommonDialog dialog = new LiveCommonDialog(this);
         dialog.show();
         dialog.setTitle("提示");
         dialog.setConfirmBtnText("同意");
@@ -1260,7 +1260,6 @@ public class LiveActivity extends BaseActivity<ActivityLiveBinding> {
     }
 
 
-
     class LeaveRoom extends BroadcastReceiver {
         //实现接收到广播的处理
         @Override

+ 1 - 1
live_teaching/src/main/java/com/daya/live_teaching/ui/fragmnet/BigVideoWindowFragment.java

@@ -162,7 +162,7 @@ public class BigVideoWindowFragment extends BaseFragment<FragmentBigVideoWindowB
         if (value == null) {
             return false;
         }
-        if (value.getType() != ScreenDisplay.Display.ASSISTANT && value.getType() != ScreenDisplay.Display.LECTURER) {
+        if (value.getType() != ScreenDisplay.Display.LECTURER) {
             return false;
         }
 

+ 2 - 2
live_teaching/src/main/java/com/daya/live_teaching/ui/fragmnet/ShareScreenFragment.java

@@ -384,7 +384,7 @@ public class ShareScreenFragment extends BaseFragment<FragmentShareScreenBinding
 
                     if (data.getUserId().equals(member.getUserId())) { // 刷新
                         // 如果现在的角色是助教或者讲师, 则需要对视频的信息更新
-                        if (member.getRole() == Role.LECTURER || member.getRole() == Role.ASSISTANT) {
+                        if (member.getRole() == Role.LECTURER) {
                             shareVideoView.setData(member);
                         } else {
                             // 如果其他的用户, 则移除
@@ -422,7 +422,7 @@ public class ShareScreenFragment extends BaseFragment<FragmentShareScreenBinding
                 shareVideoView.setData(null);
                 ScreenDisplay.Display type = screenDisplay.getType();
 
-                if (type == ScreenDisplay.Display.LECTURER || type == ScreenDisplay.Display.ASSISTANT) {
+                if (type == ScreenDisplay.Display.LECTURER) {
                     String userId = screenDisplay.getUserId();
                     if (Role.LECTURER == userInfoValue.getRole()) {
                         shareOperateView.setVisibility(View.VISIBLE);

+ 1 - 1
live_teaching/src/main/java/com/daya/live_teaching/ui/view/DisplayNullView.java

@@ -44,7 +44,7 @@ public class DisplayNullView extends LinearLayout {
 
 
     public void setContent(ClassMember member) {
-        if (member.getRole() == Role.ASSISTANT || member.getRole() == Role.LECTURER) {
+        if (member.getRole() == Role.LECTURER) {
             displayNullContent.setText(R.string.class_share_screen_null_text);
             displayNullImage.setImageResource(R.drawable.class_share_screen_null);
         } else {

+ 8 - 29
live_teaching/src/main/java/com/daya/live_teaching/viewmodel/ClassViewModel.java

@@ -185,8 +185,7 @@ public class ClassViewModel extends ViewModel {
         soundVolume.setValue(result.getSoundVolume());
         userInfo.setValue(result.getUserInfo());
         memberList.setValue(sortClassMember(result.getMembers()));
-        whiteBoardList.setValue(result.getWhiteboards());
-        ScreenDisplay screenDisplay = ScreenDisplay.createScreenDisplay(result.getDisplay());
+        ScreenDisplay screenDisplay = ScreenDisplay.createScreenDisplay(result.display);
         StuDisplayUserId = screenDisplay.getUserId();
         display.setValue(getDisplayWithClassMember(screenDisplay));
         ClassMember.PlayMidiJsonBean playMidiJsonBean = result.getUserInfo().getPlayMidiJson();
@@ -201,7 +200,7 @@ public class ClassViewModel extends ViewModel {
         setMetronomeInfo(new MetronomeInfo(90, 3, 100));
         // 从成员中筛选出特定的角色用于单独对特殊角色的刷新
         findAndUpdateSpecialRole();
-        int surplusTime = result.getSurplusTime();
+        int surplusTime = result.surplusTime;
 
         // 记时进入课堂的时间
         Calendar calendar = Calendar.getInstance();
@@ -233,7 +232,6 @@ public class ClassViewModel extends ViewModel {
         userInfo.setValue(result.getUserInfo());
         soundVolume.setValue(result.getSoundVolume());
         memberList.setValue(sortClassMember(result.getMembers()));
-        whiteBoardList.setValue(result.getWhiteboards());
         setMetronomeInfo(new MetronomeInfo(90, 3, 100));
         if (result.getUserInfo().getRole() == Role.STUDENT) {
             ScreenDisplay screenDisplay = ScreenDisplay.createScreenDisplay(result.getDisplay());
@@ -680,7 +678,7 @@ public class ClassViewModel extends ViewModel {
                 //                    }
                 //                });
 
-                UserInfo userInfoValue = userInfo.getValue();
+                ClassMember userInfoValue = userInfo.getValue();
                 ArrayList<ClassMember> members = new ArrayList<>();
                 boolean hasLecture = false;
                 for (ClassMember member : input) {
@@ -733,9 +731,7 @@ public class ClassViewModel extends ViewModel {
 
                 ArrayList<ClassMember> members = new ArrayList<>();
                 for (ClassMember member : input) {
-                    if (member.getRole() == Role.ASSISTANT) {
-                        members.add(0, member);
-                    } else if (member.getRole() == Role.LECTURER) {
+                    if (member.getRole() == Role.LECTURER) {
                         members.add(member);
                     }
                 }
@@ -1874,7 +1870,6 @@ public class ClassViewModel extends ViewModel {
         final String whiteBoardId;
         switch (type) {
             case LECTURER:
-            case ASSISTANT:
             case STUDENT:
             case SCREEN:
                 userId = id;
@@ -2438,7 +2433,7 @@ public class ClassViewModel extends ViewModel {
                 if (member.getUserId().equals(classMember.getUserId())) {
                     member.setRole(classMember.getRole().getValue());
                     member.setCamera(classMember.isCamera());
-                    member.setMicrophone(classMember.isCamera());
+                    member.setMicrophone(classMember.isMicrophone());
                     member.setJoinTime(classMember.getJoinTime());
                     member.setUserName(classMember.getUserName());
                     memberList.postValue(memberListValue);
@@ -2482,13 +2477,7 @@ public class ClassViewModel extends ViewModel {
             if (user.getUserId().equals(member.getUserId())) {
                 member.setUserName("我");
                 sortList.add(0, member);
-            } else if (member.getRole() == Role.ASSISTANT) {
-                if (sortList.size() > 1) {
-                    sortList.add(1, member);
-                } else {
-                    sortList.add(member);
-                }
-            } else if (member.getRole() == Role.LECTURER) {
+            }  else if (member.getRole() == Role.LECTURER) {
                 sortList.add(member);
             } else if (member.getRole() == Role.STUDENT) {
                 students.add(member);
@@ -2647,7 +2636,7 @@ public class ClassViewModel extends ViewModel {
                             ScreenDisplay value = display.getValue();
                             String displayUserId = value.getUserId();
                             if (value != null && userId.equals(displayUserId)) {
-                                if (!isEnable && (value.getType() == ScreenDisplay.Display.LECTURER || value.getType() == ScreenDisplay.Display.ASSISTANT ||
+                                if (!isEnable && (value.getType() == ScreenDisplay.Display.LECTURER  ||
                                         (info.getRole() != Role.LECTURER && value.getType() == ScreenDisplay.Display.STUDENT))) {
                                     value.setType(ScreenDisplay.Display.NONE);
                                     display.postValue(value);
@@ -2655,8 +2644,6 @@ public class ClassViewModel extends ViewModel {
                                     ClassMember classMember = value.getClassMember();
                                     if (classMember.getRole() == Role.LECTURER) {
                                         value.setType(ScreenDisplay.Display.LECTURER);
-                                    } else if (classMember.getRole() == Role.ASSISTANT) {
-                                        value.setType(ScreenDisplay.Display.ASSISTANT);
                                     } else if (classMember.getRole() == Role.STUDENT) {
                                         value.setType(ScreenDisplay.Display.STUDENT);
                                     }
@@ -2791,12 +2778,6 @@ public class ClassViewModel extends ViewModel {
                     || !lecturer.getUserId().equals(member.getUserId())) {
                 lecturerRole.postValue(member);
             }
-        } else if (role == Role.ASSISTANT) {
-            ClassMember assistant = assistantRole.getValue();
-            if (assistant == null
-                    || !assistant.getUserId().equals(member.getUserId())) {
-                assistantRole.postValue(member);
-            }
         }
     }
 
@@ -2832,9 +2813,7 @@ public class ClassViewModel extends ViewModel {
         if (!TextUtils.isEmpty(screenDisplay.getUserId()) && screenDisplay.getClassMember() == null) {
             ClassMember classMember = new ClassMember();
             classMember.setUserId(screenDisplay.getUserId());
-            if (screenDisplay.getType() == ScreenDisplay.Display.ASSISTANT) {
-                classMember.setRole(Role.ASSISTANT.getValue());
-            } else if (screenDisplay.getType() == ScreenDisplay.Display.LECTURER) {
+             if (screenDisplay.getType() == ScreenDisplay.Display.LECTURER) {
                 classMember.setRole(Role.LECTURER.getValue());
             }
             screenDisplay.setClassMember(classMember);