/// <summary>
        /// Realiza cálculos en base al aval seleccionado con base en, por ejemplo, su tipo
        /// </summary>
        public void SeleccionarAval()
        {
            try
            {
                this.vista.MostrarRepresentantesAval(false);
                this.vista.RepresentantesAvalTotales       = null;
                this.vista.RepresentantesAvalSeleccionados = null;

                if (this.vista.AvalSeleccionadoID != null)
                {
                    AvalBO bo = this.vista.AvalesTotales.Find(p => p.Id == this.vista.AvalSeleccionadoID).Clonar();
                    if (bo == null)
                    {
                        throw new Exception("No se encontró el aval seleccionado.");
                    }

                    if (bo.TipoAval != null && bo.TipoAval == ETipoAval.Moral)
                    {
                        this.vista.MostrarRepresentantesAval(true);

                        this.vista.RepresentantesAvalTotales = ((AvalMoralBO)bo).Representantes;
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(NombreClase + ".SeleccionarAval: " + ex.Message);
            }
        }
        private string ValidarCamposAval()
        {
            string s = "";

            if (this.vista.AvalSeleccionadoID == null)
            {
                s += "Aval, ";
            }

            if (s.Trim().CompareTo("") != 0)
            {
                return("Los siguientes campos no pueden estar vacíos: \n" + s.Substring(0, s.Length - 2));
            }

            if (this.vista.AvalesSeleccionados != null && this.vista.AvalesSeleccionados.Exists(p => p.Id == this.vista.AvalSeleccionadoID))
            {
                return("El aval seleccionado ya ha sido agregado.");
            }

            if (this.vista.AvalSeleccionadoID != null)
            {
                AvalBO bo = this.vista.AvalesTotales.Find(p => p.Id == this.vista.AvalSeleccionadoID);
                if (bo != null && bo.TipoAval != null && bo.TipoAval == ETipoAval.Moral)
                {
                    if (!(this.vista.RepresentantesAvalSeleccionados != null && this.vista.RepresentantesAvalSeleccionados.Count > 0))
                    {
                        return("Es necesario seleccionar al menos un representante legal para el aval.");
                    }
                }
            }

            return(null);
        }
        /// <summary>
        /// Agrega el aval seleccionado en la vista
        /// </summary>
        public void AgregarAval()
        {
            string s;

            if ((s = this.ValidarCamposAval()) != null)
            {
                this.vista.MostrarMensaje(s, ETipoMensajeIU.INFORMACION, null);
                return;
            }

            try
            {
                if (this.vista.AvalesSeleccionados == null)
                {
                    this.vista.AvalesSeleccionados = new List <AvalBO>();
                }

                List <AvalBO> avalesSeleccionados = this.vista.AvalesSeleccionados;

                //Obtengo el aval de la lista de totales
                AvalBO bo = this.vista.AvalesTotales.Find(p => p.Id == this.vista.AvalSeleccionadoID).Clonar();
                if (bo == null)
                {
                    throw new Exception("No se encontró el aval seleccionado.");
                }

                //Si el Aval es Moral, se completa el objeto antes de agregarlo a la lista
                if (bo.TipoAval != null && bo.TipoAval == ETipoAval.Moral)
                {
                    ((AvalMoralBO)bo).Representantes = this.vista.RepresentantesAvalSeleccionados;

                    this.vista.MostrarRepresentantesAval(false);
                    this.vista.RepresentantesAvalSeleccionados = null;
                    this.vista.RepresentantesAvalTotales       = null;
                }

                avalesSeleccionados.Add(bo);

                this.AgregarAvales(avalesSeleccionados);
                vista.ActualizarAvales();
            }
            catch (Exception ex)
            {
                throw new Exception(NombreClase + ".AgregarAval: " + ex.Message);
            }
        }
        public void PrepararVisualizacionRepresentantesAval(int index)
        {
            try
            {
                if (index >= this.vista.AvalesSeleccionados.Count || index < 0)
                {
                    throw new Exception("No se encontró el Aval seleccionado.");
                }

                AvalBO bo = this.vista.AvalesSeleccionados[index];
                if (bo is AvalMoralBO)
                {
                    this.vista.MostrarDetalleRepresentantesAval(((AvalMoralBO)bo).Representantes);
                }
                else
                {
                    this.vista.MostrarDetalleRepresentantesAval(null);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(NombreClase + ".PrepararVisualizacionRepresentantesAval: " + ex.Message);
            }
        }
예제 #5
0
        private void ImprimirReporte(Dictionary <string, object> datos, XmlDocument documento)
        {
            try {
                var contrato      = datos.ContainsKey("ContratoPSLBO") ? (ContratoPSLBO)datos["ContratoPSLBO"] : null;
                var representante = (ConfiguracionUnidadOperativaBO)datos["RepresentanteEmpresa"];
                DireccionSucursalBO dirSucursal = (DireccionSucursalBO)datos["DireccionSucursal"];
                DireccionClienteBO  direccion   = contrato.Cliente.Direcciones[0];

                #region Ciudad y Estado SUCURSAL
                string strCiudadEdoSuc = string.Empty;
                if (dirSucursal.Ubicacion != null)
                {
                    if (dirSucursal.Ubicacion.Ciudad != null)
                    {
                        strCiudadEdoSuc += ", " + dirSucursal.Ubicacion.Ciudad.Codigo;
                    }
                    if (dirSucursal.Ubicacion.Estado != null)
                    {
                        strCiudadEdoSuc += ", " + dirSucursal.Ubicacion.Estado.Codigo;
                    }
                    if (!string.IsNullOrWhiteSpace(strCiudadEdoSuc))
                    {
                        strCiudadEdoSuc = strCiudadEdoSuc.Substring(2);
                    }
                }
                #endregion /Ciudad y Estado Sucursal

                #region Fecha
                if (contrato != null && contrato.FechaContrato != null)
                {
                    this.xrtDia.Text  = contrato.FechaInicioArrendamiento.Value.Day.ToString();
                    this.xrtMes.Text  = contrato.FechaInicioArrendamiento.Value.Month.ToString();
                    this.xrtAnio.Text = contrato.FechaInicioArrendamiento.Value.Year.ToString();
                }
                #endregion

                #region Empresa
                this.lblEmpresa.Text           = "";
                this.lblRepresentante.Text     = "";
                this.xrArrendadoraRepPor.Text  = "";
                this.xrArrendadoraRepPor2.Text = "";
                this.lblEmpresa.Text           = contrato.Sucursal.UnidadOperativa.Empresa.Nombre;

                if (representante != null)
                {
                    this.lblRepresentante.Text      = representante.Representante;
                    this.xrArrendadoraRepPor.Text  += "REPRESENTADA POR: " + representante.Representante;
                    this.xrArrendadoraRepPor2.Text += "REPRESENTADA POR: " + representante.Representante;
                }

                List <DireccionSucursalBO> listaDireccion = contrato.Sucursal.DireccionesSucursal;

                this.lblDireccionEmpresa.Text             = dirSucursal.Calle;
                this.lblCodigoPostal.Text                 = dirSucursal.CodigoPostal;
                this.lblMunicipioCiudadEstadoEmpresa.Text = "";
                string direccionempresa = "";
                if (dirSucursal.Ubicacion != null && dirSucursal.Ubicacion.Municipio != null)
                {
                    direccionempresa = dirSucursal.Ubicacion.Municipio.Codigo;
                }
                if (dirSucursal.Ubicacion != null && dirSucursal.Ubicacion.Ciudad != null)
                {
                    direccionempresa += ", " + dirSucursal.Ubicacion.Ciudad.Codigo;
                }
                if (dirSucursal.Ubicacion != null && dirSucursal.Ubicacion.Estado != null)
                {
                    direccionempresa += ", " + dirSucursal.Ubicacion.Estado.Codigo;
                }

                this.lblMunicipioCiudadEstadoEmpresa.Text        = direccionempresa;
                this.lblDomicilioFiscalEmpresa.Text              = "";
                this.lblRegistroFederalContribuyenteEmpresa.Text = contrato.Sucursal.UnidadOperativa.Empresa.RFC;
                #endregion

                #region [Variables para reemplazar en la plantilla]
                string ciudadCliente = string.Empty;
                string ciudadObligadoSolidarioAbal = string.Empty;
                string ciudadDepositario           = string.Empty;
                #endregion

                #region Arrendatario
                List <DireccionClienteBO> listaclienteinfo = contrato.Cliente.Direcciones.ConvertAll(s => (DireccionClienteBO)s);
                DireccionClienteBO        clienteinfo      = new DireccionClienteBO();
                foreach (DireccionClienteBO dircliente in listaclienteinfo)
                {
                    if (dircliente.Primaria.HasValue && dircliente.Primaria.Value)
                    {
                        clienteinfo = dircliente;
                    }
                }

                string ciudadestadomuni = string.Empty;
                if (clienteinfo != null && clienteinfo.Ubicacion != null && clienteinfo.Ubicacion.Ciudad != null)
                {
                    ciudadCliente    = clienteinfo.Ubicacion.Ciudad.Codigo;
                    ciudadestadomuni = clienteinfo.Ubicacion.Ciudad.Codigo;
                }
                if (clienteinfo != null && clienteinfo.Ubicacion != null && clienteinfo.Ubicacion.Estado != null)
                {
                    ciudadestadomuni += ", " + clienteinfo.Ubicacion.Estado.Codigo;
                }
                if (clienteinfo != null && clienteinfo.Ubicacion != null && clienteinfo.Ubicacion.Municipio != null)
                {
                    ciudadestadomuni += ", " + clienteinfo.Ubicacion.Municipio.Codigo;
                }

                this.lblNombreRazonSocialArrendatario.Text     = contrato.Cliente.Nombre;
                this.lblDireccionArrendatario.Text             = contrato.Cliente.Direccion;
                this.lblCodigoPostalArrendatario.Text          = clienteinfo.CodigoPostal;
                this.lblMunicipioCiudadEstadoArrendatario.Text = ciudadestadomuni;
                this.lblDomicilioFiscalArrendatario.Text       = clienteinfo.Direccion;
                this.lblRFCArrendatario.Text = "";
                if (contrato.Cliente != null && contrato.Cliente.Cliente != null)
                {
                    this.lblRFCArrendatario.Text = contrato.Cliente.Cliente.RFC;
                }
                #endregion

                #region Datos de identificación
                this.lblNombreCompletoRepresentante.Text = "";
                this.xrArrendatarioRepPor.Text           = "";
                this.xrArrendatarioRepPor2.Text          = "";
                this.lblRegistroFederalContribuyentesRepresentante.Text = "";
                this.lblDomicilioRepresentante.Text = "";

                //obligado solidario y aval
                this.lblNombreSolidarioYAval.Text                      = "";
                this.lblDireccionSolidarioYAval.Text                   = "";
                this.lblCodigoPostalSolidarioYAval.Text                = "";
                this.lblMunicipioCiudadEstadoSolidarioYAval.Text       = "";
                this.lblRegistroFederalContribuyenteolidarioYAval.Text = "";
                string dirmunicipioobligado = string.Empty;
                string municiudadestadosol  = string.Empty;
                string repLeg = string.Empty;
                if (contrato.RepresentantesLegales.Count > 0)
                {
                    RepresentanteLegalBO RepresentantesLegales = contrato.RepresentantesLegales.ConvertAll(s => (RepresentanteLegalBO)s).FirstOrDefault();
                    if (RepresentantesLegales != null)
                    {
                        this.lblNombreCompletoRepresentante.Text = RepresentantesLegales.Nombre;
                        this.xrArrendatarioRepPor.Text           = "REPRESENTADA POR: " + RepresentantesLegales.Nombre;
                        this.xrArrendatarioRepPor2.Text          = "REPRESENTADA POR: " + RepresentantesLegales.Nombre;
                        this.lblRegistroFederalContribuyentesRepresentante.Text = RepresentantesLegales.RFC;
                        repLeg = RepresentantesLegales.Nombre;
                        //Se busca la dirección del representante
                        if (RepresentantesLegales.DireccionPersona.Ubicacion != null && RepresentantesLegales.DireccionPersona.Ubicacion.Municipio != null)
                        {
                            municiudadestadosol = RepresentantesLegales.DireccionPersona.Ubicacion.Municipio.Codigo;
                        }
                        if (RepresentantesLegales.DireccionPersona.Ubicacion != null && RepresentantesLegales.DireccionPersona.Ubicacion.Ciudad != null)
                        {
                            municiudadestadosol        += ", " + RepresentantesLegales.DireccionPersona.Ubicacion.Ciudad.Codigo;
                            ciudadObligadoSolidarioAbal = RepresentantesLegales.DireccionPersona.Ubicacion.Ciudad.Codigo;
                        }
                        if (RepresentantesLegales.DireccionPersona.Ubicacion != null && RepresentantesLegales.DireccionPersona.Ubicacion.Estado != null)
                        {
                            municiudadestadosol += ", " + RepresentantesLegales.DireccionPersona.Ubicacion.Estado.Codigo;
                        }

                        //Se validará si se cambiará
                        this.lblDomicilioRepresentante.Text = RepresentantesLegales.Direccion;
                        //Cuando todos los representantes legales son avales se
                        if (contrato.SoloRepresentantes.GetValueOrDefault() == true)
                        {
                            this.lblNombreSolidarioYAval.Text = RepresentantesLegales.Nombre;
                            //Se validará si se cambiará
                            this.lblDireccionSolidarioYAval.Text                   = RepresentantesLegales.Direccion;
                            this.lblCodigoPostalSolidarioYAval.Text                = RepresentantesLegales.DireccionPersona.CodigoPostal;
                            this.lblMunicipioCiudadEstadoSolidarioYAval.Text       = municiudadestadosol;
                            this.lblRegistroFederalContribuyenteolidarioYAval.Text = RepresentantesLegales.RFC;
                        }
                    }
                }

                #endregion

                #region Obligado Solidario Y aval
                this.xrObligadoSolidarioRepPor.Text  = "";
                this.xrObligadoSolidarioRepPor2.Text = "";
                dirmunicipioobligado = string.Empty;
                municiudadestadosol  = string.Empty;

                AvalBO avalbo = contrato.Avales != null && contrato.Avales.Count > 0 ? contrato.Avales.ConvertAll(s => (AvalBO)s)[0] : null;
                if (avalbo != null)
                {
                    this.lblNombreSolidarioYAval.Text       = avalbo.Nombre;
                    this.lblDireccionSolidarioYAval.Text    = avalbo.Direccion;
                    this.lblCodigoPostalSolidarioYAval.Text = avalbo.DireccionPersona.CodigoPostal;
                    if (avalbo.DireccionPersona.Ubicacion != null && avalbo.DireccionPersona.Ubicacion.Municipio != null)
                    {
                        municiudadestadosol = avalbo.DireccionPersona.Ubicacion.Municipio.Codigo;
                    }
                    if (avalbo.DireccionPersona.Ubicacion != null && avalbo.DireccionPersona.Ubicacion.Ciudad != null)
                    {
                        municiudadestadosol        += ", " + avalbo.DireccionPersona.Ubicacion.Ciudad.Codigo;
                        ciudadObligadoSolidarioAbal = avalbo.DireccionPersona.Ubicacion.Ciudad.Codigo;
                    }
                    if (avalbo.DireccionPersona.Ubicacion != null && avalbo.DireccionPersona.Ubicacion.Estado != null)
                    {
                        municiudadestadosol += ", " + avalbo.DireccionPersona.Ubicacion.Estado.Codigo;
                    }

                    this.lblMunicipioCiudadEstadoSolidarioYAval.Text       = municiudadestadosol;
                    this.lblRegistroFederalContribuyenteolidarioYAval.Text = avalbo.RFC;
                }
                #endregion

                #region Depositario
                string depositarioSolidario = "";
                this.lblNombresApellidosMaternoPaternoDepositario.Text = "";
                this.lblMunicipioCiudadEstadoDepositario.Text          = "";
                this.lblCodigoPostalDepositario.Text = "";
                this.lblRegistroFederalContribuyentesDepositario.Text = "";
                this.lblDepositarioDireccion.Text = "";
                List <RepresentanteLegalBO> listaPersonaDepositario = contrato.RepresentantesLegales.ConvertAll(a => (RepresentanteLegalBO)a);
                foreach (RepresentanteLegalBO personadepositario in listaPersonaDepositario)
                {
                    if (personadepositario.EsDepositario.HasValue && personadepositario.EsDepositario.Value)
                    {
                        if (personadepositario.DireccionPersona != null && personadepositario.DireccionPersona.Ubicacion != null && personadepositario.DireccionPersona.Ubicacion.Municipio != null)
                        {
                            dirmunicipioobligado = personadepositario.DireccionPersona.Ubicacion.Municipio.Codigo;
                        }
                        if (personadepositario.DireccionPersona != null && personadepositario.DireccionPersona.Ubicacion != null && personadepositario.DireccionPersona.Ubicacion.Ciudad != null)
                        {
                            dirmunicipioobligado += ", " + personadepositario.DireccionPersona.Ubicacion.Ciudad.Codigo;
                            ciudadDepositario     = personadepositario.DireccionPersona.Ubicacion.Ciudad.Codigo;
                        }
                        if (personadepositario.DireccionPersona != null && personadepositario.DireccionPersona.Ubicacion != null && personadepositario.DireccionPersona.Ubicacion.Estado != null)
                        {
                            dirmunicipioobligado += ", " + personadepositario.DireccionPersona.Ubicacion.Estado.Codigo;
                        }

                        depositarioSolidario = personadepositario.Nombre;
                        this.lblNombresApellidosMaternoPaternoDepositario.Text = depositarioSolidario;
                        this.lblMunicipioCiudadEstadoDepositario.Text          = dirmunicipioobligado;
                        this.lblCodigoPostalDepositario.Text                  = personadepositario.DireccionPersona != null ? personadepositario.DireccionPersona.CodigoPostal : "";
                        this.lblMunicipioCiudadEstadoSolidarioYAval.Text      = dirmunicipioobligado;
                        this.lblRegistroFederalContribuyentesDepositario.Text = personadepositario.RFC;
                        this.lblDepositarioDireccion.Text = personadepositario.Direccion;
                        break;
                    }
                }
                #endregion

                #region Aceptacion y firmas
                XmlNodeList AceptacionyFirmas = documento.GetElementsByTagName("AceptacionYFirmas");
                if (AceptacionyFirmas.Count < 1)
                {
                    throw new Exception("el formato del archivo XML es incorrecto");
                }
                this.xrRichText3.Html = AceptacionyFirmas[0].InnerText.Replace("{CIUDAD_CLIENTE}", strCiudadEdoSuc).Replace("{CIUDAD_OBLIGADOR_SOLIDARIO_AVAL}", strCiudadEdoSuc).Replace("{CIUDAD_DEPOSITARIO}", strCiudadEdoSuc);
                #endregion

                #region Firmas
                AvalBO aval = contrato.Avales.Count > 0 ? contrato.Avales.ConvertAll(s => (AvalBO)s)[0] : null;

                this.xrlNombreEmpresa.Text    = contrato.Sucursal.UnidadOperativa.Empresa.Nombre;
                this.xrRichArrendatario2.Html = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre_Razon + contrato.Cliente.Nombre + "</a></div>";

                this.xrRichObligado2.Html = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre_Razon + this.lblNombreSolidarioYAval.Text + "</a></div>";

                this.xrRichDepositario2.Html        = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre + depositarioSolidario + " , por su propio y personal derecho.</a></div>";
                this.xrObligadoSolidarioRepPor.Text = "REPRESENTADA POR: ";
                if (!string.IsNullOrEmpty(repLeg))
                {
                    this.xrObligadoSolidarioRepPor.Text += repLeg;
                }
                #endregion

                #region Contrato
                //Información de las Declaraciones
                XmlNodeList contratoCuerpo = documento.GetElementsByTagName("Declaraciones");
                if (contratoCuerpo.Count < 1)
                {
                    throw new Exception("el formato del archivo XML es incorrecto");
                }

                //Información del contrato
                XmlNodeList antesTable = documento.GetElementsByTagName("Informacion");
                if (antesTable.Count < 1)
                {
                    throw new Exception("el formato del archivo XML es incorrecto");
                }

                //Obtener la tabla de Generación o Construcción
                XmlNodeList TablaConstruccion = documento.GetElementsByTagName(ETipoEmpresa.Generacion == (ETipoEmpresa)contrato.Sucursal.UnidadOperativa.Id ? "Generacion" :
                                                                               ETipoEmpresa.Construccion == (ETipoEmpresa)contrato.Sucursal.UnidadOperativa.Id ? "Construccion" : "Equinova");
                if (TablaConstruccion.Count < 1)
                {
                    throw new Exception("el formato del archivo XML es incorrecto");
                }

                //InformacionDespuesTablas
                XmlNodeList despuesTablas = documento.GetElementsByTagName("InformacionDespuesTablas");
                if (despuesTablas.Count < 1)
                {
                    throw new Exception("el formato del archivo XML es incorrecto");
                }

                this.xrRichPrimero.Html = "<div style=\"margin: 5px 5px 5px 5px;\">" + contratoCuerpo[0].InnerText + antesTable[0].InnerText + TablaConstruccion[0].InnerText + despuesTablas[0].InnerText + "</div>";

                #region Firmas Contrato

                this.xrlNombreEmpresaContrato.Text   = contrato.Sucursal.UnidadOperativa.Empresa.Nombre;
                this.xrRichArrendatario.Html         = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre_Razon + contrato.Cliente.Nombre + "</a></div>";
                this.xrRichObligado.Html             = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre_Razon + this.lblNombreSolidarioYAval.Text + "</a></div>";
                this.xrObligadoSolidarioRepPor2.Text = "REPRESENTADA POR: ";
                if (!string.IsNullOrEmpty(repLeg))
                {
                    this.xrObligadoSolidarioRepPor2.Text += repLeg;
                }
                this.xrRichDepositario.Html = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre + depositarioSolidario + " , por su propio y personal derecho.</a></div>";

                #endregion
                #endregion
            } catch (Exception ex) {
                throw new Exception(".ImpirmirReporte: Error al imprimir el reporte. " + ex.Message);
            }
        }
예제 #6
0
        private void ImprimirReporte(Dictionary <string, object> datos)
        {
            try {
                var contrato = (ContratoPSLBO)datos["ContratoPSLBO"];

                #region Carta Depositaria
                string obligadosolidario = string.Empty;
                AvalBO avalbo            = contrato.Avales != null && contrato.Avales.Count > 0 ? contrato.Avales.ConvertAll(s => (AvalBO)s)[0] : null;
                if (avalbo != null)
                {
                    obligadosolidario = avalbo.Nombre;
                }

                #region Información del Depositario
                this.xrNombreApellidosDepositario.Text = "";
                this.xrDomicilioDepositario.Text       = "";
                var depositario = (contrato.RepresentantesLegales.ConvertAll(a => (RepresentanteLegalBO)a)).Where(x => x.EsDepositario.GetValueOrDefault() == true).FirstOrDefault();
                if (depositario == null)
                {
                    depositario = new RepresentanteLegalBO();
                }
                if (depositario != null)
                {
                    this.xrNombreApellidosDepositario.Text = depositario.Nombre;
                    this.xrDomicilioDepositario.Text       = depositario.Direccion;
                }
                #endregion


                this.xrAnexoCartaDepositaria.Text = "Anexo que se suscribe por EL DEPOSITARIO y que forma parte integrante del “CONTRATO DE ARRENDAMIENTO DE BIENES MUEBLES” suscrito entre LA ARRENDADORA " + contrato.Sucursal.UnidadOperativa.Empresa.Nombre +
                                                    ", EL ARRENDATARIO " + contrato.Cliente.Nombre + ", el OBLIGADO SOLIDARIO Y AVAL " + obligadosolidario + " y el DEPOSITARIO " + depositario.Nombre ?? string.Empty + ".";

                this.xrtDiaCartaDepositaria.Text  = "";
                this.xrtMesCartaDepositaria.Text  = "";
                this.xrtAnioCartaDepositaria.Text = "";
                if (contrato.FechaInicioActual != null)
                {
                    this.xrtDiaCartaDepositaria.Text  = contrato.FechaInicioActual.Value.Day.ToString();
                    this.xrtMesCartaDepositaria.Text  = contrato.FechaInicioActual.Value.Month.ToString();
                    this.xrtAnioCartaDepositaria.Text = contrato.FechaInicioActual.Value.Year.ToString();
                }


                List <LineaContratoPSLBO> listaContrato = contrato.LineasContrato.ConvertAll(s => (LineaContratoPSLBO)s);
                string listaunidades = string.Empty;
                foreach (LineaContratoPSLBO lineascnt in listaContrato)
                {
                    if (listaunidades != "")
                    {
                        listaunidades = listaunidades + ", ";
                    }
                    if (lineascnt.Equipo != null && lineascnt.Equipo.TipoEquipoServicio != null && lineascnt.Equipo.Modelo != null)
                    {
                        listaunidades += lineascnt.Equipo.TipoEquipoServicio.Nombre + "- " + lineascnt.Equipo.Modelo.Nombre;
                    }
                }
                this.xrDescripcionBienesMueblesCartaDepositaria.Text = listaunidades;

                this.xrUbicacionEntregaBienCartaDepositaria.Text = contrato.DestinoAreaOperacion;

                #region [Dirección cliente]
                List <DireccionClienteBO> listaclienteinfo = contrato.Cliente.Direcciones.ConvertAll(s => (DireccionClienteBO)s);
                DireccionClienteBO        clienteinfo      = new DireccionClienteBO();
                foreach (DireccionClienteBO dircliente in listaclienteinfo)
                {
                    if (dircliente.Primaria.HasValue && dircliente.Primaria.Value)
                    {
                        clienteinfo = dircliente;
                    }
                }

                string municipiocliente = string.Empty;
                string estadocliente    = string.Empty;
                if (clienteinfo != null && clienteinfo.Ubicacion != null && clienteinfo.Ubicacion.Estado != null)
                {
                    estadocliente = clienteinfo.Ubicacion.Estado.Codigo;
                }
                if (clienteinfo != null && clienteinfo.Ubicacion != null && clienteinfo.Ubicacion.Municipio != null)
                {
                    municipiocliente = clienteinfo.Ubicacion.Municipio.Codigo;
                }
                #endregion

                string direccionsucursal = string.Empty;
                if (contrato.Sucursal != null && contrato.Sucursal.DireccionesSucursal != null && contrato.Sucursal.DireccionesSucursal.Count > 0)
                {
                    direccionsucursal = contrato.Sucursal.DireccionesSucursal[0].Nombre;
                }
                this.xrSuscritoCartaDepositaria.Text = "Suscrito en el municipio de " + municipiocliente + ", Estado de " + estadocliente + ", México; en la fecha de " + ((DateTime)contrato.FechaInicioActual).ToShortDateString() + ".";
                this.xrNombreDepostarioFirma.Text    = string.Format("{0}{1}", "NOMBRE: ", depositario.Nombre);
                #endregion
            } catch (Exception ex) {
                throw new Exception(".ImprimirReporte: Error al imprimir el reporte. " + ex.Message);
            }
        }
예제 #7
0
        private void ImprimirReporte(Dictionary <string, object> datos)
        {
            try {
                var contrato = (ContratoPSLBO)datos["ContratoPSLBO"];

                string obligadoSolidario = null;
                if (contrato.RepresentantesLegales.Count > 0)
                {
                    RepresentanteLegalBO RepresentantesLegales = contrato.RepresentantesLegales.ConvertAll(s => (RepresentanteLegalBO)s)[0];
                    if (RepresentantesLegales != null)
                    {
                        //Cuando todos los representantes legales son avales se
                        if (contrato.SoloRepresentantes.GetValueOrDefault() == true)
                        {
                            obligadoSolidario = RepresentantesLegales.Nombre;
                        }
                    }
                }

                AvalBO avalbo = contrato.Avales != null && contrato.Avales.Count > 0 ? contrato.Avales.ConvertAll(s => (AvalBO)s)[0] : null;
                if (avalbo != null)
                {
                    obligadoSolidario = avalbo.Nombre;
                }

                string depositario = null;
                List <RepresentanteLegalBO> listaPersonaDepositario = contrato.RepresentantesLegales.ConvertAll(a => (RepresentanteLegalBO)a);
                foreach (RepresentanteLegalBO personadepositario in listaPersonaDepositario)
                {
                    if (personadepositario.EsDepositario.HasValue && personadepositario.EsDepositario.Value)
                    {
                        depositario = personadepositario.Nombre;

                        break;
                    }
                }

                #region encabezado
                string barraAux = "                   ";
                string parrafo1 = "<p style='font-size:12px; text-align:justify; font-family: 'Times New Roman', Times, serif;'><b>ADDENDUM</b> INTEGRANTE DEL “CONTRATO DE ARRENDAMIENTO DE BIENES MUEBLES” QUE SE SUSCRIBIÓ ENTRE LA ARRENDADORA <u> ";
                parrafo1 += " " + contrato.Sucursal.UnidadOperativa.Empresa.Nombre + " </u> EL ARRENDATARIO <u> " + contrato.Cliente.Nombre + " </u> EL OBLIGADO SOLIDARIO Y AVAL <u> " + (obligadoSolidario != null ? obligadoSolidario : barraAux);
                parrafo1 += " </u> Y EL DEPOSITARIO <u> " + (depositario != null ? depositario : "") + " </u>, EN FECHA:</p>";

                this.xrlParrafo1.Html = parrafo1;

                #endregion
                #region Fecha
                this.xrtDia.Text = contrato.FechaContrato.Value != null?contrato.FechaContrato.Value.Day.ToString() : "";

                this.xrtMes.Text = contrato.FechaContrato.Value != null?contrato.FechaContrato.Value.Month.ToString() : "";

                this.xrtAnio.Text = contrato.FechaContrato.Value != null?contrato.FechaContrato.Value.Year.ToString() : "";

                #endregion
                #region Bienes

                string listaUnidades = string.Empty;
                for (int i = 0; i < contrato.LineasContrato.Count; i++)
                {
                    if (i == contrato.LineasContrato.Count - 1)
                    {
                        if (contrato.LineasContrato[i].Equipo != null && contrato.LineasContrato[i].Equipo.TipoEquipoServicio != null && contrato.LineasContrato[i].Equipo.Modelo != null)
                        {
                            listaUnidades += contrato.LineasContrato[i].Equipo.TipoEquipoServicio.Nombre + "- " + contrato.LineasContrato[i].Equipo.Modelo.Nombre + ".";
                        }
                    }
                    else
                    {
                        if (contrato.LineasContrato[i].Equipo != null && contrato.LineasContrato[i].Equipo.TipoEquipoServicio != null && contrato.LineasContrato[i].Equipo.Modelo != null)
                        {
                            listaUnidades += contrato.LineasContrato[i].Equipo.TipoEquipoServicio.Nombre + "- " + contrato.LineasContrato[i].Equipo.Modelo.Nombre + ", ";
                        }
                    }
                }

                this.xrlDescripcionBienes.Text = listaUnidades;
                #endregion
                #region tabla
                this.xrlFechaElaboracion.Text = this.convierteAfechaSinHora(contrato.FechaContrato);

                this.xrlMontoTotalArrendamientoMasImpuestoValorAgregado.Text = "";
                this.xrlFechaInicio.Text = this.convierteAfechaSinHora(contrato.FechaInicioActual);
                this.xrlVau.Text         = "";

                this.xrlFechaPagoRenta.Text   = "";
                this.xrlPlazo.Text            = "";
                this.xrlFechaTerminacion.Text = this.convierteAfechaSinHora(contrato.FechaPromesaActual);
                this.xrlInverionInicial.Text  = "";
                #endregion

                #region Firmas
                string empresaFirma           = "<p margin:0px; style='text-align: center; font-size:11px; font-family: 'Times New Roman', Times, serif;'>" + contrato.Sucursal.UnidadOperativa.Empresa.Nombre + " , S.A. DE C.V. </p>";
                string obligadoSolidarioFirma = "<p  margin:0px; style='text-align: center; font-size:11px; font-family: 'Times New Roman', Times, serif;'> <b>NOMBRE O RAZÓN SOCIAL :</b> " + (obligadoSolidario != null ? obligadoSolidario : "") + " </p>";
                string depositarioFirma       = "<p margin:0px; style='text-align: center; font-size:11px; font-family: 'Times New Roman', Times, serif;'> <b>NOMBRE :</b> " + (depositario != null ? depositario : "") + ", por su propio y personal derecho</p>";
                string cliente = "<p margin:0px; style='text-align: center; font-size:11px; font-family: 'Times New Roman', Times, serif;'> <b>NOMBRE O RAZÓN SOCIAL :</b> " + contrato.Cliente.Nombre + " </p>";

                this.xrrtNombreEmpresaFirma.Html     = empresaFirma;
                this.xrrtObligadoSolidarioFirma.Html = obligadoSolidarioFirma;
                this.xrrtArrendatarioFirma.Html      = cliente;
                this.xrrtDepositarioFirma.Html       = depositarioFirma;


                #endregion
            } catch (Exception e) {
            }
        }