From f31a51933f86583b494fad11bb897c21a6c42db5 Mon Sep 17 00:00:00 2001
From: yn147 <2270338776@qq.com>
Date: 星期三, 07 十二月 2022 11:26:49 +0800
Subject: [PATCH] 考勤优化

---
 src/main/java/com/qxueyou/scc/controller/AttendanceController.java             |   12 +++---
 src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java          |    2 
 src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java |   50 ++++++++++++++----------
 3 files changed, 36 insertions(+), 28 deletions(-)

diff --git a/src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java b/src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java
index 2d47bc8..7352977 100644
--- a/src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java
+++ b/src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java
@@ -19,7 +19,7 @@
     /**
      *淇敼鎵撳崱鐘舵��
      */
-    Result updateAttendanceStatus(String studentId, String attendanceStatus);
+    Result updateAttendanceStatus(String[] studentId, String attendanceStatus);
 
     int findAttendanceListCount(String keyword, String subjectId);
 
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 7d6ce60..114f184 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
@@ -31,31 +31,35 @@
 
         try{
             SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
-            //涓婅鏃堕棿
-            String s1 = "9锛�00:00";
-            //濡傛灉涓婅鏃堕棿(9鐐�)>褰撳墠鏃堕棿
+            //上课时间
+            String s1 = "9:00:00";
+            //如果上课时间(9点)>当前时间
             String s2 = sdf.format(new Date());
+
+            //赋值一个课程id
+            stuStudent.setSubjectId(subjectId);
+
+            //时间计算
             int compareTo = s1.compareTo(s2);
             if(compareTo>0)
             {
-                s="绛惧埌鏃堕棿宸茶繃锛屾湰鑺傝鎸夌収鏃疯澶勭悊";
-                stuStudent.setAttendanceStatus("鏃疯");
+                s="签到时间已过,本节课按照旷课处理";
+                stuStudent.setAttendanceStatus("旷课");
             }
             else
             {
-                String s3 = "8锛�50:00";
+                String s3 = "8:50:00";
                 compareTo = s2.compareTo(s3);
                 if(compareTo<0)
                 {
-                    s="鏈埌绛惧埌鏃堕棿锛岃涓庝笂璇炬椂闂村墠10鍒嗛挓绛惧埌";
-                    stuStudent.setAttendanceStatus("鏈墦鍗�");
+                    s="未到签到时间,请与上课时间前10分钟签到";
+                    stuStudent.setAttendanceStatus("未打卡");
                 }
                 else
                 {
                     if(stuStudent!=null && subjectId!=null){
-                        stuStudent.setSubjectId(subjectId);
-                        stuStudent.setAttendanceStatus("宸叉墦鍗�");
-                        s = "鎴愬姛瀹屾垚绛惧埌";
+                        stuStudent.setAttendanceStatus("已打卡");
+                        s = "成功完成签到";
                     }
                 }
             }
@@ -82,20 +86,24 @@
     }
 
     @Override
-    public Result updateAttendanceStatus(String studentId, String attendanceStatus) {
-        StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false");
+    public Result updateAttendanceStatus(String[] studentId, String attendanceStatus) {
+        boolean pd = true;
+        for (String studentIds: studentId){
+            StringBuffer hql=new StringBuffer("from StuStudent where studentId=? and deleteFlag is false");
 
-        List<Object> args = CollectionUtils.newList(studentId);
+            List<Object> args = CollectionUtils.newList(studentIds);
 
-        StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class);
+            StuStudent stuStudent = findUnique(hql.toString(), args, StuStudent.class);
 
-        if(stuStudent!=null && attendanceStatus!=null){
-            stuStudent.setAttendanceStatus(attendanceStatus);
-            save(stuStudent);
-            return new Result(true);
+            if(stuStudent!=null && attendanceStatus!=null){
+                stuStudent.setAttendanceStatus(attendanceStatus);
+                save(stuStudent);
+                pd = true;
+            }else {
+                pd = false;
+            }
         }
-
-        return new Result(false);
+        return new Result(pd);
     }
 
     @Override
diff --git a/src/main/java/com/qxueyou/scc/controller/AttendanceController.java b/src/main/java/com/qxueyou/scc/controller/AttendanceController.java
index ce4222d..4c4f0b2 100644
--- a/src/main/java/com/qxueyou/scc/controller/AttendanceController.java
+++ b/src/main/java/com/qxueyou/scc/controller/AttendanceController.java
@@ -15,20 +15,20 @@
 
 import java.util.List;
 
-@Api(tags="鑰冨嫟绠$悊鎺ュ彛")
+@Api(tags="考勤管理接口")
 @RestController
 @RequestMapping("/admin/Attendance")
 public class AttendanceController {
     @Autowired
     private AttendanceService attendanceService;
 
-    @ApiOperation(value = "鎵撳崱", notes = "")
-    @PostMapping(value = "/attendanceUpAndAdd")
+    @ApiOperation(value = "打卡", notes = "")
+    @GetMapping(value = "/attendanceUpAndAdd")
     public String attendanceUpAndAdd(String studentId, String subjectId) {
         return attendanceService.attendanceUpAndAdd(studentId,subjectId);
     }
 
-    @ApiOperation(value = "鑰冨嫟淇℃伅", notes = "")
+    @ApiOperation(value = "考勤信息", notes = "")
     @GetMapping(value = "/attendanceList")
     public Result attendanceList(@RequestParam(defaultValue = "10") Integer limit, @RequestParam(defaultValue = "1") Integer pageNum, String keyword, String subjectId) {
 
@@ -44,9 +44,9 @@
                 "attendanceCount", count));
     }
 
-    @ApiOperation(value = "淇敼鑰冨嫟鐘舵��", notes = "")
+    @ApiOperation(value = "修改考勤状态", notes = "")
     @GetMapping(value = "/updateAttendanceStatus")
-    public Result updateAttendanceStatus(String studentId, String attendanceStatus) {
+    public Result updateAttendanceStatus(String[] studentId, String attendanceStatus) {
         return attendanceService.updateAttendanceStatus(studentId,attendanceStatus);
     }
 }

--
Gitblit v1.8.0