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/controller/AttendanceController.java             |   38 ++++++++++++++++--
 src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java          |   18 +++++++++
 src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java |   42 +++++++++++++++++++++
 3 files changed, 93 insertions(+), 5 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 9e5f3df..3651bb4 100644
--- a/src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java
+++ b/src/main/java/com/qxueyou/scc/admin/attendance/AttendanceService.java
@@ -1,8 +1,26 @@
 package com.qxueyou.scc.admin.attendance;
 
+import com.qxueyou.scc.base.model.Result;
+import com.qxueyou.scc.teach.student.model.StuStudent;
+
+import java.util.List;
+
 public interface AttendanceService {
     /**
      * 打卡
      */
     String attendanceUpAndAdd(String studentId,String SubjectId);
+
+    /**
+     * 查询考勤信息
+     */
+    List<StuStudent> findAttendanceList(Integer limit, Integer pageNum, String keyword);
+
+    /**
+     *修改打卡状态
+     */
+    Result updateAttendanceStatus(String studentId, String attendanceStatus);
+
+    int findAttendanceListCount(String keyword);
+
 }
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 df6f451..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,12 @@
 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;
@@ -64,4 +67,43 @@
         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);
+    }
 }
diff --git a/src/main/java/com/qxueyou/scc/controller/AttendanceController.java b/src/main/java/com/qxueyou/scc/controller/AttendanceController.java
index b1cbb57..f6c9128 100644
--- a/src/main/java/com/qxueyou/scc/controller/AttendanceController.java
+++ b/src/main/java/com/qxueyou/scc/controller/AttendanceController.java
@@ -1,17 +1,23 @@
 package com.qxueyou.scc.controller;
 
 import com.qxueyou.scc.admin.attendance.AttendanceService;
+import com.qxueyou.scc.admin.schoolRoll.ISchoolRollService;
+import com.qxueyou.scc.base.model.Result;
+import com.qxueyou.scc.base.util.ClientUtils;
+import com.qxueyou.scc.base.util.CollectionUtils;
+import com.qxueyou.scc.base.util.QBeanUtils;
+import com.qxueyou.scc.teach.student.model.StuStudent;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
 
 @Api(tags="考勤管理接口")
 @RestController
-@RequestMapping("/admin/AttendanceController")
+@RequestMapping("/admin/Attendance")
 public class AttendanceController {
     @Autowired
     private AttendanceService attendanceService;
@@ -21,4 +27,26 @@
     public String attendanceUpAndAdd(String studentId, String subjectId) {
         return attendanceService.attendanceUpAndAdd(studentId,subjectId);
     }
+
+    @ApiOperation(value = "考勤信息", notes = "")
+    @GetMapping(value = "/attendanceList")
+    public Result attendanceList(@RequestParam(defaultValue = "10") Integer limit, @RequestParam(defaultValue = "1") Integer pageNum, String keyword) {
+
+        List<StuStudent> attendanceList = attendanceService.findAttendanceList(limit, pageNum, keyword);
+
+        int count = attendanceService.findAttendanceListCount(keyword);
+
+
+        return new Result(true,"success", CollectionUtils.newObjectMap("attendanceList",
+                QBeanUtils.listBean2ListMap(attendanceList,
+                        CollectionUtils.newStringMap("name", "studentName", "studentNo", "studentNo","sex","sex","mobilePhone","mobilePhone", "attendanceStatus",
+                                "attendanceStatus", "createTime", "createTime")),
+                "attendanceCount", count));
+    }
+
+    @ApiOperation(value = "修改考勤状态", notes = "")
+    @GetMapping(value = "/updateAttendanceStatus")
+    public Result updateAttendanceStatus(String studentId, String attendanceStatus) {
+        return attendanceService.updateAttendanceStatus(studentId,attendanceStatus);
+    }
 }

--
Gitblit v1.8.0