From 1c06f123c3d29ec4d7f778dcd5de2aed05faef3d Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期三, 04 九月 2024 05:49:34 +0800 Subject: [PATCH] 视频安全资源优化 --- ycl-server/src/main/java/com/ycl/platform/service/impl/ReportServiceImpl.java | 96 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 68 insertions(+), 28 deletions(-) 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..62fb564 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; /** @@ -90,10 +88,10 @@ Report entity = ReportForm.getEntityByForm(form, null); entity.setSerialNumber(point.getSerialNumber()); entity.setStatus(0); - entity.setIdentify(IdUtils.randomNO()); Date now = new Date(); entity.setCreateTime(now); entity.setUpdateTime(now); + entity.setIdentify(IdUtils.randomNO(now)); baseMapper.insert(entity); List<ReportErrorType> errorTypeList = form.getErrorTypeList().stream().map(item -> { ReportErrorType reportErrorType = new ReportErrorType(); @@ -122,11 +120,14 @@ 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.getEndCreateTimeStr())); // 璇诲彇excel鏁版嵁 ExcelUtil<ReportImportDTO> excelUtil = new ExcelUtil<>(ReportImportDTO.class); List<ReportImportDTO> list = excelUtil.importExcel(form.getImportPointId().getInputStream()); + Date now = DateUtils.getNowDate(); // 鎵归噺鎻掑叆 - String pid = IdUtils.randomNO(); + String pid = IdUtils.randomNO(now); Integer success = 0; for (ReportImportDTO item : list) { if ("浜嬪墠鎶ュ".equals(form.getReportType())) { @@ -137,7 +138,7 @@ } } YwPoint point = new LambdaQueryChainWrapper<>(ywpointMapper) - .eq(YwPoint::getSerialNumber, form.getPointId()) + .eq(YwPoint::getSerialNumber, item.getSerialNumber()) .one(); if (Objects.isNull(point)) { continue; @@ -146,8 +147,7 @@ entity.setImportBatchNumber(pid); entity.setSerialNumber(item.getSerialNumber()); entity.setStatus(0); - entity.setIdentify(IdUtils.randomNO()); - Date now = DateUtils.getNowDate(); + entity.setIdentify(IdUtils.randomNO(now)); entity.setCreateTime(now); entity.setUpdateTime(now); baseMapper.insert(entity); @@ -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); } /** @@ -246,6 +252,7 @@ @Override public Result page(ReportQuery query) { IPage<ReportVO> page = PageUtil.getPage(query, ReportVO.class); + query.setUnitId(SecurityUtils.getUnitId()); baseMapper.page(page, query); List<SysDictData> errorTypeList = dictTypeService.selectDictDataByType("report_error_type"); Map<String, String> dictMap = errorTypeList.stream().collect(Collectors.toMap(SysDictData::getDictValue, SysDictData::getDictLabel)); @@ -304,8 +311,35 @@ public List<ReportVO> export(ReportQuery query) { IPage<ReportVO> page = PageUtil.getPage(query, ReportVO.class); page.setSize(-1); + query.setUnitId(SecurityUtils.getUnitId()); baseMapper.page(page, query); + List<SysDictData> errorTypeList = dictTypeService.selectDictDataByType("report_error_type"); + Map<String, String> dictMap = errorTypeList.stream().collect(Collectors.toMap(SysDictData::getDictValue, SysDictData::getDictLabel)); page.getRecords().forEach(item -> { + if (StringUtils.hasText(item.getErrorType())) { + item.setErrorTypeList(List.of(item.getErrorType().split(","))); + StringBuilder sb = new StringBuilder(); + item.getErrorTypeList().stream().forEach(err -> { + String s = dictMap.get(err); + if (org.springframework.util.StringUtils.hasText(s)) { + sb.append(s).append("銆�"); + } + }); + item.setErrorType(sb.substring(0, sb.length() - 1)); + } + // 瀹℃牳缁撴灉 + List<ReportAuditingRecord> records = new LambdaQueryChainWrapper<>(reportAuditingRecordService.getBaseMapper()) + .eq(ReportAuditingRecord::getReportId, item.getId()) + .orderByDesc(ReportAuditingRecord::getCreateTime) + .last("limit 1") + .list(); + if (! CollectionUtils.isEmpty(records)) { + item.setResultStr(records.get(0).getResult() ? "閫氳繃" : "鏈�氳繃"); + item.setResultRemark(records.get(0).getResultRemark()); + item.setAuditingTime(records.get(0).getCreateTime()); + } else { + item.setResultStr("瀹℃牳涓�"); + } item.setReportContent(EscapeUtil.clean(item.getReportContent())); }); return page.getRecords(); @@ -321,27 +355,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(id); + reportAuditingRecord.setDeleted(0); + reportAuditingRecord.setCreateTime(now); + reportAuditingRecord.setResultRemark(form.getAuditOpinion()); + reportAuditingRecord.setResult(form.getAuditingResult()); + reportAuditingRecordService.save(reportAuditingRecord); + } return Result.ok("鎿嶄綔鎴愬姛"); } } -- Gitblit v1.8.0