Exemplo n.º 1
0
        public void TestInsertarPedidoEntrega()
        {
            var pedido = new Pedido();

            pedido.FechaPedido = DateTime.Now;
            pedido.NumeroPedido = 215;
            pedido.CatTipopedido = new CatTipopedido(1);
            pedido.Proveedor = new Proveedor(97);
            pedido.Anexo = new Data.Entities.Anexo(1);
            pedido.Requisicion = new Requisicion(1);
            pedido.Fundamento = new Fundamento(1);
            pedido.IdReservaautoriza = null;
            pedido.CatArea = new CatArea(1100);
            pedido.ImporteDescuento = 100;
            pedido.Iva = new Iva(new IvaId(1,16));
            pedido.CatActividad = new CatActividad(1);
            pedido.CatPresupuesto = new CatPresupuesto(1);
            pedido.EstadoPedido = "A";
            pedido.ImporteTotal = 100;
            pedido.Observaciones = "aaaa";
            pedido.Usuario = new Usuario(4192);
            pedido.Almacen = new Almacen("C5");
            pedido.FechaModificacion = DateTime.Now;
            pedido.IpTerminal = "aaa";
            pedido.Modificacion = 1;
            pedido.Instituto = "eee";
            pedido.NumeroRequisicion = "zzzz";

            var pedidoDetalle = new PedidoDetalle();
            pedidoDetalle.Pedido = pedido;
            pedidoDetalle.RenglonPedido = 3;
            pedidoDetalle.Articulo = new Articulo(new ArticuloId(2,new Almacen("F")));
            pedidoDetalle.Marca = "dionisio";
            pedidoDetalle.Cantidad = 1562;
            pedidoDetalle.PrecioUnitario = 1;
            pedido.PedidoDetalle.Add(pedidoDetalle);

            var pedidoEntrega = new PedidoEntrega();
            pedidoEntrega.PedidoDetalle = pedidoDetalle;
            pedidoEntrega.Entrega = 15;
            pedidoEntrega.FechaInicial = DateTime.Now;
            pedidoEntrega.FechaFinal = DateTime.Now;
            pedidoEntrega.Cantidad = 15;
            pedidoDetalle.PedidoEntrega.Add(pedidoEntrega);

            PedidoDao.Merge(pedido);
        }
Exemplo n.º 2
0
 public void GuardarPedido()
 {
     var pedido = new Pedido();
     pedido.NumeroPedido = PedidoService.PedidoDao.SiguienteNumeroPedido(new Almacen("C5"), 1);
     pedido.FechaPedido = PedidoService.PedidoDao.FechaServidor();
     pedido.Almacen = new Almacen("C5");
     pedido.Iva = new Iva(new IvaId(1,16));
     //pedido.Anexo = new Anexo();
 }
Exemplo n.º 3
0
 public void TestGenerarPedidoAutomatico()
 {
     var requisicion = RequisicionDao.Get(1);
     var pedido = new Pedido();
     pedido.CatArea = new CatArea(1);
     pedido.Proveedor = new Proveedor(1);
     pedido.NumeroRequisicion = "11";
     PedidoService.GenerarPedidoAutomatico(pedido,requisicion,new DateTime(),new DateTime() );
 }
Exemplo n.º 4
0
 //private decimal subtotal = (decimal)0.0;
 public ReportePedido(Pedido pedido)
 {
     this.pedido = pedido;
 }
Exemplo n.º 5
0
 public PedidoDetalleId(Pedido pedido, short renglonpedido)
 {
     this._pedido= pedido;
     this._renglonpedido= renglonpedido;
 }
Exemplo n.º 6
0
        public void GenerarPedidoAutomatico(Pedido pedidoCentinela, 
             Requisicion requisicion, DateTime fechaInicial, DateTime fechaFinal)
        {
            var fallos = FalloDao.ConsultarFalloByAnexo(requisicion.Anexo);

             foreach (var fallo in fallos)
            {
                var pedido = new Pedido();
                pedido.Almacen = pedidoCentinela.Almacen;
                pedido.Usuario = pedidoCentinela.Usuario;
                pedido.IpTerminal = Util.IpTerminal();
                pedido.FechaCaptura = PedidoDao.FechaServidor();
                pedido.FechaModificacion = PedidoDao.FechaServidor();
                pedido.FechaPedido = pedidoCentinela.FechaPedido;
                pedido.Fundamento = pedidoCentinela.Fundamento;
                pedido.CatActividad = pedidoCentinela.CatActividad;
                pedido.Iva = pedidoCentinela.Iva;
                pedido.CatPresupuesto = pedidoCentinela.CatPresupuesto;
                pedido.Observaciones = pedidoCentinela.Observaciones;
                pedido.Modificacion = 1;
                pedido.Instituto = fallo.Anexo.Instituto;
                pedido.NumeroPedido = PedidoDao.SiguienteNumeroPedido(pedido.Almacen, 1);
                pedido.CatTipopedido = new CatTipopedido(1);//Pedido Mayor
                pedido.Proveedor = fallo.Cotizacion.Proveedor;
                pedido.Anexo = fallo.Anexo;
                pedido.CatArea = requisicion.CatArea;
                pedido.ImporteDescuento = new decimal(0.0);
                pedido.CatPresupuesto = pedido.CatPresupuesto;
                pedido.EstadoPedido = "P";
                pedido.ImporteTotal = ImporteTotal(requisicion, fallo.FalloDetalle);
                pedido.Requisicion = requisicion;

                pedido = PedidoDao.Merge(pedido);

                short renglonPedido = 1;
                //int entrega = 1;

                var requisicionesDetalle = RequisicionDao.CargarRequisicionDetalle(requisicion);

                foreach (var requisicionDetalle in requisicionesDetalle)
                {
                    fallo.FalloDetalle = FalloDao.ConsultarFalloDetalle(fallo);

                    foreach (var falloDetalle in fallo.FalloDetalle)
                    {
                        if(requisicionDetalle.Articulo == falloDetalle.Articulo)
                        {
                            //Actualizamos la cantidad pedida fallo
                            falloDetalle.CantidadPed += requisicionDetalle.Cantidad;
                            FalloDetalleDao.Merge(falloDetalle);

                            var pedidoDetalle = new PedidoDetalle();
                            pedidoDetalle.Pedido = pedido;
                            pedidoDetalle.RenglonPedido = renglonPedido;
                            pedidoDetalle.Articulo = falloDetalle.Articulo;
                            pedidoDetalle.Cantidad = requisicionDetalle.Cantidad;
                            pedidoDetalle.PrecioUnitario = falloDetalle.PrecioFallo;
                            //pedidoDetalle.Marca = falloDetalle.

                            var pedidoEntrega = new PedidoEntrega();
                            pedidoEntrega.Entrega = 1;
                            pedidoEntrega.FechaInicial = fechaInicial;
                            pedidoEntrega.FechaFinal = fechaFinal;
                            pedidoEntrega.Cantidad = requisicionDetalle.Cantidad;
                            pedidoEntrega.PedidoDetalle = pedidoDetalle;
                            //++entrega;

                            pedidoDetalle.PedidoEntrega.Add(pedidoEntrega);
                            PedidoDetalleDao.Merge(pedidoDetalle);
                            ++renglonPedido;

                        }
                    }
                }

                requisicion.Estatus = "P";
                RequisicionDao.Merge(requisicion);
             }
        }
Exemplo n.º 7
0
        public void GuardarPedido(ref Pedido pedido)
        {
            //Genere un id nuevo
            pedido.FechaModificacion = PedidoDao.FechaServidor();
            pedido.IpTerminal = Util.IpTerminal();
            ++pedido.Modificacion;

            if (pedido.IdPedido == 0)//Nuevo
            {
                pedido.FechaCaptura = PedidoDao.FechaServidor();
                pedido.EstadoPedido = "A";
                pedido.NumeroPedido = PedidoDao.SiguienteNumeroPedido(pedido.Almacen,
                pedido.CatTipopedido.IdTipoped);
            }

            //Le cargamos el Articulo y la llave compuesta)
            for (var index = 0; index < pedido.PedidoDetalle.Count; index++)
            {
                var pedidoDetalle = pedido.PedidoDetalle[index];
                pedidoDetalle.Pedido = pedido;

                //if (pedidoDetalle.RenglonPedido == 0)
                pedidoDetalle.RenglonPedido = (short)(index + 1);

                var entrega = 1;

                foreach (var pedidoEntrega in pedidoDetalle.PedidoEntrega)
                {
                    pedidoEntrega.PedidoDetalle = pedidoDetalle;
                    pedidoEntrega.Entrega = ++entrega;
                }
            }

            pedido.ImporteTotal = pedido.PedidoDetalle.Sum(detalle => detalle.Importe);

            PedidoDao.Merge(pedido);
        }
Exemplo n.º 8
0
        public override void Nuevo()
        {
            PedidoActual = new Pedido();
            PedidoActual.CatTipopedido = new CatTipopedido(this.tipoPedido);

            bsPedido.DataSource = PedidoActual;
            bsPedidoDetalle.DataSource = new List<PedidoDetalle>();

            //Esto es un cambio para la ultima version
            PedidoActual.NumeroPedido = PedidoService.PedidoDao.SiguienteNumeroPedido(AlmacenActual, this.tipoPedido);
            lblNumero.Text = PedidoActual.NumeroPedido.ToString();
            PedidoActual.FechaPedido = PedidoService.PedidoDao.FechaServidor();
            lblFecha.Text = String.Format("{0:dd/MM/yyyy}", PedidoActual.FechaPedido);

            /*PedidoActual.FechaPedido = PedidoService.PedidoDao.FechaServidor();
            PedidoActual.NumeroPedido = PedidoService.PedidoDao.SiguienteNumeroPedido(AlmacenActual, this.tipoPedido).Value;
            deFecha.DateTime = PedidoActual.FechaPedido.Value;
            txtNumero.Value = PedidoActual.NumeroPedido.Value;
            */

            txtDescuento.Text = "0.00";
            Text = @"Pedido::" + PedidoActual;

            cmdGuardar.Enabled = true;
            cbxAlmacen.Enabled = true;

            searchLookUpFundamento.Visible = false;
            searchLookUpFundamento.EditValue = null;
            searchLookUpArea.EditValue = null;
            searchLookUpProveedor.EditValue = null;
            searchLookUpAnexo.EditValue = null;
            searchLookUpAnexo.Enabled = true;
            searchLookUpPartida.Enabled = true;
            searchLookUpPartida.EditValue = null;
            LimpiarErrores();
            LimpiarComboAnexo();
            splitContainerControl1.Panel1.Enabled = true;
            txtRequisicion.Focus();
        }
Exemplo n.º 9
0
        /// <summary>
        /// Constructor creado a partir del segundo constructor 
        /// es creado a partir de una consulta de pedido
        /// </summary>
        /// <param name="pedido">Pedido consultado</param>
        /// <param name="padre">Forma Padre Principal</param>
        public FrmModuloPedido(Pedido pedido,FrmAdquisiciones padre)
            : this(pedido.CatTipopedido.IdTipoped,padre)
        {
            PedidoActual = pedido;
            plProcedimiento.TipoPedido = PedidoActual.CatTipopedido;
            Consultar();

            Text = @"Pedido::" + PedidoActual;

            if (pedido.Requisicion != null)
                cmdGuardar.Enabled = false;
        }
Exemplo n.º 10
0
        public override void Consultar()
        {
            try
            {
                PedidoActual = PedidoService.ConsultarPedido(PedidoActual.NumeroPedido.Value,PedidoActual.FechaPedido.Value,
                                                          AlmacenActual, this.tipoPedido);
                if (PedidoActual != null)
                {
                    lblNumero.Text = PedidoActual.NumeroPedido.ToString();
                    lblFecha.Text = String.Format("{0:dd/MM/yyyy}", PedidoActual.FechaPedido);

                    bsPedido.DataSource = PedidoActual;
                    bsPedidoDetalle.DataSource = PedidoActual.PedidoDetalle;

                    //Combos que no vincula
                    if(PedidoActual.CatActividad != null)
                        cbxActividad.SelectedIndex = cbxActividad.FindStringExact(PedidoActual.CatActividad.DesActividad);

                    if(PedidoActual.CatPresupuesto != null)
                        cbxCargo.SelectedIndex = cbxCargo.FindStringExact(PedidoActual.CatPresupuesto.DesPresupuesto);

                    if(PedidoActual.Iva != null)
                        cbxIva.SelectedIndex = cbxIva.FindStringExact(PedidoActual.Iva.Id.Porcentaje.ToString());

                    if (PedidoActual.Fundamento != null)
                    {
                        cmdMostrarProc.Visible = false;
                        searchLookUpFundamento.Visible = true;
                        if (searchLookUpFundamento.Handle != IntPtr.Zero)
                            searchLookUpFundamento.EditValue = PedidoActual.Fundamento.CveFundamento;
                    }

                    plProcedimiento.Tipoprocedimiento = PedidoActual.TipoProcedimiento;

                    if (searchLookUpArea.Handle != IntPtr.Zero)
                        searchLookUpArea.EditValue = PedidoActual.CatArea.CveArea;

                    if (searchLookUpProveedor.Handle != IntPtr.Zero)
                        searchLookUpProveedor.EditValue = PedidoActual.Proveedor.CveProveedor;

                    if (PedidoActual.Anexo != null)
                    {
                        if (searchLookUpAnexo.Handle != IntPtr.Zero)
                        searchLookUpAnexo.EditValue = PedidoActual.Anexo.NumeroAnexo;

                        SeleccionoAnexo();
                    }

                    var oneDetalle = PedidoActual.PedidoDetalle[0];
                    PedidoActual.Partida = PedidoService.AnexoService.ArticuloDao.GetPartida(oneDetalle.Articulo);
                    cbxAlmacen.SelectedIndex = cbxAlmacen.FindStringExact(oneDetalle.Articulo.Id.Almacen.ToString());

                    //Centinela
                    if (searchLookUpPartida.Handle != IntPtr.Zero)
                        searchLookUpPartida.EditValue = PedidoActual.Partida.Partida;

                    LimpiarErrores();

                    if(PedidoService.PedidoDao.ExisteEntradaPedido(PedidoActual))
                    {
                        XtraMessageBox.Show(@"Ya Existe entrada asociada al pedido",
                        @"Adquisiciones", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        cmdGuardar.Enabled = false;
                    }

                    if (PedidoActual.EstadoPedido == "C")
                    {
                        XtraMessageBox.Show(@"El pedido esta cancelado",
                        @"Adquisiciones", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        cmdGuardar.Enabled = false;
                    }

                    searchLookUpPartida.Enabled = false;
                    searchLookUpAnexo.Enabled = false;
                    cbxAlmacen.Enabled = false;

                    base.EntityActual = PedidoActual;
                    base.Consultar();

                    cmdMostrarProc.Enabled = true;

                }
                else
                {
                    XtraMessageBox.Show(@"Folio no existe", @"Adquisiciones",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);

                }
            }
            catch (Exception ee)
            {
                XtraMessageBox.Show(@"Ocurrio un error en la consulta",
                    @"Adquisiciones", MessageBoxButtons.OK, MessageBoxIcon.Error);

                Log.Error("Generado por:" + FrmModuloAcceso.UsuarioLog, ee);
            }
        }
Exemplo n.º 11
0
        private void ReportePedido(Pedido pedido)
        {
            pedido = PedidoService.
            ConsultarPedido(pedido.NumeroPedido.Value, pedido.FechaPedido.Value,
            pedido.Almacen, pedido.CatTipopedido.IdTipoped);

            var reporte = new ReportePedido(pedido);
            reporte.GenerarReporteCompleto();
            crystalReportViewer.ReportSource = null;
            crystalReportViewer.Refresh();
            Text = @"ReportePedido";
        }
Exemplo n.º 12
0
        private void CargarPedidoCompleto(Pedido pedido, 
            ref List<PedidoCompleto> lista, Entrada entrada = null)
        {
            var descripcionGasto = PedidoService.PedidoDao.PedidoOneDetalleDescripcion(pedido);

            var importePedido = pedido.Total;
            var importeSinIva = pedido.ImporteTotal.Value;

            var pedidoFound = lista.Find(p => p.Pedido == pedido.NumeroPedido);

            if (pedidoFound != null){
                importePedido = (decimal) 0.0;
                importeSinIva = (decimal) 0.0;
            }

            var totalFactura = entrada != null ? PedidoService.PedidoDao.ImporteEntrada(entrada) : (decimal) 0.0;
            var importeSinIVAEntrada = entrada != null ? PedidoService.PedidoDao.ImporteEntradaSinIva(entrada) : (decimal)0.0;

            var fundamentoProcedimiento = "";

            if (pedido.Fundamento != null)
                fundamentoProcedimiento = pedido.Fundamento.DesFundamento;

            if (pedido.TipoProcedimiento != null)
                fundamentoProcedimiento = pedido.TipoProcedimiento.ToString();

            var pedidoCompleto = new PedidoCompleto
            {
                Estado = pedido.EstadoPedido,
                Pedido = pedido.NumeroPedido.Value,
                FechaPedido = pedido.FechaPedido.Value,
                Factura = entrada != null?entrada.NumeroFactura:"",
                Entrada = entrada!=null?entrada.NumeroEntrada.Value.ToString():"",
                Almacen = pedido.AlmacenDestino,
                FechaEntrada = entrada!=null?String.Format("{0:dd/MM/yyyy}", entrada.FechaEntrada.Value):"",
                TotalFactura = totalFactura,
                ImporteSinIVAEntrada = importeSinIVAEntrada,
                Proveedor = pedido.Proveedor.NombreFiscal,
                RFCProveedor = pedido.Proveedor.Rfc,
                AreaSolicitada = pedido.CatArea.DesArea,
                Partida = pedido.PartidaString,
                DescripcionGasto = descripcionGasto,
                ImporteSinIVA = importeSinIva,
                Req = pedido.NumeroRequisicion,
                Elaboro = pedido.Usuario.Nombre,
                Licitacion = "",
                Procedimiento = fundamentoProcedimiento,
                ImportePedido = importePedido,
                TipoPedido = pedido.CatTipopedido.DesTipoped
            };

            lista.Add(pedidoCompleto);
        }
Exemplo n.º 13
0
        public bool DatosValidosPedido(Pedido pedido, BarListItem lista)
        {
            bool result = true;

            if (pedido.Requisicion == null)
            {
                result = false;
                lista.Strings.Add("Requisicion requerida");
            }

            if (!Util.FechaValida(pedido.FechaPedido))
            {
                result = false;
                lista.Strings.Add("Fecha Pedido requerida");
            }

            if (!Util.FechaValida(deFechaInicial.DateTime))
            {
                result = false;
                lista.Strings.Add("Fecha Inicial requerida");
            }

            if (!Util.FechaValida(deFechaFinal.DateTime))
            {
                result = false;
                lista.Strings.Add("Fecha Final requerida");
            }

            if (deFechaInicial.DateTime.CompareTo(deFechaFinal.DateTime) > 0)
            {
                result = false;
                lista.Strings.Add("Fecha inicial debe ser mayor fecha final");
            }

            if (pedido.Fundamento == null)
            {
                result = false;
                lista.Strings.Add("Fundamento requerido");
            }

            if (pedido.CatActividad == null)
            {
                result = false;
                lista.Strings.Add("Actividad requerida");
            }

            if (pedido.Iva == null)
            {
                result = false;
                lista.Strings.Add("Iva requerido");
            }

            if (pedido.CatPresupuesto == null)
            {
                result = false;
                lista.Strings.Add("Cargo a requerido");
            }

            lblNumErrors.Caption = lista.Strings.Count + " Errores";

            return result;
        }
Exemplo n.º 14
0
        public override void Nuevo()
        {
            PedidoActual = new Pedido();
            bsPedido.DataSource = PedidoActual;

            PedidoActual.FechaPedido = PedidoService.PedidoDao.FechaServidor();
            lblFecha.Text = String.Format("{0:dd/MM/yyyy}", PedidoActual.FechaPedido);

            LimpiarRequisicion();
            LimpiarErrores();
        }