Example #1
0
        public string GetCarCurrentPosition(string PlateNum)
        {
            //初始化查询结果集
            DataTable dt = null;
            //第二步初始化返回结果
            Results_CarPosition result = new Results_CarPosition();

            result.result  = false;
            result.message = "车牌号为空!";
            List <EventType_CarPosition> EventType_CarPosition = new List <EventType_CarPosition>();

            //当车牌号不为空时进行车辆当前轨迹点查询
            if (!string.IsNullOrEmpty(PlateNum))
            {
                try
                {
                    string sql = string.Format(@" select ga.PlateNum,poss.* from 
                                                         Garage ga left join (
                                                                              SELECT  lg.gpsId,lg.deviceId,lg.locTime,lg.locLon,lg.locLat,lg.mileage,lg.speed,lg.gpsSignals    
                                                                              FROM (select max(gpsId) as gpsId from Line_Gps lg group by deviceId) pos  
                                                                              left join Line_Gps lg   on pos.gpsId = lg.gpsId)poss on poss.deviceId = ga.DeviceId where ga.PlateNum = '{0}' ", PlateNum);
                    dt = APP.SQLServer_GetCarPoss.SelectDataTable(sql);
                    if (dt.Rows.Count > 0)
                    {
                        EventType_CarPosition data;
                        result.result  = true;
                        result.message = "成功";
                        foreach (DataRow Drow in dt.Rows)
                        {
                            data            = new EventType_CarPosition();
                            data.gpsId      = Drow["gpsId"].ToString();
                            data.deviceId   = Drow["deviceId"].ToString();
                            data.locTime    = Drow["locTime"].ToString();
                            data.locLon     = Drow["locLon"].ToString();
                            data.locLat     = Drow["locLat"].ToString();
                            data.mileage    = Drow["mileage"].ToString();
                            data.speed      = Drow["speed"].ToString();
                            data.gpsSignals = Drow["gpsSignals"].ToString();
                            EventType_CarPosition.Add(data);
                        }
                    }
                    else
                    {
                        //当登录失败后进行赋值登录错误信息
                        result.result  = false;
                        result.message = "未查询到车辆轨迹信息!";
                    }
                }
                catch (Exception e)
                {
                    //异常错误信息
                    result.message = e.ToString();
                }
            }
            result.Data = EventType_CarPosition;
            return(JsonConvert.SerializeObject(result));
        }
Example #2
0
        public string GetCarHisPosition(string PlateNum, string SearchDate)
        {
            //初始化查询结果集
            DataTable dt = null;
            //第二步初始化返回结果
            Results_CarPosition result = new Results_CarPosition();

            result.result  = false;
            result.message = "车牌号或者查询时间为空!";
            List <EventType_CarPosition> EventType_CarPosition = new List <EventType_CarPosition>();

            //当车牌号不为空时进行车辆当前轨迹点查询
            if (!string.IsNullOrEmpty(PlateNum) && !string.IsNullOrEmpty(SearchDate))
            {
                try
                {
                    string sql = string.Format(@" select ga.PlateNum,lg.* from Garage ga
                                                      left join Line_Gps lg   on ga.deviceId = lg.DeviceId where ga.PlateNum = '{0}' and lg.locTime > '{1} 00:00:00' 
                                                      and lg.locTime < '{1} 23:59:59' order by lg.locTime asc ", PlateNum, SearchDate);
                    dt = APP.SQLServer_GetCarPoss.SelectDataTable(sql);
                    if (dt.Rows.Count > 0)
                    {
                        EventType_CarPosition data;
                        result.result  = true;
                        result.message = "成功";
                        foreach (DataRow Drow in dt.Rows)
                        {
                            data            = new EventType_CarPosition();
                            data.gpsId      = Drow["gpsId"].ToString();
                            data.deviceId   = Drow["deviceId"].ToString();
                            data.locTime    = Drow["locTime"].ToString();
                            data.locLon     = Drow["locLon"].ToString();
                            data.locLat     = Drow["locLat"].ToString();
                            data.mileage    = Drow["mileage"].ToString();
                            data.speed      = Drow["speed"].ToString();
                            data.gpsSignals = Drow["gpsSignals"].ToString();
                            EventType_CarPosition.Add(data);
                        }
                    }
                    else
                    {
                        //当登录失败后进行赋值登录错误信息
                        result.result  = false;
                        result.message = "未查询到车辆轨迹信息!";
                    }
                }
                catch (Exception e)
                {
                    //异常错误信息
                    result.message = e.ToString();
                }
            }
            result.Data = EventType_CarPosition;
            return(JsonConvert.SerializeObject(result));
        }