Ejemplo n.º 1
0
        protected List<DTO_REPORTE_DETALLEFACTURA_PRESTACION> GetReporteDetalleFacturaByID_FACTURACION(int IdFacturacion)
        {
            Init();
            try
            {
                using (LQCEEntities context = new LQCEEntities())
                {
                    RepositorioFACTURACION _RepositorioFACTURACION = new RepositorioFACTURACION(context);

                    int IdTipoPrestacionVeterinaria = (int)Enum.ENUM_TIPO_PRESTACION.Veterinarias;
                    int IdTipoPrestacionHumana = (int)Enum.ENUM_TIPO_PRESTACION.Humanas;

                    var q = _RepositorioFACTURACION.GetFacturaDetalleByIdFacturacion(IdFacturacion);

                    var lista = (from fd in q
                            select new DTO_REPORTE_DETALLEFACTURA_PRESTACION
                            {
                                ID_FACTURA = fd.FACTURA.ID,
                                ID_CLIENTE = fd.FACTURA.CLIENTE.ID,
                                NOMBRE_CLIENTE = fd.FACTURA.NOMBRE_CLIENTE,
                                RUT_CLIENTE = fd.FACTURA.RUT_CLIENTE,
                                DETALLE = fd.FACTURA.DETALLE,
                                ID_FACTURA_DETALLE = fd.ID,
                                NUMERO_FICHA = fd.PRESTACION.ID,
                                MONTO_TOTAL = fd.MONTO_TOTAL,
                                FECHA_RECEPCION = fd.PRESTACION.FECHA_RECEPCION,
                                NOMBRE = fd.PRESTACION.PRESTACION_HUMANA != null ? fd.PRESTACION.PRESTACION_HUMANA.NOMBRE : fd.PRESTACION.PRESTACION_VETERINARIA.NOMBRE,
                                MEDICO = fd.PRESTACION.MEDICO,
                                EXAMENES = "",
                                //ESTADO = fd.PRESTACION.GARANTIA != null ? fd.PRESTACION.GARANTIA.NOMBRE : ""
                                ESTADO_PENDIENTE = fd.PRESTACION.TIPO_PRESTACION.ID == IdTipoPrestacionVeterinaria ?
                                    ((fd.PRESTACION.PENDIENTE == "CANCELADO" || fd.PRESTACION.PENDIENTE == "PAGADO") ? "PAGADO" : "INPAGO") : "",
                                ESTADO_PREVISION = fd.PRESTACION.TIPO_PRESTACION.ID == IdTipoPrestacionHumana ?
                                    ((fd.PRESTACION.PREVISION.NOMBRE == "CANCELADO" || fd.PRESTACION.PREVISION.NOMBRE == "PAGADO") ? "PAGADO" : "INPAGO") : "",
                            }).ToList();

                    foreach (var i in lista)
                    {
                        string examenes = "";
                        FACTURA_DETALLE _FACTURA_DETALLE = _RepositorioFACTURACION.GetFacturaDetalleByIdDetalleFactura(i.ID_FACTURA_DETALLE).FirstOrDefault();
                        if (_FACTURA_DETALLE != null)
                        {
                            if(_FACTURA_DETALLE.PRESTACION != null)
                            {
                                foreach (var e in _FACTURA_DETALLE.PRESTACION.PRESTACION_EXAMEN.Where(pe => pe.ACTIVO))
                                {
                                    if (e.EXAMEN != null)
                                    {
                                        if (!string.IsNullOrEmpty(examenes))
                                            examenes += ", ";
                                        examenes += e.EXAMEN.NOMBRE;
                                    }
                                }
                            }
                        }
                        i.EXAMENES = examenes;
                    }
                    return lista;
                }
            }
            catch (Exception ex)
            {
                ISException.RegisterExcepcion(ex);
                Error = ex.Message;
                throw ex;
            }
        }
Ejemplo n.º 2
0
        public List<DTO_PAGO_PRESTACIONES> FacturaForPagos(int IdDetalleFactura)
        {
            try
            {
                using (LQCEEntities context = new LQCEEntities())
                {
                    RepositorioFACTURACION _RepositorioFACTURACION = new RepositorioFACTURACION(context);
                    RepositorioPRESTACION_EXAMEN _RepositorioPRESTACION_EXAMEN = new RepositorioPRESTACION_EXAMEN(context);
                    var detalle_factura = _RepositorioFACTURACION.GetFacturaDetalleByIdDetalleFactura(IdDetalleFactura);
                    List<DTO_PAGO_PRESTACIONES> lista = new List<DTO_PAGO_PRESTACIONES>();
                    foreach (var lis in detalle_factura)
                    {
                        DTO_PAGO_PRESTACIONES _DTO_PAGO_PRESTACIONES = new DTO_PAGO_PRESTACIONES();
                        _DTO_PAGO_PRESTACIONES.ID_FACTURA = lis.FACTURA.ID;
                        _DTO_PAGO_PRESTACIONES.NUMERO_FACTURA = lis.FACTURA.NUMERO_FACTURA;
                        _DTO_PAGO_PRESTACIONES.NOMBRE_PACIENTE = lis.PRESTACION.PRESTACION_HUMANA != null ? lis.PRESTACION.PRESTACION_HUMANA.NOMBRE : lis.PRESTACION.PRESTACION_VETERINARIA.NOMBRE;// lis.FACTURA.NOMBRE_CLIENTE;
                        _DTO_PAGO_PRESTACIONES.PRESTACION = lis.PRESTACION.TIPO_PRESTACION.NOMBRE;
                        //_DTO_PAGO_PRESTACIONES.EXAMEN = ;
                        //_DTO_PAGO_PRESTACIONES.VALOR_EXAMEN = lis.PRESTACION;
                        _DTO_PAGO_PRESTACIONES.FECHA_RECEPCION = lis.PRESTACION.FECHA_RECEPCION;
                        _DTO_PAGO_PRESTACIONES.ID_FACTURA_DETALLE = lis.ID;

                        var prestacion = _RepositorioPRESTACION_EXAMEN.GetByFilterWithReferences(null, lis.PRESTACION.ID, null);
                        foreach (var pre in prestacion)
                        {
                            _DTO_PAGO_PRESTACIONES.EXAMEN = pre.EXAMEN.NOMBRE;
                            _DTO_PAGO_PRESTACIONES.VALOR_EXAMEN = int.Parse(pre.VALOR.ToString());
                        }

                        lista.Add(_DTO_PAGO_PRESTACIONES);
                    }
                    return lista;
                }
            }
            catch (Exception ex)
            {
                ISException.RegisterExcepcion(ex);
                Error = ex.Message;
                throw ex;
            }
        }
Ejemplo n.º 3
0
        protected List<DTO_REPORTE_DETALLEFACTURA_PRESTACION> GetReporteDetalleFacturaByID_FACTURA(int IdFactura)
        {
            Init();
            try
            {
                using (LQCEEntities context = new LQCEEntities())
                {
                    RepositorioFACTURACION _RepositorioFACTURACION = new RepositorioFACTURACION(context);

                    var q = _RepositorioFACTURACION.GetFacturaDetalleByIdFactura(IdFactura);

                    var lista = (from fd in q
                            select new DTO_REPORTE_DETALLEFACTURA_PRESTACION
                            {
                                ID_FACTURA = fd.FACTURA.ID,
                                ID_CLIENTE = fd.FACTURA.CLIENTE.ID,
                                NOMBRE_CLIENTE = fd.FACTURA.NOMBRE_CLIENTE,
                                RUT_CLIENTE = fd.FACTURA.RUT_CLIENTE,
                                DETALLE = fd.FACTURA.DETALLE,
                                ID_FACTURA_DETALLE = fd.ID,
                                NUMERO_FICHA = fd.PRESTACION.ID,
                                MONTO_TOTAL = fd.MONTO_TOTAL,
                                FECHA_RECEPCION = fd.PRESTACION.FECHA_RECEPCION,
                                NOMBRE = fd.PRESTACION.PRESTACION_HUMANA != null ? fd.PRESTACION.PRESTACION_HUMANA.NOMBRE : fd.PRESTACION.PRESTACION_VETERINARIA.NOMBRE,
                                MEDICO = fd.PRESTACION.MEDICO,
                                EXAMENES = ""
                            }).ToList();

                    foreach (var i in lista)
                    {
                        string examenes = "";
                        FACTURA_DETALLE _FACTURA_DETALLE = _RepositorioFACTURACION.GetFacturaDetalleByIdDetalleFactura(i.ID_FACTURA_DETALLE).FirstOrDefault();
                        if (_FACTURA_DETALLE != null)
                        {
                            if(_FACTURA_DETALLE.PRESTACION != null)
                            {
                                foreach (var e in _FACTURA_DETALLE.PRESTACION.PRESTACION_EXAMEN.Where(pe => pe.ACTIVO))
                                {
                                    if(e.EXAMEN != null)
                                    {
                                    if (!string.IsNullOrEmpty(examenes))
                                        examenes += ", ";
                                    examenes += e.EXAMEN.NOMBRE;
                                    }
                                }
                            }
                        }
                        i.EXAMENES = examenes;
                    }
                    return lista;
                }
            }
            catch (Exception ex)
            {
                ISException.RegisterExcepcion(ex);
                Error = ex.Message;
                throw ex;
            }
        }