internal static string ComponerUrl(TipoDtoElmento elemento) { var url = ExtensionesDto.UrlParaMostrarUnDto(elemento.ClaseDto()); var refHtml = $@"<a href='{CacheDeVariable.Cfg_UrlBase}{url}?id={elemento.IdElemento}' target='_blank' idelemento='2041'>{elemento.Referencia}</a>"; return(refHtml); }
private void DefinirDescriptorDeAuditoria() { if (ExtensionesDto.ImplementaAuditoria(typeof(TElemento))) { var expanDeAuditoria = new DescriptorDeExpansor(Editor, $"{Editor.Id}-audt", "Auditoría", "Información de auditoría"); var fechaCreacion = new EditorDeFecha(expanDeAuditoria, "Creado el", nameof(IAuditadoDto.CreadoEl), "fecha de cuando se creó el elemento"); var fechaModificacion = new EditorDeFecha(expanDeAuditoria, "Modificado el", nameof(IAuditadoDto.ModificadoEl), "fecha de cuando se modificó por última vez"); fechaCreacion.Editable = false; fechaModificacion.Editable = false; var creador = new EditorDeTexto(expanDeAuditoria, "Creado por", nameof(IAuditadoDto.Creador), "Quién lo creó"); var modificador = new EditorDeTexto(expanDeAuditoria, "Modificado por", nameof(IAuditadoDto.Modificador), "Quién lo modificó"); var mostrarHistorico = new NavegarDesdeEdicion(expanDeAuditoria, "Ver auditoría", "Histórico de modificaciones del registro", $"/Auditoria/CrudDeAuditoria/?origen=edicion&negocio={RenderNegocio}"); creador.Editable = false; modificador.Editable = false; Editor.Expanes.Add(expanDeAuditoria); expanDeAuditoria.Controles.Add(fechaCreacion); expanDeAuditoria.Controles.Add(fechaModificacion); expanDeAuditoria.Controles.Add(creador); expanDeAuditoria.Controles.Add(new DivEnBlanco(expanDeAuditoria)); expanDeAuditoria.Controles.Add(modificador); expanDeAuditoria.Controles.Add(new DivEnBlanco(expanDeAuditoria)); expanDeAuditoria.Controles.Add(mostrarHistorico); } }
public static bool PermiteElEnvioDeCorreo <T>() where T : ElementoDto { try { ExtensionesDto.UrlParaMostrarUnDto(typeof(T)); } catch { return(false); } return(true); }
internal static Type TipoDto(this enumNegocio negocio) { var negocioDto = LeerNegocioPorEnumerado(negocio); if (negocioDto.ElementoDto.IsNullOrEmpty()) { throw new Exception($"El negocio {negocio} no tiene definido el tipo Dto"); } var tipoDto = ExtensionesDto.ObtenerTypoDto(negocioDto.ElementoDto); return(tipoDto); }
public static string UrlParaMostrarUnNegocio(enumNegocio negocio) { var negocioDto = LeerNegocioPorEnumerado(negocio); var elementoDto = negocioDto.ElementoDto; if (elementoDto.IsNullOrEmpty()) { GestorDeErrores.Emitir($"No se ha definido el elementoDto para el negocio {negocioDto.Nombre}"); } var tipoDto = ExtensionesDto.ObtenerTypoDto(elementoDto); return(ExtensionesDto.UrlParaMostrarUnDto(tipoDto)); }
protected override void AntesDePersistir(VistaMvcDtm registro, ParametrosDeNegocio parametros) { base.AntesDePersistir(registro, parametros); if (!registro.ElementoDto.IsNullOrEmpty()) { ExtensionesDto.ObtenerTypoDto(registro.ElementoDto); } if (parametros.Operacion == enumTipoOperacion.Insertar) { var permiso = GestorDePermisos.CrearObtener(Contexto, Mapeador, registro.Nombre, enumClaseDePermiso.Vista); registro.IdPermiso = permiso.Id; } if (parametros.Operacion == enumTipoOperacion.Modificar) { registro.IdPermiso = ((VistaMvcDtm)parametros.registroEnBd).IdPermiso; } }
public ZonaDeFiltro(DescriptorDeMantenimiento <TElemento> mnt) : base( padre: mnt, id: $"{mnt.Id}_Filtro", etiqueta: null, propiedad: null, ayuda: null, posicion: null ) { Tipo = enumTipoControl.ZonaDeFiltro; var b1 = new BloqueDeFitro <TElemento>(this, ltrBloques.General, new Dimension(1, 2)); var b2 = new BloqueDeFitro <TElemento>(this, ltrBloques.Comun, new Dimension(2, 2)); b1.Plegado = true; FiltroDeNombre = new EditorFiltro <TElemento>(bloque: b1, etiqueta: nameof(INombre.Nombre), propiedad: ltrFiltros.Nombre, ayuda: "buscar por nombre", new Posicion { fila = 0, columna = 0 }); if (ExtensionesDto.ImplementaAuditoria(typeof(TElemento))) { var modalCreador = new DescriptorDeUsuario(mnt.Crud.Contexto, ModoDescriptor.SeleccionarParaFiltrar, "modal_creador"); new SelectorDeFiltro <TElemento, UsuarioDto>(padre: b2, etiqueta: "Creador", filtrarPor: nameof(ElementoDtm.IdUsuaCrea), ayuda: "Usuario creador", posicion: new Posicion() { fila = 1, columna = 0 }, paraFiltrar: nameof(UsuarioDto.Id), paraMostrar: nameof(UsuarioDto.NombreCompleto), crudModal: modalCreador, propiedadDondeMapear: UsuariosPor.NombreCompleto.ToString()); new FiltroEntreFechas <TElemento>(bloque: b2, etiqueta: "Creado entre", propiedad: nameof(ElementoDtm.FechaCreacion), ayuda: "filtrar por rango de fechas", posicion: new Posicion() { fila = 1, columna = 1 }); var modalModificador = new DescriptorDeUsuario(mnt.Crud.Contexto, ModoDescriptor.SeleccionarParaFiltrar, "modal_modificador"); new SelectorDeFiltro <TElemento, UsuarioDto>(padre: b2, etiqueta: "Modificador", filtrarPor: nameof(ElementoDtm.IdUsuaModi), ayuda: "Usuario modificador", posicion: new Posicion() { fila = 2, columna = 0 }, paraFiltrar: nameof(UsuarioDto.Id), paraMostrar: nameof(UsuarioDto.NombreCompleto), crudModal: modalModificador, propiedadDondeMapear: UsuariosPor.NombreCompleto.ToString()); new FiltroEntreFechas <TElemento>(bloque: b2, etiqueta: "Modificado entre", propiedad: nameof(ElementoDtm.FechaModificacion), ayuda: "filtrar por rango de fechas", posicion: new Posicion() { fila = 2, columna = 1 }); var idAudtCreacion = $"{b2.Id}_{enumTipoControl.Check.Render()}_auditoria-de-creacion"; var accionCreacion = $"onclick = javascript:Crud.{GestorDeEventos.EventosDelMantenimiento}('{TipoDeAccionDeMnt.OcultarMostrarColumnas}','{nameof(IAuditadoDto.CreadoEl)}#{nameof(IAuditadoDto.Creador)}');"; new CheckDeAccionFlt <TElemento>(bloque: b2, id: idAudtCreacion, etiqueta: "Auditoría de creación", ayuda: "muestra la fecha y usuario de creación", valorInicial: false, posicion: new Posicion(3, 0), accion: accionCreacion); var idAudtModificacion = $"{b2.Id}_{enumTipoControl.Check.Render()}_auditoria-de-modificacion"; var accionModificacion = $"onclick = javascript:Crud.{GestorDeEventos.EventosDelMantenimiento}('{TipoDeAccionDeMnt.OcultarMostrarColumnas}','{nameof(IAuditadoDto.ModificadoEl)}#{nameof(IAuditadoDto.Modificador)}');"; new CheckDeAccionFlt <TElemento>(bloque: b2, id: idAudtModificacion, etiqueta: "Auditoría de modificación", ayuda: "muestra la última fecha y usuario de modificación", valorInicial: false, posicion: new Posicion(3, 1), accion: accionModificacion); } }