|
@@ -18,81 +18,81 @@ import lombok.SneakyThrows;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.http.client.config.RequestConfig;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
-import java.io.File;
|
|
|
-import java.io.FileInputStream;
|
|
|
import java.lang.reflect.Field;
|
|
|
-import java.lang.reflect.Method;
|
|
|
-import java.util.*;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
@Slf4j
|
|
|
@Service
|
|
|
public class SceneGeneralExampleService {
|
|
|
|
|
|
@Resource
|
|
|
- SceneGeneralExampleMapper exampleMapper;
|
|
|
+ private SceneGeneralExampleMapper exampleMapper;
|
|
|
@Resource
|
|
|
- SceneGeneralTemplateMapper templateMapper;
|
|
|
+ private SceneGeneralTemplateMapper templateMapper;
|
|
|
@Resource
|
|
|
- SceneGeneralDataMapper dataMapper;
|
|
|
+ private SceneGeneralDataMapper dataMapper;
|
|
|
@Resource
|
|
|
- SceneGeneralTemplateService sceneGeneralTemplateService;
|
|
|
+ private SceneGeneralTemplateService sceneGeneralTemplateService;
|
|
|
+ @Value("${general.url}")
|
|
|
+ private String generalUrl;
|
|
|
|
|
|
- @SneakyThrows
|
|
|
- public ResponseBodyVO querySceneGeneralExampleById(String id) {
|
|
|
|
|
|
- SceneGeneralExamplePO examplePo= exampleMapper.querySceneGeneralExampleById(id);
|
|
|
- if(ObjectUtil.isNotNull(examplePo)){
|
|
|
- SceneGeneralTemplatePO templatePO=templateMapper.querySceneGeneralTemplateById(examplePo.getTemplateId());
|
|
|
- if(ObjectUtil.isNotNull(templatePO)&&templatePO.getIsDeleted().equals("1")){
|
|
|
+ @SneakyThrows
|
|
|
+ public ResponseBodyVO<SceneGeneralTemplateVO> querySceneGeneralExampleById(String id) {
|
|
|
+
|
|
|
+ SceneGeneralExamplePO examplePo = exampleMapper.querySceneGeneralExampleById(id);
|
|
|
+ if (ObjectUtil.isNotNull(examplePo)) {
|
|
|
+ SceneGeneralTemplatePO templatePO = templateMapper.querySceneGeneralTemplateById(examplePo.getTemplateId());
|
|
|
+ if (ObjectUtil.isNotNull(templatePO) && templatePO.getIsDeleted().equals("1")) {
|
|
|
examplePo.setIsTure("1");
|
|
|
}
|
|
|
}
|
|
|
- String generalizationType =JsonUtil.stringToJson(examplePo.getGeneralizationType());
|
|
|
- examplePo.setGeneralizationType(generalizationType);
|
|
|
-
|
|
|
- //转换为vo
|
|
|
- SceneGeneralTemplatePO po=new SceneGeneralTemplatePO();
|
|
|
- BeanUtils.copyProperties(examplePo, po);
|
|
|
- SceneGeneralTemplateVO vo=new SceneGeneralTemplateVO();
|
|
|
- BeanUtils.copyProperties(po, vo);
|
|
|
- List<SceneGeneralTemplateMbVO> listMb=new ArrayList<>();
|
|
|
- if(po.getObsStartX().indexOf(";")!=-1){
|
|
|
- listMb= sceneGeneralTemplateService.spliceVo(po);
|
|
|
- }else{
|
|
|
- SceneGeneralTemplateMbVO mbVO=new SceneGeneralTemplateMbVO();
|
|
|
- BeanUtils.copyProperties(po, mbVO);
|
|
|
- mbVO.setGeneralizationType(po.getGeneralizationType());
|
|
|
- listMb.add(mbVO);
|
|
|
- }
|
|
|
- vo.setListMb(listMb);
|
|
|
- vo.setTemplateId(examplePo.getTemplateId());
|
|
|
- vo.setIsTure(examplePo.getIsTure());
|
|
|
-
|
|
|
-
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS, vo);
|
|
|
+ String generalizationType = JsonUtil.stringToJson(examplePo.getGeneralizationType());
|
|
|
+ examplePo.setGeneralizationType(generalizationType);
|
|
|
|
|
|
- }
|
|
|
+ //转换为vo
|
|
|
+ SceneGeneralTemplatePO po = new SceneGeneralTemplatePO();
|
|
|
+ BeanUtils.copyProperties(examplePo, po);
|
|
|
+ SceneGeneralTemplateVO vo = new SceneGeneralTemplateVO();
|
|
|
+ BeanUtils.copyProperties(po, vo);
|
|
|
+ List<SceneGeneralTemplateMbVO> listMb = new ArrayList<>();
|
|
|
+ if (po.getObsStartX().contains(";")) {
|
|
|
+ listMb = sceneGeneralTemplateService.spliceVo(po);
|
|
|
+ } else {
|
|
|
+ SceneGeneralTemplateMbVO mbVO = new SceneGeneralTemplateMbVO();
|
|
|
+ BeanUtils.copyProperties(po, mbVO);
|
|
|
+ mbVO.setGeneralizationType(po.getGeneralizationType());
|
|
|
+ listMb.add(mbVO);
|
|
|
+ }
|
|
|
+ vo.setListMb(listMb);
|
|
|
+ vo.setTemplateId(examplePo.getTemplateId());
|
|
|
+ vo.setIsTure(examplePo.getIsTure());
|
|
|
|
|
|
- public ResponseBodyVO queryType() {
|
|
|
|
|
|
- List<String> list= templateMapper.queryType();
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, vo);
|
|
|
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS, list);
|
|
|
+ }
|
|
|
|
|
|
+ public ResponseBodyVO<List<String>> queryType() {
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, templateMapper.queryType());
|
|
|
}
|
|
|
|
|
|
@SneakyThrows
|
|
|
- public ResponseBodyVO saveSceneGeneralExample(SceneGeneralTemplateVO vo) {
|
|
|
+ public ResponseBodyVO saveSceneGeneralExample(SceneGeneralTemplateVO vo) {
|
|
|
/* //测试用
|
|
|
SceneGeneralTemplatePO po1=templateMapper.querySceneGeneralTemplateById(vo.getTemplateId());
|
|
|
BeanUtils.copyProperties(po1, vo);*/
|
|
|
|
|
|
//查询泛化标志位并赋值
|
|
|
- SceneGeneralTemplatePO poV= templateMapper.querySceneGeneralTemplateById(vo.getTemplateId());
|
|
|
- SceneGeneralExamplePO po=new SceneGeneralExamplePO();
|
|
|
+ SceneGeneralTemplatePO poV = templateMapper.querySceneGeneralTemplateById(vo.getTemplateId());
|
|
|
+ SceneGeneralExamplePO po = new SceneGeneralExamplePO();
|
|
|
//转换为vo
|
|
|
BeanUtils.copyProperties(vo, po);
|
|
|
po.setGeneralizationType(poV.getGeneralizationType());
|
|
@@ -104,44 +104,45 @@ public class SceneGeneralExampleService {
|
|
|
po.setUuId(StringUtil.getRandomUUID());
|
|
|
|
|
|
//合并目标物
|
|
|
- List<SceneGeneralTemplateMbVO> listMb=vo.getListMb();
|
|
|
-
|
|
|
- String obsStartX= "";
|
|
|
- String obsStartY="";;
|
|
|
- String obsStartVelocity= "";
|
|
|
- String obsLateralAcceleration="";
|
|
|
- String obsLongitudinalAcceleration= "";
|
|
|
- String obsHeadingAngleRel= "";
|
|
|
- String obsDurationTime= "";
|
|
|
- String obsVelocityTime= "";
|
|
|
- String obsTrailTime= "";
|
|
|
- String obsType= "";
|
|
|
-
|
|
|
-
|
|
|
- int a=0;
|
|
|
- for (SceneGeneralTemplateMbVO mbVo: listMb) {
|
|
|
- if(a<1){
|
|
|
- obsStartX=mbVo.getObsStartX();
|
|
|
- obsStartY=mbVo.getObsStartY();
|
|
|
- obsStartVelocity= mbVo.getObsStartVelocity();
|
|
|
- obsLateralAcceleration=mbVo.getObsLateralAcceleration();
|
|
|
- obsLongitudinalAcceleration=mbVo.getObsLongitudinalAcceleration();
|
|
|
- obsHeadingAngleRel= mbVo.getObsHeadingAngleRel();
|
|
|
- obsDurationTime= mbVo.getObsDurationTime();
|
|
|
- obsVelocityTime=mbVo.getObsVelocityTime();
|
|
|
- obsTrailTime=mbVo.getObsTrailTime();
|
|
|
- obsType=mbVo.getObsType();
|
|
|
- }else{
|
|
|
- obsStartX=obsStartX+";"+mbVo.getObsStartX();
|
|
|
- obsStartY=obsStartY+";"+mbVo.getObsStartY();
|
|
|
- obsStartVelocity=obsStartVelocity+";"+mbVo.getObsStartVelocity();
|
|
|
- obsLateralAcceleration=obsLateralAcceleration+";"+mbVo.getObsLateralAcceleration();
|
|
|
- obsLongitudinalAcceleration=obsLongitudinalAcceleration+";"+mbVo.getObsLongitudinalAcceleration();
|
|
|
- obsHeadingAngleRel=obsHeadingAngleRel +";"+mbVo.getObsHeadingAngleRel();
|
|
|
- obsDurationTime=obsDurationTime +";"+mbVo.getObsDurationTime();
|
|
|
- obsVelocityTime=obsVelocityTime+";"+mbVo.getObsVelocityTime();
|
|
|
- obsTrailTime=obsTrailTime+";"+mbVo.getObsTrailTime();
|
|
|
- obsType=obsType+";"+mbVo.getObsType();
|
|
|
+ List<SceneGeneralTemplateMbVO> listMb = vo.getListMb();
|
|
|
+
|
|
|
+ String obsStartX = "";
|
|
|
+ String obsStartY = "";
|
|
|
+ ;
|
|
|
+ String obsStartVelocity = "";
|
|
|
+ String obsLateralAcceleration = "";
|
|
|
+ String obsLongitudinalAcceleration = "";
|
|
|
+ String obsHeadingAngleRel = "";
|
|
|
+ String obsDurationTime = "";
|
|
|
+ String obsVelocityTime = "";
|
|
|
+ String obsTrailTime = "";
|
|
|
+ String obsType = "";
|
|
|
+
|
|
|
+
|
|
|
+ int a = 0;
|
|
|
+ for (SceneGeneralTemplateMbVO mbVo : listMb) {
|
|
|
+ if (a < 1) {
|
|
|
+ obsStartX = mbVo.getObsStartX();
|
|
|
+ obsStartY = mbVo.getObsStartY();
|
|
|
+ obsStartVelocity = mbVo.getObsStartVelocity();
|
|
|
+ obsLateralAcceleration = mbVo.getObsLateralAcceleration();
|
|
|
+ obsLongitudinalAcceleration = mbVo.getObsLongitudinalAcceleration();
|
|
|
+ obsHeadingAngleRel = mbVo.getObsHeadingAngleRel();
|
|
|
+ obsDurationTime = mbVo.getObsDurationTime();
|
|
|
+ obsVelocityTime = mbVo.getObsVelocityTime();
|
|
|
+ obsTrailTime = mbVo.getObsTrailTime();
|
|
|
+ obsType = mbVo.getObsType();
|
|
|
+ } else {
|
|
|
+ obsStartX = obsStartX + ";" + mbVo.getObsStartX();
|
|
|
+ obsStartY = obsStartY + ";" + mbVo.getObsStartY();
|
|
|
+ obsStartVelocity = obsStartVelocity + ";" + mbVo.getObsStartVelocity();
|
|
|
+ obsLateralAcceleration = obsLateralAcceleration + ";" + mbVo.getObsLateralAcceleration();
|
|
|
+ obsLongitudinalAcceleration = obsLongitudinalAcceleration + ";" + mbVo.getObsLongitudinalAcceleration();
|
|
|
+ obsHeadingAngleRel = obsHeadingAngleRel + ";" + mbVo.getObsHeadingAngleRel();
|
|
|
+ obsDurationTime = obsDurationTime + ";" + mbVo.getObsDurationTime();
|
|
|
+ obsVelocityTime = obsVelocityTime + ";" + mbVo.getObsVelocityTime();
|
|
|
+ obsTrailTime = obsTrailTime + ";" + mbVo.getObsTrailTime();
|
|
|
+ obsType = obsType + ";" + mbVo.getObsType();
|
|
|
}
|
|
|
a++;
|
|
|
}
|
|
@@ -157,39 +158,39 @@ public class SceneGeneralExampleService {
|
|
|
po.setObsTrailTime(obsTrailTime);
|
|
|
po.setObsType(obsType);
|
|
|
//远程调用接口
|
|
|
- Map map= beanToMap(po);
|
|
|
+ Map map = beanToMap(po);
|
|
|
RequestConfig requestConfig = RequestConfig.custom()
|
|
|
- .setSocketTimeout(2*60*1000)
|
|
|
- .setConnectTimeout(2*60*1000)
|
|
|
- .setConnectionRequestTimeout(2*6*10*1000)
|
|
|
+ .setSocketTimeout(2 * 60 * 1000)
|
|
|
+ .setConnectTimeout(2 * 60 * 1000)
|
|
|
+ .setConnectionRequestTimeout(2 * 6 * 10 * 1000)
|
|
|
.setRedirectsEnabled(false)
|
|
|
.setExpectContinueEnabled(false)
|
|
|
.build();
|
|
|
- // log.info("测试是否调用成功---入参--"+map);
|
|
|
- String post = HttpUtil.post(HttpUtil.getHttpClient(), requestConfig, "http://47.94.105.148:5000/test_1.0", null, map);
|
|
|
- //log.info("测试是否调用成功-----"+post);
|
|
|
-
|
|
|
- Boolean success= JsonUtil.readTree(post).get("success").asBoolean();
|
|
|
- if(!success){
|
|
|
- String message= JsonUtil.readTree(post).get("message").toString();
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.CLIENT_FAILURE, message);
|
|
|
- }
|
|
|
+ log.info("saveSceneGeneralExample()调用泛化接口--" + generalUrl + "--入参:" + map);
|
|
|
+ String post = HttpUtil.post(HttpUtil.getHttpClient(), requestConfig, generalUrl, null, map);
|
|
|
+ log.info("saveSceneGeneralExample()调用泛化接口--" + generalUrl + "--出参:" + post);
|
|
|
+
|
|
|
+ boolean success = JsonUtil.readTree(post).get("success").asBoolean();
|
|
|
+ if (!success) {
|
|
|
+ String message = JsonUtil.readTree(post).get("message").toString();
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.CLIENT_FAILURE, message);
|
|
|
+ }
|
|
|
JsonNode params = JsonUtil.readTree(post).get("params");
|
|
|
|
|
|
// 实例化 ObjectMapper 对象
|
|
|
ObjectMapper objectMapper = new ObjectMapper();
|
|
|
String newjson = objectMapper.writeValueAsString(params);
|
|
|
|
|
|
- List<SceneGeneralDataPO> list=JsonUtil.jsonToList(newjson,SceneGeneralDataPO.class);
|
|
|
- log.info("测试是否调用成功---444--"+list.size());
|
|
|
- String sceneGeneralizationIds=null;
|
|
|
+ List<SceneGeneralDataPO> list = JsonUtil.jsonToList(newjson, SceneGeneralDataPO.class);
|
|
|
+ log.info("测试是否调用成功---444--" + list.size());
|
|
|
+ String sceneGeneralizationIds = null;
|
|
|
//生成指标id
|
|
|
- String sublistId=StringUtil.getRandomUUID();
|
|
|
+ String sublistId = StringUtil.getRandomUUID();
|
|
|
//生成实例主键id
|
|
|
- String exampleId=StringUtil.getRandomUUID();
|
|
|
- for (SceneGeneralDataPO datePo:list) {
|
|
|
+ String exampleId = StringUtil.getRandomUUID();
|
|
|
+ for (SceneGeneralDataPO datePo : list) {
|
|
|
//生成主键id
|
|
|
- String dataId=StringUtil.getRandomUUID();
|
|
|
+ String dataId = StringUtil.getRandomUUID();
|
|
|
datePo.setId(dataId);
|
|
|
datePo.setCreateTime(TimeUtil.getNowForMysql());
|
|
|
datePo.setCreateUserId(AuthUtil.getCurrentUserId());
|
|
@@ -199,14 +200,14 @@ public class SceneGeneralExampleService {
|
|
|
datePo.setTemplateId(po.getId());
|
|
|
datePo.setExampleId(exampleId);
|
|
|
datePo.setSublistId(sublistId);
|
|
|
- if(ObjectUtil.isNotNull(sceneGeneralizationIds)){
|
|
|
- sceneGeneralizationIds= sceneGeneralizationIds+","+dataId;
|
|
|
- }else{
|
|
|
- sceneGeneralizationIds=dataId;
|
|
|
+ if (ObjectUtil.isNotNull(sceneGeneralizationIds)) {
|
|
|
+ sceneGeneralizationIds = sceneGeneralizationIds + "," + dataId;
|
|
|
+ } else {
|
|
|
+ sceneGeneralizationIds = dataId;
|
|
|
}
|
|
|
}
|
|
|
dataMapper.saveSceneGeneralDataAll(list);
|
|
|
- // po.setTemplateId(po.getId()); //前端需要帮忙赋值
|
|
|
+ // po.setTemplateId(po.getId()); //前端需要帮忙赋值
|
|
|
po.setId(exampleId);
|
|
|
po.setSublistId(sublistId);
|
|
|
po.setCreateTime(TimeUtil.getNowForMysql());
|
|
@@ -216,25 +217,26 @@ public class SceneGeneralExampleService {
|
|
|
po.setIsDeleted("0");
|
|
|
//po.setGeneralizationType(generalizationType);
|
|
|
exampleMapper.saveSceneGeneralExample(po);
|
|
|
- Map map1=new HashMap();
|
|
|
- map1.put("exampleId",exampleId);//实例id
|
|
|
- map1.put("sceneNum",list.size());//场景数量
|
|
|
- map1.put("templateId",po.getTemplateId()); //模板id
|
|
|
- map1.put("sceneGeneralizationIds",sceneGeneralizationIds);//泛化场景数组
|
|
|
- map1.put("sublistId",sublistId); //指标id
|
|
|
+ Map map1 = new HashMap();
|
|
|
+ map1.put("exampleId", exampleId);//实例id
|
|
|
+ map1.put("sceneNum", list.size());//场景数量
|
|
|
+ map1.put("templateId", po.getTemplateId()); //模板id
|
|
|
+ map1.put("sceneGeneralizationIds", sceneGeneralizationIds);//泛化场景数组
|
|
|
+ map1.put("sublistId", sublistId); //指标id
|
|
|
|
|
|
- log.info("测试是否调用成功---555555--"+map1);
|
|
|
- return new ResponseBodyVO(ResponseBodyVO.Response.SUCCESS, map1);
|
|
|
+ log.info("测试是否调用成功---555555--" + map1);
|
|
|
+ return new ResponseBodyVO<>(ResponseBodyVO.Response.SUCCESS, map1);
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 对象转Map
|
|
|
+ *
|
|
|
* @param object
|
|
|
* @return
|
|
|
* @throws IllegalAccessException
|
|
|
*/
|
|
|
- public Map beanToMap(Object object) throws IllegalAccessException {
|
|
|
+ public Map beanToMap(Object object) throws IllegalAccessException {
|
|
|
Map<String, Object> map = new HashMap<String, Object>();
|
|
|
Field[] fields = object.getClass().getDeclaredFields();
|
|
|
for (Field field : fields) {
|