|
@@ -9,9 +9,9 @@ import org.eco.als.domain.Warning;
|
|
|
import org.eco.als.domain.bo.AlgorithmBo;
|
|
|
import org.eco.als.domain.bo.FalseAlarmBo;
|
|
|
import org.eco.als.domain.bo.FalseAlarmResultBo;
|
|
|
+import org.eco.als.domain.bo.FaultDiagnosisBo;
|
|
|
import org.eco.als.domain.bo.PreProcessingBo;
|
|
|
import org.eco.als.domain.bo.TaskBo;
|
|
|
-import org.eco.als.domain.vo.DataImportVo;
|
|
|
import org.eco.als.domain.vo.ModelHttpVo;
|
|
|
import org.eco.als.domain.vo.ModelVo;
|
|
|
import org.eco.als.service.IAlgorithmService;
|
|
@@ -100,16 +100,10 @@ public class AlgorithmService implements IAlgorithmService {
|
|
|
throw new BusinessException("模型信息为空,请检查!");
|
|
|
}
|
|
|
|
|
|
- File file = null;
|
|
|
- try (InputStream inputStream = ossService.getFileStream(algorithmBo.getOssId())) {
|
|
|
- file = CsvUtils.excelToFileCsvByColumns(inputStream, algorithmBo.getColumnData());
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("文件转换异常:{}", e.getMessage());
|
|
|
- }
|
|
|
- if (ObjectUtil.isNull(file)) {
|
|
|
+ SysOssVo sysOssVo = getSysOssVo(algorithmBo);
|
|
|
+ if (sysOssVo == null) {
|
|
|
return null;
|
|
|
}
|
|
|
- SysOssVo sysOssVo = ossService.upload(file);
|
|
|
PreProcessingBo processingBo =
|
|
|
PreProcessingBo.builder()
|
|
|
.ossId(sysOssVo.getOssId())
|
|
@@ -153,16 +147,10 @@ public class AlgorithmService implements IAlgorithmService {
|
|
|
if (ObjectUtil.isNull(modelVo)) {
|
|
|
throw new BusinessException("模型信息为空,请检查!");
|
|
|
}
|
|
|
- File file = null;
|
|
|
- try (InputStream inputStream = ossService.getFileStream(algorithmBo.getOssId())) {
|
|
|
- file = CsvUtils.excelToFileCsvByColumns(inputStream, algorithmBo.getColumnData());
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("文件转换异常:{}", e.getMessage());
|
|
|
- }
|
|
|
- if (ObjectUtil.isNull(file)) {
|
|
|
+ SysOssVo sysOssVo = getSysOssVo(algorithmBo);
|
|
|
+ if (sysOssVo == null) {
|
|
|
return null;
|
|
|
}
|
|
|
- SysOssVo sysOssVo = ossService.upload(file);
|
|
|
FalseAlarmBo falseAlarmBo = FalseAlarmBo.builder()
|
|
|
.ossId(sysOssVo.getOssId())
|
|
|
.aircraftId(algorithmBo.getAircraftId())
|
|
@@ -214,32 +202,46 @@ public class AlgorithmService implements IAlgorithmService {
|
|
|
if (ObjectUtil.isNull(modelVo)) {
|
|
|
throw new BusinessException("模型信息为空,请检查!");
|
|
|
}
|
|
|
- File file = null;
|
|
|
- try (InputStream inputStream = ossService.getFileStream(algorithmBo.getOssId())) {
|
|
|
- file = CsvUtils.excelToFileCsvByColumns(inputStream, algorithmBo.getColumnData());
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("文件转换异常:{}", e.getMessage());
|
|
|
- }
|
|
|
- if (ObjectUtil.isNull(file)) {
|
|
|
+ SysOssVo sysOssVo = getSysOssVo(algorithmBo);
|
|
|
+ if (sysOssVo == null) {
|
|
|
return null;
|
|
|
}
|
|
|
- SysOssVo sysOssVo = ossService.upload(file);
|
|
|
-
|
|
|
- // 警告列表
|
|
|
- List<Warning> warnings = warningService.listByIds(Arrays.asList(algorithmBo.getWarningIds()));
|
|
|
- Warning warning = warnings.getFirst();
|
|
|
- warnings.forEach(el -> {
|
|
|
- });
|
|
|
+ FaultDiagnosisBo diagnosisBo = FaultDiagnosisBo.builder()
|
|
|
+ .ossId(sysOssVo.getOssId())
|
|
|
+ .aircraftId(algorithmBo.getAircraftId())
|
|
|
+ .modelType(modelVo.getType())
|
|
|
+ .sortieNo(algorithmBo.getSortieNo())
|
|
|
+ .param(algorithmBo.getParam())
|
|
|
+ .status("0")
|
|
|
+ .columnData(Arrays.toString(algorithmBo.getColumnData()))
|
|
|
+ .build();
|
|
|
+ faultDiagnosisService.insert(diagnosisBo);
|
|
|
// 参数
|
|
|
Map<String, Object> map = new HashMap<>(JSONUtil.parseObj(algorithmBo.getParam()));
|
|
|
map.put("url", sysOssVo.getUrl());
|
|
|
// 请求
|
|
|
ModelHttpVo httpVo = sendHttp(modelVo, map);
|
|
|
if (httpVo != null && httpVo.getStatus() == 200) {
|
|
|
+ diagnosisBo.setStatus("1");
|
|
|
+ diagnosisBo.setResultContent(httpVo.getData());
|
|
|
+ faultDiagnosisService.update(diagnosisBo);
|
|
|
}
|
|
|
return httpVo != null ? httpVo.getData() : null;
|
|
|
}
|
|
|
|
|
|
+ private SysOssVo getSysOssVo(AlgorithmBo algorithmBo) {
|
|
|
+ File file = null;
|
|
|
+ try (InputStream inputStream = ossService.getFileStream(algorithmBo.getOssId())) {
|
|
|
+ file = CsvUtils.excelToFileCsvByColumns(inputStream, algorithmBo.getColumnData());
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("文件转换异常:{}", e.getMessage());
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNull(file)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ return ossService.upload(file);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public String batchExecute(TaskBo taskBo) {
|
|
|
// 数据编号
|
|
@@ -255,29 +257,9 @@ public class AlgorithmService implements IAlgorithmService {
|
|
|
List<AlgorithmBo> algorithmList = taskBo.getAlgorithmList();
|
|
|
// 批量执行
|
|
|
algorithmList.forEach(el -> {
|
|
|
- // 模型相关信息
|
|
|
- ModelVo modelVo = modelService.selectById(el.getModelId());
|
|
|
- // 数据相关信息
|
|
|
- DataImportVo dataVo = dataImportService.selectById(el.getDataId());
|
|
|
- // 参数
|
|
|
- Map<String, Object> map = new HashMap<>(JSONUtil.parseObj(el.getParam()));
|
|
|
- try (InputStream inputStream = ossService.getFileStream(dataVo.getOssId())) {
|
|
|
- File file = CsvUtils.excelToFileCsvByColumns(inputStream, el.getColumnData());
|
|
|
- SysOssVo sysOssVo = ossService.upload(file);
|
|
|
- // 请求
|
|
|
- map.put("url", sysOssVo.getUrl());
|
|
|
- ModelHttpVo httpVo = sendHttp(modelVo, map);
|
|
|
- if (httpVo != null && httpVo.getStatus() == 200) {
|
|
|
- File resultFile = CsvUtils.jsonToFileCsv(httpVo.getData(), CsvUtils.extractFilename("model_result"
|
|
|
- ));
|
|
|
- SysOssVo sysOssVo2 = ossService.upload(resultFile);
|
|
|
- }
|
|
|
- if (taskBo.getStepNumber() == 1) {
|
|
|
- // TODO 对应结果
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- log.error(e.getMessage());
|
|
|
- }
|
|
|
+ executePro(el);
|
|
|
+ executeFalseAlarm(el);
|
|
|
+ executeFault(el);
|
|
|
});
|
|
|
taskService.insert(taskBo);
|
|
|
return null;
|