public M轨迹查询结果 查询(M轨迹查询条件 __条件) { var __返回值 = _IT客户端.执行方法(_对象名称, "查询轨迹", new Dictionary <string, string> { { "条件", HJSON.序列化(__条件) } }, 30000); //return HJSON.反序列化<M轨迹查询结果>(__返回值); var __解压 = H序列化.AES解压(__返回值); return(HJSON.反序列化 <M轨迹查询结果>(__解压)); }
public M轨迹查询结果 查询轨迹(M轨迹查询条件 __条件) { var __结果 = new M轨迹查询结果 { 列表 = new List <MGPS>() }; var __表名 = _表前缀 + __条件.开始时间.Date.ToString("yyyyMMdd"); var __页码 = __条件.页码 ?? 1; var __每页数量 = __条件.每页数量 ?? 10000; using (var __连接 = new SqlConnection(_连接字符串)) { var __sql = string.Format("SELECT 1 FROM SYSOBJECTS WHERE XTYPE='U' AND NAME = '{0}'", __表名); var __数量 = (int)SQLHelper.ExecuteScalar(__连接, __sql); if (__数量 == 0) { return(__结果); } __sql = string.Format("SELECT COUNT(*) FROM {0} WHERE 号码 = @号码 AND 时间 >= @开始时间 AND 时间 <= @结束时间 ", __表名); var __号码 = new SqlParameter("号码", __条件.号码); var __开始时间 = new SqlParameter("开始时间", __条件.开始时间); var __结束时间 = new SqlParameter("结束时间", __条件.结束时间); __数量 = (int)SQLHelper.ExecuteScalar(__连接, __sql, new DbParameter[] { __号码, __开始时间, __结束时间 }); if (__数量 == 0) { return(__结果); } __结果.总数量 = __数量; __sql = 获取分页SQL(__表名, "时间, 经度, 纬度, 高度, 速度, 方向, 精度", "号码 = @号码 AND 时间 >= @开始时间 AND 时间 <= @结束时间", "时间 ASC", __页码, __每页数量); __号码 = new SqlParameter("号码", __条件.号码); __开始时间 = new SqlParameter("开始时间", __条件.开始时间); __结束时间 = new SqlParameter("结束时间", __条件.结束时间); using (var __访问器 = SQLHelper.ExecuteReader(__连接, __sql, new DbParameter[] { __号码, __开始时间, __结束时间 })) { while (__访问器.Read()) { var __GPS = new MGPS { 时间 = __访问器.GetDateTime(0), 经度 = (double)__访问器.GetDecimal(1), 纬度 = (double)__访问器.GetDecimal(2), 高度 = __访问器.GetInt16(3), 速度 = __访问器.GetInt16(4), 方向 = __访问器.GetInt16(5), 精度 = __访问器.GetInt16(6), }; __结果.列表.Add(__GPS); } } } return(__结果); }
public M轨迹查询结果 查询(M轨迹查询条件 __条件) { var __列表 = new List <MGPS>(); for (int i = 0; i < 1000; i++) { __列表.Add(new MGPS { 经度 = 118 + i * 0.0001, 纬度 = 32 + i * 0.0001, 时间 = DateTime.Now.AddSeconds(-30 * i) }); } return(new M轨迹查询结果 { 总数量 = 1000, 列表 = __列表 }); }
public List <MGPS> 查询轨迹(List <Tuple <int, DateTime, DateTime> > __条件) { var __结果 = new List <MGPS>(); __条件.ForEach(q => { var __轨迹查询条件 = new M轨迹查询条件 { 号码 = q.Item1, 开始时间 = q.Item2, 结束时间 = q.Item3 }; var __返回值 = _IT客户端.执行方法(_对象名称, "查询轨迹", new Dictionary <string, string> { { "条件", HJSON.序列化(__轨迹查询条件) } }); __结果.AddRange(HJSON.反序列化 <M轨迹查询结果>(H序列化.AES解压(__返回值)).列表); }); return(__结果); }
public M轨迹查询结果 查询轨迹(M轨迹查询条件 __条件) { Thread.Sleep(1000); var __结果 = new M轨迹查询结果 { 总数量 = 24 * 60 * 60 / 15, 列表 = new List <MGPS>() }; var __随机数 = new Random(); var __经度 = _参照经度 + __随机数.NextDouble() * 0.0002 * (__随机数.NextDouble() > 0.5 ? -1 : 1); var __纬度 = _参照纬度 + __随机数.NextDouble() * 0.0002 * (__随机数.NextDouble() > 0.5 ? -1 : 1); for (int i = 0; i < __结果.总数量; i++) { __经度 += __随机数.NextDouble() * 0.0005 * (__随机数.NextDouble() > 0.5 ? -1 : 1); __纬度 += __随机数.NextDouble() * 0.0005 * (__随机数.NextDouble() > 0.5 ? -1 : 1); __结果.列表.Add(new MGPS { 经度 = __经度, 纬度 = __纬度, 精度 = 20, 时间 = DateTime.Now.Date.AddSeconds(15 * i), 速度 = 10 }); } return(__结果); }
public M轨迹查询结果 查询轨迹(M轨迹查询条件 __条件) { return(_IDGPS数据.查询轨迹(__条件)); }