From e2f63040ba839fb0045360b4971ebbb06a79d55d Mon Sep 17 00:00:00 2001
From: yn147 <2270338776@qq.com>
Date: 星期一, 21 十一月 2022 13:27:23 +0800
Subject: [PATCH] 11

---
 src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java              |   12 +++++++++++-
 src/main/java/com/qxueyou/scc/admin/attendance/impl/AttendanceServiceImpl.java |   31 ++++++++++++-------------------
 src/main/resources/Transaction.xml                                             |    5 +++--
 3 files changed, 26 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 f3ce5c1..df6f451 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
@@ -19,6 +19,13 @@
     @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");
             //上课时间
@@ -29,17 +36,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
             {
@@ -48,19 +45,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 = "成功完成签到";
                     }
                 }
             }
@@ -69,6 +61,7 @@
         {
             e.printStackTrace();
         }
+        save(stuStudent);
         return s;
     }
 }
diff --git a/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java b/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java
index df3b710..de56938 100644
--- a/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java
+++ b/src/main/java/com/qxueyou/scc/teach/student/model/StuStudent.java
@@ -53,6 +53,7 @@
 	private String mobilePhone;
 	private BigDecimal studyDuration;
 	private BigDecimal score;
+	private String attendanceStatus;
 
 	public StuStudent() {
 	}
@@ -69,7 +70,7 @@
 
 	public StuStudent(String studentId, Date createTime, Date updateTime, String creator, String createId,
 			String updator, String updateId, boolean deleteFlag, String userId, String name, String classId,
-			String tenantId, String status) {
+			String tenantId, String status, String attendanceStatus) {
 		this.studentId = studentId;
 		this.createTime = createTime;
 		this.updateTime = updateTime;
@@ -83,6 +84,7 @@
 		this.classId = classId;
 		this.tenantId = tenantId;
 		this.status = status;
+		this.attendanceStatus = attendanceStatus;
 	}
 
 	@Id
@@ -210,6 +212,14 @@
 	public void setStatus(String status) {
 		this.status = status;
 	}
+	@Column(name = "ATTENDANCE_STATUS", length = 16)
+	public String getAttendanceStatus() {
+		return this.attendanceStatus;
+	}
+
+	public void setAttendanceStatus(String attendanceStatus) {
+		this.attendanceStatus = attendanceStatus;
+	}
 
 	@Column(name = "STUDENT_NO", length = 32)
 	public String getStudentNo() {
diff --git a/src/main/resources/Transaction.xml b/src/main/resources/Transaction.xml
index 6c63650..7c20206 100644
--- a/src/main/resources/Transaction.xml
+++ b/src/main/resources/Transaction.xml
@@ -75,7 +75,8 @@
 			<tx:method name="do*" propagation="REQUIRED" />
 			<tx:method name="execute*" propagation="REQUIRED" />
 			<tx:method name="logSave*" propagation="REQUIRES_NEW" />
-			<tx:method name="*" read-only="true" />
+<!--			<tx:method name="*" read-only="true" />-->
+            <tx:method name="*" read-only="false" />
         </tx:attributes>
     </tx:advice> 
     
@@ -86,4 +87,4 @@
     </aop:config>
 	
 	
-</beans>
\ No newline at end of file
+</beans>

--
Gitblit v1.8.0