提交 f31a8356 authored 作者: 刘海泉's avatar 刘海泉

为测试提供车辆轨迹生成存入es的接口

上级 6d298e35
......@@ -8,12 +8,15 @@ import com.clx.performance.vo.pc.trace.DriverTruckTraceVO;
import com.msl.common.result.Result;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;
......@@ -71,4 +74,18 @@ public class TempTraceController {
return Result.ok(truckTraceService.getCurrentTruckPosition(truckNo));
}
@ApiOperation(value = "查询车辆5分钟内的最新位置", notes = "<br>By:刘海泉")
@PostMapping("/getTruckPosition")
public Result<BigDecimal[]> getTruckPosition(@Param("truckNo") @NotBlank(message = "车牌号不能为空") String truckNo,
@Param("size") @NotNull(message = "大小字段不能为空") Integer size) {
truckTraceService.saveTruckTrace(truckNo,size);
return Result.ok();
}
}
......@@ -337,5 +337,30 @@ public class TruckTraceServiceImpl implements TruckTraceService {
}
/**
* 生成指定大小的车辆轨迹数据插入到es中
**/
@Override
public void saveTruckTrace(String truckNo,Integer size){
if(size > 3000){
size = 3000;
}
List<TruckTraceESPlus> esList = new ArrayList<>();
for (int i = 0 ;i < size ; i ++ ) {
TruckTraceESPlus es = new TruckTraceESPlus();
es.setTruckNo(truckNo);
es.setAngle(new BigDecimal("1"));
es.setHeight(null);
es.setLocation(new BigDecimal[]{new BigDecimal("116.473705"), new BigDecimal("40.004198")});
es.setGpsTime("2024-05-23 09:09:00");
es.setMileage(null);
es.setSpeed(new BigDecimal("3"));
esList.add(es);
}
// 保存
truckTraceESPlusMapper.insertBatch(esList);
}
}
......@@ -35,4 +35,7 @@ public interface TruckTraceService {
List<DriverTraceVO> calcDriverStayTime(List<DriverTraceVO> traceList);
List<List<DriverTruckTraceVO>> splitTruckTrace(List<DriverTruckTraceVO> traceList);
void saveTruckTrace(String truckNo,Integer size);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论