瀏覽代碼

fix 老师,管理员查询学生详情

shangke 7 月之前
父節點
當前提交
d281fa783f

+ 11 - 43
mec-application/src/main/java/com/ym/mec/student/controller/StudentManageController.java

@@ -1,6 +1,7 @@
 package com.ym.mec.student.controller;
 
 import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 import com.microsvc.toolkit.middleware.oss.wrapper.OssWrapper;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.CloudTeacherOrderDao;
@@ -32,6 +33,7 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 @Api(tags = "学生管理")
@@ -161,20 +163,14 @@ public class StudentManageController extends BaseController {
     @ApiOperation(value = "获取学员基本信息")
     @GetMapping("student/queryUserInfo")
 	public Object queryUserInfo(String platform) {
-		SysUser user = sysUserService.getUser();
-		Student student = studentService.get(user.getId());
-		student.setId(user.getId());
-		student.setUsername(user.getUsername());
-		student.setAvatar(user.getAvatar());
-		student.setPhone(user.getPhone());
-		student.setCurrentClass(user.getCurrentClass());
-		student.setCurrentGrade(user.getCurrentGrade());
-		student.setBirthdate(user.getBirthdate());
-		student.setGender(user.getGender());
-		student.setRealName(user.getRealName());
-		student.setIdCardNo(user.getIdCardNo());
-		student.setImToken(user.getImToken());
-		student.setOrganId(user.getOrganId());
+
+        SysUser user = sysUserService.getUser();
+        // 返回数据
+        Map<String, Object> datas = Maps.newHashMap();
+
+        // 查询学员基本信息
+        Student student = studentManageService.getStudentUserInfo(user.getId(), user, datas);
+        datas.put("student", student);
 
         // 注册IM用户Token
         try {
@@ -200,9 +196,6 @@ public class StudentManageController extends BaseController {
 			student.setExtSjectNamesMap(subjectList.stream().collect(Collectors.toMap(Subject :: getId, Subject :: getName)));
 		}
 
-		Map<String, Object> datas = new HashMap<String, Object>();
-		datas.put("student", student);
-		
         List<CloudTeacherOrder> dataList = cloudTeacherOrderDao.queryByUserIdAndStatus(user.getId(),1);
         if(dataList != null && dataList.size() > 0){
         	datas.put("isExistPendingMember", true);
@@ -228,32 +221,7 @@ public class StudentManageController extends BaseController {
 		} else {
 			datas.put("userPrivileges", memberRankPrivilegesService.queryByMemberRankId(student.getMemberRankSettingId()));
 		}
-		SysConfig sysConfig = sysConfigService.findByParamName(SysConfigService.HOMEWORK_OPEN_FLAG);
-		if (sysConfig == null) {
-			datas.put("homeworkOpenFlag", 0);
-		} else {
-			datas.put("homeworkOpenFlag", Integer.parseInt(sysConfig.getParanValue()));
-		}
-        // 获取会员等级图标
-        MemberRankSetting memberRankSetting = memberRankSettingService.get(student.getMemberRankSettingId());
-        if (memberRankSetting != null) {
-            student.setMemberRankImg(memberRankSetting.getIcon());
-        }
-        //是否是试用会员
-		if(student.getExperienceMemberRankSettingId() == null){
-            datas.put("isExperience", 0);
-        }else {
-            int i = DateUtil.daysBetween(student.getExperienceMembershipEndTime(),student.getMembershipEndTime());
-            if(i > 0){
-                datas.put("isExperience", 0);
-            }else {
-                datas.put("isExperience", 1);
-                if (memberRankSetting != null) {
-                    student.setMemberRankImg(memberRankSetting.getExperienceIcon());
-                }
-            }
-        }
-        datas.put("vipInfo", cloudTeacherOrderService.getEffectiveCloudTeacherOrder(Lists.newArrayList(student.getUserId())));
+
 		return succeed(datas);
 	}
 

+ 16 - 0
mec-application/src/main/java/com/ym/mec/teacher/controller/StudentController.java

@@ -1,6 +1,8 @@
 package com.ym.mec.teacher.controller;
 
+import com.google.common.collect.Maps;
 import com.ym.mec.biz.dal.dto.BaseMapDto;
+import com.ym.mec.biz.dal.entity.Student;
 import com.ym.mec.biz.dal.entity.StudentAttendance;
 import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
@@ -98,6 +100,20 @@ public class StudentController extends BaseController {
         return succeed(studentManageService.findStudentMusicGroupsByUserId(userId));
     }
 
+    @ApiOperation(value = "根据学生ID获取学生信息")
+    @GetMapping("/queryUserInfo")
+    public Object queryUserInfo(@ApiParam(value = "学生编号", required = true) Integer userId){
+
+        // 返回数据
+        Map<String, Object> dataMap = Maps.newHashMap();
+
+        // 查询学员基本信息
+        Student student = studentManageService.getStudentUserInfo(userId, null, dataMap);
+        dataMap.put("student", student);
+
+        return succeed(dataMap);
+    }
+
     @ApiOperation(value = "获取老师关联的学员声部列表")
     @GetMapping("/queryStuSubjectId")
     public HttpResponseResult<List<BaseMapDto>> queryStuSubjectId(){

+ 15 - 0
mec-application/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -1,6 +1,7 @@
 package com.ym.mec.web.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.google.common.collect.Maps;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.StudentMusicGroupStatusEnum;
@@ -524,4 +525,18 @@ public class StudentManageController extends BaseController {
         studentService.updateStudentMember(userId,endTime,memo,sysUserService.getUserId());
         return succeed();
     }
+
+    @ApiOperation(value = "根据学生ID获取学生信息")
+    @GetMapping("/queryUserInfo")
+    public Object queryUserInfo(@ApiParam(value = "学生编号", required = true) Integer userId){
+
+        // 返回数据
+        Map<String, Object> dataMap = Maps.newHashMap();
+
+        // 查询学员基本信息
+        Student student = studentManageService.getStudentUserInfo(userId, null, dataMap);
+        dataMap.put("student", student);
+
+        return succeed(dataMap);
+    }
 }

+ 17 - 0
mec-application/src/main/java/com/ym/mec/web/controller/education/EduStudentController.java

@@ -1,9 +1,11 @@
 package com.ym.mec.web.controller.education;
 
+import com.google.common.collect.Maps;
 import com.ym.mec.biz.dal.dto.BaseMapDto;
 import com.ym.mec.biz.dal.dto.EduOrganStudentDataDto;
 import com.ym.mec.biz.dal.dto.StatDto;
 import com.ym.mec.biz.dal.entity.Organization;
+import com.ym.mec.biz.dal.entity.Student;
 import com.ym.mec.biz.dal.page.StudentQueryInfo;
 import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.biz.service.StudentManageService;
@@ -21,6 +23,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 import java.util.Collections;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 /**
@@ -51,6 +54,20 @@ public class EduStudentController extends BaseController {
         return succeed(studentManageService.findStudentMusicGroupsByUserId(userId));
     }
 
+    @ApiOperation(value = "根据学生ID获取学生信息")
+    @GetMapping("/queryUserInfo")
+    public Object queryUserInfo(@ApiParam(value = "学生编号", required = true) Integer userId){
+
+        // 返回数据
+        Map<String, Object> dataMap = Maps.newHashMap();
+
+        // 查询学员基本信息
+        Student student = studentManageService.getStudentUserInfo(userId, null, dataMap);
+        dataMap.put("student", student);
+
+        return succeed(dataMap);
+    }
+
     @ApiOperation(value = "分部云教练学员数据预览")
     @GetMapping("/organStudentOverView")
     public HttpResponseResult<List<EduOrganStudentDataDto>> organStudentOverView() throws Exception {

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentManageService.java

@@ -221,4 +221,13 @@ public interface StudentManageService {
     PageInfo<CloudTeacherActiveWapper.Result> cloudTeacherActive(CloudTeacherActiveWapper.Query queryInfo);
 
     CloudTeacherActiveWapper.ResultMap cloudTeacherActiveStatistics(CloudTeacherActiveWapper.Query queryInfo);
+
+    /**
+     * 获取学员信息
+     * @param userId 学员id
+     * @param user 当前用户
+     * @param datas 附加数据
+     * @return 学员信息
+     */
+    Student getStudentUserInfo(Integer userId, SysUser user, Map<String, Object> datas);
 }

+ 72 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -121,6 +121,9 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Autowired
     private SubjectService subjectService;
 
+    @Autowired
+    private MemberRankSettingService memberRankSettingService;
+
     @Override
     public PageInfo<StudentManageListDto> findStudentsByOrganId(StudentManageQueryInfo queryInfo) {
         PageInfo<StudentManageListDto> pageInfo = new PageInfo<StudentManageListDto>(queryInfo.getPage(), queryInfo.getRows());
@@ -1258,4 +1261,73 @@ public class StudentManageServiceImpl implements StudentManageService {
         resultMap.setStatistics(statistics);
         return resultMap;
     }
+
+    /**
+     * 获取学员信息
+     * @param userId 学员id
+     * @param user 用户信息
+     * @param datas 附加数据
+     * @return 学员信息
+     */
+    @Override
+    public Student getStudentUserInfo(Integer userId, SysUser user, Map<String, Object> datas) {
+
+        // 获取学员信息
+        if (Objects.isNull(user)) {
+            user = teacherDao.getUser(userId);
+
+            if (Objects.isNull(user)) {
+                throw new BizException("学员信息不存在");
+            }
+        }
+
+        // 基本信息填充
+        Student student = studentService.get(user.getId());
+        student.setId(user.getId());
+        student.setUsername(user.getUsername());
+        student.setAvatar(user.getAvatar());
+        student.setPhone(user.getPhone());
+        student.setCurrentClass(user.getCurrentClass());
+        student.setCurrentGrade(user.getCurrentGrade());
+        student.setBirthdate(user.getBirthdate());
+        student.setGender(user.getGender());
+        student.setRealName(user.getRealName());
+        student.setIdCardNo(user.getIdCardNo());
+        student.setImToken(user.getImToken());
+        student.setOrganId(user.getOrganId());
+
+        // 学员其他基础信息
+        SysConfig sysConfig = sysConfigService.findByParamName(SysConfigService.HOMEWORK_OPEN_FLAG);
+        if (sysConfig == null) {
+            datas.put("homeworkOpenFlag", 0);
+        } else {
+            datas.put("homeworkOpenFlag", Integer.parseInt(sysConfig.getParanValue()));
+        }
+
+        // 获取会员等级图标
+        MemberRankSetting memberRankSetting = memberRankSettingService.get(student.getMemberRankSettingId());
+        if (memberRankSetting != null) {
+            student.setMemberRankImg(memberRankSetting.getIcon());
+        }
+
+        //是否是试用会员
+        if(student.getExperienceMemberRankSettingId() == null){
+            datas.put("isExperience", 0);
+        }else {
+            int i = DateUtil.daysBetween(student.getExperienceMembershipEndTime(),student.getMembershipEndTime());
+            if(i > 0){
+                datas.put("isExperience", 0);
+            }else {
+                datas.put("isExperience", 1);
+                if (memberRankSetting != null) {
+                    student.setMemberRankImg(memberRankSetting.getExperienceIcon());
+                }
+            }
+        }
+
+        // 学员会员信息
+        datas.put("vipInfo", cloudTeacherOrderService.getEffectiveCloudTeacherOrder(Lists.newArrayList(student.getUserId())));
+
+        return student;
+    }
 }