public IActionResult Create([FromBody] MeetingSchemaViewModel meetingSchema) { if (!ModelState.IsValid) { return(BadRequest()); } MeetingSchemas NewMSchemas = Mapper.Map <MeetingSchemaViewModel, MeetingSchemas>(meetingSchema); NewMSchemas.DateCreated = DateTime.Now; _meetingSchemasRepository.Add(NewMSchemas); _meetingSchemasRepository.Commit(); foreach (var item in meetingSchema.Participants) { NewMSchemas.Participants.Add(new Participants { UserId = item }); } _meetingSchemasRepository.Commit(); meetingSchema = Mapper.Map <MeetingSchemas, MeetingSchemaViewModel>(NewMSchemas); //Create CreatedAtRouteResult result = CreatedAtRoute("Get", new { controller = "MeetingSchemas", Id = meetingSchema.Id }, meetingSchema); // return result; return(Json(result)); }
public IActionResult Get(int id) { MeetingSchemas _meetingSchemas = _meetingSchemasRepository .GetSingle(e => e.Id == id, e => e.Creator, e => e.Participants); if (_meetingSchemas != null) { MeetingSchemaViewModel meetingSchemaVM = Mapper.Map <MeetingSchemas, MeetingSchemaViewModel>(_meetingSchemas); return(new OkObjectResult(meetingSchemaVM)); } else { return(NotFound()); } }
public IActionResult Put(int id, [FromBody] MeetingSchemaViewModel meetingSchemaViewModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } MeetingSchemas _meetingSchemas = _meetingSchemasRepository.GetSingle(id); if (_meetingSchemas == null) { return(NotFound()); } else { _meetingSchemas.Title = meetingSchemaViewModel.Title; _meetingSchemas.Location = meetingSchemaViewModel.Location; _meetingSchemas.Description = meetingSchemaViewModel.Description; _meetingSchemas.Status = (MeetingSchemaStatus)Enum.Parse(typeof(MeetingSchemaStatus), meetingSchemaViewModel.Status); _meetingSchemas.Type = (MeetingSchemaType)Enum.Parse(typeof(MeetingSchemaType), meetingSchemaViewModel.Type); _meetingSchemas.TimeStart = meetingSchemaViewModel.TimeStart; _meetingSchemas.TimeEnd = meetingSchemaViewModel.TimeEnd; _participantsRepository.DeleteWhere(e => e.MeetingSchemaId == id); foreach (var user_id in meetingSchemaViewModel.Participants) { _meetingSchemas.Participants.Add(new Participants { MeetingSchemaId = id, UserId = id }); } _meetingSchemasRepository.Commit(); } //Mapp to ViewModel from DB meetingSchemaViewModel = Mapper.Map <MeetingSchemas, MeetingSchemaViewModel>(_meetingSchemas); return(new NoContentResult()); }