public CobroClienteDetailRpt GetCobroClienteDetailReport(ClienteInfo item, ChargeSummary resumen)
        {
            if (item == null)
            {
                return(null);
            }

            CobroClienteDetailRpt doc = new CobroClienteDetailRpt();

            List <CobroPrint>   cobros = new List <CobroPrint>();
            List <ClientePrint> pList  = new List <ClientePrint>();

            foreach (ChargeInfo cobro in item.Cobros)
            {
                if ((cobro.EEstado != Common.EEstado.Anulado))
                {
                    cobros.Add(CobroPrint.New(cobro, ShowQRCode));
                }
            }

            //Si no existen conceptos, no tiene sentido un informe detallado. Además, falla en Crystal Reports
            if (cobros.Count <= 0)
            {
                return(null);
            }

            pList.Add(ClientePrint.New(item, resumen));
            doc.SetDataSource(pList);
            doc.Subreports["Cuerpo"].SetDataSource(cobros);

            FormatHeader(doc);

            return(doc);
        }
        protected void CopyValues(ClienteInfo source, OutputInvoiceInfo factura)
        {
            if (source == null)
            {
                return;
            }

            if (factura != null)
            {
                _oid_factura             = factura.Oid;
                _numero_factura          = factura.Codigo;
                _numero_serie            = factura.NumeroSerie;
                _fecha_factura           = factura.Fecha;
                _total_factura           = factura.Total;
                _prevision               = factura.Prevision;
                _cantidad_cobrada        = factura.Cobrado;
                _pendiente               = factura.Pendiente;
                _efectos_negociados      = factura.EfectosNegociados;
                _efectos_devueltos       = factura.EfectosDevueltos;
                _efectos_pendientes_vto  = factura.EfectosPendientesVto;
                _gastos_cobro            = factura.GastosCobro;
                _base.Record.TipoInteres = factura.TipoInteres;
            }
            else
            {
                _numero_factura          = "";
                _numero_serie            = "";
                _total_factura           = 0;
                _base.Record.TipoInteres = 0;
            }

            Oid = source.Oid;
            _base.CopyValues(source);
        }
Esempio n. 3
0
        public virtual void Vende(Budget proforma, SerieInfo serie, ClienteInfo cliente, ProductInfo producto, BatchInfo partida)
        {
            if (cliente == null)
            {
                throw new iQException(Library.Invoice.Resources.Messages.NO_CLIENTE_SELECTED);
            }

            if (cliente.Productos == null)
            {
                cliente.LoadChilds(typeof(ProductoCliente), true);
            }

            ProductoClienteInfo productoCliente = cliente.Productos.GetByProducto(producto.Oid);

            if (partida == null)
            {
                CopyFrom(proforma, producto);
            }
            else
            {
                CopyFrom(partida);
            }

            SetTipoFacturacion(productoCliente, producto);
            SetImpuestos(serie, cliente, producto);
            Precio = producto.GetPrecioVenta(productoCliente, partida, ETipoFacturacion);
        }
Esempio n. 4
0
        protected void CopyValues(OutputInvoiceInfo factura, ClienteInfo cliente, TransporterInfo transporte, SerieInfo serie, bool get_QRCode)
        {
            if (factura == null)
            {
                return;
            }

            _base.CopyValues(factura);

            if (cliente != null)
            {
                _base._id_cliente = cliente.Codigo;
                _telefonos        = cliente.Telefonos;
                _fax = cliente.Fax;
            }

            if (transporte != null)
            {
                _nombre_transportista = transporte.Nombre;
            }

            if (serie != null)
            {
                _serie         = serie.Identificador;
                _nombre_serie  = serie.Nombre;
                _base._n_serie = serie.Identificador;
            }

            _conceptos = factura.ConceptoFacturas;

            if (get_QRCode)
            {
                _qr_code_print.LoadQRCode(_qr_code_print.Encode(QREncodeVersion.v1, ETipoEntidad.FacturaEmitida, this), QRCodeVersion.v8);
            }
        }
Esempio n. 5
0
        protected void CopyValues(ClienteInfo source, ChargeSummary resumen)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.CopyValues(source);

            _total_facturado        = resumen.TotalFacturado;
            _total_cobrado          = resumen.Cobrado;
            _efectos_negociados     = resumen.EfectosNegociados;
            _efectos_devueltos      = resumen.EfectosDevueltos;
            _efectos_pendientes_vto = resumen.EfectosPendientesVto;
            _dudoso_cobro           = resumen.DudosoCobro;
            _gastos_demora          = resumen.GastosDemora;
            _gastos_cobro           = resumen.GastosCobro;
            _condiciones_venta      = resumen.CondicionesVenta;

            if (source.Cobros != null)
            {
                foreach (ChargeInfo cobro in source.Cobros)
                {
                    _gastos_demora += cobro.GastosDemora;
                }

                _base._credito_dispuesto = _total_facturado - _total_cobrado;
            }
        }
        public InformeCarteraClientesRpt GetCarteraClientesReport(ClienteInfo cliente, SerieInfo serie, FormatConfCarteraClientesReport conf)
        {
            InformeCarteraClientesRpt   doc        = new InformeCarteraClientesRpt();
            List <CarteraClientesPrint> pList      = new List <CarteraClientesPrint>();
            List <CobroFacturaPrint>    pCobroList = new List <CobroFacturaPrint>();

            QueryConditions conditions = new QueryConditions
            {
                Cliente  = cliente,
                Serie    = serie,
                FechaIni = conf.inicio,
                FechaFin = conf.final
            };

            GetFacturas(cliente, conditions, conf, pList, pCobroList);

            doc.SetDataSource(pList);
            if (pCobroList.Count != 0)
            {
                doc.Subreports["CobroFacturasRpt"].SetDataSource(pCobroList);
            }
            else
            {
                conf.verCobros = false;
            }

            doc.SetParameterValue("VerCobros", conf.verCobros);

            FormatReport(doc, conf);
            FormatHeader(doc);

            return(doc);
        }
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(AlbaranTicketInfo source, ClienteInfo cliente, TicketInfo ticket, OutputDeliveryInfo Albaran)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidAlbaran = source.OidAlbaran;
            _base.Record.OidTicket  = source.OidTicket;

            SerieInfo serie = SerieInfo.Get(ticket.OidSerie, false);

            _base.CodigoTicket = ticket.Codigo;
            _total_factura     = ticket.Total;
            _numero_serie      = serie.Identificador;
            _fecha_factura     = ticket.Fecha;
            _prevision         = ticket.Prevision;

            //INNER JOIN
            _codigo_cliente = cliente.Codigo;
            _nombre         = cliente.Nombre;
            _telefonos      = cliente.Telefonos;
            _movil          = cliente.Movil;
            _dias_pago      = Albaran.Fecha.Subtract(ticket.Fecha).Days;
        }
        protected void CopyValues(OutputDeliveryInfo delivery, ClienteInfo client, TransporterInfo transporter)
        {
            if (delivery == null)
            {
                return;
            }

            Oid = delivery.Oid;
            _base.CopyValues(delivery);

            if (client != null)
            {
                _base._id_cliente = client.Codigo;
                _base._cliente    = client.Nombre;
                _direccion        = client.Direccion;
                _poblacion        = client.Poblacion;
                _provincia        = client.Provincia;
                _telefonos        = client.Telefonos;
                _fax           = client.Fax;
                _municipio     = client.Municipio;
                _codigo_postal = client.CodigoPostal;
            }

            if (transporter != null)
            {
                _nombre_transportista = transporter.Nombre;
            }
        }
Esempio n. 9
0
        public static OutputDeliveryList GetList(bool childs,
                                                 long oidHolder,
                                                 ETipoEntidad holderType,
                                                 long oidSerie,
                                                 ETipoAlbaranes deliveryType,
                                                 ETipoFactura invoiceType,
                                                 DateTime from,
                                                 DateTime till)
        {
            QueryConditions conditions = new QueryConditions
            {
                Serie         = (oidSerie != 0) ? SerieInfo.New(oidSerie) : null,
                TipoEntidad   = holderType,
                TipoAlbaranes = deliveryType,
                TipoFactura   = invoiceType,
                FechaIni      = from,
                FechaFin      = till,
            };

            switch (holderType)
            {
            case ETipoEntidad.Cliente:
                conditions.Cliente = (oidHolder != 0) ? ClienteInfo.New(oidHolder) : null;
                break;

            case ETipoEntidad.WorkReport:
                conditions.WorkReport = (oidHolder != 0) ? WorkReportInfo.New(oidHolder) : null;
                break;
            }

            return(GetList(childs, SELECT(conditions)));
        }
Esempio n. 10
0
        protected void CopyValues(ClienteInfo source)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.CopyValues(source);

            _total_facturado = 0.0m;

            OutputInvoiceList facturas = OutputInvoiceList.GetByClienteList(source, false);

            foreach (OutputInvoiceInfo f in facturas)
            {
                _total_facturado += f.Total;
            }

            _total_cobrado          = 0;
            _efectos_negociados     = 0;
            _efectos_devueltos      = 0;
            _efectos_pendientes_vto = 0;
            _gastos_demora          = 0;
            _gastos_cobro           = 0;
            _condiciones_venta      = 0;

            if (source.Cobros != null)
            {
                foreach (ChargeInfo cobro in source.Cobros)
                {
                    if (cobro.EEstado == EEstado.Anulado)
                    {
                        continue;
                    }

                    if (cobro.EEstadoCobro == EEstado.Charged && cobro.Vencimiento < DateTime.Now)
                    {
                        _total_cobrado += cobro.Importe;
                    }
                    else if (cobro.EEstadoCobro == EEstado.Charged && cobro.Vencimiento >= DateTime.Now)
                    {
                        _efectos_negociados += cobro.Importe;
                    }
                    else if (cobro.EEstadoCobro != EEstado.Charged && cobro.Vencimiento >= DateTime.Now)
                    {
                        _efectos_pendientes_vto += cobro.Importe;
                    }
                    else if (cobro.EEstadoCobro != EEstado.Charged && cobro.Vencimiento < DateTime.Now)
                    {
                        _efectos_devueltos += cobro.Importe;
                    }

                    _gastos_demora += cobro.GastosDemora;
                }

                _base._credito_dispuesto = _total_facturado - _total_cobrado;
            }
        }
Esempio n. 11
0
        public static OutputInvoiceList GetByClienteList(ClienteInfo cliente, bool childs)
        {
            QueryConditions conditions = new QueryConditions();

            conditions.Cliente = cliente;

            return(GetList(conditions, childs));
        }
        public static ClientProductList GetByClientList(long oidClient, bool childs = true)
        {
            QueryConditions conditions = new QueryConditions {
                Cliente = ClienteInfo.New(oidClient)
            };

            return(GetList(conditions, childs));
        }
Esempio n. 13
0
 public virtual void CopyFrom(ClienteInfo parent)
 {
     Expediente    = "Concepto Libre";
     Concepto      = "Transporte";
     CantidadKilos = 1;
     Precio        = parent.PrecioTransporte;
     PImpuestos    = 5;
 }
Esempio n. 14
0
 /// <summary>
 /// Actualiza el precio en base a si se Albaran por kilo o bulto
 /// y si el cliente tiene un precio especial para el producto
 /// </summary>
 public virtual void SetPrecio(ProductInfo producto,
                               BatchInfo partida,
                               ClienteInfo cliente)
 {
     Precio     = cliente.GetPrecio(producto, partida, ETipoFacturacion);
     PDescuento = cliente.GetDescuento(producto, partida);
     CalculateTotal();
 }
        public static string SELECT(ClienteInfo source)
        {
            QueryConditions conditions = new QueryConditions {
                Cliente = source
            };

            return(ClientProductList.SELECT(conditions));
        }
        public static ChargeList GetByClientList(long oidClient, bool childs)
        {
            QueryConditions conditions = new QueryConditions()
            {
                Cliente = ClienteInfo.New(oidClient)
            };

            return(GetListClientes(conditions, childs));
        }
Esempio n. 17
0
        public static OutputDeliveryLineList GetList(ProductInfo producto, ClienteInfo cliente, bool childs)
        {
            QueryConditions conditions = new QueryConditions
            {
                Producto = producto,
                Cliente  = cliente
            };

            return(GetList(conditions, childs));
        }
        public static string SELECT(ClienteInfo source)
        {
            QueryConditions conditions = new QueryConditions
            {
                Cliente   = source,
                TipoCobro = ETipoCobro.Cliente
            };

            return(Charge.SELECT(conditions, false));
        }
Esempio n. 19
0
        public static OutputDeliveryList GetByClientList(long oidClient, CriteriaEx criteria = null, bool childs = false)
        {
            QueryConditions conditions = new QueryConditions
            {
                TipoEntidad = ETipoEntidad.Cliente,
                Cliente     = ClienteInfo.New(oidClient),
                PagingInfo  = (criteria != null) ? criteria.PagingInfo : null,
                Filters     = (criteria != null) ? criteria.Filters : null
            };

            return(GetList(false, SELECT(conditions)));
        }
        public static ChargeList GetChildList(ClienteInfo parent, bool childs)
        {
            CriteriaEx criteria = Charge.GetCriteria(Charge.OpenSession());

            criteria.Query  = ChargeList.SELECT(parent);
            criteria.Childs = childs;

            ChargeList list = DataPortal.Fetch <ChargeList>(criteria);

            CloseSession(criteria.SessionCode);

            return(list);
        }
Esempio n. 21
0
        public static OutputDeliveryList GetListByCliente(bool childs, long oidClient, ETipoAlbaranes tipo, DateTime from, DateTime till)
        {
            QueryConditions conditions = new QueryConditions
            {
                TipoEntidad   = ETipoEntidad.Cliente,
                Cliente       = ClienteInfo.New(oidClient),
                TipoAlbaranes = tipo,
                FechaIni      = from,
                FechaFin      = till
            };

            return(GetList(false, SELECT(conditions)));
        }
Esempio n. 22
0
        protected void CopyValues(CobroFacturaInfo source, ClienteInfo cliente, OutputInvoiceInfo factura)
        {
            if (source == null)
            {
                return;
            }

            CopyValues(source);

            if (factura != null)
            {
                SerieInfo serie = SerieInfo.Get(factura.OidSerie, false);

                _base.CodigoFactura = serie.Identificador + "/" + factura.Codigo;
                _total_factura      = factura.Total;
                _numero_serie       = serie.Identificador;
                _base.FechaFactura  = factura.Fecha;
                _prevision          = factura.Prevision;
                _base.Cliente       = factura.Cliente;

                if (factura.CobroFacturas != null)
                {
                    _cantidad_cobrada = 0;
                    _pendiente        = _total_factura - source.Cantidad;

                    foreach (CobroFacturaInfo item in factura.CobroFacturas)
                    {
                        if (item.Fecha < source.Fecha)
                        {
                            _cantidad_cobrada += item.Cantidad;
                            _pendiente        -= item.Cantidad;
                        }
                    }
                }
                else
                {
                    _cantidad_cobrada = factura.Cobrado;
                    _pendiente        = factura.Pendiente;
                }

                _codigo_cliente = factura.IDCliente;
                _id_cobro_label = _codigo_cliente + "/" + _base.IdCobro.ToString(Resources.Defaults.COBRO_ID_FORMAT);
            }

            if (cliente != null)
            {
                _codigo_cliente = cliente.Codigo;
                _base.Cliente   = cliente.Nombre;
                _id_cobro_label = _codigo_cliente + "/" + _base.IdCobro.ToString(Resources.Defaults.COBRO_ID_FORMAT);
            }
        }
        public OutputInvoice NewItem(OutputDeliveryInfo albaran)
        {
            OutputInvoice item = NewItem();

            ClienteInfo cliente = ClienteInfo.Get(albaran.OidHolder, false, true);

            item.CopyFrom(cliente);
            item.CopyFrom(albaran);
            item.Insert(albaran);

            SetNextCode(item);

            return(item);
        }
Esempio n. 24
0
        public virtual void CopyFrom(ClienteInfo source)
        {
            if (source == null)
            {
                return;
            }

            PDescuento    = source.PDescuento;
            OidCliente    = source.Oid;
            IDCliente     = source.Codigo;
            NombreCliente = source.Nombre;
            VatNumber     = source.VatNumber;
            CodigoPostal  = source.CodigoPostal;
        }
Esempio n. 25
0
        public virtual void SetTipoFacturacion(ClienteInfo client, ProductInfo product)
        {
            if (client == null)
            {
                throw new iQException(Library.Invoice.Resources.Messages.NO_CLIENTE_SELECTED);
            }

            if (client.Productos == null)
            {
                client.LoadChilds(typeof(ProductoCliente), true);
            }

            ProductoClienteInfo pci = client.Productos.GetItemByProperty("OidProducto", product.Oid);

            SetTipoFacturacion(pci, product);
        }
        public HistoriaClienteRpt GetHistoriaClienteRpt(ClienteInfo item)
        {
            if (item == null)
            {
                return(null);
            }

            HistoriaClienteRpt doc = new HistoriaClienteRpt();

            List <ClientePrint> pList = new List <ClientePrint>();

            pList.Add(ClientePrint.New(item));

            doc.SetDataSource(pList);

            FormatHeader(doc);

            return(doc);
        }
        public static ChargeList GetByClientList(long oidClient, CriteriaEx criteria, bool childs)
        {
            QueryConditions conditions = new QueryConditions()
            {
                PagingInfo = (criteria != null) ? criteria.PagingInfo : null,
                Filters    = (criteria != null) ? criteria.Filters : null,
                Orders     = (criteria != null) ? criteria.Orders : null,
                Cliente    = ClienteInfo.New(oidClient),
                TipoCobro  = ETipoCobro.Cliente
            };

            string query = Charge.SELECT(conditions, false);

            if (criteria != null)
            {
                criteria.PagingInfo = conditions.PagingInfo;
            }

            return(GetList(SELECT(conditions), childs));
        }
Esempio n. 28
0
 public virtual void SetImpuestos(SerieInfo serie, ClienteInfo client, ProductInfo product)
 {
     //Primero el cliente si está EXENTO
     if ((client != null) && (client.OidImpuesto == 1))
     {
         OidImpuesto = client.OidImpuesto;
         PImpuestos  = client.PImpuesto;
     }
     //Luego el producto
     else if ((product != null) && (product.OidImpuestoVenta != 0))
     {
         OidImpuesto = product.OidImpuestoVenta;
         PImpuestos  = product.PImpuestoVenta;
     }
     else if ((serie != null) && (serie.OidImpuesto != 0))
     {
         OidImpuesto = serie.OidImpuesto;
         PImpuestos  = serie.PImpuesto;
     }
 }
Esempio n. 29
0
        public static OutputInvoiceList GetList(long oidClient, DateTime from, DateTime till, EStepGraph step, CriteriaEx criteria, bool childs)
        {
            QueryConditions conditions = new QueryConditions()
            {
                PagingInfo = (criteria != null) ? criteria.PagingInfo : null,
                Filters    = (criteria != null) ? criteria.Filters : null,
                Orders     = (criteria != null) ? criteria.Orders : null,
                Cliente    = ClienteInfo.New(oidClient),
                FechaIni   = from,
                FechaFin   = till,
                Step       = step,
            };

            string query = OutputInvoice.SELECT(conditions, false);

            if (criteria != null)
            {
                criteria.PagingInfo = conditions.PagingInfo;
            }

            return(GetList(query, criteria, childs));
        }
        protected void CopyValues(BudgetInfo source, ClienteInfo cliente, SerieInfo serie)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;

            _base.CopyValues(source);

            _base.NumeroSerie  = source.NumeroSerie;
            _base.VatNumber    = source.VatNumber;
            _base.Cliente      = source.NombreCliente;
            _base.IDCliente    = source.NumeroCliente;
            _base.CodigoPostal = source.CodigoPostal;

            if (cliente != null)
            {
                _base.VatNumber    = cliente.VatNumber;
                _base.Cliente      = cliente.Nombre;
                _codigo_cliente    = cliente.VatNumber;
                _direccion         = cliente.Direccion;
                _poblacion         = cliente.Poblacion;
                _provincia         = cliente.Provincia;
                _telefonos         = cliente.Telefonos;
                _fax               = cliente.Fax;
                _municipio         = cliente.Municipio;
                _base.CodigoPostal = source.CodigoPostal;
            }

            if (serie != null)
            {
                _base.NumeroSerie = serie.Identificador;
                _nombre_serie     = serie.Nombre;
            }
        }