From 2ac66ed9ebc40eb56ff17dc9aebbc7b984bed373 Mon Sep 17 00:00:00 2001
From: Hvemi_han <hvemi_han@Hvemi-handeMacBook-Pro.local>
Date: Fri, 20 Dec 2024 15:52:26 +0800
Subject: [PATCH] =?UTF-8?q?refactor:=20=E7=BB=9F=E4=B8=80=E4=BD=BF?=
 =?UTF-8?q?=E7=94=A8=E7=A7=92=E7=BA=A7=E6=97=B6=E9=97=B4=E6=88=B3=EF=BC=8C?=
 =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81=E6=A0=BC=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 API文档.md                                    | 112 +++++++++---------
 .../service/LessonTaskService.java            |  22 ++--
 2 files changed, 67 insertions(+), 67 deletions(-)

diff --git a/API文档.md b/API文档.md
index 849f545..d624bbb 100644
--- a/API文档.md
+++ b/API文档.md
@@ -157,8 +157,8 @@
       "avatar": null,
       "creatorId": 1,
       "status": 1,
-      "createdAt": 1734498503690,
-      "updatedAt": 1734498503690,
+      "createdAt": 1734578081,
+      "updatedAt": 1734578081,
       "enabled": true,
       "authorities": [
         {
@@ -194,8 +194,8 @@
           "avatar": null,
           "creatorId": 1,
           "status": 1,
-          "createdAt": 1734491549,
-          "updatedAt": 1734491549
+          "createdAt": 1734578081,
+          "updatedAt": 1734578081
         }
       ],
       "total": 12,
@@ -245,14 +245,14 @@
           "microLessonName": "Test Lesson",
           "userId": 12,
           "progressStatus": 1,
-          "scriptUploadTime": 1734498510000,
-          "scriptConfirmTime": 1734498510000,
-          "videoCaptureTime": 1734498510000,
-          "videoConfirmTime": 1734498510000,
-          "finishTime": 1734498510000,
+          "scriptUploadTime": 1734578081,
+          "scriptConfirmTime": 1734578081,
+          "videoCaptureTime": 1734578081,
+          "videoConfirmTime": 1734578081,
+          "finishTime": 1734578081,
           "advise": "Test advice",
-          "createdAt": 1734498546322,
-          "updatedAt": 1734498546322
+          "createdAt": 1734578081,
+          "updatedAt": 1734578081
         }
       ],
       "totalElements": 4,
@@ -284,14 +284,14 @@
       "microLessonName": "Test Lesson",
       "userId": 12,
       "progressStatus": 1,
-      "scriptUploadTime": 1734498510000,
-      "scriptConfirmTime": 1734498510000,
-      "videoCaptureTime": 1734498510000,
-      "videoConfirmTime": 1734498510000,
-      "finishTime": 1734498510000,
+      "scriptUploadTime": 1734578081,
+      "scriptConfirmTime": 1734578081,
+      "videoCaptureTime": 1734578081,
+      "videoConfirmTime": 1734578081,
+      "finishTime": 1734578081,
       "advise": "Test advice",
-      "createdAt": 1734498546322,
-      "updatedAt": 1734498546322
+      "createdAt": 1734578081,
+      "updatedAt": 1734578081
     }
   }
   ```
@@ -327,8 +327,8 @@
           "videoConfirmTime": ,
           "finishTime": ,
           "advise": "请注意讲解速度",
-          "createdAt": 1734498546322,
-          "updatedAt": 1734498546322
+          "createdAt": 1734578081,
+          "updatedAt": 1734578081
       }
   }
   ```
@@ -347,11 +347,11 @@
     "microLessonName": "Updated Lesson", // 微课名称
     "userId": 12, // 用户ID
     "progressStatus": 2, // 进度状态
-    "scriptUploadTime": 1734498510000, // 脚本上传时间
-    "scriptConfirmTime": 1734498510000, // 脚本确认时间
-    "videoCaptureTime": 1734498510000, // 视频录制时间
-    "videoConfirmTime": 1734498510000, // 视频确认时间
-    "finishTime": 1734498510000, // 完成时间
+    "scriptUploadTime": 1734578081, // 脚本上传时间
+    "scriptConfirmTime": 1734578081, // 脚本确认时间
+    "videoCaptureTime": 1734578081, // 视频录制时间
+    "videoConfirmTime": 1734578081, // 视频确认时间
+    "finishTime": 1734578081, // 完成时间
     "advise": "Updated advice" // 建议
   }
   ```
@@ -366,14 +366,14 @@
       "microLessonName": "Updated Lesson",
       "userId": 12,
       "progressStatus": 2,
-      "scriptUploadTime": 1734498510000,
-      "scriptConfirmTime": 1734498510000,
-      "videoCaptureTime": 1734498510000,
-      "videoConfirmTime": 1734498510000,
-      "finishTime": 1734498510000,
+      "scriptUploadTime": 1734578081,
+      "scriptConfirmTime": 1734578081,
+      "videoCaptureTime": 1734578081,
+      "videoConfirmTime": 1734578081,
+      "finishTime": 1734578081,
       "advise": "Updated advice",
-      "createdAt": 1734498546322,
-      "updatedAt": 1734498586574
+      "createdAt": 1734578081,
+      "updatedAt": 1734578081
     }
   }
   ```
@@ -394,16 +394,16 @@
   }
   ```
 
-### 6. 按部门ID查询课程任务
+### 6. 按部门 ID 查询课程任务
 
 - **接口**:`GET /api/lesson-tasks/department/{departmentId}`
 - **描述**:获取指定部门下正常状态用户的课程任务列表(分页)
 - **认证**:需要
 - **路径参数**:
-  - `departmentId`: 部门ID
+  - `departmentId`: 部门 ID
 - **查询参数**:
-  - `page`: 页码(从1开始)
-  - `size`: 每页数量(默认10)
+  - `page`: 页码(从 1 开始)
+  - `size`: 每页数量(默认 10)
 - **成功响应**:
   ```json
   {
@@ -416,16 +416,16 @@
           "courseName": "物理",
           "microLessonName": "微课1-1",
           "userId": 1,
-          "username": "教师账号1",  // 新增:用户名字段
+          "username": "教师账号1", // 新增:用户名字段
           "progressStatus": 4,
-          "scriptUploadTime": 1734498510000,
-          "scriptConfirmTime": 1734498510000,
-          "videoCaptureTime": 1734498510000,
-          "videoConfirmTime": 1734498510000,
-          "finishTime": 1734498510000,
+          "scriptUploadTime": 1734498510,
+          "scriptConfirmTime": 1734498510,
+          "videoCaptureTime": 1734498510,
+          "videoConfirmTime": 1734498510,
+          "finishTime": 1734498510,
           "advise": null,
-          "createdAt": 1734578081000,
-          "updatedAt": 1734580393000
+          "createdAt": 1734578081,
+          "updatedAt": 1734580393
         }
       ],
       "totalElements": 10,
@@ -445,21 +445,21 @@
 - **描述**:更新课程任务的进度状态和建议
 - **认证**:需要
 - **路径参数**:
-  - `id`: 课程任务ID
+  - `id`: 课程任务 ID
 - **请求体**:
   ```json
   {
-    "progressStatus": 2,  // 进度状态(可选)
-    "advise": "{\"method\":\"wechat\",\"uploaded\":true}"  // 建议(可选)
+    "progressStatus": 2, // 进度状态(可选)
+    "advise": "{\"method\":\"wechat\",\"uploaded\":true}" // 建议(可选)
   }
   ```
 - **说明**:
   - 更新进度状态时会自动更新对应的时间戳:
-    - 状态1:更新scriptUploadTime
-    - 状态2:更新scriptConfirmTime
-    - 状态3:更新videoCaptureTime
-    - 状态4:更新videoConfirmTime
-    - 状态5:更新finishTime
+    - 状态 1:更新 scriptUploadTime
+    - 状态 2:更新 scriptConfirmTime
+    - 状态 3:更新 videoCaptureTime
+    - 状态 4:更新 videoConfirmTime
+    - 状态 5:更新 finishTime
   - 只会更新请求体中包含的字段,未提供的字段保持不变
 - **成功响应**:
   ```json
@@ -473,13 +473,13 @@
       "userId": 1,
       "progressStatus": 2,
       "scriptUploadTime": null,
-      "scriptConfirmTime": 1734663755667,
+      "scriptConfirmTime": 1734663755,
       "videoCaptureTime": null,
       "videoConfirmTime": null,
       "finishTime": null,
       "advise": "{\"method\":\"wechat\",\"uploaded\":true}",
-      "createdAt": 1734602440561,
-      "updatedAt": 1734663755000
+      "createdAt": 1734602440,
+      "updatedAt": 1734663755
     }
   }
   ```
@@ -487,7 +487,7 @@
 ## 注意事项
 
 1. 所有需要认证的接口必须在请求头中携带有效的 JWT 令牌
-2. 所有时间戳字段均为毫秒级时间戳
+2. 所有时间戳字段均为秒级时间戳
 3. 分页接口的页码从 1 开始
 4. 用户密码在传输和存储时都会进行加密处理
 5. 课程任务的 progressStatus 字段状态码说明:
diff --git a/src/main/java/com/huertian/jinduguanli/service/LessonTaskService.java b/src/main/java/com/huertian/jinduguanli/service/LessonTaskService.java
index ff95a9b..6ef0100 100644
--- a/src/main/java/com/huertian/jinduguanli/service/LessonTaskService.java
+++ b/src/main/java/com/huertian/jinduguanli/service/LessonTaskService.java
@@ -51,7 +51,7 @@ public class LessonTaskService {
     }
 
     @Transactional
-    @CacheEvict(value = { "lessonTasks", "lessonTask" }, allEntries = true)
+    @CacheEvict(value = {"lessonTasks", "lessonTask"}, allEntries = true)
     public LessonTask create(LessonTaskRequest request) {
         logger.info("开始创建课程任务 - 课程名称: {}, 小课名称: {}, 用户ID: {}",
                 request.getCourseName(), request.getMicroLessonName(), request.getUserId());
@@ -65,7 +65,7 @@ public class LessonTaskService {
     }
 
     @Transactional
-    @CacheEvict(value = { "lessonTasks", "lessonTask" }, allEntries = true)
+    @CacheEvict(value = {"lessonTasks", "lessonTask"}, allEntries = true)
     public LessonTask update(Long id, LessonTaskRequest request) {
         logger.info("开始更新课程任务 - 任务ID: {}, 进度状态: {}", id, request.getProgressStatus());
         LessonTask task = findById(id);
@@ -74,7 +74,7 @@ public class LessonTaskService {
         if (request.getProgressStatus() != null) {
             task.setProgressStatus(request.getProgressStatus());
             // 根据进度状态更新时间戳
-            long currentTime = System.currentTimeMillis();
+            long currentTime = System.currentTimeMillis() / 1000;
             switch (request.getProgressStatus()) {
                 case 1: // 脚本上传
                     task.setScriptUploadTime(currentTime);
@@ -106,14 +106,14 @@ public class LessonTaskService {
             task.setUserId(request.getUserId());
         }
 
-        task.setUpdatedAt(System.currentTimeMillis());
+        task.setUpdatedAt(System.currentTimeMillis() / 1000);
         LessonTask updatedTask = lessonTaskRepository.save(task);
         logger.info("更新课程任务成功 - 任务ID: {}", updatedTask.getId());
         return updatedTask;
     }
 
     @Transactional
-    @CacheEvict(value = { "lessonTasks", "lessonTask" }, allEntries = true)
+    @CacheEvict(value = {"lessonTasks", "lessonTask"}, allEntries = true)
     public void delete(Long id) {
         logger.info("开始删除课程任务 - 任务ID: {}", id);
         if (!lessonTaskRepository.existsById(id)) {
@@ -128,13 +128,13 @@ public class LessonTaskService {
      * 根据部门ID查询正常状态用户的课程任务列表(分页),包含用户名
      *
      * @param departmentId 部门ID
-     * @param pageable 分页参数
+     * @param pageable     分页参数
      * @return 课程任务分页数据
      */
     public Page<LessonTaskDTO> findByDepartmentIdAndNormalUser(Long departmentId, Pageable pageable) {
         logger.info("查询部门正常用户的课程任务,部门ID: {}", departmentId);
         Page<java.util.Map<String, Object>> result = lessonTaskRepository.findByDepartmentIdAndNormalUserWithUsername(departmentId, pageable);
-        
+
         return result.map(map -> {
             LessonTask lessonTask = (LessonTask) map.get("lessonTask");
             String username = (String) map.get("username");
@@ -146,8 +146,8 @@ public class LessonTaskService {
      * 根据部门ID和状态查询课程任务列表(分页)
      *
      * @param departmentId 部门ID
-     * @param status 任务状态(可选):0-脚本上传, 1-脚本确认, 2-视频拍摄, 3-后期制作, 4-任务完成
-     * @param pageable 分页参数
+     * @param status       任务状态(可选):0-脚本上传, 1-脚本确认, 2-视频拍摄, 3-后期制作, 4-任务完成
+     * @param pageable     分页参数
      * @return 课程任务分页数据
      */
     public Page<LessonTask> findByDepartmentIdAndStatus(Long departmentId, Integer status, Pageable pageable) {
@@ -159,8 +159,8 @@ public class LessonTaskService {
      * 根据部门ID和用户状态查询课程任务列表(分页)
      *
      * @param departmentId 部门ID
-     * @param userStatus 用户状态(可选):1-正常, 0-禁用
-     * @param pageable 分页参数
+     * @param userStatus   用户状态(可选):1-正常, 0-禁用
+     * @param pageable     分页参数
      * @return 课程任务分页数据
      */
     public Page<LessonTask> findByDepartmentIdAndUserStatus(Long departmentId, Integer userStatus, Pageable pageable) {