/// <summary> /// Busca el artículo a cambiar en la base de datos y carga sus datos en el formulario /// </summary> private void CargarCampos() { //Sesión de conexión a la base de datos var cfg = new Configuration(); cfg.Configure(); var sessions = cfg.BuildSessionFactory(); var sess = sessions.OpenSession(); //Consulta a la BD IQuery q = sess.CreateQuery("FROM Articulo where idArticulo=" + idArticulo); var resultados = q.List<Articulo>(); //Llenar los campos articulo = resultados[0]; txtNombre.Text = articulo.nombre; txtExistencia.Text = articulo.existencia; txtDescripcion.Text = articulo.descripcion; }
/// <summary> /// Si existe una dirección de correo, la carga en el formulario /// </summary> private void Cargar_Correo_Admin() { //Sesión de conexión a la base de datos var cfg = new Configuration(); cfg.Configure(); var sessions = cfg.BuildSessionFactory(); var sess = sessions.OpenSession(); //Consulta a la BD IQuery q = sess.CreateQuery("FROM Articulo where tipo='Correo'"); var resultados = q.List<Articulo>(); //Llenar los campos if (resultados.Count == 0) MessageBox.Show("Aún no tiene un e-mail registrado. Registre su dirección desde la cual se enviarán las notas a sus clientes", "La Modistería | No hay un e-mail registrado"); else { miCorreo = resultados[0]; txtMail.Text = miCorreo.nombre; } sess.Close(); }
/// <summary> /// Guarda o actualiza la dirección de correo del administrador /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Guardar_Correo_Admin(object sender, RoutedEventArgs e) { if (!txtMail.Text.Equals("") && !txtPass.Password.Equals("")) { if (miCorreo != null) { miCorreo.nombre = txtMail.Text; miCorreo.descripcion = txtPass.Password; } else { miCorreo = new Articulo { nombre=txtMail.Text, descripcion=txtPass.Password, tipo="Correo" }; } //Almacenamiento en la base de datos var cfg = new Configuration(); cfg.Configure(); var sessions = cfg.BuildSessionFactory(); var sess = sessions.OpenSession(); sess.SaveOrUpdate(miCorreo); sess.Flush(); sess.Close(); this.Close(); } else MessageBox.Show("Los campos no pueden estar vacíos", "La Modistería | Error"); }
/// <summary> /// Valida los datos ingresados y registra un nuevo producto /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Registrar_Articulo(object sender, RoutedEventArgs e) { bool valido = true; int b = 0; //Validación de los campos if (txtNombre.Text == "") { txtNombre.Text = "*"; valido = false; } if (txtDescripcion.Text == "") { txtDescripcion.Text = "*"; valido = false; } if (txtExistencia.Text == "" || !int.TryParse(txtExistencia.Text, out b)) { txtExistencia.Text = "*"; valido = false; } //Obtención del proveedor switch (comboTipo.SelectedIndex) { case 0: tipoArticulo = "Maquinaria"; break; case 1: tipoArticulo = "Herramienta"; break; case 2: tipoArticulo = "Materia Prima"; break; } //Adquisición de la imagen if (valido) { try { var imageFile = new System.IO.FileInfo(rutaFotoProducto); if (imageFile.Exists) { //Conseguir el directorio local var applicationPath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); Console.WriteLine(applicationPath); //Adquirir ruta local de carpeta de Fotografias var dir = new System.IO.DirectoryInfo(System.IO.Path.Combine(applicationPath, "RepProductos")); if (!dir.Exists) dir.Create(); rutaFinal = String.Format("{0}\\{1}", dir.FullName, nombreImagen); Console.WriteLine(rutaFinal); //Copiar imagen a la carpeta de Fotografias imageFile.CopyTo(System.IO.Path.Combine(dir.FullName, nombreImagen), true); } } catch (Exception) { } //Creación del nuevo artículo Articulo nuevoArticulo = new Articulo { tipo = tipoArticulo, nombre = txtNombre.Text, descripcion = txtDescripcion.Text, existencia = txtExistencia.Text, imagen = rutaFinal }; //Almacenamiento en la base de datos var cfg = new Configuration(); cfg.Configure(); var sessions = cfg.BuildSessionFactory(); var sess = sessions.OpenSession(); sess.Save(nuevoArticulo); sess.Flush(); sess.Close(); ResetCampos(); CargarProductos(); } else MessageBox.Show("Alguno(s) de los campos son inválidos", "La Modistería | ERROR"); }