From 559b2e34c983f615b6d6747f52c801022c561803 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期一, 27 十月 2025 23:05:08 +0800
Subject: [PATCH] feat: 优化任务显示列表
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/SysTaskController.java | 157 ++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 122 insertions(+), 35 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/SysTaskController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/SysTaskController.java
index f35b74e..b4bc326 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/SysTaskController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/SysTaskController.java
@@ -41,22 +41,34 @@
private ISysTaskService sysTaskService;
/**
- * 鏌ヨ浠诲姟绠$悊鍒楄〃
+ * 鏌ヨ浠诲姟绠$悊鍒楄〃锛堝悗鍙扮鐞嗙锛�
+ * 绠$悊鍛樻潈闄愶紝鍙互鏌ョ湅鎵�鏈変换鍔�
*/
@PreAuthorize("@ss.hasPermi('task:general:query')")
+ @GetMapping("/admin/list")
+ public TableDataInfo adminList(TaskQueryVO queryVO) {
+ startPage();
+ List<SysTask> list = sysTaskService.selectSysTaskList(queryVO);
+ return getDataTable(list);
+ }
+
+ /**
+ * 鏌ヨ浠诲姟鍒楄〃锛圓PP绔級
+ * 浠呮樉绀哄綋鍓嶇敤鎴风浉鍏崇殑浠诲姟锛�
+ * 1. 褰撳墠鐢ㄦ埛鎵�鍦ㄦ満鏋勭殑浠诲姟
+ * 2. 褰撳墠鐢ㄦ埛鍒涘缓鐨勪换鍔�
+ * 3. 鍒嗛厤缁欏綋鍓嶇敤鎴风殑浠诲姟
+ */
@GetMapping("/list")
- public TableDataInfo list(TaskQueryVO queryVO) {
+ public TableDataInfo appList(TaskQueryVO queryVO) {
// 鍦ㄥ悗绔嚜鍔ㄨ幏鍙栧綋鍓嶇敤鎴蜂俊鎭紝瀹炵幇缁煎悎鏌ヨ
- // 缁煎悎鏌ヨ锛氬綋鍓嶇敤鎴锋墍鍦ㄦ満鏋勪换鍔� + 褰撳墠鐢ㄦ埛鍒涘缓鐨勪换鍔� + 鍒嗛厤缁欏綋鍓嶇敤鎴风殑浠诲姟
Long currentUserId = getUserId();
Long currentDeptId = getDeptId();
- // 濡傛灉鍓嶇娌℃湁浼犻�掕繖浜涘弬鏁帮紝鍒欎娇鐢ㄥ綋鍓嶇櫥褰曠敤鎴蜂俊鎭�
- if (queryVO.getCreatorId() == null && queryVO.getAssigneeId() == null && queryVO.getDeptId() == null) {
- queryVO.setDeptId(currentDeptId);
- queryVO.setCreatorId(currentUserId);
- queryVO.setAssigneeId(currentUserId);
- }
+ // APP绔己鍒朵娇鐢ㄥ綋鍓嶇櫥褰曠敤鎴蜂俊鎭繘琛岃繃婊�
+ queryVO.setDeptId(currentDeptId);
+ queryVO.setCreatorId(currentUserId);
+ queryVO.setAssigneeId(currentUserId);
startPage();
List<SysTask> list = sysTaskService.selectSysTaskList(queryVO);
@@ -64,11 +76,11 @@
}
/**
- * 瀵煎嚭浠诲姟绠$悊鍒楄〃
+ * 瀵煎嚭浠诲姟绠$悊鍒楄〃锛堝悗鍙扮鐞嗙锛�
*/
@PreAuthorize("@ss.hasPermi('task:general:export')")
@Log(title = "浠诲姟绠$悊", businessType = BusinessType.EXPORT)
- @PostMapping("/export")
+ @PostMapping("/admin/export")
public void export(HttpServletResponse response, TaskQueryVO queryVO) {
List<SysTask> list = sysTaskService.selectSysTaskList(queryVO);
ExcelUtil<SysTask> util = new ExcelUtil<SysTask>(SysTask.class);
@@ -76,61 +88,119 @@
}
/**
- * 鑾峰彇浠诲姟绠$悊璇︾粏淇℃伅
+ * 鑾峰彇浠诲姟璇︾粏淇℃伅锛堝悗鍙扮鐞嗙锛�
*/
@PreAuthorize("@ss.hasPermi('task:general:query')")
- @GetMapping(value = "/{taskId}")
- public AjaxResult getInfo(@PathVariable("taskId") Long taskId) {
+ @GetMapping(value = "/admin/{taskId}")
+ public AjaxResult adminGetInfo(@PathVariable("taskId") Long taskId) {
return success(sysTaskService.getTaskDetail(taskId));
}
/**
- * 鏂板浠诲姟绠$悊
+ * 鑾峰彇浠诲姟璇︾粏淇℃伅锛圓PP绔級
+ */
+ @GetMapping(value = "/{taskId}")
+ public AjaxResult appGetInfo(@PathVariable("taskId") Long taskId) {
+ return success(sysTaskService.getTaskDetail(taskId));
+ }
+
+ /**
+ * 鏂板浠诲姟锛堝悗鍙扮鐞嗙锛�
*/
@PreAuthorize("@ss.hasPermi('task:general:add')")
@Log(title = "浠诲姟绠$悊", businessType = BusinessType.INSERT)
- @PostMapping
- public AjaxResult add(@RequestBody TaskCreateVO createVO) {
+ @PostMapping("/admin")
+ public AjaxResult adminAdd(@RequestBody TaskCreateVO createVO) {
return toAjax(sysTaskService.insertSysTask(createVO));
}
/**
- * 淇敼浠诲姟绠$悊
+ * 鏂板浠诲姟锛圓PP绔級
+ */
+ @Log(title = "浠诲姟鍒涘缓", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult appAdd(@RequestBody TaskCreateVO createVO) {
+ return toAjax(sysTaskService.insertSysTask(createVO));
+ }
+
+ /**
+ * 淇敼浠诲姟锛堝悗鍙扮鐞嗙锛�
*/
@PreAuthorize("@ss.hasPermi('task:general:edit')")
@Log(title = "浠诲姟绠$悊", businessType = BusinessType.UPDATE)
- @PutMapping
- public AjaxResult edit(@RequestBody TaskUpdateVO updateVO) {
+ @PutMapping("/admin")
+ public AjaxResult adminEdit(@RequestBody TaskUpdateVO updateVO) {
return toAjax(sysTaskService.updateSysTask(updateVO));
}
/**
- * 鍒犻櫎浠诲姟绠$悊
+ * 淇敼浠诲姟锛圓PP绔級
*/
- @PreAuthorize("@ss.hasPermi('task:general:remove')")
- @Log(title = "浠诲姟绠$悊", businessType = BusinessType.DELETE)
+ @Log(title = "浠诲姟淇敼", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult appEdit(@RequestBody TaskUpdateVO updateVO) {
+ return toAjax(sysTaskService.updateSysTask(updateVO));
+ }
+
+ /**
+ * 鍒犻櫎浠诲姟锛圓PP绔級
+ */
+ @Log(title = "浠诲姟鍒犻櫎", businessType = BusinessType.DELETE)
@DeleteMapping("/{taskIds}")
- public AjaxResult remove(@PathVariable Long[] taskIds) {
+ public AjaxResult appRemove(@PathVariable Long[] taskIds) {
return toAjax(sysTaskService.deleteSysTaskByTaskIds(taskIds));
}
/**
- * 鍒嗛厤浠诲姟
+ * 鍒犻櫎浠诲姟锛堝悗鍙扮鐞嗙锛�
*/
- @PreAuthorize("@ss.hasPermi('task:general:assign')")
+ @PreAuthorize("@ss.hasPermi('task:general:remove')")
+ @Log(title = "浠诲姟绠$悊", businessType = BusinessType.DELETE)
+ @DeleteMapping("/admin/{taskIds}")
+ public AjaxResult adminRemove(@PathVariable Long[] taskIds) {
+ return toAjax(sysTaskService.deleteSysTaskByTaskIds(taskIds));
+ }
+
+ /**
+ * 鍒嗛厤浠诲姟锛堝悗鍙扮鐞嗙锛�
+ */
+ @PreAuthorize("@ss.hasPermi('task:general:edit')")
@Log(title = "浠诲姟鍒嗛厤", businessType = BusinessType.UPDATE)
- @PutMapping("/{taskId}/assign")
- public AjaxResult assignTask(@PathVariable Long taskId, @RequestBody AssignTaskRequest request) {
+ @PutMapping("/admin/{taskId}/assign")
+ public AjaxResult adminAssignTask(@PathVariable Long taskId, @RequestBody AssignTaskRequest request) {
return toAjax(sysTaskService.assignTask(taskId, request.getAssigneeId(), request.getRemark()));
}
/**
- * 鏇存柊浠诲姟鐘舵��
+ * 鍒嗛厤浠诲姟锛圓PP绔級
*/
- @PreAuthorize("@ss.hasPermi('task:general:status')")
+ @Log(title = "浠诲姟鍒嗛厤", businessType = BusinessType.UPDATE)
+ @PutMapping("/{taskId}/assign")
+ public AjaxResult appAssignTask(@PathVariable Long taskId, @RequestBody AssignTaskRequest request) {
+ return toAjax(sysTaskService.assignTask(taskId, request.getAssigneeId(), request.getRemark()));
+ }
+
+ /**
+ * 鏇存柊浠诲姟鐘舵�侊紙鍚庡彴绠$悊绔級
+ */
+ @PreAuthorize("@ss.hasPermi('task:general:edit')")
+ @Log(title = "浠诲姟鐘舵�佸彉鏇�", businessType = BusinessType.UPDATE)
+ @PutMapping("/admin/{taskId}/status")
+ public AjaxResult adminChangeTaskStatus(@PathVariable Long taskId, @RequestBody ChangeStatusRequest request) {
+ TaskStatus newStatus = TaskStatus.getByCode(request.getTaskStatus());
+ if (newStatus == null) {
+ return error("鏃犳晥鐨勪换鍔$姸鎬�");
+ }
+ return toAjax(sysTaskService.changeTaskStatus(taskId, newStatus, request.getRemark()));
+ }
+
+ /**
+ * 鏇存柊浠诲姟鐘舵�侊紙APP绔級
+ * 鏀寔GPS浣嶇疆淇℃伅涓婃姤
+ */
@Log(title = "浠诲姟鐘舵�佸彉鏇�", businessType = BusinessType.UPDATE)
@PutMapping("/{taskId}/status")
- public AjaxResult changeTaskStatus(@PathVariable Long taskId, @RequestBody ChangeStatusRequest request) {
+ public AjaxResult appChangeTaskStatus(@PathVariable Long taskId, @RequestBody ChangeStatusRequest request) {
TaskStatus newStatus = TaskStatus.getByCode(request.getTaskStatus());
if (newStatus == null) {
return error("鏃犳晥鐨勪换鍔$姸鎬�");
@@ -157,9 +227,8 @@
}
/**
- * 鏌ヨ浠诲姟缁熻淇℃伅
+ * 鏌ヨ浠诲姟缁熻淇℃伅锛圓PP绔級
*/
- @PreAuthorize("@ss.hasPermi('task:general:query')")
@GetMapping("/statistics")
public AjaxResult getStatistics() {
TaskStatisticsVO statistics = sysTaskService.getTaskStatistics();
@@ -167,9 +236,18 @@
}
/**
- * 鏌ヨ瓒呮椂浠诲姟鍒楄〃
+ * 鏌ヨ浠诲姟缁熻淇℃伅锛堝悗鍙扮鐞嗙锛�
*/
@PreAuthorize("@ss.hasPermi('task:general:query')")
+ @GetMapping("/admin/statistics")
+ public AjaxResult adminGetStatistics() {
+ TaskStatisticsVO statistics = sysTaskService.getTaskStatistics();
+ return success(statistics);
+ }
+
+ /**
+ * 鏌ヨ瓒呮椂浠诲姟鍒楄〃锛圓PP绔級
+ */
@GetMapping("/overdue")
public AjaxResult getOverdueTasks() {
List<SysTask> list = sysTaskService.selectOverdueTasks();
@@ -177,9 +255,18 @@
}
/**
- * 鏌ヨ鎴戠殑浠诲姟鍒楄〃
+ * 鏌ヨ瓒呮椂浠诲姟鍒楄〃锛堝悗鍙扮鐞嗙锛�
*/
@PreAuthorize("@ss.hasPermi('task:general:query')")
+ @GetMapping("/admin/overdue")
+ public AjaxResult adminGetOverdueTasks() {
+ List<SysTask> list = sysTaskService.selectOverdueTasks();
+ return success(list);
+ }
+
+ /**
+ * 鏌ヨ鎴戠殑浠诲姟鍒楄〃锛圓PP绔級
+ */
@GetMapping("/my")
public AjaxResult getMyTasks() {
List<SysTask> list = sysTaskService.selectMyTasks(getUserId());
--
Gitblit v1.9.1