Browse Source

Merge remote-tracking branch 'origin/saas' into saas

yanite 3 năm trước cách đây
mục cha
commit
5b0e6e0483

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentCourseScheduleRecordDto.java

@@ -57,6 +57,9 @@ public class StudentCourseScheduleRecordDto {
 
     @ApiModelProperty(value = "教学形式")
     private TeachModeEnum teachMode;
+    
+    @ApiModelProperty(value = "教学点")
+    private String teachingAddress;
 
     public String getHeadUrl() {
         return headUrl;
@@ -169,4 +172,12 @@ public class StudentCourseScheduleRecordDto {
     public void setRestOfClass(Integer restOfClass) {
         this.restOfClass = restOfClass;
     }
+
+	public String getTeachingAddress() {
+		return teachingAddress;
+	}
+
+	public void setTeachingAddress(String teachingAddress) {
+		this.teachingAddress = teachingAddress;
+	}
 }

+ 19 - 11
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentCourseHomeworkServiceImpl.java

@@ -255,14 +255,31 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
         if (Objects.isNull(courseScheduleID)) {
             throw new BizException("作业不存在");
         }
+        CourseSchedule courseSchedule = courseScheduleDao.get(courseScheduleID);
+        
+        if(courseSchedule == null){
+        	throw new BizException("课程不存在");
+        }
+
+        MusicGroupTrainPlan musicGroupTrainPlan = null;
+		//获取课程规划
+		MusicGroupTrainPlanSaveDto schoolTerm = musicGroupTrainPlanService.getSchoolTerm(courseSchedule);
+		int courseNumNo = courseScheduleDao.getCourseNumNo(schoolTerm);
+		List<MusicGroupTrainPlan> planList = musicGroupTrainPlanService.queryPlan(schoolTerm);
+		if(planList.size() >= courseNumNo){
+			musicGroupTrainPlan = planList.get(courseNumNo - 1);
+		}
+		
         CourseHomeworkStudentDetailDto courseHomeworkStudentDetail = studentCourseHomeworkDao.findCourseHomeworkStudentDetail(courseScheduleID, userId);
         if(courseHomeworkStudentDetail == null){
-            throw new BizException("作业不存在");
+        	courseHomeworkStudentDetail = new CourseHomeworkStudentDetailDto();
+			courseHomeworkStudentDetail.setMusicGroupTrainPlan(musicGroupTrainPlan);
+        	return courseHomeworkStudentDetail;
         }
+        
         SysUser sysUser = teacherDao.getUser(userId.intValue());
         courseHomeworkStudentDetail.setStudentId(userId.intValue());
         courseHomeworkStudentDetail.setStudentName(sysUser.getUsername());
-        CourseSchedule courseSchedule = courseScheduleDao.get(courseHomeworkStudentDetail.getCourseScheduleId());
         if (Objects.nonNull(courseSchedule)) {
             SysUser teacher = teacherDao.getUser(courseSchedule.getActualTeacherId());
             courseHomeworkStudentDetail.setTeacherId(courseSchedule.getActualTeacherId());
@@ -290,15 +307,6 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
         Student student = studentDao.get(userId.intValue());
         courseHomeworkStudentDetail.setHasMember(student.getMemberRankSettingId()==null?0:1);
 //        }
-        
-		//获取课程规划
-		MusicGroupTrainPlanSaveDto schoolTerm = musicGroupTrainPlanService.getSchoolTerm(courseSchedule);
-		int courseNumNo = courseScheduleDao.getCourseNumNo(schoolTerm);
-		List<MusicGroupTrainPlan> planList = musicGroupTrainPlanService.queryPlan(schoolTerm);
-		if(planList.size() >= courseNumNo){
-			courseHomeworkStudentDetail.setMusicGroupTrainPlan(planList.get(courseNumNo - 1));
-		}
-		
 		
         return courseHomeworkStudentDetail;
     }

+ 7 - 2
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -107,6 +107,7 @@
         <result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="rest_of_class_" property="restOfClass"/>
         <result column="class_group_id_" property="classGroupId"/>
+        <result column="school_name_" property="teachingAddress" />
     </resultMap>
 
     <resultMap type="com.ym.mec.biz.dal.dto.StudentCourseInfoDto" id="StudentCourseInfoDto">
@@ -1108,11 +1109,13 @@
         CONCAT(cs.class_date_,' ',cs.start_class_time_) start_class_time_,
         CONCAT(cs.class_date_,' ',cs.end_class_time_) end_class_time_,
         cs.actual_teacher_id_ teacher_id_,
-        cs.teach_mode_
+        cs.teach_mode_,
+        s.name_ school_name
         FROM course_schedule_student_payment cssp
         LEFT JOIN student_attendance sa ON cssp.course_schedule_id_ = sa.course_schedule_id_ AND cssp.user_id_ =
         sa.user_id_
         LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
+        left join school s on s.id_ = cs.schoole_id_
         LEFT JOIN sys_user su ON cs.actual_teacher_id_ = su.id_
         <include refid="queryStudentCourseScheduleRecordCondition"/>
         ORDER BY cs.class_date_ DESC,cs.start_class_time_ DESC
@@ -1139,9 +1142,11 @@
                CONCAT(cs.class_date_, ' ', cs.start_class_time_) start_class_time_,
                CONCAT(cs.class_date_, ' ', cs.end_class_time_)   end_class_time_,
                cs.teach_mode_,
-               cs.class_group_id_
+               cs.class_group_id_,
+        		s.name_ school_name
         FROM class_group_student_mapper cgsm
                  LEFT JOIN course_schedule cs ON cs.class_group_id_ = cgsm.class_group_id_
+        		left join school s on s.id_ = cs.schoole_id_
                  LEFT JOIN sys_user su ON cs.actual_teacher_id_ = su.id_
         WHERE (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
             AND (cs.is_lock_=0 OR cs.is_lock_ IS NULL)

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/ExtracurricularExercisesReplyMapper.xml

@@ -211,7 +211,7 @@
 
 	<sql id="queryStudentExtraExercisesCondition">
 		<where>
-			tenant_id_ = #{tenantId}
+			eer.tenant_id_ = #{tenantId}
 			<if test="studentId!=null">
 				AND eer.user_id_=#{studentId}
 			</if>

+ 1 - 1
mec-im/src/main/java/com/ym/common/ErrorEnum.java

@@ -35,7 +35,7 @@ public enum ErrorEnum {
     ERR_USER_EXIST_IN_ROOM(28, "User exist in room"),
     ERR_CHANGE_SELF_ROLE(29, "Can not change self role"),
     ERR_APPLY_TICKET_INVALID(30, "Apply ticket invalid"),
-    ERR_OVER_MAX_COUNT(31, "Over max count"),
+    ERR_OVER_MAX_COUNT(31, "云教室人数已超上线"),
     ERR_TEACHER_EXIST_IN_ROOM(32, "Teacher exist in room"),
     ERR_DOWNGRADE_ROLE(33, "Can't downgrade role"),
     ERR_CHANGE_ROLE(34, "Only change student to teacher");

+ 2 - 2
mec-im/src/main/java/com/ym/controller/RoomController.java

@@ -22,8 +22,8 @@ public class RoomController{
     MessageService messageService;
 
     @RequestMapping(value = "/join", method = RequestMethod.POST)
-    public Object joinRoom(@RequestBody ReqUserData data) throws Exception {
-        return new BaseResponse<>(roomService.joinRoom(data.getRoomId()));
+    public BaseResponse joinRoom(@RequestBody ReqUserData data) throws Exception {
+        return roomService.joinRoom(data.getRoomId());
     }
 
     @RequestMapping(value = "/signIn", method = RequestMethod.POST)

+ 7 - 7
mec-im/src/main/java/com/ym/service/Impl/RoomServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.ym.common.ApiException;
+import com.ym.common.BaseResponse;
 import com.ym.common.DisplayEnum;
 import com.ym.common.ErrorEnum;
 import com.ym.config.IMProperties;
@@ -126,9 +127,8 @@ public class RoomServiceImpl implements RoomService {
 
     @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
     @Override
-    public RoomResult joinRoom(String roomId) throws Exception {
+    public BaseResponse joinRoom(String roomId) throws Exception {
         CheckUtils.checkArgument(roomId != null, "roomId must't be null");
-
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         String userId = sysUser.getId().toString();
         log.info("joinRoom: roomId={}, userId={}", roomId, userId);
@@ -136,7 +136,7 @@ public class RoomServiceImpl implements RoomService {
         Teacher teacher = teacherDao.get(Integer.parseInt(userId));
         CourseSchedule courseSchedule = courseScheduleDao.get(Long.parseLong(roomId));
         if(courseSchedule.getTeachMode() == TeachModeEnum.OFFLINE){
-            throw new ApiException(ErrorEnum.JOIN_ROOM_ERROR);
+            return new BaseResponse(ErrorEnum.JOIN_ROOM_ERROR,ErrorEnum.JOIN_ROOM_ERROR.getErrMsg(),null);
         }
         Date curTime = DateTimeUtils.currentUTC();
         //是否提前进入教室
@@ -146,7 +146,7 @@ public class RoomServiceImpl implements RoomService {
         }
         Date addMinutes = DateUtil.addMinutes(curTime, Integer.parseInt(courseBeforeBufferTime));
         if(courseSchedule.getStartClassTime().compareTo(addMinutes) > 0 ){
-            throw new ApiException(ErrorEnum.ROOM_NOT_START);
+            return new BaseResponse(ErrorEnum.ROOM_NOT_START,ErrorEnum.ROOM_NOT_START.getErrMsg(),null);
 //            throw new BizException("网络教室暂未开启,请在{}分钟后进入教室",DateUtil.minutesBetween(addMinutes,courseSchedule.getStartClassTime()));
         }
         final TenantAssetsInfo one = tenantAssetsInfoService.getOne(new WrapperUtil<TenantAssetsInfo>()
@@ -154,7 +154,7 @@ public class RoomServiceImpl implements RoomService {
                 .queryWrapper()
                 .gt("balance_", 0));
         if(one == null){
-            throw new ApiException(ErrorEnum.CLOUD_BALANCE_NOT_FEE);
+            return new BaseResponse(ErrorEnum.CLOUD_BALANCE_NOT_FEE,ErrorEnum.CLOUD_BALANCE_NOT_FEE.getErrMsg(),null);
         }
 
         //是否是连堂课
@@ -201,7 +201,7 @@ public class RoomServiceImpl implements RoomService {
             int count = roomMemberDao.countByRidAndExcludeRole(roomId, RoleEnum.RoleAudience.getValue());
             if (count == roomProperties.getMaxCount()) {
                 log.info("join error Over max count: roomId = {}, userId = {}", roomId,userId);
-                throw new ApiException(ErrorEnum.ERR_OVER_MAX_COUNT);
+                return new BaseResponse(ErrorEnum.ERR_OVER_MAX_COUNT,ErrorEnum.ERR_OVER_MAX_COUNT.getErrMsg(),null);
             }
             if(teacher != null && teacher.getId().equals(courseSchedule.getActualTeacherId())){
                 roleEnum = RoleTeacher;
@@ -285,7 +285,7 @@ public class RoomServiceImpl implements RoomService {
             roomResult.setSoundVolume(room.getSoundVolume());
         }
         log.info("join room: roomId = {}, userId = {}, userName={}, role = {}", roomId, userId, userName, roleEnum);
-        return roomResult;
+        return new BaseResponse(roomResult);
     }
 
     public RoomMember saveRoomMember(String roomId,String userId){

+ 2 - 1
mec-im/src/main/java/com/ym/service/RoomService.java

@@ -1,5 +1,6 @@
 package com.ym.service;
 
+import com.ym.common.BaseResponse;
 import com.ym.mec.biz.dal.dto.RongyunBasicUserDto;
 import com.ym.pojo.*;
 import org.apache.ibatis.annotations.Param;
@@ -11,7 +12,7 @@ import java.util.List;
  */
 public interface RoomService {
     //everyone
-    RoomResult joinRoom(String roomId) throws Exception;
+    BaseResponse joinRoom(String roomId) throws Exception;
 
     Integer getCurrentCourseId(String roomId);
 

+ 14 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TenantInfoController.java

@@ -12,13 +12,17 @@ import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.thirdparty.yqpay.Msg;
 import com.ym.mec.util.validator.ValidationKit;
+
 import io.swagger.annotations.*;
+
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
+
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
@@ -89,6 +93,16 @@ public class TenantInfoController extends BaseController {
         return succeed(tenantInfoService.queryTenantInfoProductSumm(tenantId));
     }
 
+    @ApiOperation("查询用户机构信息")
+    @GetMapping(value = "/queryUserTenantInfo")
+    public Object queryUserTenantInfo() {
+    	SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || user.getId() == null) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return succeed(tenantInfoService.queryTenantInfo(user.getTenantId()));
+    }
+
     @ApiImplicitParams({
             @ApiImplicitParam(name = "search", dataType = "String", value = "关键字"),
             @ApiImplicitParam(name = "createdName", dataType = "String", value = "创建人"),