public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { Guid _proyectoId = Guid.NewGuid(); var proyecto = new Proyecto { ProyectoId = _proyectoId, NombreProyecto = request.NombreProyecto, ClienteId = request.ClienteId, FechaCreacion = DateTime.UtcNow }; _context.Proyecto.Add(proyecto); //Recorrer arreglo de etapas, y aser un save por cada etapa. if (request.ListaEtapas != null) { foreach (var id in request.ListaEtapas) { var proyectoEtapa = new ProyectoEtapa { ProyectoId = _proyectoId, EtapaId = id }; _context.ProyectoEtapa.Add(proyectoEtapa); } } var valor = await _context.SaveChangesAsync(); if (valor > 0) { return(Unit.Value); } throw new Exception("No se pudo insertar el proyecto"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var documento = await _context.Documento.Where(x => x.ObjetoReferencia == request.ObjetoReferencia).FirstOrDefaultAsync(); if (documento == null) { var doc = new Documento { Contenido = Convert.FromBase64String(request.Data), Nombre = request.Nombre, Extension = request.Extension, DocumentoId = Guid.NewGuid(), FechaCreacion = DateTime.UtcNow, ObjetoReferencia = request.ObjetoReferencia ?? Guid.Empty }; _context.Documento.Add(doc); } else { documento.Contenido = Convert.FromBase64String(request.Data); documento.Nombre = request.Nombre; documento.Extension = request.Extension; documento.FechaCreacion = DateTime.UtcNow; } var resultado = await _context.SaveChangesAsync(); if (resultado > 0) { return(Unit.Value); } throw new Exception("No se pudo guardar el archivo"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var etapasDB = _context.ProyectoEtapa.Where(x => x.ProyectoId == request.Id); foreach (var etapa in etapasDB) { _context.ProyectoEtapa.Remove(etapa); } var proyecto = await _context.Proyecto.FindAsync(request.Id); if (proyecto == null) { //throw new Exception("No se puede eliminar el curso"); throw new ManejadorExcepcion(HttpStatusCode.NotFound, new{ mensaje = "No se encontró el proyecto" }); } _context.Remove(proyecto); var resultado = await _context.SaveChangesAsync(); if (resultado > 0) { return(Unit.Value); } throw new Exception("No se pudieron guardar los cambios"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var proyecto = await _context.Proyecto.FindAsync(request.ProyectoId); if (proyecto == null) { //throw new Exception("No se puede eliminar el curso"); throw new ManejadorExcepcion(HttpStatusCode.NotFound, new{ mensaje = "No se encontró el proyecto" }); } proyecto.NombreProyecto = request.NombreProyecto ?? proyecto.NombreProyecto; proyecto.ClienteId = request.ClienteId ?? proyecto.ClienteId; proyecto.FechaCreacion = DateTime.UtcNow; if (request.ListaEtapa != null) { if (request.ListaEtapa.Count > 0) { //Eliminar las etapas actuales var etapasBD = _context.ProyectoEtapa.Where(x => x.ProyectoId == request.ProyectoId).ToList(); foreach (var etapaEliminar in etapasBD) { _context.ProyectoEtapa.Remove(etapaEliminar); } //Fin Eliminar //Procedimiento para agregar nuevas etapas foreach (var id in request.ListaEtapa) { var nuevaEtapa = new ProyectoEtapa { ProyectoId = request.ProyectoId, EtapaId = id }; _context.ProyectoEtapa.Add(nuevaEtapa); } //Fin procedimiento } } //if(request.ClienteId < 0){ // proyecto.ClienteId = proyecto.ClienteId; //} var resultado = await _context.SaveChangesAsync(); if (resultado > 0) { return(Unit.Value); } throw new Exception("No se guardaron los cambios en el proyecto"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var timeReport = await _context.TimeReport.FindAsync(request.Id); if (timeReport == null) { throw new ManejadorExcepcion(HttpStatusCode.NotFound, new { mensaje = "No se encontró el reporte" }); } _context.Remove(timeReport); var resultado = await _context.SaveChangesAsync(); if (resultado > 0) { return(Unit.Value); } throw new Exception("No se pudo eliminar el reporte"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var timeReport = new TimeReport { TimeReportId = Guid.NewGuid(), FechaInicio = request.FechaInicio, Titulo = request.Titulo, Descripcion = request.Descripcion, ProyectoId = request.ProyectoId, FechaCreacion = DateTime.UtcNow }; _context.TimeReport.Add(timeReport); var resultado = await _context.SaveChangesAsync(); if (resultado > 0) { return(Unit.Value); } throw new Exception("No se pudo insertar el reporte"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var timeReport = await _context.TimeReport.FindAsync(request.TimeReportId); if (timeReport == null) { throw new ManejadorExcepcion(HttpStatusCode.NotFound, new{ mensaje = "No se encontró el reporte" }); } timeReport.FechaInicio = request.FechaInicio ?? timeReport.FechaInicio; timeReport.Titulo = request.Titulo ?? timeReport.Titulo; timeReport.Descripcion = request.Descripcion ?? timeReport.Descripcion; timeReport.ProyectoId = request.ProyectoId ?? timeReport.ProyectoId; timeReport.FechaCreacion = DateTime.UtcNow; var resultado = await _context.SaveChangesAsync(); if (resultado > 0) { return(Unit.Value); } throw new Exception("No se guardaron los cambios en el reporte"); }