Пример #1
0
 public void RecepcionarOrden()
 {
     if (_numeroOrdenSeleccionado != 0)
     {
         OrdenPedido orden = new OrdenPedido();
         orden = orden.ObtenerOrdenPedido(_numeroOrdenSeleccionado);
         if (!orden.OrdenRecepcionada(orden))
         {
             EstadoOrden estado = new EstadoOrden();
             estado.Id = (int)cmbEstadoOrden.SelectedValue;
             DateTime fechaRecepcion = DateTime.Now.Date;
             orden.Estado         = estado;
             orden.FechaRecepcion = fechaRecepcion;
             bool ordenRecepcionada = orden.RecepcionarOrdenPedido(orden);
             if (ordenRecepcionada)
             {
                 MessageBox.Show("Orden Recepcionada");
                 _numeroOrdenSeleccionado = 0;
             }
             else
             {
                 MessageBox.Show("Orden no se ha recepcionado.");
             }
         }
         else
         {
             MessageBox.Show("La orden ya fue recepcionada");
         }
     }
 }
        public ActionResult Create([Bind(Include = "Id,Descripcion,Cantidad,IdProducto,IdEmpleado,IdProveedor")] OrdenPedido ordenPedido)
        {
            ViewBag.IdEmpleado  = new SelectList(db.Empleado, "Id", "Nombre");
            ViewBag.IdProducto  = new SelectList(db.Producto, "Id", "Codigo");
            ViewBag.IdProveedor = new SelectList(db.Proveedor, "Id", "Nombre");
            if (ModelState.IsValid)
            {
                if (ordenPedido.Descripcion == null || ordenPedido.Cantidad == null)
                {
                    ViewBag.Message = "Debe ingresar campos obligatorios *";
                    return(View());
                }
                db.OrdenPedido.Add(ordenPedido);
                db.SaveChanges();
                var id = ordenPedido.IdEmpleado;
                return(RedirectToAction("InicioSession", "Empleado", new { id }));
                //return RedirectToAction("Create", "RecepcionProductoes", new { id });
            }

            var idUsuario = (int)Session["UserId"];

            ViewBag.Nombre      = idUsuario;
            ViewBag.IdEmpleado  = new SelectList(db.Empleado, "Id", "Nombre");
            ViewBag.IdProducto  = new SelectList(db.Producto, "Id", "Codigo");
            ViewBag.IdProveedor = new SelectList(db.Proveedor, "Id", "Nombre");
            return(View(ordenPedido));
        }
        public IActionResult ComprarPost(int id, decimal total, int pago, int envio, int p, OrdenPedido orden)
        {
            Producto producto = ProductoDAo.get(_context, id);

            TempData["total"] = total;

            TempData["Pago"]  = pago;
            TempData["Envio"] = envio;

            OrdenPedido ordenPedido = new OrdenPedido
            {
                EstadoPedido       = EstadoPedido.PENDIENTE,
                Pago               = (Pago)pago,
                Envio              = (Envio)envio,
                Total              = Convert.ToDecimal(TempData["total"]),
                NegocioID          = producto.NegocioID,
                Producto           = ProductoDAo.get(_context, id),
                identificacionProd = ProductoDAo.get(_context, id).ID,
                Usuario            = UsuarioDao.getUsuario(_context, HttpContext.Session.GetObjectFromJson <Usuario>("usuarioEnSession").ID)
            };



            OrdenPedidoDao.grabar(_context, ordenPedido);
            //MailModel _objModelMail = new MailModel();
            //mailService.ConfirmarPedido(_context, _objModelMail, ordenPedido); Tengo q terminar enviar mail cuando se realiza un pedido! Mariana.
            agregarMensajePrincipal("Se ha realizado una orden de pedido correctamente.", TipoMensaje.EXITO);
            TempData["Mensajes"] = mensajes;
            ModelBase model = new ModelBase();

            model.llenarDatosGenerales(HttpContext, _context);
            return(View("~/Views/Inicio/InicioLogueado.cshtml", model));
        }
Пример #4
0
        public async Task <IActionResult> Edit(int id, [Bind("IdOrdenPedido,fechapedido,comentario,estado,usuario")] OrdenPedido ordenPedido)
        {
            if (id != ordenPedido.IdOrdenPedido)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(ordenPedido);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!OrdenPedidoExists(ordenPedido.IdOrdenPedido))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(MenuOrdenPedido)));
            }
            return(View(ordenPedido));
        }
Пример #5
0
        public async Task <IActionResult> AtenderOrdenPedido(int id, OrdenPedido ordenpedido)
        {
            var ordenPedido = await _context.OrdenPedido

                              .SingleOrDefaultAsync(m => m.IdOrdenPedido == id);


            ordenPedido.estado = "Atendida";
            _context.OrdenPedido.Update(ordenPedido);
            await _context.SaveChangesAsync();



            List <DetallePedido> listaDetallePedido = _context.Set <DetallePedido>().Where(p => p.idOrdenPedido == id).Include(s => s.inventario).ThenInclude(x => x.Equipo).ToList();

            ViewData["listaDetallePedido"] = listaDetallePedido;



            List <Item> itemxpedido = _context.Set <Item>().Where(o => o.IdOrdenPedido == id).Include(s => s.Inventario).ThenInclude(x => x.Equipo).ToList();

            ViewData["itemxop"] = itemxpedido;


            return(RedirectToAction("MenuOrdenPedido", "OrdenPedido"));
        }
        public ActionResult ActualizarOrdenPedido(string idt)
        {
            string ruta = "/OrdenPedido/actualizar";
            //sesion
            if (Session["token"] == null)
            {
                return RedirectToAction("./"); //salir a login
            }
            else
            {
                //permisos
                string tk = Session["token"].ToString();
                int permiso = validacion.validarPermisos(tk, ruta);
                if (permiso != 0)
                {
                    List<Negocio> negocios = new List<Negocio>();
                    OrdenPedido ordn = new OrdenPedido();
                    ordn = model.buscarOrdenDePedido(idt);
                    negocios = negocioModel.listaNegocio();
                    ViewBag.negocios = negocios;
                    ViewBag.ordenPedido = ordn;
                    ViewBag.nomUser = Session["nombre"];
                    ViewBag.empresa = Session["empresa"];
                    ViewBag.negocio = Session["negocio"];
                    ViewBag.color = Session["color"];
                    ViewBag.colorText = Session["colorText"];
                    return View();
                }
                else
                {
                    return RedirectToAction("./"); //salir a login
                }

            }
        }
Пример #7
0
 private void AnularOrdenPedido()
 {
     if (_numeroOrdenSeleccionado != 0)
     {
         OrdenPedido orden = new OrdenPedido();
         orden = orden.ObtenerOrdenPedido(_numeroOrdenSeleccionado);
         EstadoOrden estado = new EstadoOrden();
         estado = estado.ObtenerEstadoOrden(orden.Estado.Id);
         string descripcion  = estado.Descripcion;
         bool   estaGuardada = orden.OrdenPedidoGuardada(_numeroOrdenSeleccionado);
         if (estaGuardada)
         {
             bool anularOrden = orden.AnularOrdenPedido(_numeroOrdenSeleccionado);
             if (anularOrden)
             {
                 MessageBox.Show("Orden de pedido anulada");
                 _numeroOrdenSeleccionado = 0;
             }
             else
             {
                 MessageBox.Show("Orden de pedido no ha sido anulada");
                 _numeroOrdenSeleccionado = 0;
             }
         }
         else
         {
             MessageBox.Show("La orden seleccionada se encuentra " + descripcion + ", no se puede anular.");
         }
     }
 }
Пример #8
0
        public void EnviarOrdenPedido()
        {
            OrdenPedido orden = new OrdenPedido();

            orden = orden.ObtenerOrdenPedido(_numeroOrdenSeleccionado);
            if (orden.OrdenPedidoGuardada(orden.Numero))
            {
                bool ordenEnviada = GenerarPDFOrdenPedido(orden);
                bool cambioEstado = orden.CambiarEstadoAEnviado(_numeroOrdenSeleccionado);
                if (ordenEnviada)
                {
                    if (cambioEstado)
                    {
                        MessageBox.Show("La orden ha sido enviada y descargada correctamente.");
                    }
                    else
                    {
                        MessageBox.Show("Error al cambiar estado de la orden.");
                    }
                }
                else
                {
                    MessageBox.Show("Orden no se ha podido enviar.");
                }
                CargarGrillaDetalleOrden(_numeroOrdenSeleccionado);
                _numeroOrdenSeleccionado = 0;
            }
            else
            {
                MessageBox.Show("La orden ya fue recepcionada");
            }
        }
Пример #9
0
 public void AgregarOrdenPedido()
 {
     if (int.Parse(txtTotalOrden.Text) > 0)
     {
         DateTime  fechaCreacion  = DateTime.Now.Date;
         int       total          = int.Parse(txtTotalOrden.Text);
         DateTime  fechaRecepcion = DateTime.Now.Date;
         Proveedor proveedor      = new Proveedor();
         proveedor.Rut = (int)cmbProveedor.SelectedValue;
         EstadoOrden estadoOrden = new EstadoOrden();
         estadoOrden.Id = 1;//<--debe ser No Recepcionada
         Usuario usuario = new Usuario();
         usuario.RunUsuario = Global.RunUsuarioActivo;
         OrdenPedido orden = new OrdenPedido(fechaCreacion, total, fechaRecepcion, proveedor, estadoOrden, usuario);
         if (orden.AgregarOrdenPedido())
         {
             int numeroOrden = orden.ObtenerNumeroMaximoOrden();
             foreach (DataGridViewRow row in grdOrden.Rows)
             {
                 string        codigo   = row.Cells[0].Value.ToString();
                 int           cantidad = int.Parse(row.Cells[2].Value.ToString());
                 DetallePedido detalle  = new DetallePedido(numeroOrden, codigo, cantidad);
                 detalle.AgregarDetallePedido();
             }
             MessageBox.Show("Orden de Pedido N°" + numeroOrden + " ha sido agregada.");
         }
     }
 }
        public ActionResult DeleteConfirmed(int id)
        {
            OrdenPedido ordenPedido = db.OrdenPedido.Find(id);

            db.OrdenPedido.Remove(ordenPedido);
            db.SaveChanges();
            return(RedirectToAction("InicioSession"));
        }
Пример #11
0
        private void CargarNumeroSiguienteOrden()
        {
            OrdenPedido orden  = new OrdenPedido();
            int         numero = orden.ObtenerNumeroMaximoOrden();

            numero = numero + 1;
            lblNumeroOrden.Text = numero.ToString();
        }
Пример #12
0
        private void CargarGrillaOrden()
        {
            OrdenPedido orden = new OrdenPedido();

            grdOrden.DataSource = orden.ListarOrdenPedido();
            EsconderColumnasAutogeneradas();
            CambioNombreColumnaGrillaOrden();
        }
Пример #13
0
 public Task <List <OrdenPedido> > CreatePedido(OrdenPedido prmOrdenPedido)
 {
     prmOrdenPedido.EstadoId      = 3;
     prmOrdenPedido.FechaCreacion = DateTime.Now;
     prmOrdenPedido.CreadoPor     = "admin";
     _context.OrdenPedidos.Add(prmOrdenPedido);
     _context.SaveChanges();
     return(this.getOrdenes());
 }
Пример #14
0
        public Task <List <OrdenPedido> > setOrdenes(OrdenPedido prmOrdenPedido)
        {
            var orden = _context.OrdenPedidos.Find(prmOrdenPedido.OrdenPedidoId);

            orden.EstadoId = prmOrdenPedido.EstadoId;
            _context.OrdenPedidos.Update(orden);
            _context.SaveChanges();
            return(this.getOrdenes());
        }
Пример #15
0
        private void PrepararDatos(ref OrdenPedido ordenPedido)
        {
            var operacionDocumentos = OperacionDocumentoBL.Instancia.GetByOperacion(ordenPedido.IdOperacion);
            var tiposDocumentos     = ItemTablaBL.Instancia.GetByTabla((int)TipoTabla.TipoComprobante);
            var documentos          = new List <Comun>();

            foreach (var documento in operacionDocumentos)
            {
                var tipoDocumento = tiposDocumentos.FirstOrDefault(p => p.IdItemTabla == documento.TipoDocumento);
                documentos.Add(new Comun {
                    Id = documento.TipoDocumento, Nombre = tipoDocumento.Valor
                });
            }

            var sucursales  = SucursalBL.Instancia.GetAutorizadas(IdEmpresa, UsuarioActual.IdEmpleado);
            var direcciones = new List <Comun>();

            foreach (var sucursal in sucursales)
            {
                var ubigeo = UbigeoBL.Instancia.Single(sucursal.IdUbigeo);
                direcciones.Add(new Comun
                {
                    Id     = sucursal.IdSucursal,
                    Nombre = string.Format("{0} - {1}, {2}", sucursal.Nombre, sucursal.Direccion, ubigeo.Direccion)
                });
            }

            if (ordenPedido.IdTransaccion == 0)
            {
                var transaccionImpuesto = new List <TransaccionImpuesto>();
                var operacionImpuestos  = OperacionImpuestoBL.Instancia.GetByOperacion(ordenPedido.IdOperacion);

                foreach (var operacionImpuesto in operacionImpuestos)
                {
                    transaccionImpuesto.Add(new TransaccionImpuesto
                    {
                        IdImpuesto     = operacionImpuesto.IdImpuesto,
                        Secuencia      = operacionImpuesto.Orden,
                        Tasa           = operacionImpuesto.Impuesto.Monto,
                        NombreImpuesto = operacionImpuesto.Impuesto.Nombre,
                        EsEditable     = Convert.ToBoolean(operacionImpuesto.Impuesto.EsEditable)
                    });
                }

                ordenPedido.TransaccionImpuesto = transaccionImpuesto.OrderBy(p => p.Secuencia).ToList();
            }
            else
            {
                ordenPedido.TransaccionImpuesto = TransaccionImpuestoBL.Instancia.GetByTransaccion(ordenPedido.IdTransaccion);
            }

            ordenPedido.Documentos      = documentos;
            ordenPedido.Direcciones     = direcciones;
            ordenPedido.Monedas         = MonedaBL.Instancia.GetAll();
            ordenPedido.CondicionesPago = ItemTablaBL.Instancia.ItemTablaToList((int)TipoTabla.CondicionPago);
            ordenPedido.Almacenes       = AlmacenBL.Instancia.GetByIdSucursal(IdSucursal);
        }
        // GET: OrdenPedidoes
        public ActionResult Index(int id)
        {
            var         idP         = id;
            OrdenPedido ordenPedido = db.OrdenPedido.Find(id);

            return(View(db.OrdenPedido.Include(o => o.Empleado).Include(o => o.Producto).Include(o => o.Proveedor).Where(o => o.IdProveedor == id)));
            //var ordenPedido = db.OrdenPedido.Include(o => o.Empleado).Include(o => o.Producto).Include(o => o.Proveedor).Where(o => o.IdProveedor == id);
            //return View(ordenPedido.ToList());
        }
Пример #17
0
 private void cmbProveedores_SelectedValueChanged(object sender, EventArgs e)
 {
     if (cmbProveedores.SelectedValue != null)
     {
         OrdenPedido ordenPedido = new OrdenPedido();
         grdOrden.DataSource = ordenPedido.ListarOrdenPedidoPorProveedor((int)cmbProveedores.SelectedValue);
         LimpiarGrillaDetalle();
         EsconderColumnasAutogeneradas();
     }
 }
Пример #18
0
        private void CargarOrdenAModificar()
        {
            int         numeroOrden = frmRevisarPedido.numeroOrdenModificar;
            OrdenPedido orden       = new OrdenPedido();

            orden = orden.ObtenerOrdenPedido(numeroOrden);
            lblNumeroOrden.Text        = numeroOrden.ToString("0000");
            cmbProveedor.SelectedValue = orden.Proveedor.Rut;
            CargarGrillaDetalleOrdenYTotal(numeroOrden);
        }
Пример #19
0
 public bool Actualizar(OrdenPedido orden)
 {
     try
     {
         return(repository.Actualizar(orden));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Пример #20
0
        public async Task <IActionResult> RegistrarOrdenPedido([Bind("IdOrdenPedido,,fechapedido,comentario,usuario,estado")] OrdenPedido ordenPedido)
        {
            if (ModelState.IsValid)
            {
                _context.Add(ordenPedido);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(RegistrarOrdenPedido)));
            }
            return(View(ordenPedido));
        }
Пример #21
0
 public static void Editar(HiShopContext context, OrdenPedido ordenPedido)
 {
     try
     {
         context.OrdenPedidos.Update(ordenPedido);
         context.SaveChanges();
     }
     catch
     {
         throw new InvalidDataException("ERROR");
     }
 }
Пример #22
0
        private async void button1_Click(object sender, EventArgs e)
        {
            OrdenPedido objenviar = new OrdenPedido();
            var         cliente   = clientList.Where(x => x.Nombres == clienteSel.Text).FirstOrDefault();

            objenviar.Borrado          = false;
            objenviar.ClienteId        = cliente.ClienteId;
            objenviar.DireccionEntrega = textBox1.Text;
            objenviar.PrioridadId      = textBox3.Text == "Baja"?8:textBox3.Text == "Media"?10:11;
            objenviar.ValorTotal       = Convert.ToDouble(textBox2.Text);
            foreach (var producto in this.productos)
            {
                OrdenPedidoDetalle ordede = new OrdenPedidoDetalle();
                ordede.Cantidad      = 1;
                ordede.CreadoPor     = "admin";
                ordede.FechaCreacion = DateTime.Now;
                ordede.ProductoId    = producto.ProductoId;
                objenviar.OrdenPedidoDetalles.Add(ordede);
            }
            var client = new HttpClient {
                BaseAddress = new Uri(endpoint)
            };
            var myContent   = JsonConvert.SerializeObject(objenviar);
            var buffer      = System.Text.Encoding.UTF8.GetBytes(myContent);
            var byteContent = new ByteArrayContent(buffer);

            byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            var responseMessage = await client.PostAsync("ordenPedido", byteContent);

            MessageBox.Show("Orden creada satisfactoriamente");
            textBox1.Text  = "";
            textBox2.Text  = "";
            textBox3.Text  = "";
            this.productos = new List <Producto>();
            var responseMessageProdcut = await client.GetAsync("ordenPedido", HttpCompletionOption.ResponseContentRead);

            var resultArrayProduct = await responseMessageProdcut.Content.ReadAsStringAsync();

            List <OrdenPedido> ordenPedidos = JsonConvert.DeserializeObject <List <OrdenPedido> >(resultArrayProduct);
            DataTable          dt           = new DataTable();

            dt.Columns.Add("Dirección de entrega");
            dt.Columns.Add("Valor Total");
            foreach (var ordenes in ordenPedidos)
            {
                DataRow row = dt.NewRow();
                row[0] = ordenes.DireccionEntrega;
                row[1] = ordenes.ValorTotal;
                dt.Rows.Add(row);
            }
            dataGridView2.DataSource = dt;
        }
Пример #23
0
        private void EnviarEmailAlProveedor(OrdenPedido orden, string ruta)
        {
            bool correoEnviado = orden.EnviarCorreoOrdenPedido(orden, ruta);

            if (correoEnviado)
            {
                MessageBox.Show("Se ha enviado la orden correctamente.");
            }
            else
            {
                MessageBox.Show("Ha ocurrido un error mientras se enviaba la orden");
            }
        }
Пример #24
0
        private void MostrarOrdenAEsperar()
        {
            OrdenPedido orden = new OrdenPedido();

            orden = orden.MostrarUltimaOrdenEnviada();
            if (orden != null)
            {
                lblNumeroOrden.Text = "N° " + orden.Numero.ToString();
                Proveedor proveedor = new Proveedor();
                proveedor = proveedor.ObtenerProveedor(orden.Proveedor.Rut);
                lblNombreProveedor.Text = proveedor.Nombre;
            }
        }
Пример #25
0
        public static OrdenPedido GetOrdenPedido(HiShopContext _context, int id)
        {
            OrdenPedido ordenPedido = null;

            try
            {
                ordenPedido = _context.OrdenPedidos.Single(m => m.ID == id);
            }
            catch
            {
                throw new InvalidDataException("ERROR.");
            }
            return(ordenPedido);
        }
        // GET: OrdenPedidoes/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            OrdenPedido ordenPedido = db.OrdenPedido.Find(id);

            if (ordenPedido == null)
            {
                return(HttpNotFound());
            }
            return(View(ordenPedido));
        }
Пример #27
0
        //Buscar un orden en la Base de Datos
        public static OrdenPedido ObtenerOrdenPorID(HiShopContext context, int?id)
        {
            if (id == null)
            {
                throw new Exception();
            }

            OrdenPedido pedido = context.OrdenPedidos.Single(m => m.ID == id);

            if (pedido == null)
            {
                throw new Exception();
            }
            return(pedido);
        }
        public ActionResult Confirmar(int?id)
        {
            ViewBag.IdOrden = id;
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            OrdenPedido ordenPedido = db.OrdenPedido.Find(id);

            if (ordenPedido == null)
            {
                return(HttpNotFound());
            }
            var idUsuario = (int)Session["UserId"];

            idProveedores = idUsuario;

            var idEmpleado = ordenPedido.IdEmpleado;

            ViewBag.IdEmp        = idEmpleado;
            ViewBag.IdEmpleado   = new SelectList(db.Empleado, "Id", "Nombre", ordenPedido.IdEmpleado);
            ViewBag.IdProducto   = new SelectList(db.Producto, "Id", "Codigo", ordenPedido.IdProducto);
            ViewBag.IdProd       = ordenPedido.IdProducto;
            ViewBag.IdProducto2  = ordenPedido.IdProducto;
            ViewBag.IdProveedor  = new SelectList(db.Proveedor, "Id", "Nombre", ordenPedido.IdProveedor);
            ViewBag.IdProveedor2 = ordenPedido.IdProveedor;
            var can = ordenPedido.Cantidad;

            ViewBag.Cantidad = ordenPedido.Cantidad;

            var idEmp = ordenPedido.IdEmpleado;

            if (ModelState.IsValid)
            {
                db.Entry(ordenPedido).State = EntityState.Modified;
                db.OrdenPedido.Remove(ordenPedido);
                db.SaveChanges();
                int?idProv = ordenPedido.IdProveedor;

                return(RedirectToAction("Create", "RecepcionProductoes", new { can, idProveedores, idEmp }));
            }



            //return View(ordenPedido);
            db.OrdenPedido.Remove(ordenPedido);
            return(RedirectToAction("Create", "RecepcionProductoes", new { can, idProveedores }));
        }
        public ActionResult Edit([Bind(Include = "Id,Descripcion,Cantidad,IdProducto,IdEmpleado,IdProveedor")] OrdenPedido ordenPedido)
        {
            if (ModelState.IsValid)
            {
                db.Entry(ordenPedido).State = EntityState.Modified;
                db.SaveChanges();
                int can = int.Parse(ordenPedido.Cantidad);

                //return RedirectToAction("Create", "RecepcionProductoes");
                return(RedirectToAction("Create", "RecepcionProductoes", new { can }));
            }
            ViewBag.IdEmpleado  = new SelectList(db.Empleado, "Id", "Nombre", ordenPedido.IdEmpleado);
            ViewBag.IdProducto  = new SelectList(db.Producto, "Id", "Codigo", ordenPedido.IdProducto);
            ViewBag.IdProveedor = new SelectList(db.Proveedor, "Id", "Nombre", ordenPedido.IdProveedor);
            return(View(ordenPedido));
        }
Пример #30
0
        private void BuscarOrdenPedidoPorNumero()
        {
            OrdenPedido orden = new OrdenPedido();

            if (txtBuscarOrden.Text != "")
            {
                int nroOrden = int.Parse(txtBuscarOrden.Text);
                grdOrden.DataSource = orden.ListarOrdenPedidoPorNumero(nroOrden);
                txtBuscarOrden.Clear();
                EsconderColumnasAutogeneradas();
            }
            else
            {
                CargarGrillaOrden();
            }
        }