예제 #1
0
        //to insert the data from create training form
        public bool InsertTrainingDetails(TrainingVM trainer)
        {
            try
            {
                bool status = false;
                using (TrainingAppEntities1 dc = new TrainingAppEntities1())
                {
                    Schedule schedule = new Schedule();
                    schedule.StartTime = trainer.StartTime;
                    schedule.EndTime   = trainer.EndTime;
                    schedule.RoomId    = trainer.RoomId;
                    var obj = dc.Schedules.Add(schedule);
                    dc.SaveChanges();

                    Training traine = new Training();
                    traine.Topic       = trainer.Topic;
                    traine.Description = trainer.Description;
                    traine.ScheduleId  = obj.ScheduleId;
                    traine.UserId      = trainer.UserId;
                    traine.CreatedAt   = DateTime.Now;
                    traine.UpdatedAt   = DateTime.Now;
                    dc.Trainings.Add(traine);
                    dc.SaveChanges();
                    status = true;
                }
                return(status);
            }
            catch (Exception)
            {
                return(false);
            }
        }
 public HttpResponseMessage Put(int id, TrainingVM trainer)
 {
     try
     {
         bool status = trainingInfo.UpdateTrainingDetails(id, trainer);
         if (status)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, "Data updated successfully"));
         }
         else
         {
             return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Trainer's ID  = " + id.ToString() + "  not found to update or Maybe invalid input"));
         }
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
     }
 }
 public HttpResponseMessage Post(TrainingVM trainer)
 {
     try
     {
         int userId = int.Parse((GetClaims.GetClaimsType(ActionContext.Request.Headers.Authorization.Parameter)).FindFirst(ClaimTypes.NameIdentifier).Value);
         trainer.UserId = userId;
         bool status = trainingInfo.InsertTrainingDetails(trainer);
         if (status)
         {
             return(Request.CreateResponse(HttpStatusCode.Created, trainer));
         }
         else
         {
             return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Cannot Insert data May be invalid input"));
         }
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
     }
 }
예제 #4
0
        //to update the data from edit training form
        public bool UpdateTrainingDetails(int id, TrainingVM trainer)
        {
            try
            {
                bool status = false;
                using (TrainingAppEntities1 dc = new TrainingAppEntities1())
                {
                    var trainerEntity = dc.Trainings.FirstOrDefault(a => a.TrainingId == id);
                    if (trainerEntity == null)
                    {
                        return(status);
                    }
                    else
                    {
                        //updating schedule for specific record
                        var scheduleEntity = dc.Schedules.FirstOrDefault(a => a.ScheduleId == trainerEntity.ScheduleId);
                        scheduleEntity.StartTime = trainer.StartTime;
                        scheduleEntity.EndTime   = trainer.EndTime;
                        scheduleEntity.RoomId    = trainer.RoomId;
                        dc.SaveChanges();

                        //updating training for specific record
                        trainerEntity.Topic       = trainer.Topic;
                        trainerEntity.Description = trainer.Description;
                        //for update schedule Id is not require cause it is already present in database.
                        //for update User Id is not require cause it is already present in database.
                        trainerEntity.UpdatedAt = DateTime.Now;
                        dc.SaveChanges();
                        status = true;

                        return(status);
                    }
                }
            }
            catch (Exception)
            {
                return(false);
            }
        }