/// <summary> /// Crea un Proyecto en la base de datos /// </summary> /// <param name="Proyecto"></param> /// <returns></returns> public async Task <ProyectoDto> AdicionarAsync(ProyectoDto Proyecto) { HttpResponseMessage response; var elUri = $"{_MyStringUri}/Adicionar"; Proyecto.EstadoId = EstadoEnum.Activo; string json = JsonSerializer.Serialize(Proyecto); try { response = await _consumirAPIService.POSTRequestAsync(elUri, json); } catch (Exception ex) { _logger.LogError(ex.Message); return(null); } return(JsonSerializer.Deserialize <ProyectoDto>(response.Content.ReadAsStringAsync().Result, new JsonSerializerOptions() { PropertyNameCaseInsensitive = true })); ; }
public IActionResult DeleteProyecto([FromBody] ProyectoDto ProyectoDelete) { UserEntity u = _usersInfoRepository.GetUser(ProyectoDelete.UserNombre, false); ProyectoDelete.UserEntity = Mapper.Map <UsersDto>(u); //Si los datos son validos los guardara if (ProyectoDelete == null || !_usersInfoRepository.ProyectoExiste(ProyectoDelete.Id)) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //Comprueba que se guardo bien y lo envia if (_usersInfoRepository.DeleteProj(Mapper.Map <ProyectoEntity>(ProyectoDelete))) { return(Ok("El proyecto fue eliminado correctamente.")); } else { return(BadRequest()); } }
public async Task <IActionResult> GetProyecto(int id) { Proyecto proyecto = await _proyectoService.GetProyecto(id).ConfigureAwait(false); ProyectoDto proyectoDto = _mapper.Map <ProyectoDto>(proyecto); ApiResponse <ProyectoDto> response = new(proyectoDto); response.Succeeded = true; return(Ok(response)); }
public async Task <IActionResult> Put(int id, ProyectoDto proyectotDto) { Proyecto proyecto = _mapper.Map <Proyecto>(proyectotDto); proyecto.Id = id; bool result = await _proyectoService.UpdateProyecto(proyecto).ConfigureAwait(false); ApiResponse <bool> response = new(result); response.Succeeded = true; return(Ok(response)); }
public async Task <IActionResult> Post(ProyectoDto proyectoDto) { Proyecto proyecto = _mapper.Map <Proyecto>(proyectoDto); proyecto.IdEstadoProyecto = _estadoProyectoService.GetByNombre("En Proceso").Result.Id; await _proyectoService.InsertProyecto(proyecto).ConfigureAwait(false); proyectoDto = _mapper.Map <ProyectoDto>(proyecto); ApiResponse <ProyectoDto> response = new(proyectoDto); response.Succeeded = true; return(Ok(response)); }
public HttpResponseMessage Update(HttpRequestMessage request, [FromBody] ProyectoDto dto) { HttpResponseMessage response = null; if (!ModelState.IsValid) { response = request.CreateResponse(HttpStatusCode.BadRequest); } else { var dtoUpdated = proyectoService.Update(dto); response = request.CreateResponse(HttpStatusCode.OK, dtoUpdated); } return(response); }
//Recoge todos los proyectos de un usuario public IEnumerable <ProyectoDto> GetProyectosDeUsuario(string userNombre) { List <ProyectoDto> proyectos = new List <ProyectoDto>(); UserEntity usuario = _context.Users.Where(u => u.Nombre == userNombre).FirstOrDefault(); if (usuario.RoleId != (int)Roles.User) { var proyectosE = _context.Proyectos.Include(r => r.LineaEntity).Where(p => p.TestProject == false || p.UserNombre == userNombre).OrderBy(p => p.Nombre).ToList(); foreach (ProyectoEntity pe in proyectosE) { ProyectoDto p = new ProyectoDto(); p.Id = pe.Id; //p.Nombre = pe.TestProject ? pe.Nombre : String.Concat(pe.Nombre, " - " , pe.LineaEntity.LineaNombre); p.Nombre = pe.Nombre; p.Fecha = pe.Fecha; p.Proyecto = pe.Proyecto; p.numFinishedEvals = _context.Evaluaciones.Where(e => e.ProyectoId == pe.Id && e.Estado).Count(); p.numPendingEvals = _context.Evaluaciones.Where(e => e.ProyectoId == pe.Id && !e.Estado).Count(); p.TestProject = pe.TestProject; proyectos.Add(p); } } else { var ProyectosUsuario = _context.UserProyectos.Where(up => up.UserNombre == userNombre).ToList(); foreach (UserProyectoEntity userProyecto in ProyectosUsuario) { var pe = _context.Proyectos.Where(pr => pr.Id == userProyecto.ProyectoId).FirstOrDefault(); ProyectoDto p = new ProyectoDto(); p.Id = pe.Id; p.Nombre = pe.Nombre; p.Proyecto = pe.Proyecto; p.Fecha = pe.Fecha; p.numFinishedEvals = _context.Evaluaciones.Where(e => e.ProyectoId == pe.Id && e.Estado).Count(); p.numPendingEvals = _context.Evaluaciones.Where(e => e.ProyectoId == pe.Id && !e.Estado).Count(); p.TestProject = pe.TestProject; proyectos.Add(p); } } return(proyectos); }
/// <summary> /// Eliminar un proyecto /// </summary> /// <param name="Proyecto"></param> /// <returns></returns> public async Task <bool> EliminarAsync(ProyectoDto Proyecto) { HttpResponseMessage response; var elUri = $"{_MyStringUri}/Eliminar"; string json = JsonSerializer.Serialize(Proyecto); try { response = await _consumirAPIService.DELETERequestAsync(elUri, json); } catch (Exception ex) { _logger.LogError(ex.Message); return(false); } return(true);; }
public ProyectoDto GetProyectos(int id) { ProyectoDto result = null; try { result = _utilServices.Proyectos.Select(x => new ProyectoDto { Id = x.Pro_I_Codigo, Descripcion = x.Pro_V_Descripcion, Estado = x.Estado, FechaFin = x.Fecha_Fin, FechaInicio = x.Fecha_Inicio }).Where(x => x.Id == id).Single(); } catch (Exception ex) { _utilServices.Errores.Add(ex.SaveModel()); _utilServices.SaveChanges(); throw ex; } return(result); }
private void AgregarButton_Click(object sender, EventArgs e) { ProyectoDto proyectoDto = new ProyectoDto(); if (NombreTextBox.Text == "") { MessageBox.Show("Por favor complete el nombre"); return; } proyectoDto.Nombre = NombreTextBox.Text; if (ClienteID == 0) { MessageBox.Show("Por favor elija el cliente"); return; } proyectoDto.ClienteID = ClienteID; if (ProyectoEstadoID == 0) { MessageBox.Show("Por favor elija el estado del proyecto"); return; } proyectoDto.ProyectoEstadoID = ProyectoEstadoID; if (ID != 0) { var proyectoAEditar = container.GetInstance <IProyectoService>().GetByIdAsNoTracking(ID); proyectoAEditar.Nombre = NombreTextBox.Text; proyectoAEditar.ClienteID = ClienteID; proyectoAEditar.ProyectoEstadoID = ProyectoEstadoID; try { var respuesta = container.GetInstance <IProyectoService>().Update(proyectoAEditar); if (respuesta != null) { MessageBox.Show("Proyecto editado"); } }catch (Exception ex) { MessageBox.Show("No se ha podido editar el proyecto. " + ex.Message); } ID = 0; ElegirProyectocomboBox.ResetText(); ElegirProyectocomboBox.Items.Clear(); CargarlistaProyectos(); container.GetInstance <IProyectoService>().Limpiar(); } else { try { var respuesta = container.GetInstance <IProyectoService>().Update(proyectoDto); if (respuesta != null) { MessageBox.Show("Proyecto creado con exito"); } } catch (Exception ex) { MessageBox.Show("No se pudo crear proyecto. " + ex.Message); } container.GetInstance <IProyectoService>().Limpiar(); } NombreTextBox.Text = ""; ElejirClienteComboBox.ResetText(); ClienteID = 0; CambiarEstadocomboBox.ResetText(); ProyectoEstadoID = 0; }