Beispiel #1
0
        public async Task <JsonResult> Booking(DriverInfomation driver)
        {
            HttpClient client      = new HttpClient();
            string     userID      = Session["userID"].ToString();
            dynamic    dir_session = Session["direction"];

            var values = new Dictionary <string, string>
            {
                { "userID", userID },
                { "driverID", driver.driverID },
                { "tripFrom", dir_session.start.address },
                { "tripTo", dir_session.end.address },
                { "fromLong", dir_session.start.lng.ToString() },
                { "fromLat", dir_session.start.lat.ToString() },
                { "toLong", dir_session.end.lng.ToString() },
                { "toLat", dir_session.end.lat.ToString() },
            };
            var content  = new FormUrlEncodedContent(values);
            var response = await client.PostAsync("https://fast-hollows-58498.herokuapp.com/trip/create", content);

            var responseString = await response.Content.ReadAsStringAsync();

            string s = responseString.ToString();

            if (s != "OK")
            {
                ViewBag.Error = "Username or Email already exist";
            }
            //Session["username"] = model.account.Username;
            return(new JsonResult {
                Data = "Sucessfull", JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Beispiel #2
0
        private List <DriverInfomation> getAllDriver()
        {
            var request = WebRequest.Create("https://fast-hollows-58498.herokuapp.com/driver/coordInfo");

            request.ContentType = "application/json; charset=utf-8";
            string text;
            var    response = (HttpWebResponse)request.GetResponse();

            using (var sr = new StreamReader(response.GetResponseStream()))
            {
                text = sr.ReadToEnd();

                JavaScriptSerializer js = new JavaScriptSerializer();

                JsonInfo jsoninfo = new JsonInfo(text);
                if (jsoninfo.status != 200)
                {
                    @ViewBag.Error = "Error " + jsoninfo.status;
                    return(null);
                }

                if (jsoninfo.payload.Length == 0)
                {
                    @ViewBag.Error = "No driver near your location.";
                    return(null);
                }

                // Cắt chuỗi để lấy thông tin JSon Payload
                string JsonPayload = text.Remove(0, 24);
                JsonPayload = JsonPayload.Remove(JsonPayload.Length - 1);

                dynamic dynObj = JsonConvert.DeserializeObject(JsonPayload);
                List <DriverInfomation> listDriver = new List <DriverInfomation>();
                foreach (var item in dynObj)
                {
                    string           id       = item.driverID;
                    string           fullname = item.driverFullname;
                    string           phone    = item.driverPhone;
                    float            lng      = item.longitude;
                    float            lat      = item.latitude;
                    DriverInfomation driver   = new DriverInfomation(id, fullname, phone, lng, lat);
                    listDriver.Add(driver);
                }

                return(listDriver);
            }
        }