public CaducidadesView()
        {
            InitializeComponent();

            caducidadesViewModel = (CaducidadesViewModel)this.DataContext;

            panel.IsEnabled = false;
            caducidadesViewModel.PanelLoading = true;

            Thread t = new Thread(new ThreadStart(() =>
            {
                ServerServiceCaducidad serverServiceCaducidad   = new ServerServiceCaducidad();
                ServerResponseCaducidad serverResponseCaducidad = serverServiceCaducidad.GetAll();

                if (200 == serverResponseCaducidad.error.code)
                {
                    foreach (var item in serverResponseCaducidad.listaCaducidad)
                    {
                        Dispatcher.Invoke(new Action(() => { observableCollectionCaducidad.Add(item); }));
                    }
                }
                else
                {
                    Dispatcher.Invoke(new Action(() => { msgError(serverResponseCaducidad.error.message); }));
                }

                Dispatcher.Invoke(new Action(() => { panel.IsEnabled = true; }));
                Dispatcher.Invoke(new Action(() => { caducidadesViewModel.PanelLoading = false; }));
                Dispatcher.Invoke(new Action(() => { lstCaduc.ItemsSource = observableCollectionCaducidad; }));
            }));

            t.Start();
        }
        /// <summary>
        /// Devuelve todos los datos
        /// </summary>
        /// <returns>ServerResponseCaducidad</returns>
        public ServerResponseCaducidad GetAll()
        {
            ServerResponseCaducidad serverResponseCaducidad;

            try
            {
                OauthToken oauthToken = ServerService.obtenerToken();

                if (null != oauthToken)
                {
                    var url = Constantes.SERVIDOR + CADUCIDAD + "all";

                    var httpRequest = (HttpWebRequest)WebRequest.Create(url);
                    httpRequest.Method = "GET";

                    httpRequest.Accept = "application/json";
                    httpRequest.Headers["Authorization"] = "Bearer " + oauthToken.access_token;

                    var httpResponse = (HttpWebResponse)httpRequest.GetResponse();
                    using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                    {
                        var result = streamReader.ReadToEnd();

                        serverResponseCaducidad = JsonSerializer.Deserialize <ServerResponseCaducidad>(result);
                    }

                    //Console.WriteLine(httpResponse.StatusCode);
                }
                else
                {
                    serverResponseCaducidad = new ServerResponseCaducidad();

                    ErrorBean error = new ErrorBean();
                    error.code    = MessageExceptions.SERVER_ERROR;
                    error.message = MessageExceptions.MSSG_SERVER_ERROR;

                    serverResponseCaducidad.error = error;
                }
            }
            catch (System.Exception)
            {
                serverResponseCaducidad = new ServerResponseCaducidad();

                ErrorBean error = new ErrorBean();
                error.code    = MessageExceptions.SERVER_ERROR;
                error.message = MessageExceptions.MSSG_SERVER_ERROR;

                serverResponseCaducidad.error = error;
            }

            return(serverResponseCaducidad);
        }
示例#3
0
        private void btnAceptarCaducidades_Click(object sender, RoutedEventArgs e)
        {
            var dialog = new CustomMessageBox
            {
                Caption            = "Modificar",
                InstructionHeading = "¿Está seguro que quiere modificar la caducidad?",
                InstructionText    = "Esta acción modificará la información de la caducidad",
            };

            dialog.SetButtonsPredefined(EnumPredefinedButtons.OkCancel);

            var result = dialog.ShowDialog();

            if (result.HasValue && result.Value && dialog.CustomCustomDialogResult == EnumDialogResults.Button1)
            {
                if (cambiosCaducidad())
                {
                    txtError.Text = "";

                    panel.IsEnabled = false;
                    gestionCaducidadesViewModel.PanelLoading = true;

                    Thread t = new Thread(new ThreadStart(() =>
                    {
                        ServerServiceCaducidad serverServiceCaducidad   = new ServerServiceCaducidad();
                        ServerResponseCaducidad serverResponseCaducidad = serverServiceCaducidad.Save(caducidaModif, caducidaModif.id);

                        if (200 == serverResponseCaducidad.error.code)
                        {
                            Dispatcher.Invoke(new Action(() => { mostrarAutoCloseMensaje("Modificar", "Se ha modificado la caducidad correctamente."); }));

                            Dispatcher.Invoke(new Action(() => { gestionCaducidadesViewModel.caducidad = caducidaModif; }));
                            Dispatcher.Invoke(new Action(() => { volver(); }));
                        }
                        else
                        {
                            Dispatcher.Invoke(new Action(() => { msgError(serverResponseCaducidad.error.message); }));
                        }

                        Dispatcher.Invoke(new Action(() => { panel.IsEnabled = true; }));
                        Dispatcher.Invoke(new Action(() => { gestionCaducidadesViewModel.PanelLoading = false; }));
                    }));

                    t.Start();
                }
            }
        }
        /**
         *------------------------------------------------------------------------------
         * Metodos para controlar los botones
         *------------------------------------------------------------------------------
         **/
        private void btnBuscar_Click(object sender, RoutedEventArgs e)
        {
            panel.IsEnabled = false;
            caducidadesViewModel.PanelLoading = true;

            string matricula = "null";

            if (!txtMatricula.Text.Equals(""))
            {
                matricula = txtMatricula.Text.ToString();
            }

            Thread t = new Thread(new ThreadStart(() =>
            {
                ServerServiceCaducidad serverServiceCaducidad   = new ServerServiceCaducidad();
                ServerResponseCaducidad serverResponseCaducidad = serverServiceCaducidad.GetAllFilter(matricula);

                if (200 == serverResponseCaducidad.error.code)
                {
                    //Limpiar la lista para recuperar la informacion de la busqueda
                    Dispatcher.Invoke(new Action(() => { observableCollectionCaducidad.Clear(); }));

                    foreach (var item in serverResponseCaducidad.listaCaducidad)
                    {
                        Dispatcher.Invoke(new Action(() => { observableCollectionCaducidad.Add(item); }));
                    }
                }
                else
                {
                    Dispatcher.Invoke(new Action(() => { msgError(serverResponseCaducidad.error.message); }));
                }

                Dispatcher.Invoke(new Action(() => { panel.IsEnabled = true; }));
                Dispatcher.Invoke(new Action(() => { caducidadesViewModel.PanelLoading = false; }));
            }));

            t.Start();
        }
        /// <summary>
        /// Con el id "null" guarda un nuevo objeto y, en caso contrario, modifica el objeto de la BD
        /// </summary>
        /// <param name="caducidad">objeto de BD</param>
        /// <param name="id"></param>
        /// <returns>ServerResponseCaducidad</returns>
        public ServerResponseCaducidad Save(CaducidadDTO caducidadDTO, string id)
        {
            ServerResponseCaducidad serverResponseCaducidad;

            try
            {
                OauthToken oauthToken = ServerService.obtenerToken();

                if (null != oauthToken)
                {
                    var url = Constantes.SERVIDOR + CADUCIDAD + "save/" + id;

                    var httpRequest = (HttpWebRequest)WebRequest.Create(url);
                    httpRequest.Method = "POST";

                    httpRequest.Headers["Authorization"] = "Bearer " + oauthToken.access_token;
                    httpRequest.ContentType = "application/json";

                    Caducidad caducidad = transformCaducidadDTOToCaducidad(caducidadDTO);

                    if (null != caducidad)
                    {
                        var data = JsonSerializer.Serialize <Caducidad>(caducidad);

                        using (var streamWriter = new StreamWriter(httpRequest.GetRequestStream()))
                        {
                            streamWriter.Write(data);
                        }

                        var httpResponse = (HttpWebResponse)httpRequest.GetResponse();
                        using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                        {
                            var result = streamReader.ReadToEnd();

                            serverResponseCaducidad = JsonSerializer.Deserialize <ServerResponseCaducidad>(result);
                        }

                        //Console.WriteLine(httpResponse.StatusCode);
                    }
                    else
                    {
                        serverResponseCaducidad = new ServerResponseCaducidad();

                        ErrorBean error = new ErrorBean();
                        error.code    = MessageExceptions.SERVER_ERROR;
                        error.message = MessageExceptions.MSSG_SERVER_ERROR;

                        serverResponseCaducidad.error = error;
                    }
                }
                else
                {
                    serverResponseCaducidad = new ServerResponseCaducidad();

                    ErrorBean error = new ErrorBean();
                    error.code    = MessageExceptions.SERVER_ERROR;
                    error.message = MessageExceptions.MSSG_SERVER_ERROR;

                    serverResponseCaducidad.error = error;
                }
            }
            catch (System.Exception)
            {
                serverResponseCaducidad = new ServerResponseCaducidad();

                ErrorBean error = new ErrorBean();
                error.code    = MessageExceptions.SERVER_ERROR;
                error.message = MessageExceptions.MSSG_SERVER_ERROR;

                serverResponseCaducidad.error = error;
            }
            return(serverResponseCaducidad);
        }