Ejemplo n.º 1
0
        internal async Task <RespuestaDatos> GuardarFactura(FacturasFac factura, PedidosPed pedido)
        {
            RespuestaDatos respuestaDatos;

            if (pedido != null)
            {
                try
                {
                    respuestaDatos = await _repoFacturasFac.GuardarFactura(factura);
                }
                catch (COExcepcion e)
                {
                    RepoErrorLog.AddErrorLog(new ErrorLog
                    {
                        Mensaje   = e.Message,
                        Traza     = e.StackTrace,
                        Usuario   = "no_aplica",
                        Creacion  = DateTime.Now,
                        Tipoerror = COErrorLog.ENVIO_CORREO
                    });
                    throw e;
                }
            }
            else
            {
                throw new COExcepcion("El pedido ingresado no existe.");
            }
            return(respuestaDatos);
        }
        internal async Task <RespuestaDatos> GuardarFactura(FacturasFac factura)
        {
            using FeContext context = new FeContext();
            RespuestaDatos respuestaDatos;

            try
            {
                context.Add(factura);
                context.SaveChanges();
                respuestaDatos = new RespuestaDatos {
                    Codigo = COCodigoRespuesta.OK, Mensaje = "Factura creada exitosamente."
                };
            }
            catch (Exception e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                throw new COExcepcion("Ocurrió un problema al intentar realizar la factura");
            }
            return(respuestaDatos);
        }
        internal async Task <RespuestaDatos> ModificarFactura(FacturasFac factura)
        {
            using FeContext context = new FeContext();
            RespuestaDatos respuestaDatos;
            FacturasFac    f = GetFacturaPorId(factura.Id);

            if (f != null)
            {
                try
                {
                    context.Attach(f);
                    f.Idpedido             = factura.Idpedido;
                    f.Idvendedor           = f.Idvendedor;
                    f.Valortotalfactura    = factura.Valortotalfactura;
                    f.Valortotalfacturaiva = factura.Valortotalfacturaiva;
                    f.Fechaentrega         = factura.Fechaentrega;
                    f.Fechafactura         = factura.Fechafactura;
                    f.Estado = factura.Estado;
                    context.SaveChanges();
                    respuestaDatos = new RespuestaDatos {
                        Codigo = COCodigoRespuesta.OK, Mensaje = "Factura modificada exitosamente."
                    };
                }
                catch (Exception e)
                {
                    RepoErrorLog.AddErrorLog(new ErrorLog
                    {
                        Mensaje   = e.Message,
                        Traza     = e.StackTrace,
                        Usuario   = "no_aplica",
                        Creacion  = DateTime.Now,
                        Tipoerror = COErrorLog.ENVIO_CORREO
                    });
                    throw new COExcepcion("Ocurrió un problema al intentar modificar la factura.");
                }
            }
            else
            {
                throw new COExcepcion("La factura no existe");
            }
            return(respuestaDatos);
        }
Ejemplo n.º 4
0
        public async Task <List <ContratoDetallesFactura> > ListarDetallesFactura(int idFactura)

        {
            List <ContratoDetallesFactura> detallesPedido = new List <ContratoDetallesFactura>();
            FacturasFac factura = _fAFacturaBiz.GetFacturaPorId(idFactura);

            if (factura != null)
            {
                List <ProdSerXFacturaFac> productos = _fAFacturaBiz.GetProductosFacturaPorIdFactura(factura.Id);
                for (int i = 0; i < productos.Count; i++)
                {
                    detallesPedido.Add(await DetalleProductoFactura(productos[i].Id));
                }
            }
            else
            {
                throw new COExcepcion("La factura ingresada no existe.");
            }
            return(detallesPedido);
        }
Ejemplo n.º 5
0
        internal async Task <RespuestaDatos> ModificarFactura(FacturasFac factura)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                respuestaDatos = await _repoFacturasFac.ModificarFactura(factura);
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                throw e;
            }
            return(respuestaDatos);
        }
Ejemplo n.º 6
0
        public async Task <RespuestaDatos> GuardarProductoFactura(ProdSerXFacturaFac productoFactura)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                FacturasFac factura = _fAFacturaBiz.GetFacturaPorId(productoFactura.Idfactura);
                respuestaDatos = respuestaDatos = await _fAFacturaBiz.GuardarProductoFactura(productoFactura, factura);
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                throw e;
            }
            return(respuestaDatos);
        }
Ejemplo n.º 7
0
        public async Task <RespuestaDatos> GuardarFactura(FacturasFac factura)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                PedidosPed pedido = _pEFachada.GetPedidoPorId(factura.Idpedido);
                respuestaDatos = respuestaDatos = await _fAFacturaBiz.GuardarFactura(factura, pedido);
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                throw e;
            }
            return(respuestaDatos);
        }
        internal async Task <RespuestaDatos> RemoverFactura(int idFactura)
        {
            using FeContext context = new FeContext();
            RespuestaDatos respuestaDatos;
            FacturasFac    factura = GetFacturaPorId(idFactura);

            if (factura != null)
            {
                try
                {
                    context.FacturasFacs.Attach(factura);
                    context.FacturasFacs.Remove(factura);
                    context.SaveChanges();
                    respuestaDatos = new RespuestaDatos {
                        Codigo = COCodigoRespuesta.OK, Mensaje = "Factura eliminada exitosamente."
                    };
                }
                catch (Exception e)
                {
                    RepoErrorLog.AddErrorLog(new ErrorLog
                    {
                        Mensaje   = e.Message,
                        Traza     = e.StackTrace,
                        Usuario   = "no_aplica",
                        Creacion  = DateTime.Now,
                        Tipoerror = COErrorLog.ENVIO_CORREO
                    });
                    throw new COExcepcion("Ocurrió un problema al intentar eliminar la factura");
                }
            }
            else
            {
                throw new COExcepcion("La factura no existe");
            }
            return(respuestaDatos);
        }
Ejemplo n.º 9
0
        internal FacturasFac PedidoAFactura(List <ProdSerXVendidosPed> pedido, int idVendedor, DateTime entrega)
        {
            FacturasFac factura = new FacturasFac();

            if (pedido != null && idVendedor != -1 && entrega != null)
            {
                int?total = 0;
                foreach (ProdSerXVendidosPed p in pedido)
                {
                    total += p.Preciototal;
                }

                factura.Id                   = 0;
                factura.Idpedido             = pedido[0].Idpedido;
                factura.Fechafactura         = DateTime.Now;
                factura.Fechaentrega         = entrega;
                factura.Valortotalfactura    = total;
                factura.Valortotalfacturaiva = (int?)(total + (total * 0.19));
                factura.Estado               = "FAC";
                factura.Idvendedor           = idVendedor;
            }

            return(factura);
        }
Ejemplo n.º 10
0
        public async Task <ContratoFacturas> CabeceraFactura(int idFactura)

        {
            ContratoFacturas cabeceraFactura = new ContratoFacturas();
            FacturasFac      factura         = _fAFacturaBiz.GetFacturaPorId(idFactura);

            if (factura != null)
            {
                cabeceraFactura.Id = factura.Id;

                cabeceraFactura.Estado               = factura.Estado;
                cabeceraFactura.Fechafactura         = factura.Fechafactura;
                cabeceraFactura.Fechaentrega         = factura.Fechaentrega;
                cabeceraFactura.Valortotalfactura    = factura.Valortotalfactura;
                cabeceraFactura.Valortotalfacturaiva = factura.Valortotalfacturaiva;
                cabeceraFactura.Idvendedor           = (int)factura.Idvendedor;
                cabeceraFactura.Productos            = await ListarDetallesFactura(factura.Id);
            }
            else
            {
                throw new COExcepcion("La factura ingresada no existe.");
            }
            return(cabeceraFactura);
        }
Ejemplo n.º 11
0
        public async Task <RespuestaDatos> ModificarFactura([FromBody] FacturasFac factura)
        {
            RespuestaDatos respuestaDatos;

            try
            {
                respuestaDatos = await _fAFachada.ModificarFactura(factura);
            }
            catch (COExcepcion e)
            {
                RepoErrorLog.AddErrorLog(new ErrorLog
                {
                    Mensaje   = e.Message,
                    Traza     = e.StackTrace,
                    Usuario   = "no_aplica",
                    Creacion  = DateTime.Now,
                    Tipoerror = COErrorLog.ENVIO_CORREO
                });
                respuestaDatos = new RespuestaDatos {
                    Codigo = COCodigoRespuesta.ERROR, Mensaje = e.Message
                };
            }
            return(respuestaDatos);
        }
Ejemplo n.º 12
0
        internal async Task <RespuestaDatos> GuardarProductoFactura(ProdSerXFacturaFac productoFactura, FacturasFac factura)
        {
            RespuestaDatos respuestaDatos;

            if (factura != null)
            {
                try
                {
                    respuestaDatos = await _repoProdSerXFacturaFac.GuardarProductoFactura(productoFactura);
                }
                catch (COExcepcion e)
                {
                    RepoErrorLog.AddErrorLog(new ErrorLog
                    {
                        Mensaje   = e.Message,
                        Traza     = e.StackTrace,
                        Usuario   = "no_aplica",
                        Creacion  = DateTime.Now,
                        Tipoerror = COErrorLog.ENVIO_CORREO
                    });
                    throw e;
                }
            }
            else
            {
                throw new COExcepcion("La factura ingresada no existe.");
            }
            return(respuestaDatos);
        }