From 7e39aba8980b95fac3b347689aac66da41079d18 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期日, 01 九月 2024 22:41:38 +0800
Subject: [PATCH] 报备功能优化
---
ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportForm.java | 6 ++-
ycl-server/src/main/java/com/ycl/platform/service/ReportService.java | 8 ++++
ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java | 8 ++++
ycl-server/src/main/java/com/ycl/platform/controller/ReportController.java | 6 +++
ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportAuditingForm.java | 4 ++
ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml | 13 ++++++
ycl-server/src/main/java/com/ycl/platform/service/impl/ReportServiceImpl.java | 60 ++++++++++++++++++------------
7 files changed, 79 insertions(+), 26 deletions(-)
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportAuditingForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportAuditingForm.java
index 737d75e..300bc50 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportAuditingForm.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportAuditingForm.java
@@ -14,6 +14,7 @@
import org.springframework.lang.NonNull;
import java.util.Date;
+import java.util.List;
/**
* 鎶ュ琛ㄥ崟
@@ -29,6 +30,9 @@
@NotNull(message = "璇烽�夋嫨瑕佸鏍哥殑鎶ュ")
private Integer id;
+ @ApiModelProperty("鍚屾壒娆″彿鎶ュ")
+ private List<Integer> togetherList;
+
@ApiModelProperty("瀹℃牳鎰忚")
private String auditOpinion;
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportForm.java
index 6be0198..995aec9 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportForm.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/ReportForm.java
@@ -39,12 +39,14 @@
private MultipartFile importPointId;
@ApiModelProperty("鐢熸晥鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date beginCreateTime;
+ private String beginCreateTimeStr;
@ApiModelProperty("澶辨晥鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endCreateTime;
+ private String endCreateTimeStr;
@ApiModelProperty("鎶ュ绫诲瀷")
private String reportType;
diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/ReportController.java b/ycl-server/src/main/java/com/ycl/platform/controller/ReportController.java
index 4c754bf..bf5d5ef 100644
--- a/ycl-server/src/main/java/com/ycl/platform/controller/ReportController.java
+++ b/ycl-server/src/main/java/com/ycl/platform/controller/ReportController.java
@@ -49,6 +49,12 @@
return reportService.importData(form);
}
+ @GetMapping("/getTogether/{pid}")
+ @ApiOperation(value = "鑾峰彇鍚屼竴鎵规鐨勬姤澶�", notes = "鑾峰彇鍚屼竴鎵规鐨勬姤澶�")
+ public Result getTogether(@PathVariable("pid") String pid) {
+ return reportService.getTogether(pid);
+ }
+
@PostMapping("/importTemplate")
@ApiOperation(value = "瀵煎叆妯℃澘", notes = "瀵煎叆妯℃澘")
@PreAuthorize("@ss.hasPermi('system:report:add')")
diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java
index 2569293..f61f978 100644
--- a/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java
+++ b/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java
@@ -41,4 +41,12 @@
* @return
*/
Report checkPointReported(@Param("serialNumber") String serialNumber);
+
+ /**
+ * 鑾峰彇鍚屼竴鎵规鍙风殑鎶ュ
+ *
+ * @param pid
+ * @return
+ */
+ List<Report> getTogether(@Param("pid") String pid);
}
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ReportService.java b/ycl-server/src/main/java/com/ycl/platform/service/ReportService.java
index 791a32f..bcea92c 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/ReportService.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/ReportService.java
@@ -101,4 +101,12 @@
* @return
*/
Result auditing(ReportAuditingForm form);
+
+ /**
+ * 鑾峰彇鍚屼竴鎵规鐨勬姤澶�
+ *
+ * @param pid 鎵规鍙�
+ * @return
+ */
+ Result getTogether(String pid);
}
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/ReportServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/ReportServiceImpl.java
index 7ad031e..759fd9c 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/ReportServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/ReportServiceImpl.java
@@ -35,11 +35,9 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
+import org.springframework.util.CollectionUtils;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -122,6 +120,8 @@
YwPeople people = new LambdaQueryChainWrapper<>(peopleMapper).eq(YwPeople::getUserId, userId).one();
form.setPeopleId(people.getId());
form.setUnitId(people.getBelongUnit());
+ form.setBeginCreateTime(DateUtils.parseDate(form.getBeginCreateTimeStr()));
+ form.setEndCreateTime(DateUtils.parseDate(form.getEndCreateTime()));
// 璇诲彇excel鏁版嵁
ExcelUtil<ReportImportDTO> excelUtil = new ExcelUtil<>(ReportImportDTO.class);
List<ReportImportDTO> list = excelUtil.importExcel(form.getImportPointId().getInputStream());
@@ -137,7 +137,7 @@
}
}
YwPoint point = new LambdaQueryChainWrapper<>(ywpointMapper)
- .eq(YwPoint::getSerialNumber, form.getPointId())
+ .eq(YwPoint::getSerialNumber, item.getSerialNumber())
.one();
if (Objects.isNull(point)) {
continue;
@@ -163,6 +163,12 @@
success++;
}
return Result.ok("鎶ュ鐐逛綅鏁帮細" + list.size() + "锛屽鍏ユ垚鍔熸暟锛�" + success);
+ }
+
+ @Override
+ public Result getTogether(String pid) {
+ List<Report> list = baseMapper.getTogether(pid);
+ return Result.ok().data(list);
}
/**
@@ -321,27 +327,33 @@
@Override
@Transactional(rollbackFor = Exception.class)
public Result auditing(ReportAuditingForm form) {
- Report report = baseMapper.selectById(form.getId());
- if (Objects.isNull(report)) {
- throw new RuntimeException("瀹℃牳鐨勬姤澶囦笉瀛樺湪");
+ if (CollectionUtils.isEmpty(form.getTogetherList())) {
+ form.setTogetherList(new ArrayList<>(2));
}
- if (form.getAuditingResult()) {
- report.setStatus(1);
- } else {
- report.setStatus(2);
- }
- Date now = new Date();
- report.setUpdateTime(now);
- baseMapper.updateById(report);
+ form.getTogetherList().add(form.getId());
+ for (Integer id : form.getTogetherList()) {
+ Report report = baseMapper.selectById(id);
+ if (Objects.isNull(report)) {
+ continue;
+ }
+ if (form.getAuditingResult()) {
+ report.setStatus(1);
+ } else {
+ report.setStatus(2);
+ }
+ Date now = new Date();
+ report.setUpdateTime(now);
+ baseMapper.updateById(report);
- // 娣诲姞涓�鏉″鏍歌褰�
- ReportAuditingRecord reportAuditingRecord = new ReportAuditingRecord();
- reportAuditingRecord.setReportId(form.getId());
- reportAuditingRecord.setDeleted(0);
- reportAuditingRecord.setCreateTime(now);
- reportAuditingRecord.setResultRemark(form.getAuditOpinion());
- reportAuditingRecord.setResult(form.getAuditingResult());
- reportAuditingRecordService.save(reportAuditingRecord);
+ // 娣诲姞涓�鏉″鏍歌褰�
+ ReportAuditingRecord reportAuditingRecord = new ReportAuditingRecord();
+ reportAuditingRecord.setReportId(form.getId());
+ reportAuditingRecord.setDeleted(0);
+ reportAuditingRecord.setCreateTime(now);
+ reportAuditingRecord.setResultRemark(form.getAuditOpinion());
+ reportAuditingRecord.setResult(form.getAuditingResult());
+ reportAuditingRecordService.save(reportAuditingRecord);
+ }
return Result.ok("鎿嶄綔鎴愬姛");
}
}
diff --git a/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml
index 7ba82e0..e904349 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml
@@ -23,6 +23,7 @@
r.id, r.report_materials, r.create_time, r.report_type, r.report_content, r.status, r.serial_number as pointId,
r.begin_create_time,
r.end_create_time,
+ r.import_batch_number,
u.unit_name,
p.yw_person_name as peopleName,
pt.point_name,
@@ -50,6 +51,7 @@
r.id, r.report_materials, r.create_time, r.report_type, r.report_content, r.status, r.serial_number,
r.begin_create_time,
r.end_create_time,
+ r.import_batch_number,
u.unit_name,
p.yw_person_name,
pt.point_name
@@ -89,6 +91,17 @@
LIMIT 1
</select>
+ <select id="getTogether" resultType="com.ycl.platform.domain.vo.ReportVO">
+ SELECT
+ r.id,
+ p.point_name
+ FROM
+ t_report t
+ INNER JOIN t_yw_point p ON t.serial_number = p.serial_number
+ WHERE
+ t.import_batch_number = #{pid} AND r.deleted = 0 AND r.status != 1 AND p.deleted = 0
+ </select>
+
--
Gitblit v1.8.0