From 387db55978f2beff4caed57df75339682579f914 Mon Sep 17 00:00:00 2001 From: 胡仁荣 <897853850@qq.com> Date: 星期四, 24 十一月 2022 16:05:13 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java | 77 +++++++++++++++++++++++++++++--------- 1 files changed, 58 insertions(+), 19 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 197e48d..b783964 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 @@ -1,9 +1,15 @@ package com.qxueyou.scc.admin.attendance.impl; import com.qxueyou.scc.admin.attendance.AttendanceService; +import com.qxueyou.scc.base.model.Pager; +import com.qxueyou.scc.base.model.Result; +import com.qxueyou.scc.base.service.ICommonService; import com.qxueyou.scc.base.service.impl.CommonAppService; import com.qxueyou.scc.base.util.CollectionUtils; +import com.qxueyou.scc.base.util.TraceUtils; import com.qxueyou.scc.teach.student.model.StuStudent; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; @@ -12,9 +18,17 @@ @Service public class AttendanceServiceImpl extends CommonAppService implements AttendanceService { + @Override public String attendanceUpAndAdd(String studentId, String subjectId) { String s=""; + + StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); + + List<Object> args = CollectionUtils.newList(studentId); + + StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); + try{ SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); //上课时间 @@ -25,17 +39,7 @@ if(compareTo>0) { s="签到时间已过,本节课按照旷课处理"; - StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); - - List<Object> args = CollectionUtils.newList(studentId); - - StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); - - if(stuStudent!=null && subjectId!=null){ - stuStudent.setSubjectId(subjectId); - save(stuStudent); - s = "成功完成签到"; - } + stuStudent.setAttendanceStatus("旷课"); } else { @@ -44,19 +48,14 @@ if(compareTo<0) { s="未到签到时间,请与上课时间前10分钟签到"; + stuStudent.setAttendanceStatus("未打卡"); } else { - StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); - - List<Object> args = CollectionUtils.newList(studentId); - - StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); - if(stuStudent!=null && subjectId!=null){ stuStudent.setSubjectId(subjectId); - save(stuStudent); - return "成功完成签到"; + stuStudent.setAttendanceStatus("已打卡"); + s = "成功完成签到"; } } } @@ -65,6 +64,46 @@ { e.printStackTrace(); } + save(stuStudent); return s; } + + @Override + public List<StuStudent> findAttendanceList(Integer limit, Integer pageNum, String keyword) { + StringBuffer hql=new StringBuffer("from StuStudent where name like ? and deleteFlag is false"); + + List<Object> args = CollectionUtils.newList(keyword + "%"); + + hql.append(" order by createTime desc"); + + List<StuStudent> list = findList(hql.toString(), new Pager(limit, pageNum), args, StuStudent.class); + + return list; + } + + @Override + public Result updateAttendanceStatus(String studentId, String attendanceStatus) { + StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false"); + + List<Object> args = CollectionUtils.newList(studentId); + + StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class); + + if(stuStudent!=null && attendanceStatus!=null){ + stuStudent.setAttendanceStatus(attendanceStatus); + save(stuStudent); + return new Result(true); + } + + return new Result(false); + } + + @Override + public int findAttendanceListCount(String keyword) { + StringBuffer hql=new StringBuffer("from StuStudent where name like ? and deleteFlag is false"); + + List<Object> args = CollectionUtils.newList(keyword + "%"); + + return findCount(hql.toString(),args); + } } -- Gitblit v1.8.0