/// <summary> /// Este metodo sirve para mandar la peticion de una nueva orden al servidor. /// </summary> /// <returns>The order.</returns> /// <param name="urlBase">URL base.</param> /// <param name="solicitud">Solicitud.</param> public async Task <TokenResponse> SetOrder( string urlBase, SolicitudSetOrder solicitud) { try { var Client = new HttpClient(); string url = urlBase; var data = JsonConvert.SerializeObject(solicitud); var content = new StringContent(data, Encoding.UTF8, "application/json"); var response = await Client.PostAsync(url, content); if (response.IsSuccessStatusCode) { var json = await response.Content.ReadAsStringAsync(); if (json.Substring(0, 5) != "Error") { var resultado = (TokenResponse)JsonConvert.DeserializeObject(json, typeof(TokenResponse)); return(resultado); } else { return(new TokenResponse { ErrorDescription = "Las credenciales no son validas" }); } } else { return(new TokenResponse { ErrorDescription = "Ocurrió un error, intentelo mas tarde." }); } } catch (Exception ex) { string a = ex.Message; return(null); } }
private async void SendMethod() { /*antes de cada servicio comprueba la conexion*/ ModalMapPage modalPage = new ModalMapPage(); await App.Navigator.Navigation.PushModalAsync(modalPage); /*if (Ubicacion && flagSwitchEnabled==false ) * { * var t = await UseUbicationMethod(); * string a = "aa"; * }*/ await App.Navigator.Navigation.PopModalAsync(); if (pin == null) { //Aqui hay que poner el de escoja una ubicacion await App.Current.MainPage.DisplayAlert("Incorrecto", "Algo ocurrió, por favor active el uso de ubicacion en sus ajustes!", "ok"); } else { MainViewModel mainViewModel = MainViewModel.GetInstance(); Order solicitud = new Order();// hacemos el objeto order, para mandarlo al servicio! SolicitudSetOrder solicitudSetOrder = new SolicitudSetOrder(); solicitud.Estado = 1; solicitud.Descripcion = Descripcion; solicitud.Ubicacion = new Ubicacion(); solicitud.Ubicacion.Latitud = pin.Position.Latitude; solicitud.Ubicacion.Longitud = pin.Position.Longitude; solicitudSetOrder.Order = solicitud; solicitudSetOrder.IDUsuario = mainViewModel.TokenResponse.IDUsuario; solicitudSetOrder.IDCliente = mainViewModel.TokenResponse.IDCOR; var token = await this.apiService.SetOrder( "http://www.creativasoftlineapps.com/ScriptAppTuxmandados/frmSetOrder.aspx", solicitudSetOrder); await App.Current.MainPage.DisplayAlert("Correcto", "Tuxmandado", "ok"); } }
public void SetOrder(SolicitudSetOrder obj) { try { Int64 id_cliente = obj.IDCliente; Int64 id_usuario = obj.IDUsuario; int estado = obj.Order.Estado; string descripcion = obj.Order.Descripcion; double latitud = obj.Order.Ubicacion.Latitud; double longitud = obj.Order.Ubicacion.Longitud; object[] parametros = { id_cliente, id_usuario, estado, descripcion, latitud, longitud }; DataSet ds = SqlHelper.ExecuteDataset(obj.Conexion, "spCIDBD_setOrderCliente", parametros); obj.Mensaje = "No se pudo insertar"; if (ds != null) { if (ds.Tables[0] != null) { if (ds.Tables[0].Rows.Count > 0) { obj.Mensaje = "success"; obj.Order.ID = Convert.ToInt64(ds.Tables[0].Rows[0]["id_pedido"]); Serialize serialize = new Serialize(obj); string data = serialize.ToJSON(); obj.DatosJson = data; } } } } catch (Exception ex) { throw ex; } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) //if (true) { if (Page.Request.HttpMethod == "POST") //if (true) { SolicitudSetOrder solicitudOrder = null; string Valor = ""; //Leer JSON try { using (var streamReader = new System.IO.StreamReader(Request.GetBufferedInputStream())) { Valor = streamReader.ReadToEnd(); } System.Web.Script.Serialization.JavaScriptSerializer jsonSerializer = new System.Web.Script.Serialization.JavaScriptSerializer(); solicitudOrder = jsonSerializer.Deserialize <SolicitudSetOrder>(Valor); } catch (Exception) { Valor = ""; } //if (true) if (Valor != "") { SolicitudSetOrder solicitud = new SolicitudSetOrder(); AppDatos appDatos = new AppDatos(); solicitud.Conexion = ConfigurationManager.ConnectionStrings["Conexion_App"].ConnectionString; Order minisolicitud = new Order();// hacemos el objeto order, para mandarlo al servicio! minisolicitud.Estado = solicitudOrder.Order.Estado; minisolicitud.Descripcion = solicitudOrder.Order.Descripcion; minisolicitud.Ubicacion = new Ubicacion(); minisolicitud.Ubicacion.Latitud = solicitudOrder.Order.Ubicacion.Latitud; minisolicitud.Ubicacion.Longitud = solicitudOrder.Order.Ubicacion.Longitud; solicitud.Order = minisolicitud; solicitud.IDUsuario = solicitudOrder.IDUsuario; solicitud.IDCliente = solicitudOrder.IDCliente; try { appDatos.SetOrder(solicitud); } catch (Exception ex) { solicitud.Mensaje = ex.Message; solicitud.DatosJson = "No se encontró."; } Response.Clear(); Response.ContentType = "application/text;"; if (solicitud.Mensaje == "success") { Response.Write(solicitud.DatosJson); } else { Response.Write("Error " + solicitud.Mensaje); } Response.End(); } else { Response.Clear(); Response.ContentType = "application/text;"; Response.Write("Error ID:000: Valores Incorrectos"); Response.End(); } } else { Response.Clear(); Response.ContentType = "application/text;"; Response.Write("Error ID:002 Tipo Incorrecto"); Response.End(); } } }