diff --git a/app/controllers/weapps/attendances_controller.rb b/app/controllers/weapps/attendances_controller.rb
index 51649150d..57e1e10df 100644
--- a/app/controllers/weapps/attendances_controller.rb
+++ b/app/controllers/weapps/attendances_controller.rb
@@ -149,6 +149,14 @@ class Weapps::AttendancesController < ApplicationController
   end
 
   def student_direct_attendance quick_attendances, member
-
+    quick_attendances.each do |attendance|
+      current_attendance = attendance.course_member_attendances.find_by(user_id: member.user_id)
+      if current_attendance.present?
+        current_attendance.update!(attendance_status: "NORMAL", attendance_mode: "QUICK")
+      else
+        attendance.course_member_attendances.create!(course_member_id: member.id, user_id: member.user_id, course_id: attendance.course_id,
+                                                     course_group_id: member.course_group_id, attendance_status: "NORMAL", attendance_mode: "QUICK")
+      end
+    end
   end
 end
\ No newline at end of file