Tiroble 3 lat temu
rodzic
commit
ed293ebb10

+ 8 - 0
src/main/java/com/steerinfo/dil/controller/OffSiteTransportationController.java

@@ -19,6 +19,8 @@ import com.steerinfo.route.util.HTTPRequestUtils;
 import com.steerinfo.route.vo.FullPathVisualizationTo.ViewVisualization;
 import com.steerinfo.route.vo.Map.RouteVo;
 import com.steerinfo.route.vo.ResultWarn;
+import com.steerinfo.route.vo.currentLocation.CurrentLocation;
+import com.steerinfo.route.vo.currentLocation.CurrentLocationResult;
 import com.steerinfo.route.vo.resultJson.SearchPoint;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -480,4 +482,10 @@ public class OffSiteTransportationController extends BaseRESTfulController {
         CompletableFuture<String> totalResult = routeService.createTotalResult(mapValue);
         return success(totalResult);
     }
+    @GetMapping("/getCurrentLocation")
+    public RESTfulResult getCurrentLocation(@RequestParam("capcityNumber") String capcityNumber) throws Exception {
+        CurrentLocationResult currentLocationResult= routeService.getCurrentLocation(capcityNumber);
+        return success(currentLocationResult);
+
+    }
 }

+ 39 - 0
src/main/java/com/steerinfo/inPlantNavigation/controller/IPMMSVertexController.java

@@ -0,0 +1,39 @@
+package com.steerinfo.inPlantNavigation.controller;
+
+import com.steerinfo.dil.util.BaseRESTfulController;
+import com.steerinfo.framework.controller.RESTfulResult;
+import com.steerinfo.inPlantNavigation.model.IPMMSVertex;
+import com.steerinfo.inPlantNavigation.model.IPMMSVertexEdge;
+import com.steerinfo.inPlantNavigation.service.IIPMMSVertexEdgeService;
+import com.steerinfo.inPlantNavigation.service.IIPMMSVertexService;
+import com.steerinfo.inPlantNavigation.service.impl.IPMMSVertexServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/${api.version}/ipmmsvertex")
+public class IPMMSVertexController extends BaseRESTfulController {
+    @Autowired
+    private IIPMMSVertexService ipmmsVertexService;
+
+    @Autowired
+    private IIPMMSVertexEdgeService ipmmsVertexEdgeService;
+
+
+    @GetMapping("/getObtainTheOptimalPath")
+    public RESTfulResult getObtainTheOptimalPath(){
+
+        Map<String, List<IPMMSVertexEdge>> vertexEdgeList= ipmmsVertexEdgeService.initVertexEdge();
+        Map<String, IPMMSVertex> vertexList = ipmmsVertexService.initIPMMSVertex();
+        ArrayList<IPMMSVertex> obtainTheOptimalPath= ipmmsVertexService.getObtainTheOptimalPath("2","0",vertexEdgeList,vertexList);
+        return success(obtainTheOptimalPath);
+    }
+
+}

+ 46 - 0
src/main/java/com/steerinfo/inPlantNavigation/model/IPMMSVertex.java

@@ -0,0 +1,46 @@
+package com.steerinfo.inPlantNavigation.model;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class IPMMSVertex implements Serializable {
+
+    @ApiModelProperty(value="主键",required=false)
+    private BigDecimal vertexID;
+
+    @ApiModelProperty(value="地址名",required=false)
+    private String addressName;
+
+    @ApiModelProperty(value="经度",required=false)
+    private BigDecimal longitude;
+
+    @ApiModelProperty(value="纬度",required=false)
+    private BigDecimal latitude;
+
+    @ApiModelProperty(value="状态",required=false)
+    private Integer status;
+
+    @ApiModelProperty(value="记录创建人",required=false)
+    private String insertUsername;
+
+
+    @ApiModelProperty(value="记录创建时间",required=false)
+    private Date insertTime;
+
+
+    @ApiModelProperty(value="记录修改人",required=false)
+    private String updateUsername;
+
+
+    @ApiModelProperty(value="记录修改时间",required=false)
+    private Date updateTime;
+
+
+    @ApiModelProperty(value="记录创建或修改备注",required=false)
+    private String insertUpdateRemark;
+}

+ 44 - 0
src/main/java/com/steerinfo/inPlantNavigation/model/IPMMSVertexEdge.java

@@ -0,0 +1,44 @@
+package com.steerinfo.inPlantNavigation.model;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class IPMMSVertexEdge implements Serializable {
+    @ApiModelProperty(value="主键",required=false)
+    private BigDecimal vertexEdgeID;
+
+    @ApiModelProperty(value="顶点主键(箭尾)",required=false)
+    private BigDecimal outVertexID;
+
+    @ApiModelProperty(value="顶点主键(箭头)",required=false)
+    private BigDecimal inVertexID;
+
+
+
+    @ApiModelProperty(value="权重",required=false)
+    private Integer weigh;
+
+    @ApiModelProperty(value="记录创建人",required=false)
+    private String insertUsername;
+
+
+    @ApiModelProperty(value="记录创建时间",required=false)
+    private Date insertTime;
+
+
+    @ApiModelProperty(value="记录修改人",required=false)
+    private String updateUsername;
+
+
+    @ApiModelProperty(value="记录修改时间",required=false)
+    private Date updateTime;
+
+
+    @ApiModelProperty(value="记录创建或修改备注",required=false)
+    private String insertUpdateRemark;
+}

+ 11 - 0
src/main/java/com/steerinfo/inPlantNavigation/service/IIPMMSVertexEdgeService.java

@@ -0,0 +1,11 @@
+package com.steerinfo.inPlantNavigation.service;
+
+import com.steerinfo.inPlantNavigation.model.IPMMSVertexEdge;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public interface IIPMMSVertexEdgeService {
+    Map<String, List<IPMMSVertexEdge>> initVertexEdge();
+}

+ 15 - 0
src/main/java/com/steerinfo/inPlantNavigation/service/IIPMMSVertexService.java

@@ -0,0 +1,15 @@
+package com.steerinfo.inPlantNavigation.service;
+
+import com.steerinfo.inPlantNavigation.model.IPMMSVertex;
+import com.steerinfo.inPlantNavigation.model.IPMMSVertexEdge;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public interface IIPMMSVertexService {
+    
+    public Map<String, IPMMSVertex> initIPMMSVertex();
+
+    ArrayList<IPMMSVertex> getObtainTheOptimalPath(String startpoint,String endPoint,Map<String, List<IPMMSVertexEdge>> vertexEdgeList, Map<String, IPMMSVertex> vertexList);
+}

+ 91 - 0
src/main/java/com/steerinfo/inPlantNavigation/service/impl/IPMMSVertexEdgeServiceImpl.java

@@ -0,0 +1,91 @@
+package com.steerinfo.inPlantNavigation.service.impl;
+
+import com.steerinfo.inPlantNavigation.model.IPMMSVertexEdge;
+import com.steerinfo.inPlantNavigation.service.IIPMMSVertexEdgeService;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Service("ipmmsVertexEdgeService")
+public class IPMMSVertexEdgeServiceImpl implements IIPMMSVertexEdgeService {
+    @Override
+    public Map<String, List<IPMMSVertexEdge>> initVertexEdge() {
+
+        Map<String, List<IPMMSVertexEdge>> vertexEdgeList=new HashMap<>();
+        List<IPMMSVertexEdge> arrayList0=new ArrayList<>();
+        IPMMSVertexEdge ipmmsVertexList0Edge0=new IPMMSVertexEdge();
+        ipmmsVertexList0Edge0.setVertexEdgeID(new BigDecimal(0));
+        ipmmsVertexList0Edge0.setWeigh(2);
+        ipmmsVertexList0Edge0.setOutVertexID(new BigDecimal(0));
+        ipmmsVertexList0Edge0.setInVertexID(new BigDecimal(1));
+        arrayList0.add(ipmmsVertexList0Edge0);
+
+        IPMMSVertexEdge ipmmsVertexList0Edge1=new IPMMSVertexEdge();
+        ipmmsVertexList0Edge1.setVertexEdgeID(new BigDecimal(2));
+        ipmmsVertexList0Edge1.setWeigh(5);
+        ipmmsVertexList0Edge1.setOutVertexID(new BigDecimal(0));
+        ipmmsVertexList0Edge1.setInVertexID(new BigDecimal(2));
+        arrayList0.add(ipmmsVertexList0Edge1);
+
+        IPMMSVertexEdge ipmmsVertexList0Edge2=new IPMMSVertexEdge();
+        ipmmsVertexList0Edge2.setVertexEdgeID(new BigDecimal(7));
+        ipmmsVertexList0Edge2.setWeigh(4);
+        ipmmsVertexList0Edge2.setOutVertexID(new BigDecimal(0));
+        ipmmsVertexList0Edge2.setInVertexID(new BigDecimal(3));
+        arrayList0.add(ipmmsVertexList0Edge2);
+
+        vertexEdgeList.put("0",arrayList0);
+
+        List<IPMMSVertexEdge> arrayList1=new ArrayList<>();
+        IPMMSVertexEdge ipmmsVertexList1Edge0=new IPMMSVertexEdge();
+        ipmmsVertexList1Edge0.setVertexEdgeID(new BigDecimal(1));
+        ipmmsVertexList1Edge0.setWeigh(3);
+        ipmmsVertexList1Edge0.setOutVertexID(new BigDecimal(1));
+        ipmmsVertexList1Edge0.setInVertexID(new BigDecimal(0));
+        arrayList1.add(ipmmsVertexList1Edge0);
+
+        vertexEdgeList.put("1",arrayList1);
+
+
+        List<IPMMSVertexEdge> arrayList2=new ArrayList<>();
+        IPMMSVertexEdge ipmmsVertexList2Edge0=new IPMMSVertexEdge();
+        ipmmsVertexList2Edge0.setVertexEdgeID(new BigDecimal(3));
+        ipmmsVertexList2Edge0.setWeigh(2);
+        ipmmsVertexList2Edge0.setOutVertexID(new BigDecimal(2));
+        ipmmsVertexList2Edge0.setInVertexID(new BigDecimal(1));
+        arrayList2.add(ipmmsVertexList2Edge0);
+
+        IPMMSVertexEdge ipmmsVertexList2Edge1=new IPMMSVertexEdge();
+        ipmmsVertexList2Edge1.setVertexEdgeID(new BigDecimal(4));
+        ipmmsVertexList2Edge1.setWeigh(10);
+        ipmmsVertexList2Edge1.setOutVertexID(new BigDecimal(2));
+        ipmmsVertexList2Edge1.setInVertexID(new BigDecimal(3));
+        arrayList2.add(ipmmsVertexList2Edge1);
+
+        vertexEdgeList.put("2",arrayList2);
+
+        List<IPMMSVertexEdge> arrayList3=new ArrayList<>();
+        IPMMSVertexEdge ipmmsVertexList3Edge0=new IPMMSVertexEdge();
+        ipmmsVertexList3Edge0.setVertexEdgeID(new BigDecimal(5));
+        ipmmsVertexList3Edge0.setWeigh(8);
+        ipmmsVertexList3Edge0.setOutVertexID(new BigDecimal(3));
+        ipmmsVertexList3Edge0.setInVertexID(new BigDecimal(2));
+        arrayList3.add(ipmmsVertexList3Edge0);
+
+        IPMMSVertexEdge ipmmsVertexList3Edge1=new IPMMSVertexEdge();
+        ipmmsVertexList3Edge1.setVertexEdgeID(new BigDecimal(7));
+        ipmmsVertexList3Edge1.setWeigh(4);
+        ipmmsVertexList3Edge1.setOutVertexID(new BigDecimal(3));
+        ipmmsVertexList3Edge1.setInVertexID(new BigDecimal(1));
+        arrayList3.add(ipmmsVertexList3Edge1);
+
+        vertexEdgeList.put("3",arrayList3);
+
+
+        return vertexEdgeList;
+    }
+}

+ 149 - 0
src/main/java/com/steerinfo/inPlantNavigation/service/impl/IPMMSVertexServiceImpl.java

@@ -0,0 +1,149 @@
+package com.steerinfo.inPlantNavigation.service.impl;
+
+import com.steerinfo.inPlantNavigation.model.IPMMSVertex;
+import com.steerinfo.inPlantNavigation.model.IPMMSVertexEdge;
+import com.steerinfo.inPlantNavigation.service.IIPMMSVertexService;
+import org.apache.commons.lang.SerializationUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.*;
+
+@Service("ipmmsVertexService")
+public class IPMMSVertexServiceImpl implements IIPMMSVertexService {
+
+
+
+    @Override
+    public ArrayList<IPMMSVertex> getObtainTheOptimalPath(String startpoint,String endPoint,Map<String, List<IPMMSVertexEdge>> vertexEdgeList, Map<String, IPMMSVertex> vertexList) {
+        //初始化数据
+        int[] startPoin=new int[]{0,-1};
+        //创建S战队(放入的是已经遍历过边的顶点)
+        List<String> obtainTheOptimalPath=new ArrayList();
+        //obtainTheOptimalPath.add(statpoint);
+        //创建 dist[]  (起点到集合点中的最短路径) key:指向的点 new int[]{0,-1}; {权重、中间点}
+        HashMap<String,int[]> currentBestDinstance=new HashMap<>();
+        currentBestDinstance.put(startpoint,startPoin);
+        while (obtainTheOptimalPath.size()!=vertexList.size()){
+            // dist[]最小值
+            String stringMinimumValue = getStringMinimumValue(currentBestDinstance, obtainTheOptimalPath);
+            //加入S战队
+
+            obtainTheOptimalPath.add(stringMinimumValue);
+
+            //借东风
+            List<IPMMSVertexEdge> ipmmsVertexEdges = vertexEdgeList.get(stringMinimumValue);
+                //遍历所有的边
+            for(IPMMSVertexEdge ipmmsVertexEdge :ipmmsVertexEdges){
+                //箭头出发点
+                BigDecimal outVertexID = ipmmsVertexEdge.getOutVertexID();
+                //到该点的最短路径
+                int[] starBestPath = currentBestDinstance.get(outVertexID.toString());
+                //被指向的顶点
+                BigDecimal inVertexID= ipmmsVertexEdge.getInVertexID();
+                int[] historyBestPaht = currentBestDinstance.get(inVertexID.toString());
+                //判断是否存在其路线到这个点的距离。如果不存在则将这条线路作为起点到该点最短路径、如果本条路线是最短路径需要替换最短路径
+                if(historyBestPaht==null||(starBestPath[0]+ipmmsVertexEdge.getWeigh())<historyBestPaht[0]){
+                    int distance=starBestPath[0]+ipmmsVertexEdge.getWeigh();
+                    int outVertex=outVertexID.intValue();
+                    int[] bestPath=new int[]{distance,outVertex};
+                    currentBestDinstance.put(inVertexID.toString(),bestPath);
+                }
+            }
+        }
+
+
+        return startPointToEndPointPaht(endPoint,currentBestDinstance,vertexList);
+    }
+    //通过所有最优解集合选择我们要的
+    public ArrayList<IPMMSVertex> startPointToEndPointPaht(String point,HashMap<String,int[]> currentBestDinstance,Map<String, IPMMSVertex> vertexList){
+        ArrayList<IPMMSVertex> obtainOptimalPath=new ArrayList();
+        int beforeDistance=100;
+        do {
+            int[] ints = currentBestDinstance.get(point);
+            beforeDistance=ints[1];
+            obtainOptimalPath.add(vertexList.get(point));
+            point=String.valueOf(ints[1]);
+        }
+        while (beforeDistance!=-1);
+        return obtainOptimalPath;
+    }
+
+    public String getStringMinimumValue(HashMap<String,int[]> currentBestDinstance,List<String> obtainTheOptimalPath){
+
+        HashMap<String,int[]> bestDinstance = (HashMap<String, int[]>) SerializationUtils.clone(currentBestDinstance);
+
+        for (String item:obtainTheOptimalPath){
+            if (bestDinstance.containsKey(item)){
+                bestDinstance.remove(item);
+            }
+        }
+        Set<String> keys = bestDinstance.keySet();
+        String vertex="";
+        int minimumValue=100;
+        for (String key :keys){
+            int[] value = currentBestDinstance.get(key);
+            if (minimumValue>value[1]){
+                minimumValue=value[1];
+                vertex=key;
+            }
+        }
+        return vertex;
+    }
+
+    public Map<String,IPMMSVertex> initIPMMSVertex(){
+
+        Map<String,IPMMSVertex> IPMMSVertexList=new HashMap<>();
+
+        IPMMSVertex ipmmsVertex0=new IPMMSVertex();
+        ipmmsVertex0.setVertexID(new BigDecimal(0));
+        ipmmsVertex0.setAddressName("小东门");
+        ipmmsVertex0.setLongitude(new BigDecimal(23.555521));
+        ipmmsVertex0.setLatitude(new BigDecimal(23.555521));
+
+        IPMMSVertexList.put("0",ipmmsVertex0);
+
+        IPMMSVertex ipmmsVertex1=new IPMMSVertex();
+        ipmmsVertex1.setVertexID(new BigDecimal(1));
+        ipmmsVertex1.setAddressName("一棒库");
+        ipmmsVertex1.setLongitude(new BigDecimal(23.555521));
+        ipmmsVertex1.setLatitude(new BigDecimal(23.555521));
+
+        IPMMSVertexList.put("1",ipmmsVertex1);
+
+        IPMMSVertex ipmmsVertex2=new IPMMSVertex();
+        ipmmsVertex2.setVertexID(new BigDecimal(2));
+        ipmmsVertex2.setAddressName("二棒库");
+        ipmmsVertex2.setLongitude(new BigDecimal(23.555521));
+        ipmmsVertex2.setLatitude(new BigDecimal(23.555521));
+
+        IPMMSVertexList.put("2",ipmmsVertex2);
+
+        IPMMSVertex ipmmsVertex3=new IPMMSVertex();
+        ipmmsVertex3.setVertexID(new BigDecimal(3));
+        ipmmsVertex3.setAddressName("高线库");
+        ipmmsVertex3.setLongitude(new BigDecimal(23.555521));
+        ipmmsVertex3.setLatitude(new BigDecimal(23.555521));
+
+        IPMMSVertexList.put("3",ipmmsVertex3);
+
+//        IPMMSVertex ipmmsVertex4=new IPMMSVertex();
+//        ipmmsVertex4.setVertexID(new BigDecimal(4));
+//        ipmmsVertex4.setAddressName("拐角1");
+//        ipmmsVertex4.setLongitude(new BigDecimal(23.555521));
+//        ipmmsVertex4.setLatitude(new BigDecimal(23.555521));
+//
+//        IPMMSVertexList.put("4",ipmmsVertex4);
+//
+//
+//
+//        IPMMSVertex ipmmsVertex5=new IPMMSVertex();
+//        ipmmsVertex5.setVertexID(new BigDecimal(5));
+//        ipmmsVertex5.setAddressName("拐角2");
+//        ipmmsVertex5.setLongitude(new BigDecimal(23.555521));
+//        ipmmsVertex5.setLatitude(new BigDecimal(23.555521));
+//
+//        IPMMSVertexList.put("4",ipmmsVertex5);
+        return IPMMSVertexList;
+    }
+}

+ 3 - 0
src/main/java/com/steerinfo/route/service/RouteService.java

@@ -1,6 +1,8 @@
 package com.steerinfo.route.service;
 
 import com.steerinfo.route.vo.Map.RouteVo;
+import com.steerinfo.route.vo.currentLocation.CurrentLocation;
+import com.steerinfo.route.vo.currentLocation.CurrentLocationResult;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -15,4 +17,5 @@ public interface RouteService {
 
     public CompletableFuture<RouteVo> fullPathVisualizationByCarNumber(HashMap mapValue) throws Exception;
 
+    CurrentLocationResult getCurrentLocation(String capcityNumber) throws Exception;
 }

+ 9 - 0
src/main/java/com/steerinfo/route/service/impl/RouteServiceImpl.java

@@ -19,6 +19,8 @@ import com.steerinfo.route.vo.Map.Point;
 import com.steerinfo.route.vo.Map.RouteVo;
 import com.steerinfo.route.vo.Map.RunRoutePoint;
 import com.steerinfo.route.vo.Map.StartAndEndRoute;
+import com.steerinfo.route.vo.currentLocation.CurrentLocation;
+import com.steerinfo.route.vo.currentLocation.CurrentLocationResult;
 import com.steerinfo.route.vo.resultJson.SearchPoint;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -845,5 +847,12 @@ public class RouteServiceImpl implements RouteService {
 
     }
 
+    @Override
+    public CurrentLocationResult getCurrentLocation(String capcityNumber) throws Exception {
+        String json = zhongJiaoXingLu.vLastLocationV3(capcityNumber);
+        CurrentLocationResult currentLocationResult = (CurrentLocationResult) DataConversionTool.jsonToBean(json, CurrentLocationResult.class);
+        return currentLocationResult;
+    }
+
 
 }

+ 30 - 1
src/main/java/com/steerinfo/route/threeRequest/ZhongJiaoXingLu.java

@@ -90,6 +90,36 @@ public class ZhongJiaoXingLu {
         return null;
     }
 
+
+    public  String vLastLocationV3(String capcityNumber) {
+        try {
+            Map<String, String> map = new HashMap<String, String>(5);
+            String token=dilVersionMapper.getToken();
+            map.put("token", token);
+            map.put("cid", cid);
+            map.put("srt", srt);
+            map.put("timeNearby", "0.1");
+            map.put("vclN", capcityNumber);
+            String url = "https://openapi.sinoiov.cn/save/apis/vLastLocationV3";
+            DataExchangeService des = new DataExchangeService(5000, 8000);
+
+            // 通过 https 方式调用,此方法内部会使用私钥生成签名参数 sign,私钥不会发送
+            String res = des.postHttps(url, map);
+
+            JSONObject jsonObject = JSONObject.parseObject(res);
+            if (jsonObject.get("status").toString().equals(1016+"")){
+                login();
+                return vLastLocationV3( capcityNumber);
+            }
+            return res;
+
+
+        } catch (Exception e) {
+            System.out.println("e:" + e.getMessage());
+        }
+        return null;
+    }
+
     public  String visualRoute2(HashMap routeMap) {
         try {
             //登陆之后返回的token:d21661ca-e0fe-4934-866a-7d78a0756bd4
@@ -118,7 +148,6 @@ public class ZhongJiaoXingLu {
                 login();
                 return visualRoute( routeMap);
             }
-            System.out.println(res);
             return res;
         } catch (Exception e) {
             System.out.println("e:" + e.getMessage());

+ 2 - 0
src/main/java/com/steerinfo/route/util/DataConversionTool.java

@@ -67,6 +67,8 @@ public class DataConversionTool {
                         else {
                             if(field.getType()==Long.class||field.getType()==String.class||field.getType()==Integer.class||field.getType()==Boolean.class){
                                 field.set(classObject,objectValue);
+                            }else {
+                                field.set(classObject,objectValue);
                             }
 
                         }

+ 87 - 0
src/main/java/com/steerinfo/route/vo/currentLocation/CurrentLocation.java

@@ -0,0 +1,87 @@
+package com.steerinfo.route.vo.currentLocation;
+
+import java.io.Serializable;
+
+public class CurrentLocation implements Serializable {
+
+    private String country;
+    private String mil;
+    private String drc;
+    private String province;
+    private String city;
+    private String utc;
+    private String spd;
+    private String lon;
+    private String adr;
+    private String lat;
+    public void setCountry(String country) {
+        this.country = country;
+    }
+    public String getCountry() {
+        return country;
+    }
+
+    public void setMil(String mil) {
+        this.mil = mil;
+    }
+    public String getMil() {
+        return mil;
+    }
+
+    public void setDrc(String drc) {
+        this.drc = drc;
+    }
+    public String getDrc() {
+        return drc;
+    }
+
+    public void setProvince(String province) {
+        this.province = province;
+    }
+    public String getProvince() {
+        return province;
+    }
+
+    public void setCity(String city) {
+        this.city = city;
+    }
+    public String getCity() {
+        return city;
+    }
+
+    public void setUtc(String utc) {
+        this.utc = utc;
+    }
+    public String getUtc() {
+        return utc;
+    }
+
+    public void setSpd(String spd) {
+        this.spd = spd;
+    }
+    public String getSpd() {
+        return spd;
+    }
+
+    public void setLon(String lon) {
+        this.lon = lon;
+    }
+    public String getLon() {
+        return lon;
+    }
+
+    public void setAdr(String adr) {
+        this.adr = adr;
+    }
+    public String getAdr() {
+        return adr;
+    }
+
+    public void setLat(String lat) {
+        this.lat = lat;
+    }
+    public String getLat() {
+        return lat;
+    }
+
+}

+ 19 - 0
src/main/java/com/steerinfo/route/vo/currentLocation/CurrentLocationResult.java

@@ -0,0 +1,19 @@
+package com.steerinfo.route.vo.currentLocation;
+
+public class CurrentLocationResult {
+    private CurrentLocation result;
+    private Integer status;
+    public void setResult(CurrentLocation result) {
+        this.result = result;
+    }
+    public CurrentLocation getResult() {
+        return result;
+    }
+
+    public void setStatus(int status) {
+        this.status = status;
+    }
+    public int getStatus() {
+        return status;
+    }
+}