Пример #1
0
        /// <summary>
        /// 根据城市获取停车网点
        /// </summary>
        /// <param name="context"></param>
        private void GetForbidList(HttpContext context)
        {
            ObjectApiResp resp = new ObjectApiResp();

            resp.Code    = "-1";
            resp.Message = "";

            string citycode = "";

            citycode = context.Request["city"].ToString().Trim();

            SysSettingManager settingManager    = new SysSettingManager();
            string            returnVehicleMode = settingManager.GetValueByKey("ReturnVehicleMode");

            if (returnVehicleMode == "1")
            {
                ServiceAreaManager areaManager = new ServiceAreaManager();
                DataTable          dt          = areaManager.GetForbidListByCityCode(citycode);
                if (dt != null)
                {
                    resp.Data = dt;
                    resp.Code = "0";
                }
            }
            context.Response.Write(JsonConvert.SerializeObject(resp));
        }
Пример #2
0
        /// <summary>
        /// 根据城市获取运营区域
        /// </summary>
        /// <param name="context"></param>
        private void GetServiceAreaByID(HttpContext context)
        {
            ObjectApiResp resp = new ObjectApiResp();

            resp.Code    = "-1";
            resp.Message = "";

            string vehicleID = context.Request["vehicleID"].ToString().Trim();

            ServiceAreaManager areaManager = new ServiceAreaManager();
            DataTable          dt          = areaManager.GetServiceAreaListByID(vehicleID);

            if (dt != null)
            {
                resp.Data = dt;
                resp.Code = "0";
            }
            context.Response.Write(JsonConvert.SerializeObject(resp));
        }
Пример #3
0
        private void GetOrdersByVehicle(HttpContext context)
        {
            ObjectApiResp resp = new ObjectApiResp();

            resp.Code    = "0";
            resp.Message = "";

            string   vehicleid = "";
            DateTime?begin     = null;
            DateTime?end       = null;

            vehicleid = context.Request["VehicleID"].ToString().Trim();
            if (context.Request["begin"] != null)
            {
                begin = DateTime.Parse(context.Request["begin"].ToString().Trim());
            }
            if (context.Request["end"] != null)
            {
                end = DateTime.Parse(context.Request["end"].ToString().Trim());
            }
            int page_index = 0;

            int.TryParse(context.Request["page_index"], out page_index);
            int page_size = 0;

            int.TryParse(context.Request["page_size"], out page_size);
            if (page_size == 0)
            {
                page_size = 100;
            }

            OrdersManager om     = new OrdersManager();
            DataTable     orders = om.GetOrdersInfoByVehicle(vehicleid, begin, end, page_index + 1, page_size);

            if (orders != null && orders.Rows.Count > 0)
            {
                resp.Data = orders;
            }
            IsoDateTimeConverter timeFormat = new IsoDateTimeConverter();

            timeFormat.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
            context.Response.Write(JsonConvert.SerializeObject(resp, timeFormat));
        }
Пример #4
0
        /// <summary>
        /// 根据城市获取运营区域
        /// </summary>
        /// <param name="context"></param>
        private void GetServiceArea(HttpContext context)
        {
            ObjectApiResp resp = new ObjectApiResp();

            resp.Code    = "-1";
            resp.Message = "";

            string citycode = "";

            citycode = context.Request["city"].ToString().Trim();

            ServiceAreaManager areaManager = new ServiceAreaManager();
            DataTable          dt          = areaManager.GetServiceAreaList(citycode);// areaManager.GetServiceAreaListByCityCode(citycode);

            if (dt != null)
            {
                resp.Data = dt;
                resp.Code = "0";
            }
            context.Response.Write(JsonConvert.SerializeObject(resp));
        }
Пример #5
0
        public string Execute(Hashtable res)
        {
            if (res["Longitude"] == null || res["Longitude"].ToString().Trim().Length <= 0 ||
                res["Latitude"] == null || res["Latitude"].ToString().Trim().Length <= 0)
            {
                return(SiteHelper.GetJsonFromHashTable(null, "faild", "参数不完整"));
            }
            else
            {
                string longitude = res["Longitude"].ToString().Trim();
                string latitude  = res["Latitude"].ToString().Trim();

                string citycode = "", cityname = "", districtcode = "", districtname = "";
                string address = SiteHelper.GetAddressInfoByGPS(longitude, latitude, out citycode, out cityname, out districtcode, out districtname);

                ObjectApiResp resp = new ObjectApiResp();
                resp.Code    = "-1";
                resp.Message = "";

                ServiceAreaManager areaManager = new ServiceAreaManager();
                Hashtable          ht          = areaManager.GetServiceAreaByCityCode(districtcode);
                if (ht == null || ht.Keys.Count == 0)
                {
                    ht = areaManager.GetServiceAreaByCityCode(citycode);
                }
                if (ht != null && ht.Keys.Count > 0)
                {
                    GetServiceAreaResponse data = new GetServiceAreaResponse();
                    data.city      = cityname;
                    data.points    = SiteHelper.GetHashTableValueByKey(ht, "Coordinates");
                    data.longitude = SiteHelper.GetHashTableValueByKey(ht, "Longitude");
                    data.latitude  = SiteHelper.GetHashTableValueByKey(ht, "Latitude");
                    resp.Data      = data;
                    resp.Code      = "0";
                }

                return(JsonConvert.SerializeObject(resp));
            }
        }
Пример #6
0
        public string Execute(Hashtable params_ht)
        {
            Hashtable res = params_ht;

            if (res["UID"] == null || res["UID"].ToString().Trim().Length <= 0 ||
                res["RealName"] == null || res["RealName"].ToString().Trim().Length <= 0 ||
                res["IDCard"] == null || res["IDCard"].ToString().Trim().Length <= 0)
            {
                return(SiteHelper.GetJsonFromHashTable(null, "faild", "参数不完整"));
            }
            else
            {
                try
                {
                    uid = res["UID"].ToString().Trim();
                    if (res["RealName"] != null)
                    {
                        realName = res["RealName"].ToString().Trim();
                    }
                    if (res["IDCard"] != null)
                    {
                        idCard = res["IDCard"].ToString().Trim().ToLower();
                    }
                }
                catch
                {
                    return(SiteHelper.GetJsonFromHashTable(null, "faild", "数据格式不正确"));
                }

                if (!CheckIDCard18(idCard))
                {
                    return(SiteHelper.GetJsonFromHashTable(null, "faild", "身份证号错误"));
                }

                UserInfoManager uim = new UserInfoManager();

                Hashtable user = uim.GetUserInfoByUserID(uid);
                int       realNameCertification = 1;
                int.TryParse(SiteHelper.GetHashTableValueByKey(user, "RealNameCertification"), out realNameCertification);
                if (realNameCertification == 4)
                {
                    return(SiteHelper.GetJsonFromHashTable(null, "faild", "您已经通过实名认证"));
                }

                //验证身份证号,判断是否注册人员已满16岁或超过80岁
                if (idCard.Length == 18)
                {
                    string   birth = idCard.Substring(6, 8).Insert(6, "-").Insert(4, "-");
                    DateTime dt    = new DateTime();
                    DateTime.TryParse(birth, out dt);
                    if (DateTime.Now.AddYears(-16) < dt)
                    {
                        return(SiteHelper.GetJsonFromHashTable(null, "faild", "实名认证失败,认证用户未满16岁"));
                    }
                    if (DateTime.Now.AddYears(-60) >= dt)
                    {
                        return(SiteHelper.GetJsonFromHashTable(null, "faild", "实名认证失败,认证用户已满60岁"));
                    }
                }

                ICache Cache          = CacheFactory.GetCache();
                string keyid          = "id_verfy_times@" + uid;
                int    id_verfy_times = 0;
                if (string.IsNullOrEmpty(Cache.Get <string>(keyid)))
                {
                    DateTime dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 23, 59, 59);
                    Cache.Set(keyid, id_verfy_times, dt - DateTime.Now);
                }
                if (id_verfy_times >= MaxVerfyTimes)
                {
                    Cache.Dispose();
                    return(SiteHelper.GetJsonFromHashTable(null, "faild", "实名认证失败,认证已超过当天最大次数"));
                }

                IDCardVerify  verify = new IDCardVerify();
                ObjectApiResp result = new ObjectApiResp();
                result.Code = "0";
                result.Data = "1";

                result = verify.VerifyCard(realName, idCard);
                //result.Code = "1";
                //code:0,访问正常,-1,访问异常,data:1,验证一致,2,不一致,message:文本消息
                if (result.Code == "-1")
                {
                    Cache.Dispose();
                    return(SiteHelper.GetJsonFromHashTable(null, "faild", result.Message));
                }
                else
                {
                    id_verfy_times += 1;
                    DateTime dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 23, 59, 59);
                    Cache.Set(keyid, id_verfy_times, dt - DateTime.Now);
                    Cache.Dispose();

                    if (result.Data.ToString() == "1")
                    {
                        bool isUpdate = uim.UpdateRealNameCertification(uid, realName, idCard);
                        if (isUpdate)
                        {
                            DataTable userInfo  = uim.GetUserInfoByBindPhone(SiteHelper.GetHashTableValueByKey(user, "BindPhone"));
                            Hashtable result_ht = DataTableHelper.DataRowToHashTable(userInfo.Rows[0]);
                            return(SiteHelper.GetJsonFromHashTable(result_ht, "success", "实名认证成功", "UserInfo"));
                        }
                        else
                        {
                            return(SiteHelper.GetJsonFromHashTable(null, "faild", "实名认证状态保存失败"));
                        }
                    }
                    else
                    {
                        return(SiteHelper.GetJsonFromHashTable(null, "faild", "实名认证没通过,请重试"));
                    }
                }
            }
        }
Пример #7
0
        private void GetVehicleTrace(HttpContext context)
        {
            ObjectApiResp resp = new ObjectApiResp();

            resp.Code    = "0";
            resp.Message = "";

            string   vehicleid = "";
            string   orderid   = "";
            DateTime?begin     = null;
            DateTime?end       = null;

            vehicleid = context.Request["VehicleID"];
            if (!string.IsNullOrEmpty(context.Request["OrderID"]))
            {
                orderid = context.Request["OrderID"].ToString().Trim();
            }
            if (string.IsNullOrEmpty(orderid))
            {
                if (!string.IsNullOrEmpty(context.Request["begin"]))
                {
                    begin = DateTime.Parse(context.Request["begin"].ToString().Trim());
                }
                else
                {
                    begin = DateTime.Now.Date.AddDays(-1);
                }
                if (!string.IsNullOrEmpty(context.Request["end"]))
                {
                    end = DateTime.Parse(context.Request["end"].ToString().Trim());
                }
                else
                {
                    end = DateTime.Now;
                }
            }
            else
            {
                begin = null;
                end   = null;
            }

            VehicleManager vm     = new VehicleManager();
            DataTable      traces = vm.GetVehicleTrace(vehicleid, orderid, begin, end);

            if (traces == null || traces.Rows.Count == 0)
            {
                traces = vm.GetVehicleLastTrace(vehicleid);
            }
            if (traces != null && traces.Rows.Count > 0)
            {
                traces.Columns.Remove("ID");
                traces.Columns.Remove("VehicleID");
                traces.Columns.Remove("OrderID");
                traces.Columns.Remove("Latitude");
                traces.Columns.Remove("Longitude");
                traces.Columns.Remove("BD_latitude");
                traces.Columns.Remove("BD_longitude");
                //traces.Columns.Remove("AMAP_latitude");
                //traces.Columns.Remove("AMAP_longitude");
                traces.Columns.Remove("GPSNum");
                traces.Columns.Remove("Direction");
                traces.Columns.Remove("Speed");
                traces.Columns.Remove("Power");
                traces.Columns.Remove("LockState");
                traces.Columns.Remove("LightState");
                traces.Columns.Remove("RecordTime");
                resp.Data = traces;
            }
            context.Response.Write(JsonConvert.SerializeObject(resp));
        }
Пример #8
0
        /// <summary>
        /// 获取所有车辆信息
        /// </summary>
        /// <param name="context"></param>
        private void GetVehicles(HttpContext context)
        {
            string name   = context.Request["name"];
            int?   vstate = null;

            if (!string.IsNullOrEmpty(context.Request["vstate"]))
            {
                int val = 0;
                int.TryParse(context.Request["vstate"], out val);
                vstate = val;
            }
            int page_index = 0;

            int.TryParse(context.Request["page_index"], out page_index);
            int page_size = 0;

            int.TryParse(context.Request["page_size"], out page_size);
            if (page_size == 0)
            {
                page_size = 10000;
            }

            ObjectApiResp resp = new ObjectApiResp();

            resp.Code    = "0";
            resp.Message = "";
            resp.Data    = "";
            VehicleManager vm = new VehicleManager();

            DataTable vehicles = vm.GetVehicles(name, vstate, page_index + 1, page_size);

            if (vehicles != null && vehicles.Rows.Count > 0)
            {
                foreach (DataRow dr in vehicles.Rows)
                {
                    dr["ThumbImageUrl"] = SiteHelper.GetFileServer() + dr["ThumbImageUrl"].ToString();
                    decimal electricity = 0;
                    decimal.TryParse(dr["Electricity"].ToString(), out electricity);
                    int dianliang = Decimal.ToInt32(electricity);
                    dr["Electricity"] = dianliang + "%";
                    if (dr["LastUpdateTime"] != null && dr["LastUpdateTime"] != DBNull.Value)
                    {
                        dr["LastUpdateTime"] = DateTime.Parse(dr["LastUpdateTime"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
                    }

                    string lng = dr["Longitude"].ToString();
                    string lat = dr["Latitude"].ToString();
                    if (!string.IsNullOrEmpty(lng) && !string.IsNullOrEmpty(lat))
                    {
                        LatLng latlng = new LatLng(double.Parse(lat), double.Parse(lng));
                        latlng          = SiteHelper.TransformFromWGSToGCJ(latlng);
                        dr["Longitude"] = latlng.longitude;
                        dr["Latitude"]  = latlng.latitude;
                    }
                }
                Newtonsoft.Json.Converters.IsoDateTimeConverter timeFormat = new Newtonsoft.Json.Converters.IsoDateTimeConverter();
                timeFormat.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
                resp.Data = Newtonsoft.Json.JsonConvert.SerializeObject(vehicles, Formatting.Indented, timeFormat);
            }
            else
            {
                resp.Code    = "-1";
                resp.Message = "未找到相关车辆";
            }

            context.Response.Write(JsonConvert.SerializeObject(resp));
        }