public ActionResult Create(Zapateria zapateria)
        {
            var user = db.Owners.Where(u => u.Email == User.Identity.Name).FirstOrDefault();

            if (ModelState.IsValid)
            {
                zapateria.OwnerId = user.OwnerId;
                db.Zapaterias.Add(zapateria);
                var response = DbHelper.SaveChanges(db);
                if (zapateria.LogoFile != null)
                {
                    var folder       = "~/Content/Logos";
                    var file         = string.Format("{0}{1}.jpg", zapateria.ZapateriaId, zapateria.Name);
                    var responsefile = FileHelper.UploadPhoto(zapateria.LogoFile, folder, file);
                    if (responsefile)
                    {
                        var pic = string.Format("{0}/{1}", folder, file);
                        zapateria.Logo            = pic;
                        db.Entry(zapateria).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                }
                if (response.Successfully)
                {
                    DbHelper.InsertBitacora("Create", "Zapaterias", User.Identity.Name, db);
                    return(RedirectToAction("Index"));
                }
                ModelState.AddModelError(string.Empty, response.Message);
            }

            ViewBag.IdColony       = new SelectList(CombosHelper.GetColonies(zapateria.IdColony), "IdColony", "Description", zapateria.IdColony);
            ViewBag.IdMunicipality = new SelectList(CombosHelper.GetMunicipalities(zapateria.IdMunicipality), "IdMunicipality", "Description", zapateria.IdMunicipality);
            ViewBag.IdState        = new SelectList(CombosHelper.GetStates(), "IdState", "Description", zapateria.IdState);
            return(View(zapateria));
        }
Example #2
0
        /// <summary>
        /// USA DATABASE
        /// Añade a la lista que funciona como carrito un producto seleccionado, el cual se podra elegir
        /// que cantidad de productos se querrá comprar mediante el uso de otro formulario. Tambien
        /// escribe el ticket de compra en el formulario para una mejor experiencia de usuario y para
        /// tener noción de qué se está vendiendo
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void AñadirAlCarro_Click(object sender, EventArgs e)
        {
            try
            {
                int     i    = this.dataGridViewDataTable.SelectedRows[0].Index;
                DataRow fila = this.dataTableCalzados.Rows[i];
                int     id   = int.Parse(fila["id"].ToString());

                Calzado calzado = AccesoDatos.ObtenerCalzadoPorID(id);
                if (!this.listaCarritoCompras.Contains(calzado))
                {
                    FormAgregarCarrito carrito = new FormAgregarCarrito(calzado);
                    carrito.StartPosition = FormStartPosition.CenterScreen;

                    if (carrito.ShowDialog() == DialogResult.OK)
                    {
                        this.listaCarritoCompras.Add(carrito.calzado);
                        this.rtbListaChanguito.Text = Zapateria.EscribirTicket(this.listaCarritoCompras, this.zapateria);
                    }
                }
            }
            catch (ArgumentOutOfRangeException)
            {
                MessageBox.Show("Por favor, seleccione un producto antes de agregar al carrito");
            }
            catch (Exception exception)
            {
                MessageBox.Show("Error al añadir al carrito: " + exception.Message);
            }
        }
Example #3
0
 /// <summary>
 /// USA SERIALIZACION XML
 /// serializa la zapateria dentro de un archivo xml
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void GuardarCambios_Click(object sender, EventArgs e)
 {
     try
     {
         Zapateria.Guardar(this.zapateria);
         MessageBox.Show("Se ha guardado exitosamente");
     }
     catch (ArchivosException exception)
     {
         MessageBox.Show(exception.Message);
     }
 }
Example #4
0
 /// <summary>
 /// TEMA ARCHIVOS DE TEXTO
 /// Muestra en un form nuevo el archivo
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void Ticket_Click(object sender, EventArgs e)
 {
     try
     {
         FormTicketera ticketera = new FormTicketera(Zapateria.LeerTicketera());
         ticketera.ShowDialog();
     }
     catch (ArchivosException exception)
     {
         MessageBox.Show(exception.Message);
     }
 }
        // GET: Zapaterias/Create
        public ActionResult Create()
        {
            var user = db.Owners.Where(u => u.Email == User.Identity.Name).FirstOrDefault();

            ViewBag.IdColony       = new SelectList(CombosHelper.GetColonies(0), "IdColony", "Description");
            ViewBag.IdMunicipality = new SelectList(CombosHelper.GetMunicipalities(0), "IdMunicipality", "Description");
            ViewBag.IdState        = new SelectList(CombosHelper.GetStates(), "IdState", "Description");
            var zapateria = new Zapateria {
                OwnerId = user.OwnerId
            };

            return(View(zapateria));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Zapateria zapateria = db.Zapaterias.Find(id);

            db.Zapaterias.Remove(zapateria);
            var response = DbHelper.SaveChanges(db);

            if (response.Successfully)
            {
                return(RedirectToAction("Index"));
            }
            return(View());
        }
Example #7
0
 private void btnLeerArchivoXML_Click(object sender, EventArgs e)
 {
     try
     {
         Zapateria     zapateriaXml = Zapateria.Leer();
         FormTicketera form         = new FormTicketera(zapateriaXml.ToString());
         form.ShowDialog();
     }
     catch (Exception exception)
     {
         MessageBox.Show(exception.Message);
     }
 }
        // GET: Zapaterias/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Zapateria zapateria = db.Zapaterias.Find(id);

            if (zapateria == null)
            {
                return(HttpNotFound());
            }
            return(View(zapateria));
        }
        // GET: Zapaterias/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Zapateria zapateria = db.Zapaterias.Find(id);

            if (zapateria == null)
            {
                return(HttpNotFound());
            }

            ViewBag.IdColony       = new SelectList(CombosHelper.GetColonies(), "IdColony", "Description", zapateria.IdColony);
            ViewBag.IdMunicipality = new SelectList(CombosHelper.GetMunicipalities(), "IdMunicipality", "Description", zapateria.IdMunicipality);
            ViewBag.IdState        = new SelectList(CombosHelper.GetStates(), "IdState", "Description", zapateria.IdState);
            return(View(zapateria));
        }
Example #10
0
        /// <summary>
        /// USA HILOS, EVENTOS, DELEGADOS Y DATABASE
        /// constructor por defecto, en él se inicializarán los atributos instanciables,
        /// se le otorgaran valores a algunos elementos del form, se iniciará el hilo secundario que ejecutará
        /// un metodo con la invocacion de un evento con algunos de los metodos de actualizacion de datos y
        /// mejora de la interfaz asociados (encargado de actualizar la lista del stock de la zapateria -usada
        /// para agilizar algunas busquedas- con la base de datos, actualizar el balance de de las ventas
        /// -porcentaje de ganancia- y la cantidad de ventas realizadas)
        /// </summary>
        public FormularioPrincipalZapateria()
        {
            InitializeComponent();
            this.zapateria           = new Zapateria("Don Armando Shoes");
            this.labelTitulo.Text   += this.zapateria.nombreZapateria;
            this.listaCarritoCompras = new List <Calzado>();
            this.StartPosition       = FormStartPosition.CenterScreen;

            this.zapateria.stock   = AccesoDatos.ObtenerListaCalzados();
            this.dataTableCalzados = AccesoDatos.ObtenerTablaCalzado();
            this.dataGridViewDataTable.DataSource = this.dataTableCalzados;

            this.eventoActualizarDatosForm += ActualizarListaZapateriaDB;
            this.eventoActualizarDatosForm += ActualizarBalanceDelDia;
            this.eventoActualizarDatosForm += ActualizarVentasDelDia;

            this.hiloActualiacionListas = new Thread(this.Actualizaciones);
            hiloActualiacionListas.Start();
        }
Example #11
0
        static void Main(string[] args)
        {
            Zapateria zapateria = new Zapateria("Don Ernesto");

            Zapatilla zapatilla1 = new Zapatilla("Crossfit", "10", "3500", "super trainner", "Lona");
            Zapato    zapato1    = new Zapato("Cuña", "21", "6000", "zapatos chinos", "Gamuza");

            Calzado calzadoDataBase;
            string  cadenaComando;

            //Cantidad invalida
            try
            {
                Zapatilla zapatillaInvalida = new Zapatilla("UsoCotidiano", "salala", "200", "salala", "Tela");;
            }
            catch (CantidadInvalidaException ex)
            {
                Console.WriteLine(ex.Message);
            }
            // Precio invalido
            try
            {
                Zapato zapatoInvalido = new Zapato("Cuña", "66", "200", "salala", "Tela");;
            }
            catch (PrecioErroneoException ex)
            {
                Console.WriteLine(ex.Message);
            }
            //pruebo la conexion
            try
            {
                AccesoDatos.conexion.Open();
                Console.WriteLine("Conexion abierta efectivamente");
            }
            catch (Exception)
            {
                Console.WriteLine("Error al probar la conexion");
            }
            finally
            {
                if (AccesoDatos.conexion.State == ConnectionState.Open)
                {
                    AccesoDatos.conexion.Close();
                }
            }
            //agrego lista directo de la base
            try
            {
                zapateria.stock = AccesoDatos.ObtenerListaCalzados();
                Console.WriteLine("Se obtuvo la lista de forma correcta");
            }
            catch
            {
                Console.WriteLine("Error al obtener lista");
            }

            //serializo archivo
            try
            {
                Zapateria.Guardar(zapateria);
                Console.WriteLine("Se guardo la zapateria de forma correcta en xml");
            }
            catch (ArchivosException ex)
            {
                Console.WriteLine(ex.Message);
            }

            //deserializo el archivo
            try
            {
                zapateria = Zapateria.Leer();
                Console.WriteLine("Se obtuvo la zapateria de forma correcta en xml\n");
            }
            catch (ArchivosException ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine();
            }

            try
            {
                //agrego zapatilla
                if (AccesoDatos.InsertarCalzado(zapatilla1))
                {
                    Console.WriteLine("Se inserto zapatilla correctamente en la base de datos");
                }
                else
                {
                    Console.WriteLine("Error al insertar zapatilla en la base de datos");
                }
                // Selecciono zapatilla
                cadenaComando = "SELECT * FROM StockZapateria WHERE nombre = @nombre AND material = @material AND usoRecomendado = @usoRecomendado;";

                if (zapatilla1.ComandoSQL(cadenaComando, AccesoDatos.conexion, AccesoDatos.comando, out calzadoDataBase))
                {
                    if (calzadoDataBase == zapatilla1)
                    {
                        Console.WriteLine("Se obtuvo correctamente la zapatilla");
                    }
                }
                else
                {
                    Console.WriteLine("ERROR! Se obtuvo correctamente la zapatilla");
                }
                //modifico zapatilla
                ((Zapatilla)calzadoDataBase).UsoRecomendado = "Yoga";
                if (AccesoDatos.ModificarCalzado(calzadoDataBase))
                {
                    Console.WriteLine("Se modifico la zapatilla correctamente");
                }
                else
                {
                    Console.WriteLine("No se modifico la zapatilla correctamente");
                }
                //elimino zapatilla
                if (AccesoDatos.EliminarCalzado(calzadoDataBase))
                {
                    Console.WriteLine("Se elimino la zapatilla correctamente\n");
                }
                else
                {
                    Console.WriteLine("No se elimino la zapatilla correctamente\n");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Se genero una excepcion" + ex.Message);
                Console.WriteLine();
            }

            try
            {
                //agrego zapato
                if (AccesoDatos.InsertarCalzado(zapato1))
                {
                    Console.WriteLine("Se inserto zapato correctamente en la base de datos");
                }
                else
                {
                    Console.WriteLine("Error al insertar zapato en la base de datos");
                }

                // Selecciono Zapato
                cadenaComando = "SELECT * FROM StockZapateria WHERE nombre = @nombre AND material = @material AND tipoDeTaco = @tipoDeTaco;";
                if (zapato1.ComandoSQL(cadenaComando, AccesoDatos.conexion, AccesoDatos.comando, out calzadoDataBase))
                {
                    if (calzadoDataBase == zapato1)
                    {
                        Console.WriteLine("Se obtuvo correctamente el zapato");
                    }
                }
                else
                {
                    Console.WriteLine("ERROR! Se obtuvo incorrectamente el zapato");
                }
                //modifico Zapato
                ((Zapato)calzadoDataBase).TipoDeTaco = "Plataforma";
                if (AccesoDatos.ModificarCalzado(calzadoDataBase))
                {
                    Console.WriteLine("Se modifico el zapato correctamente");
                }
                else
                {
                    Console.WriteLine("No se modifico el zapato correctamente");
                }
                //elimino Zapato
                if (AccesoDatos.EliminarCalzado(calzadoDataBase))
                {
                    Console.WriteLine("Se elimino el zapato correctamente\n");
                }
                else
                {
                    Console.WriteLine("No se elimino el zapato correctamente\n");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Se genero una excepcion" + ex.Message);
                Console.WriteLine();
            }

            Console.WriteLine("Presione una tecla terminar...");

            Console.ReadKey();
        }