public void Guardar() { try { string s; if ((s = this.ValidarCamposConfiguracion()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } if ((s = this.ValidarCampos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } if ((s = this.presentadorTarifas.ValidarDatos()) != null) { this.vista.MostrarMensaje(s, ETipoMensajeIU.ADVERTENCIA, null); return; } #region Logica de Inserción List <TarifaRDBO> lst = this.InterfazUsuarioADato(); tarifaRDBR.InsertarCompleto(dctx, lst, new SeguridadBO(Guid.Empty, new UsuarioBO() { Id = this.vista.UC }, new AdscripcionBO() { UnidadOperativa = new UnidadOperativaBO() { Id = this.vista.UnidadOperativaID } })); TarifaRDBO tarifaTemp = lst.FindLast(t => t.Sucursal.Id == this.vista.SucursalID); List <TarifaRDBO> lstTemp = tarifaRDBR.Consultar(dctx, tarifaTemp); if (lstTemp.Count != 0) { tarifaTemp.TarifaID = lstTemp[0].TarifaID; } #endregion this.vista.LimpiarSesion(); this.vista.EstablecerPaqueteNavegacion((object)tarifaTemp); this.vista.RedirigirADetalle(); } catch (Exception ex) { this.MostrarMensaje("Inconsistencias al momento de registrar la tarifa configurada", ETipoMensajeIU.ERROR, this.nombreClase + ".Guardar:" + ex.Message); } }
private List <TarifaRDBO> ConsultarTarifasSucursales(TarifaRDBO tarifa) { try { //validacion de los filtros obligatorios para buscar las sucursales que tienen la misma tarifa. if (Object.ReferenceEquals(tarifa, null)) { throw new Exception("El objeto no puede ser nulo"); } if (Object.ReferenceEquals(tarifa.Modelo, null)) { throw new Exception("El objeto Modelo de la tarifa no puede ser nulo"); } if (tarifa.Divisa == null || tarifa.Divisa.MonedaDestino == null) { throw new Exception(" El objeto de divisa de la tarifa no puede ser nulo"); } if (tarifa.Tipo == null) { throw new Exception("el tipo de tarifa no puede ser nulo"); } if (this.vista.UnidadOperativaID == null) { throw new Exception("La unidad Operativa de la tarifa no puede ser nulo"); } if (tarifa.Modelo.Id == null) { throw new Exception("el identificador del modelo de la tarifa no puede ser nulo"); } if (String.IsNullOrEmpty(tarifa.Divisa.MonedaDestino.Codigo)) { throw new Exception("El código de la moneda no puede ser vacío"); } if (tarifa.Tipo == ETipoTarifa.ESPECIAL) { if (tarifa.Cliente == null && tarifa.Cliente.Id == null) { throw new Exception("El cliente no puede ser nulo"); } } else { if (String.IsNullOrEmpty(tarifa.Descripcion)) { throw new Exception("La descripción de la tarifa no puede ser vacío"); } } //seccion de consulta TarifaRDBOF tarifaTemp = new TarifaRDBOF { Sucursal = new SucursalBO { UnidadOperativa = new UnidadOperativaBO { Id = this.vista.UnidadOperativaID } }, Modelo = new ModeloBO { Id = tarifa.Modelo.Id }, Divisa = new DivisaBO { MonedaDestino = new MonedaBO { Codigo = tarifa.Divisa.MonedaDestino.Codigo } }, Tipo = tarifa.Tipo, Descripcion = tarifa.Descripcion, Activo = true, SucursalesConsulta = SucursalesSeguridad() }; if (tarifa.Cliente != null && tarifa.Cliente.Id != null) { tarifaTemp.Cliente = new CuentaClienteIdealeaseBO { Id = tarifa.Cliente.Id } } ; List <TarifaRDBOF> lstTarifa = tarifaBR.Consultar(dctx, tarifaTemp); return(lstTarifa.ConvertAll(t => (TarifaRDBO)t)); } catch (Exception ex) { throw new Exception(nombreClase + ".ConsultarTarifasSucursales:Error al consultar las sucursales que tiene las mismas tarifas." + ex.Message); } }