public async Task CreateActividad(Aliado model)
        {
            try
            {
                ActividadAdicional obj = new ActividadAdicional();
                obj.AliadoId       = model.AliadoId;
                obj.Descripcion    = model.DescripcionActividad;
                obj.FechaActividad = model.FechaActividad;
                obj.Autor          = model.Autor;
                obj.FechaRegistro  = DateTime.Now;

                obj.Estado = true;

                var entities = _db.ActividadAdicional.Add(obj);
                await _db.SaveChangesAsync();

                var ActividadAdicionalId = entities.ActividadAdicionalId;

                if (model.AreasActividad.Length >= 0)
                {
                    await insertaAreasActividad(model, ActividadAdicionalId);
                }

                if (model.ClavePersonaActividad.Length >= 0)
                {
                    await insertaPersonaActividad(model, ActividadAdicionalId);
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
        private async Task insertaAreasUpdateActividad(ActividadAdicional model)
        {
            try
            {
                for (int i = 0; i < model.AreasActividad.Length; i++)
                {
                    AreaActividadAdicional obj = new AreaActividadAdicional();
                    var item  = model.AreasActividad[i];
                    var item2 = model.FechasAreaActividad[i];

                    obj.ClaveUnidad = item;
                    //obj.FechaEfectiva = item2;
                    obj.ActividadAdicionalId = model.ActividadAdicionalId;
                    obj.Autor         = model.Autor;
                    obj.FechaRegistro = DateTime.Now;
                    obj.Estado        = true;

                    var entities = _db.AreaActividadAdicional.Add(obj);
                    await _db.SaveChangesAsync();
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
Exemple #3
0
 public async Task Create(ActividadAdicional model)
 {
     try
     {
         _db.ActividadAdicional.Add(model);
         await _db.SaveChangesAsync();
     }
     catch (Exception e)
     {
         throw new Exception(e.Message, e);
     }
 }
Exemple #4
0
        public async Task <IHttpActionResult> UpdateActividadActualizados(ActividadAdicional model)
        {
            try
            {
                log.Info(new MDCSet(this.ControllerContext.RouteData));
                await _entityRepo.UpdateActividadActualizado(model);

                return(Ok("Registro actualizado exitosamente!"));
            }
            catch (Exception e)
            {
                log.Error(new MDCSet(this.ControllerContext.RouteData), e);
                return(InternalServerError(e));
            }
        }
Exemple #5
0
        public async Task Update(ActividadAdicional model)
        {
            try
            {
                var _model = await _db.ActividadAdicional.FirstOrDefaultAsync(e => e.ActividadAdicionalId == model.ActividadAdicionalId);

                if (_model != null)
                {
                    _db.Entry(_model).CurrentValues.SetValues(model);
                    await _db.SaveChangesAsync();
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
Exemple #6
0
        public async Task UpdateEstado(ActividadAdicional model)
        {
            try
            {
                var _model = await _db.ActividadAdicional.FirstOrDefaultAsync(e => e.ActividadAdicionalId == model.ActividadAdicionalId);

                if (_model != null)
                {
                    _model.Estado = model.Estado;

                    await _db.SaveChangesAsync();
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
        public async Task UpdateActividad(ActividadAdicional model)
        {
            try
            {
                var _model = await _db.ActividadAdicional.FirstOrDefaultAsync(e => e.ActividadAdicionalId == model.ActividadAdicionalId);

                if (_model != null)
                {
                    _db.Entry(_model).CurrentValues.SetValues(model);
                    await _db.SaveChangesAsync();

                    //if (model.AreasActividad.Length >= 0)
                    //{
                    //    await insertaAreasUpdateActividad(model);

                    //}

                    //if (model.PersonasActividad.Length >= 0)
                    //{
                    //    await insertaPersonasUpdateActividad(model);

                    //}
                    ////Areas
                    //if (model.AreasActividadAntDel.Length > 0)
                    //{
                    //    //Elimina las areas que tenia dadas de alta y elimino al actualizar
                    //    await EliminaAreaActividadUpdate(model);
                    //}

                    ////Personas
                    //if (model.PersonasActividadAntDel.Length > 0)
                    //{
                    //    //Elimina los personas que tenia dados de alta y elimino al actualizar
                    //    await EliminaPersonaActividadUpdate(model);
                    //}
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
        private async Task EliminaPersonaActividadUpdate(ActividadAdicional model)
        {
            try
            {
                foreach (var item in model.PersonasActividadAntDel)
                {
                    var _model = await _db.PersonalActividadAdicional.FirstOrDefaultAsync(e => e.PersonalActividadAdicionalId == item);

                    if (_model != null)
                    {
                        _db.PersonalActividadAdicional.Remove(_model);
                        await _db.SaveChangesAsync();
                    }
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
                                                                public async Task <IHttpActionResult> UpdateEstado([FromBody] ActividadAdicional model)
                                                                {
                                                                    try { log.Info(new MDCSet(this.ControllerContext.RouteData));
                                                                          await _entityRepo.UpdateEstado(model);

                                                                          return(Ok()); }
                                                                    catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e);

                                                                                          return(InternalServerError(e)); }
                                                                }
                                                                public async Task <IHttpActionResult> Update([FromBody] ActividadAdicional model)
                                                                {
                                                                    if (!ModelState.IsValid)
                                                                    {
                                                                        return(BadRequest(ModelState));
                                                                    }

                                                                    try { log.Info(new MDCSet(this.ControllerContext.RouteData));
                                                                          await _entityRepo.Update(model);

                                                                          return(Ok("Registro actualizado exitosamente!")); }
                                                                    catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e);
                                                                                          return(InternalServerError(e)); }
                                                                }
                                                                [Authorize] public async Task <IHttpActionResult> Create([FromBody] ActividadAdicional model)
                                                                {
                                                                    if (!ModelState.IsValid)
                                                                    {
                                                                        return(BadRequest(ModelState));
                                                                    }

                                                                    try { log.Info(new MDCSet(this.ControllerContext.RouteData));
                                                                          await _entityRepo.Create(model);

                                                                          return(Ok("Registro creado exitosamente!")); }
                                                                    catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e);
                                                                                          if (e.Message.Substring(0, 44) == "An error occurred while updating the entries")
                                                                                          {
                                                                                              return(BadRequest("Ya existe un registro con ese nombre"));
                                                                                          }
                                                                                          return(InternalServerError(e)); }
                                                                }