| 
					
				 | 
			
			
				@@ -14,6 +14,8 @@ import com.ym.job.ScheduleManager; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.auth.api.client.SysUserFeignService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.auth.api.entity.SysUser; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.dao.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.dto.BasicUserDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.dto.RongyunBasicUserDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.CourseSchedule; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.StudentAttendance; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.Teacher; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -24,6 +26,7 @@ import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.service.StudentAttendanceService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.service.SysConfigService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.service.TeacherAttendanceService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.common.entity.ImPlayMidiMessage; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.common.exception.BizException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.im.IMHelper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.im.message.*; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -185,7 +188,7 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 roleEnum = RoleEnum.RoleStudent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            saveRoomMember(userId, userName, roomId, roleEnum.getValue(), !isDisableCamera,!isMusicMode, curTime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            saveRoomMember(userId,sysUser.getAvatar(), userName, roomId, roleEnum.getValue(), !isDisableCamera,!isMusicMode, curTime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             IMApiResultInfo resultInfo = imHelper.joinGroup(new String[]{userId}, roomId, roomId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!resultInfo.isSuccess()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 throw new ApiException(ErrorEnum.ERR_CREATE_ROOM_ERROR, resultInfo.getErrorMessage()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -355,7 +358,7 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private void saveRoomMember(String userId, String userName, String roomId, int role, boolean cameraOn,boolean musicModeOn, Date joinTime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private void saveRoomMember(String userId, String headUrl, String userName, String roomId, int role, boolean cameraOn,boolean musicModeOn, Date joinTime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         RoomMember roomMember = new RoomMember(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         roomMember.setUid(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         roomMember.setName(userName); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -364,6 +367,7 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         roomMember.setCamera(cameraOn); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         roomMember.setJoinDt(joinTime); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         roomMember.setMusicMode(musicModeOn); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        roomMember.setHeadUrl(headUrl); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         roomMemberDao.save(roomMember); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -785,9 +789,6 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             msg.setType(taskInfo.getTypeEnum().ordinal()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             msg.setOpUserId(authUser.getId().toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             msg.setOpUserName(authUser.getUsername()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (typeEnum.equals(DeviceTypeEnum.HandUp)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                userId = authUser.getId().toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             imHelper.publishMessage(authUser.getId().toString(), userId, roomId, msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (typeEnum.equals(DeviceTypeEnum.Camera)) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -901,6 +902,9 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else if (type.equals(DeviceTypeEnum.Microphone)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             result = roomMemberDao.updateMicByRidAndUid(roomId, userId, enable); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             deviceResourceMessage = new DeviceStateChangedMessage(type.ordinal(), enable); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if (type.equals(DeviceTypeEnum.HandUp)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            result = roomMemberDao.updateHandByRidAndUid(roomId, userId, enable); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            deviceResourceMessage = new DeviceStateChangedMessage(type.ordinal(), enable); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             result = roomMemberDao.updateMusicByRidAndUid(roomId, userId, enable); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             deviceResourceMessage = new DeviceStateChangedMessage(type.ordinal(), enable); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1410,17 +1414,20 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             throw new BizException("用户信息获取失败"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        roomService.sendImPlayMidiMessage(playMidiMessageData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        GroupMessage groupMessage = new GroupMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        GroupMessage groupMessage = new GroupMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String content = playMidiMessageData.getContent(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String roomId = playMidiMessageData.getRoomId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CustomMessage customMessage = JSONObject.parseObject(content,CustomMessage.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        groupMessage.setContent(customMessage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        groupMessage.setTargetId(roomId.split(",")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        groupMessage.setSenderId(sysUser.getId().toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        groupMessage.setObjectName("DY:PlayMidiMessage"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        messageService.groupSend(groupMessage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        groupMessage.setContent(customMessage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        groupMessage.setTargetId(roomId.split(",")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        groupMessage.setSenderId(sysUser.getId().toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        groupMessage.setObjectName("DY:PlayMidiMessage"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String userId = sysUser.getId().toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MetronomeMessageMessage displayMessage = new MetronomeMessageMessage(customMessage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        imHelper.publishMessage(userId, roomId, displayMessage, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        messageService.groupSend(groupMessage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //记录节拍器消息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        String userId = playMidiMessageData.getUserId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        long courseId = Long.parseLong(roomId.substring(1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         courseScheduleStudentPaymentDao.adjustPlayMidi(Long.parseLong(roomId.substring(1)),userId,content); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         /*if(StringUtils.isEmpty(userId)){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1436,6 +1443,11 @@ public class RoomServiceImpl implements RoomService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public List<RongyunBasicUserDto> queryNoJoinStu(String roomId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return courseScheduleStudentPaymentDao.queryNoJoinStu(roomId,roomId.substring(1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /*@Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void sendImPlayMidiMessage(PlayMidiMessageData playMidiMessageData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SysUser sysUser = sysUserFeignService.queryUserInfo(); 
			 |