public async Task <ApiResponse <List <GetCursoDTO> > > add(AddCursoDTO curso) { ApiResponse <List <GetCursoDTO> > response = new ApiResponse <List <GetCursoDTO> >(); try { Curso c = _mapper.Map <Curso>(curso); _context.Cursos.Add(c); await _context.SaveChangesAsync(); int idCurso = c.Id; if (curso.TemplateId != null && curso.TemplateId != 0) { Template temp = await _context.Template.Include(st => st.SeccionesTemplate).FirstAsync(t => t.Id == curso.TemplateId); foreach (SeccionTemplate st in temp.SeccionesTemplate) { SeccionCurso sc = new SeccionCurso { Titulo = st.Titulo, CursoId = idCurso, Indice = st.Indice }; _context.SeccionesCursos.Add(sc); } await _context.SaveChangesAsync(); } response.Data = _context.Cursos.Select(c => _mapper.Map <GetCursoDTO>(c)).ToList(); } catch (Exception e) { response.Success = false; response.Status = 500; response.Message = e.Message; } return(response); }
public async Task <ApiResponse <GetCursoDTO> > edit(int id, AddCursoDTO curso) { ApiResponse <GetCursoDTO> response = new ApiResponse <GetCursoDTO>(); try { Curso cursoUpdate = _context.Cursos.SingleOrDefault(c => c.Id == id); cursoUpdate.Nombre = curso.Nombre; cursoUpdate.CantCreditos = curso.CantCreditos; cursoUpdate.ConfirmaBedelia = curso.ConfirmaBedelia; await _context.SaveChangesAsync(); response.Data = _mapper.Map <GetCursoDTO>(cursoUpdate); } catch (Exception e) { response.Success = false; response.Status = 404; response.Message = e.Message; } return(response); }
public async Task <IActionResult> Put(int id, [FromBody] AddCursoDTO curso) { return(Ok(await _cursoManager.edit(id, curso))); }
public async Task <IActionResult> Post([FromBody] AddCursoDTO curso) { return(Ok(await _cursoManager.add(curso))); }