public ModalDeRelacionarElementos(DescriptorDeMantenimiento <TElemento> mantenimiento, string tituloModal, DescriptorDeCrud <TSeleccionado> crudModal, string propiedadRestrictora) : base(padre: mantenimiento , id: $"{mantenimiento.Id}-{enumTipoControl.ModalDeRelacion.Render()}-{typeof(TSeleccionado).Name}" , etiqueta: tituloModal , propiedad: "" , ayuda: "" , posicion: null) { CrudModal = crudModal; PropiedadRestrictora = propiedadRestrictora.ToLower(); }
public ZonaDeDatos(DescriptorDeMantenimiento <TElemento> mnt) : base( padre: mnt, id: $"{mnt.Id}_Grid", etiqueta: null, propiedad: null, ayuda: null, posicion: null ) { Tipo = enumTipoControl.ZonaDeDatos; Grid = new Grid <TElemento>(this); }
public ZonaDeMenu(DescriptorDeMantenimiento <TElemento> mnt) : base( padre: mnt, id: $"{mnt.Id}_{enumTipoControl.ZonaDeMenu.Render()}", etiqueta: null, propiedad: null, ayuda: null, posicion: null ) { Menu = new Menu <TElemento>(this); Tipo = enumTipoControl.ZonaDeMenu; }
internal static void AnadirOpciondeRelacion(DescriptorDeMantenimiento <TElemento> Mnt, string controlador, string vista, string relacionarCon, string navegarAlCrud, string nombreOpcion, string propiedadQueRestringe, string propiedadRestrictora, string ayuda) { var accionDeRelacion = new AccionDeRelacionarElemenetos( urlDelCrud: $@"/{controlador.Replace("Controller", "")}/{vista}?origen=relacion" , relacionarCon: relacionarCon , nombreDelMnt: navegarAlCrud , propiedadQueRestringe: propiedadQueRestringe , propiedadRestrictora: propiedadRestrictora , ayuda); var opcion = new OpcionDeMenu <TElemento>(menu: Mnt.ZonaMenu.Menu, accion: accionDeRelacion, tipoAccion: TipoDeLlamada.Post, titulo: $"{nombreOpcion}", enumModoDeAccesoDeDatos.Gestor, enumCssOpcionMenu.DeElemento); Mnt.ZonaMenu.Menu.Add(opcion); }
internal static OpcionDeMenu <TElemento> AnadirOpcionDeDependencias(DescriptorDeMantenimiento <TElemento> Mnt, string controlador, string vista, string datosDependientes, string navegarAlCrud, string nombreOpcion, string propiedadQueRestringe, string propiedadRestrictora, string ayuda) { var accionDeDependencias = new AccionDeGetionarDatosDependientes( urlDelCrud: $@"/{controlador.Replace("Controller", "")}/{vista}?origen=dependencia" , datosDependientes: datosDependientes , nombreDelMnt: navegarAlCrud , propiedadQueRestringe: propiedadQueRestringe , propiedadRestrictora: propiedadRestrictora , ayuda); var opcion = new OpcionDeMenu <TElemento>(menu: Mnt.ZonaMenu.Menu, accion: accionDeDependencias, tipoAccion: TipoDeLlamada.Post, titulo: $"{nombreOpcion}", enumModoDeAccesoDeDatos.Consultor, enumCssOpcionMenu.DeElemento); Mnt.ZonaMenu.Menu.Add(opcion); return(opcion); }
public DescriptorDeCrud(ContextoSe contexto, string controlador, string vista, ModoDescriptor modo, string rutaBase, string id = null) : base( padre: null, id: id == null ? $"{NombreCrud}" : id, etiqueta: typeof(TElemento).Name.Replace("Dto", ""), propiedad: null, ayuda: null, posicion: null ) { var elemento = typeof(TElemento).Name.Replace("Dto", ""); RutaBase = rutaBase; Tipo = enumTipoControl.DescriptorDeCrud; Mnt = new DescriptorDeMantenimiento <TElemento>(crud: this, etiqueta: elemento); Controlador = controlador.Replace("Controller", ""); Vista = $@"{vista}"; Contexto = contexto; Modo = modo; DefinirColumnasDelGrid(); Creador = new DescriptorDeCreacion <TElemento>(crud: this, etiqueta: elemento); Editor = new DescriptorDeEdicion <TElemento>(crud: this, etiqueta: elemento); Exportador = new DescriptorDeExportacion <TElemento>(crud: this); if (modo == ModoDescriptor.Mantenimiento) { Mnt.ZonaMenu.AnadirOpcionDeIrACrear(); Mnt.ZonaMenu.AnadirOpcionDeIrAEditar(); Mnt.ZonaMenu.AnadirOpcionDeIrAExportar(); if (GestorDeCorreos.PermiteElEnvioDeCorreo <TElemento>()) { Cartero = new DescriptorDeEnviarCorreo <TElemento>(crud: this); Mnt.ZonaMenu.AnadirOpcionDeEnviareMail(); } Borrado = new DescriptorDeBorrado <TElemento>(crud: this, etiqueta: elemento); Mnt.ZonaMenu.AnadirOpcionDeBorrar(); DefinirDescriptorDeAuditoria(); } }
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); } }