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)); }
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)); }