public void DatosAInterfazUsuario(DiaPeriodoTarifaBO PeriodoTarifario) { try { if (Object.ReferenceEquals(PeriodoTarifario, null)) { PeriodoTarifario = new DiaPeriodoTarifaBO() { DetalleHorasTurnoTarifa = new List <DetalleHorasTurnoTarifaBO>() { new DetalleHorasTurnoTarifaBO() } } } ; this.vista.IncluyeSD = PeriodoTarifario.IncluyeSD; this.vista.DiasDuracionSemana = PeriodoTarifario.DiasDuracionSemana; this.vista.DiasDuracionMes = PeriodoTarifario.DiasDuracionMes; this.vista.InicioPeriodoDia = 1; this.vista.InicioPeriodoSemana = PeriodoTarifario.InicioPeriodoSemana; this.vista.InicioPeriodoMes = PeriodoTarifario.InicioPeriodoMes; this.vista.listHorasTurno = this.ObtenerListaClonada(PeriodoTarifario.DetalleHorasTurnoTarifa); this.vista.PresentarHorasTurno(PeriodoTarifario.DetalleHorasTurnoTarifa); } catch (Exception ex) { throw new Exception(this.nombreClase + ".DatosAInterfazUsuario:Error al intentar establecer los datos de la PeriodoTarifario." + ex.Message); } }
public DiaPeriodoTarifaBO InterfazUsuarioADato() { try { DiaPeriodoTarifaBO PeriodoTarifario = new DiaPeriodoTarifaBO() { DetalleHorasTurnoTarifa = new List <DetalleHorasTurnoTarifaBO>(), IncluyeSD = this.vista.IncluyeSD, DiasDuracionSemana = this.vista.DiasDuracionSemana, DiasDuracionMes = this.vista.DiasDuracionMes, InicioPeriodoDia = 1, InicioPeriodoSemana = this.vista.InicioPeriodoSemana, InicioPeriodoMes = this.vista.InicioPeriodoMes }; PeriodoTarifario.DetalleHorasTurnoTarifa.AddRange(this.vista.listHorasTurno.Select(detalle => new DetalleHorasTurnoTarifaBO(detalle)).ToList()); foreach (DetalleHorasTurnoTarifaBO detalle in PeriodoTarifario.DetalleHorasTurnoTarifa) { detalle.Auditoria = new AuditoriaBO() { UC = this.vista.UsuarioID, FC = DateTime.Now, UUA = this.vista.UsuarioID, FUA = DateTime.Now }; } return(PeriodoTarifario); } catch (Exception ex) { throw new Exception(this.nombreClase + ".InterfazUsuarioADato:Error al intentar obtener los PeriodoTarifarios." + ex.Message); } }
public void RealizarPrimeraCarga() { try { if (this.vista.ObtenerDatosNavegacion() == null) { throw new Exception("Se esperaba Datos de Navegación"); } if (!(this.vista.ObtenerDatosNavegacion() is DiaPeriodoTarifaBO)) { throw new Exception("Se esperaba un objeto de PeriodoTarifaPSLBO"); } this.vista.EstablecerOpcionesUnidadesOperativas(this.ObtenerUnidadesOperativas()); this.presentadorPeriodoTarifario.PrepararDetalle(); DiaPeriodoTarifaBO periodoTarifa = (DiaPeriodoTarifaBO)this.vista.ObtenerDatosNavegacion(); periodoTarifa = ConsultarTarifa(periodoTarifa); this.DatoAInterfazUsuario(periodoTarifa); this.vista.LimpiarSesion(); this.vista.EstablecerDatosNavegacion(periodoTarifa); this.EstablecerSeguridad(); } catch (Exception ex) { this.MostrarMensaje("Inconsistencias al momento de obtener los datos de la tarifa", ETipoMensajeIU.ERROR, nombreClase + ".RealizarPrimeraCarga:" + ex.Message); DatoAInterfazUsuario(new DiaPeriodoTarifaBO()); this.vista.PermitirEditar(false); } }
/// <summary> /// Evento que controla la selección del DropDownList de Sector. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ddlUnidadOperativa_SelectedIndexChanged(object sender, EventArgs e) { Session["PeriodoTarifarioPSLBO"] = new DiaPeriodoTarifaBO() { UnidadOperativaID = Convert.ToInt32(ddlUnidadOperativa.SelectedValue) }; this.hdnUnidadOperativaSeleccionadaID.Value = ddlUnidadOperativa.SelectedValue; this.presentador.RealizarPrimeraCarga(); }
private void DatoAInterfazUsuario(DiaPeriodoTarifaBO periodoTarifa) { if (Object.ReferenceEquals(periodoTarifa, null)) { periodoTarifa = new DiaPeriodoTarifaBO(); } presentadorPeriodoTarifario.DatosAInterfazUsuario(periodoTarifa); }
public void IrAEditar() { try { DiaPeriodoTarifaBO tarifaTemp = InterfazUsuarioADato(); this.vista.LimpiarSesion(); this.vista.EstablecerDatosNavegacion(tarifaTemp); this.vista.RedirigirAEditar(); } catch (Exception ex) { this.MostrarMensaje("Error al intentar ir a editar el Período Tarifario", ETipoMensajeIU.ERROR, nombreClase + "IrAEditar" + ex.Message); } }
private DiaPeriodoTarifaBO ConsultarTarifa(DiaPeriodoTarifaBO periodoTarifa) { try { if (periodoTarifa == null) { throw new Exception("Se esperaba el objeto PeriodoTarifaPSLBO"); } if (periodoTarifa.UnidadOperativaID == null) { throw new Exception("Se necesita el identificador de la Unidad Operativa para ver el Período Tarifario"); } List <DiaPeriodoTarifaBO> lstTemp = new List <DiaPeriodoTarifaBO>(); periodoTarifaBR = new DiaPeriodoTarifaBR(); lstTemp = periodoTarifaBR.ConsultarCompleto(dctx, periodoTarifa); if (lstTemp.Count == 0) { #region Si no existe un registro en la DB, es porque se agregó la UO pero no se ha configurado #region Obtener la seguridad UsuarioBO usr = new UsuarioBO { Id = this.vista.UsuarioID }; AdscripcionBO adscripcion = new AdscripcionBO { UnidadOperativa = new UnidadOperativaBO { Id = this.vista.UnidadOperativaID } }; SeguridadBO seguridadBO = new SeguridadBO(Guid.Empty, usr, adscripcion); #endregion #region Asignar valores default para insertar periodoTarifa.IncluyeSD = false; periodoTarifa.DiasDuracionSemana = 0; periodoTarifa.DiasDuracionMes = 0; periodoTarifa.InicioPeriodoDia = 1; periodoTarifa.InicioPeriodoSemana = 0; periodoTarifa.InicioPeriodoMes = 0; periodoTarifa.Auditoria = new AuditoriaBO() { UC = this.vista.UsuarioID, FC = DateTime.Now, UUA = this.vista.UsuarioID, FUA = DateTime.Now }; #endregion periodoTarifaBR.InsertarCompleto(dctx, periodoTarifa, seguridadBO); #endregion } if (lstTemp.Count > 1) { throw new Exception("Inconsistencias en los registros de la base datos, se encontro mas de un registro de la tarifa que desea buscar"); } return(lstTemp[0]); } catch (Exception ex) { throw new Exception(nombreClase + ".ConsultarPeriodoTarifario:Inconsistencias al consultar los datos del Período Tarifario." + ex.Message); } }
private void DatoAInterfazUsuario(DiaPeriodoTarifaBO periodoTarifa) { try { if (Object.ReferenceEquals(periodoTarifa, null)) { periodoTarifa = new DiaPeriodoTarifaBO(); } presentadorPeriodoTarifario.DatosAInterfazUsuario(periodoTarifa); } catch (Exception ex) { throw new Exception(nombreClase + ".DatoAInterfazUsuario:Inconsistencia al presentar los datos de la tarifa" + ex.Message); } }
private DiaPeriodoTarifaBO InterfazUsuarioADato() { DiaPeriodoTarifaBO periodoTarifa = new DiaPeriodoTarifaBO(); if (this.vista.UnidadOperativaSeleccionadaID == null) { throw new Exception("El identificador de la Unidad Operativa no puede ser nulo"); } periodoTarifa = this.presentadorPeriodoTarifario.InterfazUsuarioADato(); periodoTarifa.UnidadOperativaID = this.vista.UnidadOperativaSeleccionadaID; return(periodoTarifa); }
private DiaPeriodoTarifaBO InterfazUsuarioADato() { try { if (this.vista.UnidadOperativaID == null) { throw new Exception("El identificador de la Unidad Operativa no puede ser nulo"); } DiaPeriodoTarifaBO tarifa = this.presentadorPeriodoTarifario.InterfazUsuarioADato(); tarifa.UnidadOperativaID = this.vista.UnidadOperativaSeleccionada; tarifa.Auditoria = new AuditoriaBO { FUA = this.vista.FUA, UUA = this.vista.UsuarioID }; return(tarifa); } catch (Exception ex) { throw new Exception(nombreClase + ".InterfazUsuarioADato:Error al obtener los datos a actualizar." + ex.Message); } }
public void Guardar() { try { string s; if ((s = this.presentadorPeriodoTarifario.ValidarDatos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } if ((s = this.ValidarDatos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } DiaPeriodoTarifaBO diaPeriodoTarifa = InterfazUsuarioADato(); #region Obtener la seguridad UsuarioBO usr = new UsuarioBO { Id = this.vista.UsuarioID }; AdscripcionBO adscripcion = new AdscripcionBO { UnidadOperativa = new UnidadOperativaBO { Id = this.vista.UnidadOperativaID } }; SeguridadBO seguridadBO = new SeguridadBO(Guid.Empty, usr, adscripcion); #endregion periodoTarifaBR.ActualizarCompleto(dctx, diaPeriodoTarifa, this.vista.UltimoObjeto as DiaPeriodoTarifaBO, seguridadBO); this.vista.LimpiarSesion(); this.vista.EstablecerPaqueteNavegacion(diaPeriodoTarifa); this.vista.RedirigirADetalle(); } catch (Exception ex) { this.MostrarMensaje("Error al intentar actualizar los datos", ETipoMensajeIU.ERROR, nombreClase + ".Guardar:" + ex.Message); } }
/// <summary> /// Genera el reporte para el check list /// </summary> /// <param name="datos">Datos del check list</param> private void ImprimirReporte(Dictionary <string, object> datos) { try { var contrato = (ContratoPSLBO)datos["ContratoPSLBO"]; if (contrato == null) { throw new Exception("No se encontró información para imprimir el contrato"); } #region #Anexo int numeroAnexo = 1; if (datos.ContainsKey("NumeroAnexo")) { numeroAnexo = (int)datos["NumeroAnexo"]; } this.xrlblAnexo.Text = "ANEXO " + GetRomanNumber(numeroAnexo); #endregion #region Fecha this.xrtDia.Text = ""; this.xrtMes.Text = ""; this.xrtAnio.Text = ""; if (contrato.FechaInicioActual != null) { this.xrtDia.Text = contrato.FechaInicioActual.Value.Day.ToString(); this.xrtMes.Text = contrato.FechaInicioActual.Value.Month.ToString(); this.xrtAnio.Text = contrato.FechaInicioActual.Value.Year.ToString(); } #endregion #region Obtener Porcentaje de Impuesto decimal porcentajeImp = 0; if (contrato.Sucursal != null && contrato.Sucursal.Impuesto != null && contrato.Sucursal.Impuesto.PorcentajeImpuesto != null) { porcentajeImp = (decimal)contrato.Sucursal.Impuesto.PorcentajeImpuesto / 100; } #endregion #region Datos de identificación List <LineaContratoPSLBO> listaContrato = contrato.LineasContrato.ConvertAll(s => (LineaContratoPSLBO)s); ConfiguracionUnidadOperativaBO configEmpresa = datos.ContainsKey("RepresentanteEmpresa") ? (ConfiguracionUnidadOperativaBO)datos["RepresentanteEmpresa"] : new ConfiguracionUnidadOperativaBO(); decimal? importeCadaRenta = null; List <string> listaunidades = new List <string>(); decimal? montoTotalContrato = 0; decimal? montoTotalUnidad = 0; decimal? importeSeguro = 0; #region PeriodoTarifario BPMO.Basicos.BO.MonedaBO moneda = new BPMO.Basicos.BO.MonedaBO(); if (datos.ContainsKey("Moneda")) { moneda = (BPMO.Basicos.BO.MonedaBO)datos["Moneda"]; } decimal? tarifaCalculada = 0; DiaPeriodoTarifaBO periodoTarifa = new DiaPeriodoTarifaBO(); if (datos.ContainsKey("PeriodoTarifa")) { periodoTarifa = (DiaPeriodoTarifaBO)datos["PeriodoTarifa"]; } int?iniSemana = periodoTarifa.InicioPeriodoSemana; int?iniMes = periodoTarifa.InicioPeriodoMes; int diasRenta = ((int)contrato.DiasRenta(true)); #endregion foreach (LineaContratoPSLBO lineascnt in listaContrato.Where(lc => lc.Activo == true)) { if (lineascnt.Equipo != null && lineascnt.Equipo.TipoEquipoServicio != null && lineascnt.Equipo.Modelo != null) { listaunidades.Add(lineascnt.Equipo.TipoEquipoServicio.Nombre + "- " + lineascnt.Equipo.Modelo.Nombre); } if (((TarifaContratoPSLBO)lineascnt.Cobrable).TarifaCobradaEnPago != null) { importeCadaRenta = ((TarifaContratoPSLBO)lineascnt.Cobrable).TarifaCobradaEnPago.GetValueOrDefault(); } #region Tarifa if (((TarifaContratoPSLBO)lineascnt.Cobrable).TarifaConDescuento != null && ((TarifaContratoPSLBO)lineascnt.Cobrable).TarifaConDescuento > 0) { tarifaCalculada = ((TarifaContratoPSLBO)lineascnt.Cobrable).TarifaConDescuento; } else { tarifaCalculada = ((TarifaContratoPSLBO)lineascnt.Cobrable).Tarifa != null ? ((TarifaContratoPSLBO)lineascnt.Cobrable).Tarifa : 0; } if (tarifaCalculada > 0) { switch (((TarifaContratoPSLBO)lineascnt.Cobrable).PeriodoTarifa) { case EPeriodosTarifa.Dia: montoTotalUnidad = Math.Round((decimal)(tarifaCalculada * diasRenta), 2); break; case EPeriodosTarifa.Semana: montoTotalUnidad = Math.Round((decimal)(tarifaCalculada / periodoTarifa.DiasDuracionSemana * diasRenta), 2); break; case EPeriodosTarifa.Mes: montoTotalUnidad = Math.Round((decimal)(tarifaCalculada / periodoTarifa.DiasDuracionMes * diasRenta), 2); break; } } importeSeguro = (montoTotalUnidad * (((TarifaContratoPSLBO)lineascnt.Cobrable).PorcentajeSeguro != null ? ((TarifaContratoPSLBO)lineascnt.Cobrable).PorcentajeSeguro : 0) / 100); decimal?subTotalUnidad = montoTotalUnidad + ((TarifaContratoPSLBO)lineascnt.Cobrable).Maniobra.GetValueOrDefault() + importeSeguro; montoTotalContrato += subTotalUnidad; #endregion } this.lblValorBien.Text = ""; this.xrListadoUnidades.Text = ""; if (listaunidades.Count > 0) { this.xrListadoUnidades.Text = string.Join("\n", listaunidades); } this.lblUsoBien.Text = contrato.MercanciaTransportar; this.lblUbicacionEntrega.Text = contrato.DestinoAreaOperacion; var lineacontrato = contrato.LineasContrato.ConvertAll(s => (LineaContratoPSLBO)s); this.lblArrendador.Text = string.Empty; this.xrArrendador.Text = MontoArrendamiento(listaContrato) ? "X" : string.Empty; this.xrArrendatario.Text = this.xrArrendador.Text == string.Empty ? "X" : string.Empty; this.lblArrendatario.Text = string.Empty; this.xrArrendadoraRepPor.Text = ""; this.xrArrendatarioRepPor.Text = ""; this.xrObligadoRepPor.Text = ""; if (configEmpresa != null) { this.xrArrendadoraRepPor.Text += "REPRESENTADA POR: " + configEmpresa.Representante; } if (contrato.RepresentantesLegales.Count > 0) { RepresentanteLegalBO RepresentantesLegales = contrato.RepresentantesLegales.ConvertAll(s => (RepresentanteLegalBO)s).FirstOrDefault(); if (RepresentantesLegales != null) { this.xrArrendatarioRepPor.Text = "REPRESENTADA POR: " + RepresentantesLegales.Nombre; this.xrObligadoRepPor.Text = "REPRESENTADA POR: " + RepresentantesLegales.Nombre; } } #endregion #region Monto de Contrato montoTotalContrato = (montoTotalContrato != null ? montoTotalContrato : 0); string montoLetras = new BPMO.SDNI.Comun.BR.ConvertirALetrasBR().ConvertirMoneda((decimal)montoTotalContrato, moneda.ComplementoNombreLegal, moneda.NombreLegal); this.lblMontoTotalContrato.Text = "$" + Convert.ToDouble(montoTotalContrato).ToString("N2") + " \r\n (" + montoLetras.ToUpper() + ") "; this.lblFechaInicioTermino.Text = "INICIO: " + (contrato.FechaInicioActual != null ? contrato.FechaInicioActual.Value.ToShortDateString() : "") + " \r\n" + "TERMINACIÓN: " + (contrato.FechaPromesaActual != null ? ((DateTime)contrato.FechaPromesaActual).ToShortDateString() : "") + " \r\n" + "(En caso de ser indefinida la fecha de terminación. será la fecha de devolución del BIEN, haciendo constar mediante la firma de la carta check list de recepción)"; #endregion #region Firmas List <AvalBO> listaAval = contrato.Avales.ConvertAll(s => (AvalBO)s); var depositario = (contrato.RepresentantesLegales.ConvertAll(s => (RepresentanteLegalBO)s)).Where(x => x.EsDepositario.GetValueOrDefault() == true).FirstOrDefault(); this.xrlNombreEmpresa.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 + ((listaAval != null && listaAval.Count > 0) ? listaAval[0].Nombre : "") + "</a></div>"; this.xrRichDepositario.Html = "<div style=\"text-align: center;\"><a style=\"font-family:Times New Roman; font-size:10px;\">" + Nombre + (depositario != null ? depositario.Nombre : "") + " , por su propio y personal derecho." + "</a></div>"; #endregion } catch (Exception ex) { throw new Exception(".ImprimirReporte: Error al imprimir el reporte. " + ex.Message); } }