From 00b72514355ed926c11aa08375b3e9704dfbd145 Mon Sep 17 00:00:00 2001 From: huangrh Date: Mon, 16 Mar 2026 16:35:05 +0800 Subject: [PATCH] Align create task API --- interface-checklist.md | 2 +- .../modules/task/controller/TaskController.java | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/interface-checklist.md b/interface-checklist.md index c120430..46c2a86 100644 --- a/interface-checklist.md +++ b/interface-checklist.md @@ -13,7 +13,7 @@ | 7 | GET | `/api/reports` | 报告列表 | `src/api/report.js` | ✅ 已修正 | 支持 `status` 过滤并返回前端表格字段(含 `approval_id`、`报告编号`、`检测机构`、`提交时间`、`状态`) | | 8 | GET | `/api/reports/{id}` | 报告详情 | `src/api/report.js` | ✅ 已修正 | 返回 `status(0/1/2/3)`、`report_id`、`report_type`、`institution`、`submit_time`、`testing_date`、`audit_opinion`、`ocr_result`、`attachments`、`history` | | 9 | GET | `/api/reports/{id}/preview` | 报告预览(图片/历史) | `src/api/report.js` | ✅ 已修正 | 返回 `ocr_result.API核验/org_exists/cma_exists`,并附带 `pages/history` 与 `status` | -| 10 | POST | `/api/tasks` | 创建识别任务 | `src/api/report.js` | | | +| 10 | POST | `/api/tasks` | 创建识别任务 | `src/api/report.js` | ✅ 已修正 | 支持 `product_name/testing_date/contact_phone` 等表单字段 | | 11 | POST | `/api/reports/{id}/submit` | 用户确认提交 | `src/api/report.js` | | | | 12 | POST | `/api/reports/{id}/audit` | 审核提交 | `src/api/report.js` | | | | 13 | DELETE | `/api/reports/{id}` | 删除报告 | `src/api/report.js` | | | diff --git a/src/main/java/com/chinaweal/youfool/reportdetect/modules/task/controller/TaskController.java b/src/main/java/com/chinaweal/youfool/reportdetect/modules/task/controller/TaskController.java index 46ee087..4dc3ccf 100644 --- a/src/main/java/com/chinaweal/youfool/reportdetect/modules/task/controller/TaskController.java +++ b/src/main/java/com/chinaweal/youfool/reportdetect/modules/task/controller/TaskController.java @@ -15,6 +15,8 @@ import org.springframework.web.multipart.MultipartFile; import java.util.HashMap; import java.util.Map; +import java.time.LocalDate; +import java.time.ZoneId; @RestController @RequestMapping("/api") @@ -102,15 +104,24 @@ public class TaskController { @RequestParam("cma_number") String cmaNumber, @RequestParam("institution") String institution, @RequestParam("report_id") String reportId, + @RequestParam(value = "product_name", required = false) String productName, + @RequestParam(value = "testing_date", required = false) String testingDate, @RequestParam("applicant_name") String applicantName, - @RequestParam("applicant_email") String applicantEmail) { + @RequestParam("applicant_email") String applicantEmail, + @RequestParam(value = "contact_phone", required = false) String contactPhone) { try { Task task = new Task(); task.setCmaNumber(cmaNumber); task.setInstitution(institution); task.setReportId(reportId); + task.setProductName(productName); task.setApplicantName(applicantName); task.setApplicantEmail(applicantEmail); + task.setContactPhone(contactPhone); + if (testingDate != null && !testingDate.isBlank()) { + LocalDate d = LocalDate.parse(testingDate); + task.setTestingDate(java.util.Date.from(d.atStartOfDay(ZoneId.systemDefault()).toInstant())); + } Task created = taskService.createTask(file, task);