コード例 #1
0
        public List <DtoProducto> getProPreparar(int id, string NombreUsu)
        {
            List <DtoProducto> colDtoProducto = new List <DtoProducto>();

            using (AliyavaEntities context = new AliyavaEntities())
            {
                List <DetallePedido> colDet = context.DetallePedido.Where(w => w.idPedido == id).ToList();
                Pedido ped = context.Pedido.FirstOrDefault(f => f.Numero == id);
                ped.Estado = "En preparación";

                Historico_de_Cambio_de_estados hisEstado = new Historico_de_Cambio_de_estados();
                hisEstado.Accion      = "El pedido está en la fase de preparación.";
                hisEstado.Estados     = "En preparación";
                hisEstado.numPedido   = ped.Numero;
                hisEstado.Funcionario = NombreUsu;
                hisEstado.FechaCambio = DateTime.Today;

                foreach (DetallePedido det in colDet)
                {
                    DtoProducto dto = new DtoProducto();
                    dto.Codigo           = det.idProducto;
                    dto.CantidadPreparar = (int?)det.CantidadPreparar;
                    dto.UbicacionPro     = det.UbicacionPro;

                    colDtoProducto.Add(dto);
                }

                context.Historico_de_Cambio_de_estados.Add(hisEstado);
                context.SaveChanges();
            }
            return(colDtoProducto);
        }
コード例 #2
0
        public void asignarPedido(int idP, int idR, string NombreUsu)
        {
            using (AliyavaEntities context = new AliyavaEntities())
            {
                //Asignar pedidos.
                Pedido  Ped = context.Pedido.Include("Reparto").FirstOrDefault(f => f.Numero == idP);
                Reparto rep = context.Reparto.Include("Pedido").FirstOrDefault(f => f.idReparto == idR);

                Ped.Reparto = rep;
                rep.Pedido.Add(Ped);

                Ped.Estado = "En viaje";
                rep.Estado = "En viaje";

                Historico_de_Cambio_de_estados hisEstado = new Historico_de_Cambio_de_estados();
                hisEstado.Accion      = "El pedido ya está en viaje.";
                hisEstado.Estados     = "En viaje";
                hisEstado.numPedido   = Ped.Numero;
                hisEstado.Funcionario = NombreUsu;
                hisEstado.FechaCambio = DateTime.Today;

                context.Historico_de_Cambio_de_estados.Add(hisEstado);
                context.SaveChanges();
            }
        }
コード例 #3
0
        public static Historico_de_Cambio_de_estados MapToEntity(DtoHistoricoEstado dto)
        {
            Historico_de_Cambio_de_estados entity = new Historico_de_Cambio_de_estados();

            entity.Accion      = dto.Accion;
            entity.Estados     = dto.Estados;
            entity.FechaCambio = dto.FechaCambio;
            entity.Funcionario = dto.Funcionario;
            entity.numPedido   = dto.numPedido;

            return(entity);
        }
コード例 #4
0
        public static DtoHistoricoEstado MapToDto(Historico_de_Cambio_de_estados entity)
        {
            DtoHistoricoEstado dto = new DtoHistoricoEstado();

            dto.Accion      = entity.Accion;
            dto.Estados     = entity.Estados;
            dto.FechaCambio = entity.FechaCambio;
            dto.Funcionario = entity.Funcionario;
            dto.numPedido   = entity.numPedido;

            return(dto);
        }
コード例 #5
0
        public void cancelarPed(int idPedido, string NombreUsu)
        {
            using (AliyavaEntities context = new AliyavaEntities())
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    try
                    {
                        Pedido ped = context.Pedido.Include("Reserva").FirstOrDefault(f => f.Numero == idPedido);
                        //List<DetallePedido> coldet = context.DetallePedido.Include("Pedido, Reserva").Where(w => w.idPedido == idPedido).ToList();

                        Stock stockByPro = new Stock();
                        ped.Estado = "Cancelado";

                        foreach (DetallePedido det in ped.DetallePedido)
                        {
                            foreach (Reserva res in ped.Reserva)
                            {
                                res.Estado = "Inactiva";
                                stockByPro = context.Stock.FirstOrDefault(w => w.idProducto == det.idProducto);

                                if (stockByPro != null)
                                {
                                    stockByPro.Cantidad = stockByPro.Cantidad + det.CantidadPreparar;
                                }
                            }
                        }

                        Historico_de_Cambio_de_estados hisEstado = new Historico_de_Cambio_de_estados();
                        hisEstado.Accion      = "Se canceló su pedido.";
                        hisEstado.Estados     = "Cancelado";
                        hisEstado.numPedido   = ped.Numero;
                        hisEstado.Funcionario = NombreUsu;
                        hisEstado.FechaCambio = DateTime.Today;

                        context.Historico_de_Cambio_de_estados.Add(hisEstado);
                        context.SaveChanges();

                        scope.Complete();
                    }
                    catch (Exception ex)
                    {
                        scope.Dispose();
                    }
                }
            }
        }
コード例 #6
0
        //-----------------------------------------------------------------------------------------------------------



        //Empleados
        public void cambiarEstadoPedido(int idPedido, string NombreUsu)
        {
            using (AliyavaEntities context = new AliyavaEntities())
            {
                Pedido pedido = context.Pedido.FirstOrDefault(f => f.Numero == idPedido);
                pedido.Estado = "En despacho";

                Historico_de_Cambio_de_estados hisEstado = new Historico_de_Cambio_de_estados();
                hisEstado.Accion      = "Se confirmó que la preparación del pedido culminó, pasó a despacho.";
                hisEstado.Estados     = "En despacho";
                hisEstado.numPedido   = idPedido;
                hisEstado.Funcionario = NombreUsu;
                hisEstado.FechaCambio = DateTime.Today;

                context.Historico_de_Cambio_de_estados.Add(hisEstado);
                context.SaveChanges();
            }
        }
コード例 #7
0
        public void finalizarReparto(int id, string NombreUsu)
        {
            using (AliyavaEntities context = new AliyavaEntities())
            {
                using (TransactionScope scope = new TransactionScope())
                {
                    try
                    {
                        Reparto reparto = context.Reparto.FirstOrDefault(f => f.idReparto == id);
                        reparto.Estado = "Finalizado";

                        foreach (Pedido ped in reparto.Pedido)
                        {
                            ped.Estado = "Entregado";

                            Historico_de_Cambio_de_estados hisEstado = new Historico_de_Cambio_de_estados();
                            hisEstado.Accion      = "Se entregó el pedido con éxito.";
                            hisEstado.Estados     = "Entregado";
                            hisEstado.numPedido   = ped.Numero;
                            hisEstado.Funcionario = NombreUsu;
                            hisEstado.FechaCambio = DateTime.Today;

                            context.Historico_de_Cambio_de_estados.Add(hisEstado);
                        }

                        context.SaveChanges();

                        scope.Complete();
                    }
                    catch (Exception ex)
                    {
                        scope.Dispose();
                    }
                }
            }
        }