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

Merge remote-tracking branch 'origin/v15.4_truck_fleet_20240513' into test

# Conflicts: # performance-web/src/main/java/com/clx/performance/controller/temp/TempTraceController.java
......@@ -10,12 +10,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;
......@@ -87,4 +90,18 @@ public class TempTraceController {
return Result.ok(gdRouteDTOS);
}
@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();
}
}
......@@ -20,7 +20,6 @@ import com.clx.performance.utils.LocalDateTimeUtils;
import com.clx.performance.vo.pc.IntegralTruckVO;
import com.clx.user.vo.app.driver.truck.DriverTruckAppVo;
import com.clx.user.vo.feign.DriverInfoFeignVo;
import com.msl.common.utils.DateUtils;
import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import lombok.extern.slf4j.Slf4j;
......@@ -160,8 +159,7 @@ public class IntegralTruckServiceImpl implements IntegralTruckService {
@Override
public IPage<IntegralTruckVO> driverPageTruckRank(DriverPageIntegralTruckRankParam param) {
//String time = LocalDateTimeUtils.formatTime(LocalDateTimeUtils.getStartWeek().minusDays(7));
String time = LocalDateTimeUtils.formatTime(LocalDateTimeUtils.getStartWeek().minusDays(0));
String time = LocalDateTimeUtils.formatTime(LocalDateTimeUtils.getStartWeek().minusDays(7));
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
Long userNo = loginUserInfo.getUserNo();
......@@ -171,8 +169,7 @@ public class IntegralTruckServiceImpl implements IntegralTruckService {
List<String> truckNoList = driverTruckList.stream().map(item -> item.getTruckNo()).collect(Collectors.toList());
param.setTruckNoList(truckNoList);
param.setTime(DateUtils.formatDateTime(LocalDateTime.now()).get());
/* param.setTime(LocalDateTimeUtils.formatTime(LocalDateTimeUtils.getStartWeek()));*/
param.setTime(LocalDateTimeUtils.formatTime(LocalDateTimeUtils.getStartWeek()));
param.setStatisticsDate(time);
IPage<IntegralTruckVO> page = integralTruckDao.driverPageTruckRank(param);
......
......@@ -5,6 +5,7 @@ import com.clx.performance.esplus.mapper.TruckTraceESPlusMapper;
import com.clx.performance.esplus.model.TruckTraceESPlus;
import com.clx.performance.param.mq.trace.TruckTraceSyncMqParam;
import com.clx.performance.service.trace.TruckTraceMqHandlerService;
import com.clx.performance.utils.LocalDateTimeUtils;
import com.clx.performance.utils.zjxl.ZjxlGpsService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -35,13 +36,14 @@ public class TruckTraceMqHandlerServiceImpl implements TruckTraceMqHandlerServic
List<TruckTraceESPlus> esList = new ArrayList<>();
for (TruckTraceDTO item : list) {
TruckTraceESPlus es = new TruckTraceESPlus();
es.setTruckNo(item.getTruckNo());
es.setTruckNo(mq.getTruckNo());
es.setAngle(item.getAngle());
es.setHeight(item.getHeight());
es.setLocation(new BigDecimal[]{item.getLocation()[0], item.getLocation()[1]});
es.setGpsTime(item.getGpsTime());
es.setMileage(item.getMileage());
es.setSpeed(item.getSpeed());
es.setCreateTime(LocalDateTimeUtils.formatTime());
esList.add(es);
}
......
......@@ -42,7 +42,7 @@ public class TruckTraceServiceImpl implements TruckTraceService {
@Autowired
private DriverTraceStruct driverTraceStruct;
private final static long stopMinutes = 35;
private final static long stopMinutes = 5;
@Override
public List<DriverTruckTraceVO> listTruckTraceByTime(String truckNo, String beginTime, String endTime) {
......@@ -343,5 +343,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);
}
}
......@@ -33,4 +33,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 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论