终端检测代码提交
This commit is contained in:
@@ -22,7 +22,7 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.IOException;
|
import java.io.*;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -124,8 +124,8 @@ public class PmsTerminalDetectionController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("检测报告下载")
|
@ApiOperation("检测报告下载")
|
||||||
@PostMapping(value = "/reportDownload")
|
@GetMapping(value = "/reportDownload")
|
||||||
public InputStreamResource reportDownload(@RequestBody TerminalParam.DownloadParam param) throws IOException {
|
public InputStreamResource reportDownload( TerminalParam.DownloadParam param) throws IOException {
|
||||||
InputStreamResource minIoUploadResDTO = pmsTerminalDetectionService.reportDownload(param);
|
InputStreamResource minIoUploadResDTO = pmsTerminalDetectionService.reportDownload(param);
|
||||||
return minIoUploadResDTO;
|
return minIoUploadResDTO;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
package com.njcn.process.service;
|
package com.njcn.process.service;
|
||||||
|
|
||||||
import cn.hutool.json.JSONArray;
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.njcn.minioss.bo.MinIoUploadResDTO;
|
|
||||||
import com.njcn.process.pojo.param.TerminalParam;
|
import com.njcn.process.pojo.param.TerminalParam;
|
||||||
import com.njcn.process.pojo.po.PmsTerminalDetection;
|
import com.njcn.process.pojo.po.PmsTerminalDetection;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
@@ -12,7 +10,6 @@ import org.springframework.web.multipart.MultipartFile;
|
|||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ import cn.hutool.core.util.ObjectUtil;
|
|||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.njcn.common.pojo.constant.PatternRegex;
|
|
||||||
import com.njcn.common.pojo.enums.common.DataStateEnum;
|
import com.njcn.common.pojo.enums.common.DataStateEnum;
|
||||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||||
import com.njcn.common.pojo.exception.BusinessException;
|
import com.njcn.common.pojo.exception.BusinessException;
|
||||||
@@ -44,11 +43,7 @@ import org.springframework.util.StringUtils;
|
|||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.ByteArrayInputStream;
|
import java.io.*;
|
||||||
import java.io.ByteArrayOutputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
@@ -207,6 +202,19 @@ public class PmsTerminalDetectionServiceImpl extends ServiceImpl<PmsTerminalDete
|
|||||||
//上传的文件名称
|
//上传的文件名称
|
||||||
String originalFilename = files[i].getOriginalFilename();
|
String originalFilename = files[i].getOriginalFilename();
|
||||||
if (StrUtil.isNotBlank(originalFilename)) {
|
if (StrUtil.isNotBlank(originalFilename)) {
|
||||||
|
if(type==0){
|
||||||
|
//判断文件名称是否正确
|
||||||
|
boolean matches = Pattern.matches("^[A-Za-z0-9\\u4e00-\\u9fa5]*-原始数据报告.docx$",originalFilename );
|
||||||
|
if(!matches){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
String time="[(]((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))[)]";
|
||||||
|
boolean matches1 = Pattern.matches("^[A-Za-z0-9\\u4e00-\\u9fa5]*-检测报告"+time+"$", originalFilename);
|
||||||
|
if(!matches1){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
//获取编号
|
//获取编号
|
||||||
String terminalIds = originalFilename.substring(0, originalFilename.indexOf("-"));
|
String terminalIds = originalFilename.substring(0, originalFilename.indexOf("-"));
|
||||||
//判断数据是否存在
|
//判断数据是否存在
|
||||||
@@ -231,8 +239,6 @@ public class PmsTerminalDetectionServiceImpl extends ServiceImpl<PmsTerminalDete
|
|||||||
//传入的文件格式(终端编号-检测报告(2023-03-01).docx);
|
//传入的文件格式(终端编号-检测报告(2023-03-01).docx);
|
||||||
if (fileName.substring(0, fileName.indexOf("(")).equals("检测报告")) {
|
if (fileName.substring(0, fileName.indexOf("(")).equals("检测报告")) {
|
||||||
String nextInspectionTime = fileName.substring( fileName.indexOf("(") + 1, fileName.indexOf(")"));
|
String nextInspectionTime = fileName.substring( fileName.indexOf("(") + 1, fileName.indexOf(")"));
|
||||||
boolean matches = Pattern.matches(PatternRegex.TIME_FORMAT, nextInspectionTime);
|
|
||||||
if (matches) {
|
|
||||||
//文件上传的地址
|
//文件上传的地址
|
||||||
String path = fileStorageUtil.uploadMultipart(files[i], OssPath.TEST_REPORT);
|
String path = fileStorageUtil.uploadMultipart(files[i], OssPath.TEST_REPORT);
|
||||||
detection.setInspectionReport(path);
|
detection.setInspectionReport(path);
|
||||||
@@ -242,7 +248,6 @@ public class PmsTerminalDetectionServiceImpl extends ServiceImpl<PmsTerminalDete
|
|||||||
data.add(detection);
|
data.add(detection);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -298,16 +303,15 @@ public class PmsTerminalDetectionServiceImpl extends ServiceImpl<PmsTerminalDete
|
|||||||
if (StrUtil.isBlank(terminal.getInspectionReport())) {
|
if (StrUtil.isBlank(terminal.getInspectionReport())) {
|
||||||
throw new BusinessException(OssResponseEnum.DOWNLOAD_FILE_ERROR, "下载检测报告文件URL不存在,请检查数据");
|
throw new BusinessException(OssResponseEnum.DOWNLOAD_FILE_ERROR, "下载检测报告文件URL不存在,请检查数据");
|
||||||
}
|
}
|
||||||
String fileUrl = fileStorageUtil.getFileUrl(terminal.getInspectionReport());
|
InputStream fileStream = fileStorageUtil.getFileStream(terminal.getOriginalReport());
|
||||||
URL url = new URL(fileUrl);
|
return new InputStreamResource(fileStream);
|
||||||
return new InputStreamResource(url.openStream());
|
|
||||||
}
|
}
|
||||||
if (StrUtil.isBlank(terminal.getOriginalReport())) {
|
if (StrUtil.isBlank(terminal.getOriginalReport())) {
|
||||||
throw new BusinessException(OssResponseEnum.DOWNLOAD_FILE_ERROR, "下载原始数据报告文件URL不存在,请检查数据");
|
throw new BusinessException(OssResponseEnum.DOWNLOAD_FILE_ERROR, "下载原始数据报告文件URL不存在,请检查数据");
|
||||||
}
|
}
|
||||||
String fileUrl = fileStorageUtil.getFileUrl(terminal.getOriginalReport());
|
InputStream fileStream = fileStorageUtil.getFileStream(terminal.getOriginalReport());
|
||||||
URL url = new URL(fileUrl);
|
|
||||||
return new InputStreamResource(url.openStream());
|
return new InputStreamResource(fileStream);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user