From 6bab142343375e744e46f2042aa3b0fedea70b06 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 19 五月 2026 23:32:55 +0800
Subject: [PATCH] fix: 设备巡检修改
---
doc/inspection_task_add_acceptor.sql | 11 +++
src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java | 55 ++++++++++++++----
doc/inspection_task_add_exception_fields.sql | 11 +++
src/main/java/com/ruoyi/inspectiontask/pojo/InspectionTask.java | 16 +++++
doc/update_inspection_task.sql | 1
src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java | 12 ++++
src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java | 6 ++
src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java | 2
doc/timing_task_add_acceptor.sql | 11 +++
src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java | 12 ++++
src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java | 13 ---
11 files changed, 126 insertions(+), 24 deletions(-)
diff --git a/doc/inspection_task_add_acceptor.sql b/doc/inspection_task_add_acceptor.sql
new file mode 100644
index 0000000..735549e
--- /dev/null
+++ b/doc/inspection_task_add_acceptor.sql
@@ -0,0 +1,11 @@
+-- 宸℃浠诲姟琛ㄦ柊澧為獙鏀跺叆瀛楁
+-- 娣诲姞鏃堕棿: 2026-05-19
+-- 璇存槑: 涓哄贰妫�浠诲姟琛ㄦ坊鍔犻獙鏀朵汉瀛楁锛岀敤浜庤褰曞贰妫�鐨勯獙鏀朵汉鍛�
+
+-- 鏂板宸℃楠屾敹浜篒D瀛楁
+ALTER TABLE inspection_task
+ADD COLUMN inspection_acceptor_id BIGINT NULL DEFAULT NULL COMMENT '宸℃楠屾敹浜篒D' AFTER tenant_id;
+
+-- 鏂板宸℃楠屾敹浜哄鍚嶅瓧娈�
+ALTER TABLE inspection_task
+ADD COLUMN inspection_acceptor VARCHAR(100) NULL DEFAULT NULL COMMENT '宸℃楠屾敹浜哄鍚�' AFTER inspection_acceptor_id;
diff --git a/doc/inspection_task_add_exception_fields.sql b/doc/inspection_task_add_exception_fields.sql
new file mode 100644
index 0000000..3042d17
--- /dev/null
+++ b/doc/inspection_task_add_exception_fields.sql
@@ -0,0 +1,11 @@
+-- inspection_task琛ㄦ柊澧炲紓甯哥浉鍏冲瓧娈�
+-- 娣诲姞鏃堕棿: 2026-05-19
+-- 璇存槑: 涓哄贰妫�浠诲姟琛ㄦ坊鍔犲紓甯哥姸鎬佸拰寮傚父鎻忚堪瀛楁
+
+-- 鏂板宸℃鐘舵�佸瓧娈�: 0=鏈贰妫�, 1=姝e父, 2=寮傚父
+ALTER TABLE inspection_task
+ADD COLUMN inspection_status INT DEFAULT 0 COMMENT '宸℃鐘舵��: 0=鏈贰妫�, 1=姝e父, 2=寮傚父' AFTER frequency_detail;
+
+-- 鏂板宸℃寮傚父鎻忚堪瀛楁
+ALTER TABLE inspection_task
+ADD COLUMN inspection_remark VARCHAR(2000) NULL DEFAULT NULL COMMENT '宸℃寮傚父鎻忚堪' AFTER inspection_status;
diff --git a/doc/timing_task_add_acceptor.sql b/doc/timing_task_add_acceptor.sql
new file mode 100644
index 0000000..af8158f
--- /dev/null
+++ b/doc/timing_task_add_acceptor.sql
@@ -0,0 +1,11 @@
+-- 瀹氭椂浠诲姟琛ㄦ柊澧為獙鏀跺叆瀛楁
+-- 娣诲姞鏃堕棿: 2026-05-19
+-- 璇存槑: 涓哄畾鏃朵换鍔¤〃娣诲姞楠屾敹浜哄瓧娈碉紝鐢ㄤ簬璁板綍宸℃浠诲姟鐨勯獙鏀朵汉鍛�
+
+-- 鏂板宸℃楠屾敹浜篒D瀛楁
+ALTER TABLE timing_task
+ADD COLUMN inspection_acceptor_id BIGINT NULL DEFAULT NULL COMMENT '宸℃楠屾敹浜篒D' AFTER tenant_id;
+
+-- 鏂板宸℃楠屾敹浜哄鍚嶅瓧娈�
+ALTER TABLE timing_task
+ADD COLUMN inspection_acceptor VARCHAR(100) NULL DEFAULT NULL COMMENT '宸℃楠屾敹浜哄鍚�' AFTER inspection_acceptor_id;
diff --git a/doc/update_inspection_task.sql b/doc/update_inspection_task.sql
new file mode 100644
index 0000000..4ed369d
--- /dev/null
+++ b/doc/update_inspection_task.sql
@@ -0,0 +1 @@
+ALTER TABLE inspection_task ADD COLUMN accept_status INT DEFAULT 0 COMMENT '楠屾敹鐘舵��: 0=寰呴獙鏀�, 1=宸查�氳繃, 2=宸查��鍥�';
diff --git a/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java b/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java
index 40445d1..5ef4a81 100644
--- a/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java
+++ b/src/main/java/com/ruoyi/inspectiontask/controller/InspectionTaskController.java
@@ -16,6 +16,7 @@
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
+import java.util.Map;
/**
* @author :yys
@@ -64,6 +65,17 @@
}
/**
+ * 宸℃楠屾敹
+ */
+ @PostMapping("/accept")
+ @ApiOperation("宸℃楠屾敹")
+ public R acceptInspectionTask(@RequestBody Map<String, Object> params) {
+ Long id = Long.valueOf(params.get("id").toString());
+ Integer acceptStatus = Integer.valueOf(params.get("acceptStatus").toString());
+ return R.ok(inspectionTaskService.acceptInspectionTask(id, acceptStatus));
+ }
+
+ /**
* 宸℃浠诲姟琛ㄥ垹闄�
*/
@DeleteMapping("/delInspectionTask")
diff --git a/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java b/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java
index 6730095..6d6fc26 100644
--- a/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java
+++ b/src/main/java/com/ruoyi/inspectiontask/dto/InspectionTaskDto.java
@@ -1,7 +1,5 @@
package com.ruoyi.inspectiontask.dto;
-import com.ruoyi.basic.dto.StorageBlobDTO;
-import com.ruoyi.basic.pojo.StorageAttachment;
import com.ruoyi.inspectiontask.pojo.InspectionTask;
import com.ruoyi.sales.pojo.CommonFile;
import lombok.Data;
@@ -13,16 +11,9 @@
@EqualsAndHashCode(callSuper = true)
public class InspectionTaskDto extends InspectionTask {
-// private List<StorageBlobDTO> storageBlobDTO;
-// private List<StorageBlobDTO> beforeProduction;
-// private List<StorageBlobDTO> afterProduction;
-// private List<StorageBlobDTO> productionIssues;
-//
-// private List<StorageAttachment> attachments;
+ private Boolean hasException;
private List<String> tempFileIds;
- private List<CommonFile> commonFileList; //鐢熶骇涓�
- private List<CommonFile> commonFileListAfter; //鐢熶骇鍚�
- private List<CommonFile> commonFileListBefore; //鐢熶骇鍓�
+ private List<CommonFile> commonFileList; //宸℃闄勪欢
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/pojo/InspectionTask.java b/src/main/java/com/ruoyi/inspectiontask/pojo/InspectionTask.java
index 4d95a96..84e4608 100644
--- a/src/main/java/com/ruoyi/inspectiontask/pojo/InspectionTask.java
+++ b/src/main/java/com/ruoyi/inspectiontask/pojo/InspectionTask.java
@@ -60,6 +60,13 @@
@Excel(name = "寮�濮嬫棩鏈熶笌鏃堕棿")
private String frequencyDetail;
+ @ApiModelProperty(value = "宸℃鐘舵��: 0=鏈贰妫�, 1=姝e父, 2=寮傚父")
+ private Integer inspectionStatus;
+
+ @ApiModelProperty(value = "宸℃寮傚父鎻忚堪")
+ @Excel(name = "寮傚父鎻忚堪")
+ private String inspectionRemark;
+
@ApiModelProperty(value = "宸℃鍦扮偣璇︾粏鎻忚堪")
private String inspectionLocation;
@@ -89,6 +96,15 @@
@TableField(fill = FieldFill.INSERT)
private Long tenantId;
+ @ApiModelProperty(value = "宸℃楠屾敹浜篒D")
+ private Long inspectionAcceptorId;
+
+ @ApiModelProperty(value = "宸℃楠屾敹浜哄鍚�")
+ private String inspectionAcceptor;
+
+ @ApiModelProperty(value = "楠屾敹鐘舵��: 0=寰呴獙鏀�, 1=宸查�氳繃, 2=宸查��鍥�")
+ private Integer acceptStatus;
+
@TableField(exist = false)
private String dateStr;
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java b/src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java
index f3f3c8b..f9898f9 100644
--- a/src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java
+++ b/src/main/java/com/ruoyi/inspectiontask/pojo/TimingTask.java
@@ -106,4 +106,10 @@
@TableField(fill = com.baomidou.mybatisplus.annotation.FieldFill.INSERT)
private Long tenantId;
+ @ApiModelProperty(value = "宸℃楠屾敹浜篒D")
+ private Long inspectionAcceptorId;
+
+ @ApiModelProperty(value = "宸℃楠屾敹浜哄鍚�")
+ private String inspectionAcceptor;
+
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java b/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java
index 72ca5e4..8c2b0e2 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/InspectionTaskService.java
@@ -18,5 +18,7 @@
int addOrEditInspectionTask(InspectionTaskDto inspectionTaskDto) throws IOException;
+ int acceptInspectionTask(Long id, Integer acceptStatus);
+
int delByIds(Long[] ids);
}
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java b/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java
index 1c4b48a..bb18e52 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/impl/InspectionTaskServiceImpl.java
@@ -122,10 +122,10 @@
SysUser::getNickName,
(existing, replacement) -> existing));
- //澶勭悊闄勪欢
+ //澶勭悊闄勪欢 - 鍙煡璇㈠贰妫�闄勪欢锛坱ype=20锛�
List<CommonFile> commonFiles = commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>()
.in(CommonFile::getCommonId, ids)
- .in(CommonFile::getType, Arrays.asList(FileNameType.INSPECTION.getValue(), FileNameType.INSPECTION_PRODUCTION_BEFORE.getValue(), FileNameType.INSPECTION_PRODUCTION_AFTER.getValue())));
+ .in(CommonFile::getType, Arrays.asList(FileNameType.INSPECTION.getValue())));
if(commonFiles == null){
commonFiles = new ArrayList<>();
}
@@ -158,20 +158,11 @@
dto.setDateStr(inspectionTask.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
- // 鍒濆鍖栦笁涓檮浠跺垪琛�
+ // 璁剧疆闄勪欢鍒楄〃 - 缁熶竴浣跨敤 commonFileList
List<CommonFile> taskFiles = finalCommonFiles.stream()
.filter(commonFile -> Objects.equals(commonFile.getCommonId(), inspectionTask.getId()))
.collect(Collectors.toList());
- dto.setCommonFileList(taskFiles.stream()
- .filter(commonFile -> Objects.equals(commonFile.getType(), FileNameType.INSPECTION.getValue()))
- .collect(Collectors.toList()));
- dto.setCommonFileListAfter(taskFiles.stream()
- .filter(commonFile -> Objects.equals(commonFile.getType(), FileNameType.INSPECTION_PRODUCTION_AFTER.getValue()))
- .collect(Collectors.toList()));
- dto.setCommonFileListBefore(taskFiles.stream()
- .filter(commonFile -> Objects.equals(commonFile.getType(), FileNameType.INSPECTION_PRODUCTION_BEFORE.getValue()))
- .collect(Collectors.toList()));
-
+ dto.setCommonFileList(taskFiles);
return dto;
}).collect(Collectors.toList());
@@ -212,6 +203,25 @@
BeanUtils.copyProperties(inspectionTaskDto, inspectionTask);
inspectionTask.setRegistrantId(SecurityUtils.getLoginUser().getUserId());
inspectionTask.setRegistrant(SecurityUtils.getLoginUser().getUsername());
+
+ // 澶勭悊寮傚父鐘舵�佽浆鎹細hasException -> inspectionStatus
+ // hasException = null -> 0(鏈贰妫�), false -> 1(姝e父), true -> 2(寮傚父)
+ Boolean hasException = inspectionTaskDto.getHasException();
+ if (hasException != null) {
+ inspectionTask.setInspectionStatus(hasException ? 2 : 1);
+ // 濡傛灉鏈夊紓甯告弿杩帮紝璁剧疆寮傚父鎻忚堪
+ if (hasException && inspectionTaskDto.getInspectionRemark() != null) {
+ inspectionTask.setInspectionRemark(inspectionTaskDto.getInspectionRemark());
+ }
+ } else {
+ inspectionTask.setInspectionStatus(0);
+ }
+
+ // 閲嶆柊宸℃鏃讹紝閲嶇疆楠屾敹鐘舵��
+ inspectionTask.setAcceptStatus(0);
+ inspectionTask.setInspectionAcceptorId(null);
+ inspectionTask.setInspectionAcceptor(null);
+
int i;
if (Objects.isNull(inspectionTaskDto.getId())) {
i = inspectionTaskMapper.insert(inspectionTask);
@@ -224,6 +234,25 @@
@Override
@Transactional(rollbackFor = Exception.class)
+ public int acceptInspectionTask(Long id, Integer acceptStatus) {
+ InspectionTask task = inspectionTaskMapper.selectById(id);
+ if (task == null) {
+ throw new RuntimeException("浠诲姟涓嶅瓨鍦�");
+ }
+ if (task.getInspectionStatus() == null || task.getInspectionStatus() == 0) {
+ throw new RuntimeException("璇ヤ换鍔″皻鏈贰妫�锛屾棤娉曢獙鏀�");
+ }
+ task.setInspectionAcceptorId(SecurityUtils.getLoginUser().getUserId());
+ task.setInspectionAcceptor(SecurityUtils.getLoginUser().getUser().getNickName());
+ task.setAcceptStatus(acceptStatus);
+
+ // 濡傛灉鏄��鍥�(2)锛岃�冭檻鍒板彲鑳芥槸閲嶆柊宸℃锛屽彲浠ヤ繚鐣欎箣鍓嶇殑宸℃璁板綍浣嗙姸鎬佸彉涓洪��鍥�
+ // APP绔細鏍规嵁 acceptStatus == 2 鏉ユ斁寮�宸℃鎸夐挳
+ return inspectionTaskMapper.updateById(task);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
public int delByIds(Long[] ids) {
// 妫�鏌ュ弬鏁�
if (ids == null || ids.length == 0) {
diff --git a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java
index 97f2de1..354f971 100644
--- a/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java
+++ b/src/main/java/com/ruoyi/inspectiontask/service/impl/TimingTaskServiceImpl.java
@@ -81,6 +81,13 @@
}
});
+ // 鏀堕泦楠屾敹鍏D
+ taskPage.getRecords().forEach(task -> {
+ if (task.getInspectionAcceptorId() != null) {
+ userIds.add(task.getInspectionAcceptorId());
+ }
+ });
+
// 4. 鎵归噺鏌ヨ鐢ㄦ埛淇℃伅
Map<Long, String> userNickNameMap = new HashMap<>();
if (!userIds.isEmpty()) {
@@ -111,6 +118,11 @@
dto.setInspector(inspectorNickNames);
}
+ // 璁剧疆楠屾敹浜烘樀绉�
+ if (task.getInspectionAcceptorId() != null) {
+ dto.setInspectionAcceptor(userNickNameMap.getOrDefault(task.getInspectionAcceptorId(), "鏈煡鐢ㄦ埛"));
+ }
+
return dto;
}).collect(Collectors.toList());
--
Gitblit v1.9.3