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