From 95f2badd2e3d8405a8b9b25f7c6004d3a0eb57ee Mon Sep 17 00:00:00 2001 From: swj <1211312234@qq.com> Date: Sat, 24 Sep 2022 22:51:32 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E8=B4=A8=E9=87=8F=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E7=89=88=E6=9C=AC=E7=AE=A1=E7=90=86=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E5=92=8C=E6=9F=A5=E7=9C=8B=E6=96=87=E4=BB=B6=E6=97=B6=E6=9C=AA?= =?UTF-8?q?=E5=85=B3=E8=81=94=E7=89=88=E6=9C=AC=E6=B7=BB=E5=8A=A0=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/StorageFileController.java | 26 +++++++------------ .../file/service/IStorageFileService.java | 2 +- .../service/impl/QualityFileServiceImpl.java | 12 ++++++++- .../service/impl/StorageFileServiceImpl.java | 10 +------ .../controller/ExamineResultController.java | 11 ++++---- 5 files changed, 29 insertions(+), 32 deletions(-) diff --git a/lab-service/lab-file/src/main/java/org/springblade/file/controller/StorageFileController.java b/lab-service/lab-file/src/main/java/org/springblade/file/controller/StorageFileController.java index cb8aa10..a536622 100644 --- a/lab-service/lab-file/src/main/java/org/springblade/file/controller/StorageFileController.java +++ b/lab-service/lab-file/src/main/java/org/springblade/file/controller/StorageFileController.java @@ -157,15 +157,13 @@ public class StorageFileController extends BladeController { @PostMapping("/upload") @ApiOperationSupport(order = 0) @ApiOperation(value = "上传文件", notes = "上传文件") - public R upload(@ApiParam(value = "上传的文件", required = true) - @Valid @NotNull - @RequestParam("file") MultipartFile file,Long assistentFileId) { + public R upload(@ApiParam(value = "上传的文件", required = true) @Valid @NotNull @RequestParam("file") MultipartFile file) { if (file.isEmpty()) { return R.fail("文件不能为空"); } String originalFilename = file.getOriginalFilename(); InputStream inputStream = file.getInputStream(); - StorageFile storageFile = storageFileService.storageFileAndSave(originalFilename, inputStream, assistentFileId); + StorageFile storageFile = storageFileService.storageFileAndSave(originalFilename, inputStream); return R.data(storageFile); } @@ -182,25 +180,21 @@ public class StorageFileController extends BladeController { @GetMapping("/download/{id}") @ApiOperationSupport(order = 0) @ApiOperation(value = "下载文件", notes = "下载文件") - public void download(@ApiParam(value = "下载的文件id", required = true) - @Valid @NotNull - @PathVariable("id") Long id) { - //获取文件主体 - LambdaQueryWrapper fileQueryWrapper = new LambdaQueryWrapper<>(); - fileQueryWrapper.eq(QualityFile::getId, id); - QualityFile file = qualityFileService.getOne(fileQueryWrapper); - - //根据主体中激活的版本查找子文件 + public void download(@ApiParam(value = "下载的文件id", required = true) @Valid @NotNull @PathVariable("id") Long id) { + // 获取文件主体 + QualityFile file = qualityFileService.getById(id); + + // 根据主体中激活的版本查找子文件 LambdaQueryWrapper fileAssQueryWrapper = new LambdaQueryWrapper<>(); - fileAssQueryWrapper.eq(QualityFileAssistent::getQualityFileId ,id ).eq(QualityFileAssistent::getVersion, file.getVersion()); + fileAssQueryWrapper.eq(QualityFileAssistent::getQualityFileId, id).eq(QualityFileAssistent::getVersion, file.getVersion()); QualityFileAssistent assisFile = qualityFileAssistentService.getOne(fileAssQueryWrapper); - //根据子文件id查找文件真正的保存的文件id + // 根据子文件id查找文件真正的保存的文件id LambdaQueryWrapper qualityStorageFileRelLambdaQueryWrapper = new LambdaQueryWrapper<>(); qualityStorageFileRelLambdaQueryWrapper.eq(QualityStorageFileRel::getQualityFileId, assisFile.getId()); QualityStorageFileRel storageFileRel = qualityStorageFileRelService.getOne(qualityStorageFileRelLambdaQueryWrapper); - //查询 + // 查询 InputStream inputStream = storageFileService.getInputStreamById(storageFileRel.getStorageFileId()); ResponseUtil.download(response, null, inputStream, "application/pdf"); } diff --git a/lab-service/lab-file/src/main/java/org/springblade/file/service/IStorageFileService.java b/lab-service/lab-file/src/main/java/org/springblade/file/service/IStorageFileService.java index 71cbb42..78e2b89 100644 --- a/lab-service/lab-file/src/main/java/org/springblade/file/service/IStorageFileService.java +++ b/lab-service/lab-file/src/main/java/org/springblade/file/service/IStorageFileService.java @@ -45,7 +45,7 @@ public interface IStorageFileService extends BaseService { InputStream getInputStreamById(Long id); - StorageFile storageFileAndSave(String originalFilename, InputStream inputStream, Long id) throws IOException; + StorageFile storageFileAndSave(String originalFilename, InputStream inputStream) throws IOException; int countPageCount(Collection ids); } diff --git a/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/QualityFileServiceImpl.java b/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/QualityFileServiceImpl.java index 0dce65c..a72b9fb 100644 --- a/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/QualityFileServiceImpl.java +++ b/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/QualityFileServiceImpl.java @@ -17,6 +17,7 @@ package org.springblade.file.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import org.apache.commons.lang.math.RandomUtils; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.StringUtil; @@ -106,8 +107,17 @@ public class QualityFileServiceImpl extends BaseServiceImpl fileRels = qualityFile.getFiles(); //根据主表ID删除文件与存储关联的相关记录 - qualityStorageFileRelService.removeByQualityFileId(qualityFileId); +// qualityStorageFileRelService.removeByQualityFileId(qualityFileId); fileRels.forEach(dto -> dto.setQualityFileId(qualityFileId)); int pageCount = storageFileService.countPageCount(fileRels.stream().map(QualityStorageFileRel::getStorageFileId).collect(Collectors.toSet())); diff --git a/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/StorageFileServiceImpl.java b/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/StorageFileServiceImpl.java index d56a12f..a558c99 100644 --- a/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/StorageFileServiceImpl.java +++ b/lab-service/lab-file/src/main/java/org/springblade/file/service/impl/StorageFileServiceImpl.java @@ -90,8 +90,7 @@ public class StorageFileServiceImpl extends BaseServiceImpl> allDatas = new ArrayList<>(); List> allData = new ArrayList<>(); + int simpleCount = 0; // 按照公式计算实验数据并返回 // 参照组:2n 、对照组:2n + 1 for (int group = 0; group < groupCount / 2; group++) { @@ -1221,11 +1220,13 @@ public class ExamineResultController extends BladeController { data1.put("result", "阳性"); allDatas.add(data1); yangCount ++; + simpleCount ++; } else { data1.put("log2", isPig ? "<1:64" : "<1:128"); data1.put("result", "阴性"); allDatas.add(data1); yinCount ++; + simpleCount ++; } } } @@ -1237,7 +1238,7 @@ public class ExamineResultController extends BladeController { realResultMap.put("yangCount", yangCount); // 判断应实验样品数量和实际样品数量是否相等 - if (experieNum.length != allDatas.size()) { + if (experieNum.length != simpleCount) { throw new Exception("分配样品数量与检测样品数量不一致!"); } @@ -1255,7 +1256,7 @@ public class ExamineResultController extends BladeController { examineResult.setExamineId(Long.valueOf(examine.getId())); examineResult.setOriginRecordData(JSON.toJSONString(allData)); // result.setOriginRecordResult(JSON.toJSONString(resultMap)); - result.setOriginRecordResult(JSON.toJSONString(realResultMap)); + examineResult.setOriginRecordResult(JSON.toJSONString(realResultMap)); examineResult.setExamineDataArr(JSON.toJSONString(allDatas)); service.save(examineResult); }