二维码功能开发

This commit is contained in:
2025-06-19 14:44:08 +08:00
parent 977ab4bf1b
commit b4e2727c58

View File

@@ -584,17 +584,18 @@ public class PqReportServiceImpl extends ServiceImpl<PqReportMapper, PqReport> i
throw new BusinessException(ReportResponseEnum.GENERATE_REPORT_ERROR); throw new BusinessException(ReportResponseEnum.GENERATE_REPORT_ERROR);
} }
out.close(); out.close();
this.updateDevAndPlanState(devReportParam.getDevId(), devReportParam.getPlanId());
// 检测报告上云
Future<?> future = executor.submit(() -> { Future<?> future = executor.submit(() -> {
this.updateDevAndPlanState(devReportParam.getDevId(), pqDevVO.getCreateId() + ".docx"); sendReportToCloud(pqDevVO.getIp(), reportFullPath, pqDevVO.getCreateId() + ".docx");
}); });
try { try {
future.get(); future.get();
} catch (Exception e) { } catch (Exception e) {
log.error("检测报告上云异常,异常为:"+e.getMessage()); log.error("检测报告上云异常,异常为:"+e.getMessage());
} }
sendReportToCloud(pqDevVO.getIp(), reportFullPath, pqDevVO.getCreateId() + ".docx");
} catch (IOException e) { } catch (IOException e) {
log.error(ReportResponseEnum.GENERATE_REPORT_ERROR.getMessage(), e); log.error(ReportResponseEnum.GENERATE_REPORT_ERROR.getMessage(), e);
throw new BusinessException(ReportResponseEnum.GENERATE_REPORT_ERROR); throw new BusinessException(ReportResponseEnum.GENERATE_REPORT_ERROR);
@@ -621,7 +622,6 @@ public class PqReportServiceImpl extends ServiceImpl<PqReportMapper, PqReport> i
public void sendReportToCloud(String devIp, String reportFullPath, String reportName) { public void sendReportToCloud(String devIp, String reportFullPath, String reportName) {
// String url = "http://pqmcc.com:8060/api/file"; // String url = "http://pqmcc.com:8060/api/file";
String url = "http://127.0.0.1:18082/api/file"; String url = "http://127.0.0.1:18082/api/file";
devIp = "192.168.1.239";
// 将文件上传至目标服务器 // 将文件上传至目标服务器
File file = new File(reportFullPath); File file = new File(reportFullPath);
try { try {
@@ -640,9 +640,7 @@ public class PqReportServiceImpl extends ServiceImpl<PqReportMapper, PqReport> i
monochromeImage.getGraphics().drawImage(bufferedImage, 0, 0, null); monochromeImage.getGraphics().drawImage(bufferedImage, 0, 0, null);
// 4. 将单色图像在内存中编码为完整的BMP文件流 // 4. 将单色图像在内存中编码为完整的BMP文件流
byte[] finalBinData = ImageConverter.convertToBinFormat(bufferedImage); byte[] finalBinData = ImageConverter.convertToBinFormat(bufferedImage);
String base64String = Base64.getEncoder().encodeToString(finalBinData); String base64String = Base64.getEncoder().encodeToString(finalBinData);
System.out.println("二维码base64数据为" + base64String);
// 组装设备通讯模块的参数 // 组装设备通讯模块的参数
SocketMsg<String> sendFileMsg = new SocketMsg<>(); SocketMsg<String> sendFileMsg = new SocketMsg<>();
@@ -655,9 +653,6 @@ public class PqReportServiceImpl extends ServiceImpl<PqReportMapper, PqReport> i
data.set("port", "21"); data.set("port", "21");
data.set("path", "ftp://" + devIp + "/etc/qrc.bin"); data.set("path", "ftp://" + devIp + "/etc/qrc.bin");
data.set("file", base64String); data.set("file", base64String);
sendFileMsg.setData(data.toString()); sendFileMsg.setData(data.toString());
String msg = JSON.toJSONString(sendFileMsg); String msg = JSON.toJSONString(sendFileMsg);
Channel channel = SocketManager.getChannelByUserId("cdf" + DetectionCommunicateConstant.DEV); Channel channel = SocketManager.getChannelByUserId("cdf" + DetectionCommunicateConstant.DEV);