瀏覽代碼

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge 4 年之前
父節點
當前提交
693af0e74f

+ 13 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -2820,16 +2820,22 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
         // 获取教务老师编号列表
         Set<Integer> educationalTeacherIds = musicGroupList.stream().map(e -> e.getEducationalTeacherId()).collect(Collectors.toSet());
-        // 获取相关老师的名字
-        List<Map<Integer, String>> educationalTeacherNames = teacherDao.queryNameByIds(StringUtils.join(educationalTeacherIds, ","));
-        Map<Integer, String> educationalTeacherNameMap = MapUtil.convertMybatisMap(educationalTeacherNames);
+        Map<Integer, String> educationalTeacherNameMap = MapUtil.convertMybatisMap(teacherDao.queryNameByIds(StringUtils.join(educationalTeacherIds, ",")));
 
         // 获取运营主管编号列表
         Set<Integer> teamTeacherIds = musicGroupList.stream().map(e -> e.getTeamTeacherId()).collect(Collectors.toSet());
-        List<Map<Integer, String>> teamTeacherNames = teacherDao.queryNameByIds(StringUtils.join(teamTeacherIds, ","));
-        Map<Integer, String> teamTeacherNameMap = MapUtil.convertMybatisMap(teamTeacherNames);
+        Map<Integer, String> teamTeacherNameMap = MapUtil.convertMybatisMap(teacherDao.queryNameByIds(StringUtils.join(teamTeacherIds, ",")));
 
-        // 获取运营主管编号列表
+        // 获取乐队指导编号列表
+        Set<Integer> directorUserIds = musicGroupList.stream().map(e -> e.getDirectorUserId()).collect(Collectors.toSet());
+        directorUserIds.removeAll(Collections.singleton(null));
+        Map<Integer, String> directorUserNameMap = new HashMap<>();
+        if(directorUserIds.size() > 0){
+            List<Map<Integer, String>> repairUserNames = teacherDao.queryNameByIds(StringUtils.join(directorUserIds, ","));
+            directorUserNameMap = MapUtil.convertMybatisMap(repairUserNames);
+        }
+
+        // 获取维修技师编号列表
         Set<Integer> repairUserIds = musicGroupList.stream().map(e -> e.getRepairUserId()).collect(Collectors.toSet());
         repairUserIds.removeAll(Collections.singleton(null));
         Map<Integer, String> repairUserNameMap = new HashMap<>();
@@ -2872,6 +2878,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             e.setEducationalTeacherName(educationalTeacherNameMap.get(e.getEducationalTeacherId()));
             e.setTeamTeacherName(teamTeacherNameMap.get(e.getTeamTeacherId()));
             e.setRepairUserName(repairUserNameMap.get(e.getRepairUserId()));
+            e.setDirectorUserName(directorUserNameMap.get(e.getDirectorUserId()));
             e.setPayNum(payNumMap.get(e.getId()) == null ? 0 : payNumMap.get(e.getId()));
             e.setChargeTypeName(chargeTypeNameMap.get(e.getChargeTypeId()));
             e.setHasVerifyMusicalList(purchaseListMap.get(e.getId()) != null);

+ 39 - 1
mec-web/src/main/java/com/ym/mec/web/controller/education/EduMusicGroupTrainPlanController.java

@@ -1,8 +1,15 @@
 package com.ym.mec.web.controller.education;
 
+import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
+import com.ym.mec.biz.dal.dto.Mapper;
+import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.MusicGroupTrainPlan;
 import com.ym.mec.biz.dal.entity.MusicGroupTrainPlanSaveDto;
+import com.ym.mec.biz.dal.entity.Organization;
+import com.ym.mec.biz.dal.enums.GradeTypeEnum;
+import com.ym.mec.biz.service.MusicGroupService;
 import com.ym.mec.biz.service.MusicGroupTrainPlanService;
+import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.exception.BizException;
 import io.swagger.annotations.Api;
@@ -13,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.Map;
+import java.util.stream.Collectors;
+
 @RequestMapping("eduMusicGroupTrainPlan")
 @Api(tags = "乐团训练规划")
 @RestController
@@ -21,6 +31,15 @@ public class EduMusicGroupTrainPlanController extends BaseController {
 	@Autowired
 	private MusicGroupTrainPlanService musicGroupTrainPlanService;
 
+	@Autowired
+	private MusicGroupService musicGroupService;
+
+	@Autowired
+	private OrganizationService organizationService;
+
+	@Autowired
+	private StudentRegistrationDao studentRegistrationDao;
+
 	@ApiOperation("新增乐团训练规划")
 	@PostMapping(value = "add")
 	public Object add(@RequestBody MusicGroupTrainPlanSaveDto musicGroupTrainPlanSaveDto) {
@@ -53,7 +72,26 @@ public class EduMusicGroupTrainPlanController extends BaseController {
 	@ApiOperation("获取乐团训练规划异常规划")
 	@PostMapping(value = "queryExceptionPlan")
 	public Object queryExceptionPlan(@RequestBody MusicGroupTrainPlanSaveDto musicGroupTrainPlanSaveDto) {
-		return succeed(musicGroupTrainPlanService.queryExceptionPlan(musicGroupTrainPlanSaveDto));
+		Map<String,Object> map = musicGroupTrainPlanService.queryExceptionPlan(musicGroupTrainPlanSaveDto);
+
+		String musicGroupId = musicGroupTrainPlanSaveDto.getMusicGroupId();
+		MusicGroup musicGroup = musicGroupService.get(musicGroupId);
+		if(musicGroup == null){
+			return failed("乐团信息查询失败");
+		}
+		Map<Object, Object> gradeMap = studentRegistrationDao.countStudentWithGradeByMusicGroupId(musicGroupId).stream().collect(Collectors.toMap(Mapper:: getKey, Mapper :: getValue));
+
+		Organization organization = organizationService.get(musicGroup.getOrganId());
+		if(organization == null){
+			return failed("分部信息查询失败");
+		}
+		if(organization.getGradeType() == GradeTypeEnum.FIVE_PLUS){
+			map.put("graduateNum", gradeMap.get(5));
+		}else {
+			map.put("graduateNum", gradeMap.get(6));
+		}
+
+		return succeed(map);
 	}
 
 	@ApiOperation("获取乐团训练规划课时")

+ 172 - 0
mec-web/src/main/java/com/ym/mec/web/controller/education/EduStudentExtracurricularExercisesSituationController.java

@@ -0,0 +1,172 @@
+package com.ym.mec.web.controller.education;
+
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dao.EmployeeDao;
+import com.ym.mec.biz.dal.dto.TeacherServeDto;
+import com.ym.mec.biz.dal.entity.Employee;
+import com.ym.mec.biz.dal.page.*;
+import com.ym.mec.biz.service.*;
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.util.date.DateUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * @Author Joburgess
+ * @Date 2020/4/10
+ */
+@RequestMapping("eduExercisesSituation")
+@Api(tags = "课外训练统计服务")
+@RestController
+public class EduStudentExtracurricularExercisesSituationController extends BaseController {
+
+    @Autowired
+    private StudentExtracurricularExercisesSituationService studentExtracurricularExercisesSituationService;
+
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+
+    @Autowired
+    private ExtracurricularExercisesMessageService extracurricularExercisesMessageService;
+
+    @Autowired
+    private StudentCourseHomeworkReplyService studentCourseHomeworkReplyService;
+
+    @Autowired
+    private StudentServeService studentServeService;
+
+    @Autowired
+    private EmployeeDao employeeDao;
+
+    @Autowired
+    private EmployeeService employeeService;
+
+    @ApiOperation(value = "课外训练-教学")
+    @GetMapping("/findStudentExtracurricularExercisesSituations")
+    public HttpResponseResult findStudentExtracurricularExercisesSituations(StudentExercisesSituationQueryInfo queryInfo){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+            queryInfo.setOrganIdList(employee.getOrganIdList());
+        }else if(StringUtils.isEmpty(employee.getOrganIdList())){
+            return failed("用户所在分部异常");
+        }else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if(!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))){
+                return failed("非法请求");
+            }
+        }
+        return succeed(studentExtracurricularExercisesSituationService.findStudentExtracurricularExercisesSituations(queryInfo));
+    }
+
+    @ApiOperation(value = "服务指标详情")
+    @GetMapping("/findServiceStudentDetail")
+    public HttpResponseResult findServiceStudentDetail(StudentServiceDetailQueryInfo queryInfo) {
+        return succeed(studentExtracurricularExercisesSituationService.findServiceStudentDetail(queryInfo));
+    }
+
+    @ApiOperation(value = "教师服务指标明细")
+    @GetMapping("/queryTeacherServeInfo")
+    public HttpResponseResult queryTeacherServeInfo(TeacherServeQueryInfo queryInfo) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        Employee employee = employeeService.get(sysUser.getId());
+        if (StringUtils.isBlank(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        }else if(StringUtils.isEmpty(employee.getOrganIdList())){
+            return failed("用户所在分部异常");
+        }else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if(!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))){
+                return failed("非法请求");
+            }
+        }
+        return succeed(studentExtracurricularExercisesSituationService.queryTeacherServeInfo(queryInfo));
+    }
+
+    @ApiOperation(value = "回复查询")
+    @GetMapping("/findStudentHomeworkComments")
+    public Object findStudentHomeworkComments(StudentCourseHomeworkReplyQueryInfo queryInfo){
+        if(!queryInfo.isExtra()){
+            return succeed(studentCourseHomeworkReplyService.queryPage(queryInfo));
+        }else{
+            return succeed(extracurricularExercisesMessageService.findStudentExtraExerciseComments(queryInfo));
+        }
+    }
+
+    @GetMapping("/exercisesSituationStatistics")
+    public HttpResponseResult exercisesSituationStatistics(String startDay, String monday){
+        if(StringUtils.isNotBlank(monday)){
+            studentServeService.exercisesSituationStatistics(monday);
+        }
+        if(StringUtils.isNotBlank(startDay)){
+            LocalDate date=LocalDate.now();
+            if(StringUtils.isNotBlank(startDay)){
+                date= LocalDate.parse(startDay, DateUtil.dateFormatter);
+            }
+            while (date.isBefore(LocalDate.now())){
+                date = date.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
+                studentServeService.exercisesSituationStatistics(date.format(DateUtil.dateFormatter));
+                date = date.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.SUNDAY.getValue()).plusDays(1);
+            }
+        }
+        return succeed();
+    }
+
+    @ApiOperation(value = "教师作业布置提醒")
+    @PostMapping("/teacherServeRemindPush")
+    public HttpResponseResult teacherServeRemindPush(@RequestBody List<TeacherServeDto> teacherServes) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        studentExtracurricularExercisesSituationService.teacherServeRemindPush(teacherServes, sysUser.getId(), sysUser.getRealName());
+        return succeed();
+    }
+
+    @ApiOperation(value = "教师服务课后作业")
+    @GetMapping("/queryTeacherServeHomeworkDetail")
+    public HttpResponseResult queryTeacherServeHomeworkDetail(TeacherServeHomeworkQueryInfo queryInfo) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        return succeed(studentExtracurricularExercisesSituationService.queryTeacherServeHomeworkDetail(queryInfo));
+    }
+
+    @ApiOperation(value = "教师服务课外作业")
+    @GetMapping("/queryTeacherServeExtraDetail")
+    public HttpResponseResult queryTeacherServeExtraDetail(TeacherServeHomeworkQueryInfo queryInfo) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        return succeed(studentExtracurricularExercisesSituationService.queryTeacherServeExtraDetail(queryInfo));
+    }
+
+    @ApiOperation(value = "乐团作业情况")
+    @GetMapping("/musicGroupHomeworkStat")
+    public HttpResponseResult musicGroupHomeworkStat(String musicGroupId, String startDay, String endDay) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        return succeed(studentServeService.musicGroupHomeworkStat(musicGroupId, null, startDay, endDay));
+    }
+
+}