|
@@ -267,6 +267,15 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
|
@SneakyThrows
|
|
|
@Override
|
|
|
public ResponseBodyVO<String> updateProjectNowRunState(SimulationManualProjectParam param) {
|
|
|
+
|
|
|
+ //00000 查询项目详情信息并保存
|
|
|
+ String projectId = param.getId();
|
|
|
+ ProjectDetailsVo info = selectProjectDetailsByIdBackUp(SimulationManualProjectParam.builder()
|
|
|
+ .id(projectId)
|
|
|
+ .projectType(DictConstants.PROJECT_TYPE_MANUAL).build()).getInfo();
|
|
|
+ String infoJson = JsonUtil.beanToJson(info);
|
|
|
+ simulationProjectMapper.updateDetailsById(projectId, infoJson);
|
|
|
+
|
|
|
//1 根据 id 查询项目信息
|
|
|
if (isEmpty(param.getId()) || isEmpty(param.getNowRunState())) {
|
|
|
return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
|
|
@@ -403,11 +412,226 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
|
|
|
|
}
|
|
|
|
|
|
+
|
|
|
@Override
|
|
|
- public ResponseBodyVO selectProjectDetailsById(SimulationManualProjectParam param) {
|
|
|
+ @SneakyThrows
|
|
|
+ public ResponseBodyVO<ProjectDetailsVo> selectProjectDetailsById(SimulationManualProjectParam param) {
|
|
|
|
|
|
if (isEmpty(param.getId())) {
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE);
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (isEmpty(param.getProjectType())) {
|
|
|
+ param.setProjectType("1");//默认
|
|
|
+ }
|
|
|
+
|
|
|
+ String s = manualProjectMapper.selectDetailsById(param.getId());
|
|
|
+
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, JsonUtil.jsonToBean(s,ProjectDetailsVo.class));
|
|
|
+ }
|
|
|
+// @Override
|
|
|
+// public ResponseBodyVO<ProjectDetailsVo> selectProjectDetailsById(SimulationManualProjectParam param) {
|
|
|
+//
|
|
|
+// if (isEmpty(param.getId())) {
|
|
|
+// return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
|
|
|
+// }
|
|
|
+//
|
|
|
+// if (isEmpty(param.getProjectType())) {
|
|
|
+// param.setProjectType("1");//默认
|
|
|
+// }
|
|
|
+//
|
|
|
+// ProjectDetailsVo projectDetailsVo = new ProjectDetailsVo();
|
|
|
+//
|
|
|
+// //封装要使用到的数据
|
|
|
+// SimulationManualProjectPo poParam = new SimulationManualProjectPo();
|
|
|
+//
|
|
|
+// if ("1".equals(param.getProjectType())) { // 手动运行任务
|
|
|
+// //项目基本信息
|
|
|
+// SimulationManualProjectPo po = simulationProjectMapper.selectProjectById(param);
|
|
|
+// if (po == null) {
|
|
|
+// return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
+// }
|
|
|
+// poParam = po;
|
|
|
+//
|
|
|
+// } else if ("2".equals(param.getProjectType())) {
|
|
|
+// SimulationManualProjectVo po = simulationAutomaticSubProjectMapper.selectProjectInfo(param);
|
|
|
+// if (po == null) {
|
|
|
+// return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
+// }
|
|
|
+//
|
|
|
+// BeanUtils.copyProperties(po, poParam);
|
|
|
+//
|
|
|
+// }
|
|
|
+//
|
|
|
+// //获取场景包信息
|
|
|
+// ScenePackagePO scenePackagePO = simulationProjectMapper.selectScenePackageInfoById(poParam.getScene());
|
|
|
+//
|
|
|
+// projectDetailsVo.setPackageName(scenePackagePO.getPackageName());
|
|
|
+//
|
|
|
+// //评测等级
|
|
|
+//// String s = getEvaluationLevel(poParam);
|
|
|
+//
|
|
|
+// //算法配置
|
|
|
+// AlgorithmPO algorithmBaseInfoVo = getAlgorithmInfo(poParam);
|
|
|
+//
|
|
|
+//
|
|
|
+// //获取测试得分列表
|
|
|
+// List<AlgorithmScoreVo> firstTargetScore = getFirstTargetScore(param.getId());
|
|
|
+// projectDetailsVo.setAlgorithmScoreList(firstTargetScore);
|
|
|
+//
|
|
|
+// //车辆配置
|
|
|
+// VehiclePO vehicleBaseInfoVo = null;
|
|
|
+// String vehicleConfigId = poParam.getVehicle();
|
|
|
+//
|
|
|
+// ConfigPO configPO = new ConfigPO();
|
|
|
+// configPO.setId(vehicleConfigId);
|
|
|
+// List<ConfigPO> configVehicleVOS = simulationProjectMapper.selectConfigVehicle(configPO);
|
|
|
+// if (!isEmpty(configVehicleVOS)) {
|
|
|
+// ConfigPO configVehicleVO = configVehicleVOS.get(0);
|
|
|
+// List<VehiclePO> vehiclePOS = simulationProjectMapper.selectVehicleBaseInfoById(configVehicleVO.getVehicleId());
|
|
|
+// if (!isEmpty(vehiclePOS)) {
|
|
|
+// vehicleBaseInfoVo = vehiclePOS.get(0);
|
|
|
+// }
|
|
|
+//
|
|
|
+// }
|
|
|
+// /*String vehicleImage = vehicleBaseInfoVo.getVehicleImage();
|
|
|
+// if(!isEmpty(vehicleImage)){
|
|
|
+// vehicleBaseInfoVo.setVehicleImage(vehicleImage.replaceFirst("Front side","Top"));
|
|
|
+// }*/
|
|
|
+//
|
|
|
+// List<ConfigSensorPO> vehicleSensorVos = simulationProjectMapper.selectVehicleSensor(vehicleConfigId);
|
|
|
+//
|
|
|
+// List<SensorBaseInfoVo> sensorCameraList = new ArrayList<>();
|
|
|
+// List<SensorBaseInfoVo> sensorOgtList = new ArrayList<>();
|
|
|
+// List<SensorBaseInfoVo> sensorLidarList = new ArrayList<>();
|
|
|
+// List<SensorBaseInfoVo> sensorRadarList = new ArrayList<>();
|
|
|
+// List<SensorBaseInfoVo> sensorGpsList = new ArrayList<>();
|
|
|
+// for (ConfigSensorPO vs : vehicleSensorVos) {
|
|
|
+// String sensorType = vs.getSensorType();
|
|
|
+// String sensorId = vs.getSensorId();
|
|
|
+// if (DictConstants.SENSOR_CAMERA.equals(sensorType)) {
|
|
|
+// //摄像头
|
|
|
+// SensorBaseInfoVo sensorBaseInfoVo = simulationProjectMapper.selectSensorCamera(sensorId);
|
|
|
+// setVehicleConfig(sensorBaseInfoVo, vs);
|
|
|
+// sensorCameraList.add(sensorBaseInfoVo);
|
|
|
+// } else if (DictConstants.SENSOR_OGT.equals(sensorType)) {
|
|
|
+// //完美传感器
|
|
|
+// SensorBaseInfoVo sensorBaseInfoVo = simulationProjectMapper.selectSensorOgt(sensorId);
|
|
|
+// setVehicleConfig(sensorBaseInfoVo, vs);
|
|
|
+// sensorOgtList.add(sensorBaseInfoVo);
|
|
|
+// } else if (DictConstants.SENSOR_LIDAR.equals(sensorType)) {
|
|
|
+// //激光雷达
|
|
|
+// SensorBaseInfoVo sensorBaseInfoVo = simulationProjectMapper.selectSensorLidar(sensorId);
|
|
|
+// setVehicleConfig(sensorBaseInfoVo, vs);
|
|
|
+// sensorLidarList.add(sensorBaseInfoVo);
|
|
|
+// } else if (DictConstants.SENSOR_RADAR.equals(sensorType)) {
|
|
|
+// //毫米波雷达
|
|
|
+// SensorBaseInfoVo sensorBaseInfoVo = simulationProjectMapper.selectSensorRadar(sensorId);
|
|
|
+// setVehicleConfig(sensorBaseInfoVo, vs);
|
|
|
+// sensorRadarList.add(sensorBaseInfoVo);
|
|
|
+// } else if (DictConstants.SENSOR_GPS.equals(sensorType)) {
|
|
|
+// //gps
|
|
|
+// SensorBaseInfoVo sensorBaseInfoVo = simulationProjectMapper.selectSensorGps(sensorId);
|
|
|
+// setVehicleConfig(sensorBaseInfoVo, vs);
|
|
|
+// sensorGpsList.add(sensorBaseInfoVo);
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// //任务信息
|
|
|
+// ProjectTaskParam projectTaskParam = new ProjectTaskParam();
|
|
|
+// projectTaskParam.setPId(poParam.getId());
|
|
|
+// List<ProjectRunResultRatioNumVo> projectRunResultRatioNumVos = null;
|
|
|
+//
|
|
|
+// //任务运行状态统计
|
|
|
+// List<ProjectRunStateNumVo> projectRunStateNumVos = null;
|
|
|
+//
|
|
|
+// //任务运行结果统计
|
|
|
+// List<ProjectRunResultRatioNumVo> resultScoreList = null;
|
|
|
+//
|
|
|
+// Integer size = simulationProjectTaskMapper.selectProjectTaskNumByProjectId(projectTaskParam);
|
|
|
+// if (size > 0) {
|
|
|
+// projectRunStateNumVos = simulationProjectTaskMapper.selectRunStateCount(poParam.getId());
|
|
|
+// taskRunState(projectRunStateNumVos, size);
|
|
|
+//
|
|
|
+// projectRunResultRatioNumVos = simulationProjectTaskMapper.selectRunResultCount(poParam.getId());
|
|
|
+// taskResultState(projectRunResultRatioNumVos, size);
|
|
|
+//
|
|
|
+// resultScoreList = simulationProjectTaskMapper.selectScoreCount(poParam.getId());
|
|
|
+//
|
|
|
+// //未完成得分为”“的改为0
|
|
|
+// if (!isEmpty(resultScoreList) && resultScoreList.size() == 1 && isEmpty(resultScoreList.get(0).getResultName())) {
|
|
|
+// ProjectRunResultRatioNumVo projectRunResultRatioNumVo = resultScoreList.get(0);
|
|
|
+// projectRunResultRatioNumVo.setResultName("0");
|
|
|
+// }
|
|
|
+// taskScore(resultScoreList, size);
|
|
|
+//
|
|
|
+// }
|
|
|
+//
|
|
|
+// projectDetailsVo.setProjectId(poParam.getProjectId());
|
|
|
+// projectDetailsVo.setProjectName(poParam.getProjectName());
|
|
|
+// projectDetailsVo.setProjectDescribe(poParam.getProjectDescribe());
|
|
|
+// projectDetailsVo.setStartTime(getRqStr(poParam.getStartTime(), 1));
|
|
|
+// projectDetailsVo.setFinishTime(getRqStr(poParam.getFinishTime(), 1));
|
|
|
+// projectDetailsVo.setNowRunState(poParam.getNowRunState());
|
|
|
+// projectDetailsVo.setNowRunStateName(getDictName(DictConstants.PROJECT_RUN_STATE, poParam.getNowRunState()));
|
|
|
+// projectDetailsVo.setEvaluationLevel(getDictName(DictConstants.EVALUATION_LEVEL, poParam.getEvaluationLevel()));
|
|
|
+//// projectDetailsVo.setEvaluationLevel(s);
|
|
|
+// if (algorithmBaseInfoVo != null) {
|
|
|
+// projectDetailsVo.setAlgorithmName(algorithmBaseInfoVo.getAlgorithmName());
|
|
|
+// projectDetailsVo.setAlgorithmDescribe(algorithmBaseInfoVo.getDescription());
|
|
|
+// }
|
|
|
+// if (vehicleBaseInfoVo != null) {
|
|
|
+// projectDetailsVo.setVehicleName(vehicleBaseInfoVo.getVehicleName());
|
|
|
+// projectDetailsVo.setVehicleDescribe(vehicleBaseInfoVo.getDescription());
|
|
|
+// projectDetailsVo.setVehicleTopView(vehicleBaseInfoVo.getVehicleFrontView());
|
|
|
+//
|
|
|
+// }
|
|
|
+// projectDetailsVo.setSensorCameraList(sensorCameraList);
|
|
|
+// projectDetailsVo.setSensorOgtList(sensorOgtList);
|
|
|
+// projectDetailsVo.setSensorLidarList(sensorLidarList);
|
|
|
+// projectDetailsVo.setSensorRadarList(sensorRadarList);
|
|
|
+// projectDetailsVo.setSensorGpsList(sensorGpsList);
|
|
|
+// projectDetailsVo.setStateList(projectRunStateNumVos);
|
|
|
+// projectDetailsVo.setResultList(projectRunResultRatioNumVos);
|
|
|
+// projectDetailsVo.setResultScoreList(resultScoreList);
|
|
|
+//
|
|
|
+// projectDetailsVo.setParallelism(poParam.getParallelism());
|
|
|
+// projectDetailsVo.setMaxSimulationTime(poParam.getMaxSimulationTime());
|
|
|
+// String isChoiceGpu = poParam.getIsChoiceGpu();
|
|
|
+// String g = "";
|
|
|
+// if ("0".equals(isChoiceGpu)) {
|
|
|
+// g = "是";
|
|
|
+// } else if ("1".equals(isChoiceGpu)) {
|
|
|
+// g = "否";
|
|
|
+// }
|
|
|
+// projectDetailsVo.setIsChoiceGpu(g);
|
|
|
+//
|
|
|
+///*
|
|
|
+// //是否生成报告
|
|
|
+// boolean isCreateReport = true;
|
|
|
+// String nowRunState = projectDetailsVo.getNowRunState();
|
|
|
+// if(!ProjectRunStateEnum.FINISH.getCode().equals(nowRunState)){
|
|
|
+// isCreateReport = false;
|
|
|
+// }else{
|
|
|
+// //查询任务是否存在aborted
|
|
|
+// SimulationMptSceneScorePo sPo = new SimulationMptSceneScorePo();
|
|
|
+// sPo.setPId(param.getId());
|
|
|
+// SceneScoreVo sceneScoreVo = simulationProjectTaskMapper.selectRunStateByAborted(sPo);
|
|
|
+// if(sceneScoreVo != null && sceneScoreVo.getNum() > 0){
|
|
|
+// isCreateReport = false;
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// projectDetailsVo.setCreateReport(isCreateReport);
|
|
|
+//*/
|
|
|
+//
|
|
|
+// return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, projectDetailsVo);
|
|
|
+// }
|
|
|
+
|
|
|
+ private ResponseBodyVO<ProjectDetailsVo> selectProjectDetailsByIdBackUp(SimulationManualProjectParam param) {
|
|
|
+
|
|
|
+ if (isEmpty(param.getId())) {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE);
|
|
|
}
|
|
|
|
|
|
if (isEmpty(param.getProjectType())) {
|
|
@@ -423,14 +647,14 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
|
//项目基本信息
|
|
|
SimulationManualProjectPo po = simulationProjectMapper.selectProjectById(param);
|
|
|
if (po == null) {
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
}
|
|
|
poParam = po;
|
|
|
|
|
|
} else if ("2".equals(param.getProjectType())) {
|
|
|
SimulationManualProjectVo po = simulationAutomaticSubProjectMapper.selectProjectInfo(param);
|
|
|
if (po == null) {
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
}
|
|
|
|
|
|
BeanUtils.copyProperties(po, poParam);
|
|
@@ -599,7 +823,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
|
projectDetailsVo.setCreateReport(isCreateReport);
|
|
|
*/
|
|
|
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS, projectDetailsVo);
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, projectDetailsVo);
|
|
|
}
|
|
|
|
|
|
//运行状态统计
|
|
@@ -3993,8 +4217,8 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
|
|
|
return new ResponseBodyVO<>(ResponseBodyVO.Response.SERVER_FAILURE, "没有获取到数据");
|
|
|
}
|
|
|
String deletedName = algorithmMapper.selectDeletedById(po.getAlgorithm());
|
|
|
- if(StringUtil.isNotEmpty(deletedName)){
|
|
|
- po.setAlgorithm(deletedName+"(已删除)");
|
|
|
+ if (StringUtil.isNotEmpty(deletedName)) {
|
|
|
+ po.setAlgorithm(deletedName + "(已删除)");
|
|
|
}
|
|
|
SimulationManualProjectSingleVo vo = new SimulationManualProjectSingleVo();
|
|
|
convertPoToVo(po, vo);
|