|
@@ -2,14 +2,22 @@ package com.ym.mec.teacher.controller;
|
|
|
|
|
|
import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
+import com.ym.mec.biz.dal.dao.StudentAttendanceDao;
|
|
|
import com.ym.mec.biz.dal.dto.StudentAttendanceDto;
|
|
|
import com.ym.mec.biz.dal.dto.TeacherSignOutDto;
|
|
|
+import com.ym.mec.biz.dal.entity.StudentAttendance;
|
|
|
+import com.ym.mec.biz.dal.enums.MessageTypeEnum;
|
|
|
+import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
|
|
|
import com.ym.mec.biz.dal.page.TeacherAttendanceQueryInfo;
|
|
|
import com.ym.mec.biz.service.ClassGroupService;
|
|
|
import com.ym.mec.biz.service.StudentAttendanceService;
|
|
|
+import com.ym.mec.biz.service.SysMessageService;
|
|
|
import com.ym.mec.biz.service.TeacherAttendanceService;
|
|
|
import com.ym.mec.common.controller.BaseController;
|
|
|
+import com.ym.mec.common.entity.HttpResponseResult;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
|
|
|
+import com.ym.mec.util.date.DateUtil;
|
|
|
import com.yonge.log.model.AuditLogAnnotation;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
@@ -17,7 +25,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.http.HttpStatus;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
-import java.util.Objects;
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@RequestMapping("teacherAttendance")
|
|
|
@Api(tags = "教师签到服务")
|
|
@@ -31,9 +40,14 @@ public class TeacherAttendanceController extends BaseController {
|
|
|
private StudentAttendanceService studentAttendanceService;
|
|
|
|
|
|
@Autowired
|
|
|
+ private StudentAttendanceDao studentAttendanceDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private ClassGroupService classGroupService;
|
|
|
@Autowired
|
|
|
private SysUserFeignService sysUserFeignService;
|
|
|
+ @Autowired
|
|
|
+ private SysMessageService sysMessageService;
|
|
|
|
|
|
@ApiOperation(value = "新增教师签到")
|
|
|
@PostMapping("/add")
|
|
@@ -61,6 +75,23 @@ public class TeacherAttendanceController extends BaseController {
|
|
|
return succeed(studentAttendanceService.addStudentAttendances(studentAttendanceInfo));
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "学员到课提醒")
|
|
|
+ @PostMapping("/studentAttendanceNormalRemind")
|
|
|
+ public HttpResponseResult studentAttendanceNormalRemind(Long courseId){
|
|
|
+ //获取正常签到的学生信息
|
|
|
+ List<StudentAttendance> studentAttendances = studentAttendanceDao.findByCourseId(courseId);
|
|
|
+ List<StudentAttendance> normal = studentAttendances.stream().filter(studentAttendance -> studentAttendance.getStatus() == StudentAttendanceStatusEnum.NORMAL).collect(Collectors.toList());
|
|
|
+ if (normal != null && normal.size() > 0) {
|
|
|
+ Map<Integer, String> receivers = new HashMap<>();
|
|
|
+ normal.forEach(e -> {
|
|
|
+ receivers.put(e.getUserId(), e.getUserId().toString());
|
|
|
+ });
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_NAMES_ACHIEVE,
|
|
|
+ receivers, null, 0, "2", "STUDENT", DateUtil.format(new Date(), DateUtil.DATE_FORMAT_MIN));
|
|
|
+ }
|
|
|
+ return succeed();
|
|
|
+ }
|
|
|
+
|
|
|
@ApiOperation(value = "获取签退详情")
|
|
|
@GetMapping("/getTeacherSignDetail")
|
|
|
public Object getTeacherSignDetail(Integer courseScheduleId){
|