From ae478a3d5dab28dd598d39f27429e4a544b15ad2 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期四, 25 十二月 2025 22:48:06 +0800
Subject: [PATCH] feat:已完成时,检查附件是否上传
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/SysTaskController.java | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 1 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 4181398..e41be20 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
@@ -4,6 +4,8 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
+import com.ruoyi.common.annotation.Anonymous;
+import com.ruoyi.system.domain.SysTaskEmergency;
import com.ruoyi.system.service.*;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -47,6 +49,9 @@
@Autowired
private ISysTaskService sysTaskService;
+
+ @Autowired
+ private ISysTaskEmergencyService sysTaskEmergencyService;
@Autowired
private IVehicleInfoService vehicleInfoService;
@@ -70,7 +75,18 @@
@GetMapping("/admin/list")
public TableDataInfo adminList(TaskQueryVO queryVO) {
startPage();
- List<SysTask> list = sysTaskService.selectSysTaskList(queryVO);
+ // Handle multi-field task code search
+ String searchTaskCode = queryVO.getTaskCode();
+ List<SysTask> list;
+ if(searchTaskCode != null && !searchTaskCode.trim().isEmpty()){
+ // Search across task_code, emergency_info.dispatch_code, and emergency_info.service_code
+ list = sysTaskService.selectSysTaskListByMultiCode(queryVO, searchTaskCode);
+ } else {
+ queryVO.setTaskCode(null);
+ list = sysTaskService.selectSysTaskList(queryVO);
+ }
+
+
return getDataTable(list);
}
@@ -167,6 +183,8 @@
return toAjax(sysTaskService.insertSysTask(createVO));
}
+
+
/**
* 鏂板浠诲姟锛圓PP绔級
*/
@@ -174,6 +192,30 @@
@PostMapping
public AjaxResult appAdd(@RequestBody TaskCreateVO createVO) {
return toAjax(sysTaskService.insertSysTask(createVO));
+ }
+
+ /**
+ * 妫�鏌ヤ换鍔℃槸鍚﹂噸澶嶏紙鏍规嵁鑱旂郴浜虹數璇濆拰鍒涘缓鏃ユ湡锛�
+ * @param phone 鑱旂郴浜虹數璇�
+ * @param createDate 浠诲姟鍒涘缓鏃ユ湡锛堟牸寮忥細YYYY-MM-DD锛�
+ * @return 鏄惁瀛樺湪閲嶅浠诲姟
+ */
+ @GetMapping("/checkDuplicate")
+ public AjaxResult checkDuplicate(
+ @RequestParam("phone") String phone,
+ @RequestParam("createDate") String createDate) {
+
+ if (StringUtils.isEmpty(phone) || StringUtils.isEmpty(createDate)) {
+ return AjaxResult.error("鍙傛暟涓嶈兘涓虹┖");
+ }
+
+ boolean isDuplicate = sysTaskService.checkTaskDuplicate(phone, createDate);
+
+ if (isDuplicate) {
+ return AjaxResult.error("璇ヨ仈绯荤數璇濆湪璇ユ棩鏈熷凡鏈変换鍔★紝涓嶈兘閲嶅鎻愪氦");
+ }
+
+ return AjaxResult.success("鏈彂鐜伴噸澶嶄换鍔�");
}
/**
@@ -257,6 +299,11 @@
TaskStatus newStatus = TaskStatus.getByCode(request.getTaskStatus());
if (newStatus == null) {
return error("鏃犳晥鐨勪换鍔$姸鎬�");
+ }
+
+ // 濡傛灉鏄彇娑堢姸鎬侊紝淇濆瓨鍙栨秷鍘熷洜
+ if (newStatus == TaskStatus.CANCELLED && StringUtils.isNotEmpty(request.getCancelReason())) {
+ sysTaskService.saveCancelInfo(taskId, request.getCancelReason());
}
// 濡傛灉鍖呭惈GPS浣嶇疆淇℃伅锛屼娇鐢ㄥ甫浣嶇疆鐨勬柟娉�
@@ -412,6 +459,9 @@
private Double altitude;
private Double speed;
private Double heading;
+
+ // 鍙栨秷鐩稿叧瀛楁
+ private String cancelReason; // 鍙栨秷鍘熷洜锛堝叧鑱旀暟鎹瓧鍏竧ask_cancel_reason锛�
public String getTaskStatus() {
return taskStatus;
@@ -508,5 +558,13 @@
public void setHeading(Double heading) {
this.heading = heading;
}
+
+ public String getCancelReason() {
+ return cancelReason;
+ }
+
+ public void setCancelReason(String cancelReason) {
+ this.cancelReason = cancelReason;
+ }
}
}
--
Gitblit v1.9.1