/// <summary> /// Botón que lanza una petición al servidor para que guarde /// el objeto de usuario, a traves de la interfaz RESTful. /// </summary> /// <param name="sender">Objeto pasado por parametro</param> /// <param name="e">Evento pasado por parametro</param> private void SaveUser_Click(object sender, RoutedEventArgs e) { User user = new User { Firstname = FirstnameText.Text, Lastname = LastnameText.Text, Email = EmailText.Text, Password = PasswordText.Password, Username = UsernameText.Text, IsAdmin = (bool)isAdmin.IsChecked, UserPicArr = BitmapImage2Bitmap(UserPicLabel.Source) }; try { UsersConn usersConn = new UsersConn(); usersConn.Add(user); Info infoWindow = new Info("Se ha guardado correctamente, en el servidor, el usuario " + user.Username); infoWindow.Show(); } catch (AdminForbiddenException ex) { // En caso de que no tenga privilegios el usuario, se le informa de ello. Error errorWindow = new Error(ex.Message); errorWindow.Show(); } catch (ExpiredLoginException ex) { // En el caso de que la sesión haya caducado, mostramos un cuadro de dialogo indicando la posibilidad de iniciar sesión de nuevo. Warning warningWindow = new Warning(ex.Message, "¿Deseas iniciar la sesión?"); warningWindow.Show(); warningWindow.Acceptance += (o, i) => { warningWindow.Close(); Login loginWindow = new Login(); loginWindow.Show(); }; warningWindow.Cancellation += (o, i) => { ManagerWindow.Close(); }; } catch (ServerException ex) { // En caso de que el servidor tenga algún tipo de error, se lo mostramos por pantalla. Error errorWindow = new Error(ex.Message); errorWindow.Show(); } }
/// <summary> /// Botón que lanza una petición al servidor para que guarde /// el objeto de producto, a traves de la interfaz RESTful. /// </summary> /// <param name="sender">Objeto pasado por parametro</param> /// <param name="e">Evento pasado por parametro</param> private void SaveProduct_Click(object sender, RoutedEventArgs e) { Product product = new Product { ProdName = ProductName.Text, ProdCode = ProductCode.Text, ProdDesc = ProductDescription.Text, ProdPrice = float.Parse(ProductPrize.Text), ProdPicArr = BitmapImage2Bitmap(ProdPicLabel.Source) }; try { ProductsConn productsConn = new ProductsConn(); productsConn.Add(product); Info infoWindow = new Info("Se ha guardado correctamente, en el servidor, el producto " + product.ProdName); infoWindow.Show(); } catch (AdminForbiddenException ex) { Error errorWindow = new Error(ex.Message); errorWindow.Show(); } catch (ExpiredLoginException ex) { Warning warningWindow = new Warning(ex.Message, "¿Deseas iniciar la sesión?"); warningWindow.Show(); warningWindow.Acceptance += (o, i) => { warningWindow.Close(); Login loginWindow = new Login(); loginWindow.Show(); }; warningWindow.Cancellation += (o, i) => { ManagerWindow.Close(); }; } catch (ServerException ex) { Error errorWindow = new Error(ex.Message); errorWindow.Show(); } }
/// <summary> /// Botón que lanza una petición al servidor para que guarde /// el objeto de documento, a traves de la interfaz RESTful. /// </summary> /// <param name="sender">Objeto pasado por parametro</param> /// <param name="e">Evento pasado por parametro</param> private void SaveDiscounts_Click(object sender, RoutedEventArgs e) { Discount discount = new Discount { Code = CodeText.Text, Desc = DiscountText.Text, PricePerc = float.Parse(PriceDiscountText.Text) }; try { DiscountsConn discountsConn = new DiscountsConn(); discountsConn.Add(discount); Info infoWindow = new Info("Se ha guardado correctamente, en el servidor, el descuento " + discount.Code); infoWindow.Show(); } catch (AdminForbiddenException ex) { Error errorWindow = new Error(ex.Message); errorWindow.Show(); } catch (ExpiredLoginException ex) { Warning warningWindow = new Warning(ex.Message, "¿Deseas iniciar la sesión?"); warningWindow.Show(); warningWindow.Acceptance += (o, i) => { warningWindow.Close(); Login loginWindow = new Login(); loginWindow.Show(); }; warningWindow.Cancellation += (o, i) => { ManagerWindow.Close(); }; } catch (ServerException ex) { Error errorWindow = new Error(ex.Message); errorWindow.Show(); } }