public async Task <CrearResponse <Soporte> > CrearAsync(SoporteCrear modelo)
        {
            var evento = await repositorio.ConsultarElPrimeroAsync <EventoCalendario>(q => q.Id == modelo.EventoId);

            var autoinfoAlCrear = new EntidadAutoinfo <Soporte>();

            autoinfoAlCrear.SetValue(v => v.RegionalId, evento.RegionalId);
            autoinfoAlCrear.SetValue(v => v.ProyectoId, evento.ProyectoId);
            autoinfoAlCrear.SetValue(v => v.Nombre, modelo.Nombre);
            autoinfoAlCrear.SetValue(v => v.Tamanio, 0);
            autoinfoAlCrear.SetValue(v => v.Ruta, "");
            autoinfoAlCrear.SetValue(v => v.Extension, "");


            repositorio.IniciarTransaccion();

            var soporte = await base.CrearAsync(modelo, autoinfoAlCrear);

            var tamanio = await archivoSoporteAlmacen.CrearAsync(soporte.Data, modelo.RequestStream);

            soporte.Data.Nombre    = archivoSoporteAlmacen.NombreSoporte(soporte.Data);
            soporte.Data.Ruta      = archivoSoporteAlmacen.RutaSoporte(soporte.Data);
            soporte.Data.Extension = MimeTypes.GetMimeType(modelo.Nombre);
            soporte.Data.Tamanio   = tamanio;

            await repositorio.ActualizarAsync(soporte.Data);

            repositorio.FinalizarTransaccion();

            return(soporte);
        }
Example #2
0
        public async virtual Task <CrearResponse <TEntidad> > CrearAsync(Crear <TEntidad> modelo, IRequest peticion)
        {
            var autoinfoAlCrear = new EntidadAutoinfo <TEntidad>();

            PreprocesarAlCrear(modelo, autoinfoAlCrear, peticion);
            return(await repositorio.CrearAsync(modelo, autoinfoAlCrear));
        }
Example #3
0
 protected override void PreprocesarAlCrear(Crear <PreguntaPlantillaEncuesta> modelo,
                                            EntidadAutoinfo <PreguntaPlantillaEncuesta> autoinfoAlCrear,
                                            IRequest peticion)
 {
     autoinfoAlCrear.SetValue(q => q.CreadoPorId, peticion.GetPersonaId());
     base.PreprocesarAlCrear(modelo, autoinfoAlCrear, peticion);
 }
        public async Task <ActualizarResponse <EncuestaGamEventoCalendario> > ActualizarAsync(EncuestaGamActualizar modelo, IRequest peticion)
        {
            var autoinfoAlActualizar = new EntidadAutoinfo <EncuestaGam>();

            PreprocesarAlActualizar(modelo, autoinfoAlActualizar, peticion);
            var encuestagam = await repositorio.ActualizarAsync(modelo, autoinfoAlActualizar);

            return(encuestagam);
        }
Example #5
0
        IList <string> ObtenerCamposPorActualizar(EntidadAutoinfo autoinfo, Type tModelo)
        {
            var nombres          = new List <string>();
            var nombresDelModelo = tModelo.GetPropertyNames().Where(x => x != "Id").ToList();

            nombres.AddRange(autoinfo.Keys);
            nombres.AddRange(nombresDelModelo);
            return(nombres);
        }
Example #6
0
        public async Task <ActualizarResponse <GamConMiembros> > ActualizarAsync(GamActualizar modelo, IRequest peticion)
        {
            var autoinfoAlActualizar = new EntidadAutoinfo <Gam>();

            PreprocesarAlActualizar(modelo, autoinfoAlActualizar, peticion);
            var gam = await repositorio.ActualizarAsync(modelo, autoinfoAlActualizar);

            return(gam);
        }
        protected override void PreprocesarAlCrear(Crear <PlantillaEncuesta> modelo, EntidadAutoinfo <PlantillaEncuesta> autoinfoAlCrear, IRequest peticion)
        {
            var entidad = modelo as PlantillaEncuestaCrear;

            entidad.Inactiva.SiEsNullEntonces(() => entidad.Inactiva = false);
            entidad.Aprobada.SiEsNullEntonces(() => entidad.Aprobada = false);

            autoinfoAlCrear.SetValue(q => q.CreadoPorId, peticion.GetPersonaId());
            base.PreprocesarAlCrear(modelo, autoinfoAlCrear, peticion);
        }
Example #8
0
        protected override void PreprocesarAlCrear(Crear <RespuestaEncuestaGam> modelo,
                                                   EntidadAutoinfo <RespuestaEncuestaGam> autoinfoAlCrear, IRequest peticion)
        {
            RespuestaEncuestaGamCrear modeloCrear = modelo as RespuestaEncuestaGamCrear;

            modeloCrear.PreguntaPlantillaEncuestaId.SiEsCeroEntonces(() =>
            {
                var preguntaPlantillaPorDefecto         = GetPreguntaPlantillaPorDefecto(peticion, modeloCrear);
                modeloCrear.PreguntaPlantillaEncuestaId = preguntaPlantillaPorDefecto.Id;
            });


            autoinfoAlCrear.SetValue(q => q.CreadoPorId, peticion.GetPersonaId());
            base.PreprocesarAlCrear(modelo, autoinfoAlCrear, peticion);
        }
        protected override void PreprocesarAlCrear(Crear <EncuestaGam> modelo, EntidadAutoinfo <EncuestaGam> autoinfoAlCrear, IRequest peticion)
        {
            var sesion           = peticion.GetUserSession();
            var encuestaGamCrear = modelo as EncuestaGamCrear;

            encuestaGamCrear.PlantillaEncuestaId.SiEsCeroEntonces(() =>
            {
                encuestaGamCrear.PlantillaEncuestaId = GetPlantillaAlivioEmocionalPorDefecto(peticion).Id;
            });

            encuestaGamCrear.EncargadoId.SiEsCero_O_NullEntonces(() => encuestaGamCrear.EncargadoId = sesion.GetPersonaId());


            autoinfoAlCrear.SetValue(q => q.CreadoPorId, peticion.GetPersonaId());
            base.PreprocesarAlCrear(modelo, autoinfoAlCrear, peticion);
        }
Example #10
0
        protected override void PreprocesarAlCrear(Crear <Gam> modelo, EntidadAutoinfo <Gam> autoinfoAlCrear, IRequest peticion)
        {
            var sesion   = peticion.GetUserSession();
            var gamcrear = modelo as GamCrear;

            gamcrear.RegionalId.SiEsCeroEntonces(() => gamcrear.RegionalId          = sesion.GetDefaultRegionalId());
            gamcrear.EncargadoId.SiEsCero_O_NullEntonces(() => gamcrear.EncargadoId = sesion.GetPersonaId());

            gamcrear.ProyectoId.SiEsCero_O_NullEntonces(() =>
                                                        gamcrear.ProyectoId = Valores.AlivioEmocionalParametros.ProyectoId
                                                        );

            autoinfoAlCrear.SetValue(q => q.CreadoPorId, sesion.GetPersonaId());

            base.PreprocesarAlCrear(gamcrear, autoinfoAlCrear, peticion);
        }
Example #11
0
        protected override void PreprocesarAlActualizar(Actualizar <Gam> modelo, EntidadAutoinfo <Gam> autoinfoAlActualizar, IRequest peticion)
        {
            var gamActualizar = modelo as GamActualizar;

            var alamcenada = GetEntityById(modelo.Id);

            gamActualizar.EncargadoId.SiEsCero_O_NullEntonces(() => {
                gamActualizar.EncargadoId = alamcenada().EncargadoId;
            });

            gamActualizar.MunicipioId.SiEsCero_O_NullEntonces(() => {
                gamActualizar.MunicipioId = alamcenada().MunicipioId;
            });

            gamActualizar.Nombre.SiEstaVacia_O_NullEntonces(() => {
                gamActualizar.Nombre = alamcenada().Nombre;
            });


            base.PreprocesarAlActualizar(gamActualizar, autoinfoAlActualizar, peticion);
        }
Example #12
0
        public async Task <ActualizarResponse <EncuestaGamEventoCalendario> > ActualizarAsync(EncuestaGamActualizar modelo, EntidadAutoinfo <EncuestaGam> autoinfoAlActualizar)
        {
            var encuestagam = await base.ActualizarAsync(modelo, autoinfoAlActualizar);

            var conEvento = new EncuestaGamEventoCalendario();

            conEvento.PopulateWith(encuestagam.Data);

            if (conEvento.EventoCalendarioId.HasValue && conEvento.EventoCalendarioId.Value != 0)
            {
                conEvento.EventoCalendario = await repositorio.ConsultarPorIdAsync <EventoCalendario>(conEvento.EventoCalendarioId.Value);
            }

            return(new ActualizarResponse <EncuestaGamEventoCalendario> {
                Data = conEvento
            });
        }
Example #13
0
 public virtual ActualizarResponse <TEntidad> Actualizar(Actualizar <TEntidad> modelo,
                                                         EntidadAutoinfo <TEntidad> autoinfoAlActualizar)
 {
     return(ActualizarAsync(modelo, autoinfoAlActualizar).Result);
 }
Example #14
0
        public async Task <CrearResponse <TEntidad> > CrearAsync(Crear <TEntidad> modelo, EntidadAutoinfo <TEntidad> autoinfoAlCrear)
        {
            var entidad = CrearEntidadConDatosDelModelo(modelo);

            PreprocesarAlCrear(entidad, autoinfoAlCrear);
            await repositorio.CrearAsync(entidad);

            return(new CrearResponse <TEntidad> {
                Data = entidad
            });
        }
Example #15
0
        public async Task <ActualizarResponse <GamConMiembros> > ActualizarAsync(GamActualizar modelo, EntidadAutoinfo <Gam> autoinfoAlActualizar)
        {
            var gam = await base.ActualizarAsync(modelo, autoinfoAlActualizar);

            var conMiembros = new GamConMiembros();

            conMiembros.PopulateWith(gam.Data);
            var gamId = gam.Data.Id;

            conMiembros.Miembros = await repositorio.ConsultarAsync <MiembroGam>(q => q.GamId == gamId);


            return(new ActualizarResponse <GamConMiembros> {
                Data = conMiembros
            });
        }
Example #16
0
        protected virtual void PreprocesarAlActualizar(Actualizar <TEntidad> modelo,
                                                       EntidadAutoinfo <TEntidad> autoinfoAlActualizar, IRequest peticion)

        {
        }
Example #17
0
 public virtual CrearResponse <TEntidad> Crear(Crear <TEntidad> modelo, EntidadAutoinfo <TEntidad> autoinfoAlCrear)
 {
     return(CrearAsync(modelo, autoinfoAlCrear).Result);
 }
Example #18
0
 protected virtual void PreprocesarAlActualizar(TEntidad entidad, EntidadAutoinfo <TEntidad> autoinfoAlActualizar)
 {
     LlenarEntidadConAutoinfo(entidad, autoinfoAlActualizar);
 }
Example #19
0
 protected virtual void LlenarEntidadConAutoinfo(TEntidad entidad, EntidadAutoinfo <TEntidad> autoinfo)
 {
     autoinfo.ForEach((k, v) => {
         entidad.GetType().GetProperty(k).SetValue(entidad, v);
     });
 }
Example #20
0
        public async Task <ActualizarResponse <TEntidad> > ActualizarAsync(Actualizar <TEntidad> modelo, EntidadAutoinfo <TEntidad> autoinfoAlActualizar)
        {
            var entidad = CrearEntidadConDatosDelModelo(modelo);

            PreprocesarAlActualizar(entidad, autoinfoAlActualizar);
            var onlyfields = ObtenerCamposPorActualizar(autoinfoAlActualizar, modelo.GetType());
            await repositorio.ActualizarAsync(entidad, onlyfields);

            entidad = await repositorio.ConsultarPorIdAsync <TEntidad>(entidad.Id);

            return(new ActualizarResponse <TEntidad> {
                Data = entidad
            });
        }
Example #21
0
 protected override void PreprocesarAlCrear(EncuestaGam entidad, EntidadAutoinfo <EncuestaGam> autoinfoAlCrear)
 {
     autoinfoAlCrear.SetValue(q => q.FechaCreacion, DateTime.UtcNow);
     base.PreprocesarAlCrear(entidad, autoinfoAlCrear);
 }
Example #22
0
 protected override void PreprocesarAlCrear(Crear <MiembroGam> modelo, EntidadAutoinfo <MiembroGam> autoinfoAlCrear, IRequest peticion)
 {
     autoinfoAlCrear.SetValue(q => q.CreadoPorId, peticion.GetPersonaId());
     base.PreprocesarAlCrear(modelo, autoinfoAlCrear, peticion);
 }
 protected override void PreprocesarAlCrear(PreguntaPlantillaEncuesta entidad,
                                            EntidadAutoinfo <PreguntaPlantillaEncuesta> autoinfoAlCrear)
 {
     autoinfoAlCrear.SetValue(q => q.FechaCreacion, DateTime.UtcNow);
     base.PreprocesarAlCrear(entidad, autoinfoAlCrear);
 }
        protected override void PreprocesarAlActualizar(Actualizar <PlantillaEncuesta> modelo, EntidadAutoinfo <PlantillaEncuesta> autoinfoAlActualizar, IRequest peticion)
        {
            var entidad       = modelo as PlantillaEncuestaActualizar;
            var getAlmacenada = GetEntityById(modelo.Id);

            entidad.Inactiva.SiEsNullEntonces(() => entidad.Inactiva = getAlmacenada().Inactiva);
            entidad.Aprobada.SiEsNullEntonces(() => entidad.Aprobada = getAlmacenada().Aprobada);
            entidad.Descripcion.SiEstaVacia_O_NullEntonces(() => entidad.Descripcion = getAlmacenada().Descripcion);
            entidad.Nombre.SiEstaVacia_O_NullEntonces(() => entidad.Nombre           = getAlmacenada().Nombre);

            base.PreprocesarAlActualizar(modelo, autoinfoAlActualizar, peticion);
        }