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);
        }
Example #3
0
 public async Task <IActionResult> Put(int id, [FromBody] AddCursoDTO curso)
 {
     return(Ok(await _cursoManager.edit(id, curso)));
 }
Example #4
0
 public async Task <IActionResult> Post([FromBody] AddCursoDTO curso)
 {
     return(Ok(await _cursoManager.add(curso)));
 }