|
|
@@ -1,11 +1,20 @@
|
|
|
package com.aoyang.tms.service.impl;
|
|
|
|
|
|
import com.aoyang.common.result.Result;
|
|
|
+import com.aoyang.tms.controller.vo.LocationVO;
|
|
|
+import com.aoyang.tms.entity.TruckSimCard;
|
|
|
import com.aoyang.tms.feign.StrategyFeignClient;
|
|
|
+import com.aoyang.tms.feign.result.TmsMongoDoc;
|
|
|
import com.aoyang.tms.feign.result.Truck;
|
|
|
import com.aoyang.tms.feign.result.TruckDriver;
|
|
|
import com.aoyang.tms.service.CommonService;
|
|
|
+import com.aoyang.tms.service.TruckSimCardService;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.data.domain.Sort;
|
|
|
+import org.springframework.data.mongodb.core.MongoTemplate;
|
|
|
+import org.springframework.data.mongodb.core.query.Criteria;
|
|
|
+import org.springframework.data.mongodb.core.query.Query;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
@@ -24,6 +33,12 @@ public class CommonServiceImpl implements CommonService {
|
|
|
@Resource
|
|
|
private StrategyFeignClient strategyFeignClient;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private MongoTemplate mongoTemplate;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private TruckSimCardService truckSimCardService;
|
|
|
+
|
|
|
@Override
|
|
|
public List<TruckDriver> findTruckDrivers(Long truckId) {
|
|
|
TruckDriver truckDriver = new TruckDriver();
|
|
|
@@ -60,4 +75,25 @@ public class CommonServiceImpl implements CommonService {
|
|
|
public boolean verifyResult(Result result) {
|
|
|
return false;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public LocationVO getLocation(Long truckId) {
|
|
|
+ QueryWrapper<TruckSimCard> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("truck_id", truckId);
|
|
|
+ TruckSimCard truckSimCard = truckSimCardService.getOne(queryWrapper);
|
|
|
+ if (truckSimCard == null) {
|
|
|
+ log.error("绑定信息不存在 truckId:{}", truckId);
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ Query query = new Query(Criteria.where("clientId").is(truckSimCard.getClientId()));
|
|
|
+ query.with(new Sort(Sort.Direction.DESC, "createTime"));
|
|
|
+ TmsMongoDoc tmsMongoDoc = mongoTemplate.findOne(query, TmsMongoDoc.class);
|
|
|
+ LocationVO location = new LocationVO();
|
|
|
+ location.setLatitude(tmsMongoDoc.getLatitude()+"");
|
|
|
+ location.setLongitude(tmsMongoDoc.getLongitude()+"");
|
|
|
+ location.setCarNumber(truckSimCard.getCarNumber());
|
|
|
+ location.setTruckId(truckSimCard.getTruckId());
|
|
|
+ location.setLocalTime("20" + tmsMongoDoc.getDateTime());
|
|
|
+ return location;
|
|
|
+ }
|
|
|
}
|