package com.qxueyou.scc.controller; import com.qxueyou.scc.admin.attendance.AttendanceService; import com.qxueyou.scc.base.model.Result; import com.qxueyou.scc.base.util.CollectionUtils; import com.qxueyou.scc.base.util.QBeanUtils; import com.qxueyou.scc.teach.student.model.StuStudent; import com.qxueyou.scc.teach.subject.model.Subject; import com.qxueyou.scc.teach.subject.service.ISubjectService; import com.qxueyou.scc.teach.subject.service.impl.SubjectService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @Api(tags="考勤管理接口") @RestController @RequestMapping("/admin/Attendance") public class AttendanceController { @Autowired private AttendanceService attendanceService; @Autowired private ISubjectService iSubjectService; @ApiOperation(value = "打卡", notes = "") @GetMapping(value = "/attendanceUpAndAdd") public String attendanceUpAndAdd(String userId, String subjectId, String subjectName) { return attendanceService.attendanceUpAndAdd(userId,subjectId,subjectName); } @ApiOperation(value = "考勤信息", notes = "") @GetMapping(value = "/attendanceList") public Result attendanceList(@RequestParam(defaultValue = "10") Integer limit, @RequestParam(defaultValue = "1") Integer pageNum, String keyword, String classId) { List attendanceList = attendanceService.findAttendanceList(limit, pageNum, keyword,classId); int count = attendanceService.findAttendanceListCount(keyword,classId); List list = new ArrayList<>(); for (StuStudent stuStudent : attendanceList){ Map mapList = new HashMap<>(); mapList.put("name",stuStudent.getName()); mapList.put("studentNo",stuStudent.getStudentNo()); mapList.put("sex",String.valueOf(stuStudent.getSex())); mapList.put("mobilePhone",stuStudent.getMobilePhone()); mapList.put("attendanceStatus",stuStudent.getAttendanceStatus()); mapList.put("createTime",String.valueOf(stuStudent.getCreateTime())); mapList.put("studentId",stuStudent.getStudentId()); mapList.put("photo",stuStudent.getPhoto()); mapList.put("passporName",stuStudent.getPassporName()); mapList.put("nationality",stuStudent.getNationality()); mapList.put("ancestralHome",stuStudent.getAncestralHome()); mapList.put("birthday",stuStudent.getBirthday()); mapList.put("birthplace",stuStudent.getBirthplace()); mapList.put("chinaStatus",stuStudent.getChinaStatus()); mapList.put("registeredAddress",stuStudent.getRegisteredAddress()); mapList.put("homeAddress",stuStudent.getHomeAddress()); mapList.put("religiousBelief",stuStudent.getReligiousBelief()); mapList.put("email",stuStudent.getEmail()); mapList.put("workUnit",stuStudent.getWorkUnit()); mapList.put("graduationDestination",stuStudent.getGraduationDestination()); if(stuStudent.getSubjectId()!=null){ String subjectName = iSubjectService.findSubjectName(stuStudent.getSubjectId()); mapList.put("subjectName",subjectName); } list.add(mapList); } return new Result(true,"success", CollectionUtils.newObjectMap("attendanceList", QBeanUtils.listBean2ListMap(list, CollectionUtils.newStringMap("name", "studentName", "studentNo", "studentNo","sex","sex","mobilePhone","mobilePhone", "attendanceStatus", "attendanceStatus", "createTime", "createTime", "studentId", "studentId","photo","photo","passporName","passporName","nationality","nationality","ancestralHome","ancestralHome","birthday","birthday","birthplace","birthplace","chinaStatus","chinaStatus","registeredAddress","registeredAddress","homeAddress","homeAddress","religiousBelief","religiousBelief","email","email","workUnit","workUnit","graduationDestination","graduationDestination","subjectName","subjectName")), "attendanceCount", count)); } @ApiOperation(value = "修改考勤状态", notes = "") @GetMapping(value = "/updateAttendanceStatus") public Result updateAttendanceStatus(String[] studentId, String attendanceStatus) { return attendanceService.updateAttendanceStatus(studentId,attendanceStatus); } }