From d7963a84282c548fee3595b3343e6ae6ca49bb29 Mon Sep 17 00:00:00 2001 From: yn147 <2270338776@qq.com> Date: 星期五, 24 十一月 2023 14:12:01 +0800 Subject: [PATCH] 学籍,考勤 --- src/main/java/com/qxueyou/scc/controller/AttendanceController.java | 48 +++++++++++++++++++++--- src/main/java/com/qxueyou/scc/teach/subject/model/Subject.java | 20 ++++++++++ src/main/java/com/qxueyou/scc/teach/subject/service/ISubjectService.java | 9 ++++ src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java | 11 +++++ src/main/java/com/qxueyou/scc/controller/SubjectController.java | 8 ++-- src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java | 20 +++++----- 6 files changed, 94 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java b/src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java index bd39dae..8930431 100644 --- a/src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java +++ b/src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java @@ -28,13 +28,13 @@ try{ SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); - //涓婅鏃堕棿 - String classTime = "9:00:00"; - //褰撳墠鏃堕棿 - String currentTime = sdf.format(new Date()); String hqlTwo = "from Subject where name = ?"; List<Object> argsTwo = CollectionUtils.newList(subjectName); Subject subject = findUnique(hqlTwo,argsTwo,Subject.class); + //涓婅鏃堕棿 + String classTime = subject.getEndTime(); + //褰撳墠鏃堕棿 + String currentTime = sdf.format(new Date()); //娣诲姞subjectId if(subject.getSubjectId() == subjectId){ stuStudent.setSubjectId(subjectId); @@ -45,17 +45,17 @@ int compareTo = classTime.compareTo(currentTime); if(compareTo>0) { - s="绛惧埌鏃堕棿宸茶繃锛屾湰鑺傝鎸夌収鏃疯澶勭悊"; + s="绛惧埌鏃堕棿宸茶繃"; stuStudent.setAttendanceStatus(stuStudent.STATUS_TRUANCY); } else { //鎵撳崱鏃堕棿 - String clockTime = "8:50:00"; + String clockTime = subject.getEndTime(); compareTo = currentTime.compareTo(clockTime); if(compareTo<0) { - s="鏈埌绛惧埌鏃堕棿锛岃涓庝笂璇炬椂闂村墠10鍒嗛挓绛惧埌"; + s="鏈埌绛惧埌鏃堕棿"; stuStudent.setAttendanceStatus(stuStudent.STATUS_NO_CLOCKING); } else @@ -76,10 +76,10 @@ } @Override - public List<StuStudent> findAttendanceList(Integer limit, Integer pageNum, String keyword, String subjectId) { - StringBuffer hql=new StringBuffer("from StuStudent where name like ? and subjectId = ? and deleteFlag is false"); + public List<StuStudent> findAttendanceList(Integer limit, Integer pageNum, String keyword, String classId) { + StringBuffer hql=new StringBuffer("from StuStudent where name like ? and classId = ? and deleteFlag is false"); - List<Object> args = CollectionUtils.newList(keyword + "%",subjectId); + List<Object> args = CollectionUtils.newList(keyword + "%",classId); hql.append(" order by createTime desc"); diff --git a/src/main/java/com/qxueyou/scc/controller/AttendanceController.java b/src/main/java/com/qxueyou/scc/controller/AttendanceController.java index 257f9ca..7e6cb3a 100644 --- a/src/main/java/com/qxueyou/scc/controller/AttendanceController.java +++ b/src/main/java/com/qxueyou/scc/controller/AttendanceController.java @@ -5,13 +5,18 @@ 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 @@ -20,7 +25,8 @@ @Autowired private AttendanceService attendanceService; - private SubjectService subjectService; + @Autowired + private ISubjectService iSubjectService; @ApiOperation(value = "鎵撳崱", notes = "") @GetMapping(value = "/attendanceUpAndAdd") @@ -30,17 +36,47 @@ @ApiOperation(value = "鑰冨嫟淇℃伅", notes = "") @GetMapping(value = "/attendanceList") - public Result attendanceList(@RequestParam(defaultValue = "10") Integer limit, @RequestParam(defaultValue = "1") Integer pageNum, String keyword, String subjectId) { + public Result attendanceList(@RequestParam(defaultValue = "10") Integer limit, @RequestParam(defaultValue = "1") Integer pageNum, String keyword, String classId) { - List<StuStudent> attendanceList = attendanceService.findAttendanceList(limit, pageNum, keyword,subjectId); + List<StuStudent> attendanceList = attendanceService.findAttendanceList(limit, pageNum, keyword,classId); - int count = attendanceService.findAttendanceListCount(keyword,subjectId); + int count = attendanceService.findAttendanceListCount(keyword,classId); + + List<Object> list = new ArrayList<>(); + for (StuStudent stuStudent : attendanceList){ + Map<String,String> 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(attendanceList, + QBeanUtils.listBean2ListMap(list, CollectionUtils.newStringMap("name", "studentName", "studentNo", "studentNo","sex","sex","mobilePhone","mobilePhone", "attendanceStatus", - "attendanceStatus", "createTime", "createTime", "studentId", "studentId")), + "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)); } diff --git a/src/main/java/com/qxueyou/scc/controller/SubjectController.java b/src/main/java/com/qxueyou/scc/controller/SubjectController.java index 7530344..55a6fbe 100644 --- a/src/main/java/com/qxueyou/scc/controller/SubjectController.java +++ b/src/main/java/com/qxueyou/scc/controller/SubjectController.java @@ -177,8 +177,8 @@ * 璇剧▼浠嬬粛 */ @PostMapping(value = "/copy") - public Result copy(String subjectId, String subjectName, String imgPath, String content,int type) { - return add(subjectName, imgPath, content,type); + public Result copy(String subjectId, String subjectName, String imgPath, String content,int type,String startTime,String endTime) { + return add(subjectName, imgPath, content,type,startTime,endTime); } /** @@ -193,7 +193,7 @@ * @return */ @PostMapping(value = "/add") - public Result add(String subjectName, String imgPath, String content,int type) { + public Result add(String subjectName, String imgPath, String content,int type,String startTime,String endTime) { String contentFileId = null; if(StringUtils.isNotEmpty(content)){ @@ -207,7 +207,7 @@ coverPageFileId = fileService.readIdByPath(imgPath); } - return subjectService.add(subjectName, coverPageFileId,contentFileId,type); + return subjectService.add(subjectName, coverPageFileId,contentFileId,type,startTime,endTime); } /** diff --git a/src/main/java/com/qxueyou/scc/teach/subject/model/Subject.java b/src/main/java/com/qxueyou/scc/teach/subject/model/Subject.java index 91e70a7..095c73b 100644 --- a/src/main/java/com/qxueyou/scc/teach/subject/model/Subject.java +++ b/src/main/java/com/qxueyou/scc/teach/subject/model/Subject.java @@ -101,6 +101,12 @@ @Column(name="CONTENT_FILE_ID") private String contentFileId; + + @Column(name = "START_TIME") + private String startTime; + + @Column(name = "END_TIME") + private String endTime; public final static String STATUS_DRAFT = "0"; @@ -362,5 +368,19 @@ this.orgId = orgId; } + public String getStartTime() { + return startTime; + } + public void setStartTime(String startTime) { + this.startTime = startTime; + } + + public String getEndTime() { + return endTime; + } + + public void setEndTime(String endTime) { + this.endTime = endTime; + } } \ No newline at end of file diff --git a/src/main/java/com/qxueyou/scc/teach/subject/service/ISubjectService.java b/src/main/java/com/qxueyou/scc/teach/subject/service/ISubjectService.java index baee3b0..4ad1abb 100644 --- a/src/main/java/com/qxueyou/scc/teach/subject/service/ISubjectService.java +++ b/src/main/java/com/qxueyou/scc/teach/subject/service/ISubjectService.java @@ -24,7 +24,7 @@ * 鍐呭鏂囦欢id * @return */ - Result add(String subjectName, String coverPageFileId, String contentFileId,int type); + Result add(String subjectName, String coverPageFileId, String contentFileId,int type,String startTime,String endTime); /** * 淇敼璇剧▼ @@ -387,4 +387,11 @@ * @return */ public long getLectureCount(String subjectId); + + /** + * 鑾峰彇璇剧▼鍚嶇О + * @param subjectId + * @return + */ + String findSubjectName(String subjectId); } diff --git a/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java b/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java index b387087..d84ceda 100644 --- a/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java +++ b/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java @@ -107,7 +107,7 @@ @Override - public Result add(String subjectName, String coverPageFileId, String contentFileId, int type) { + public Result add(String subjectName, String coverPageFileId, String contentFileId, int type,String startTime,String endTime) { Subject subject = new Subject(); if (StringUtils.isNotEmpty(coverPageFileId)) { @@ -122,6 +122,9 @@ subject.setStatus(Subject.STATUS_DRAFT); subject.setLectureCount(0); subject.setType(type); + //绛惧埌鏃堕棿 + subject.setStartTime(startTime); + subject.setEndTime(endTime); subject.setOrgId(ClientUtils.getOrgId()); save(subject); @@ -1097,6 +1100,12 @@ } } + @Override + public String findSubjectName(String subjectId) { + Subject subject = findUnique("from Subject where subjectId = ? ",CollectionUtils.newList(subjectId),Subject.class); + return subject.getName(); + } + /** * 鎴戠殑鍏紑璇惧垪琛� -- Gitblit v1.8.0