public ActividadResponse Handle(ActividadRequest request) { var tipoActividad = _tipoActividadRepository.Find(request.TipoActividadId); if (tipoActividad == null) { return(new ActividadResponse("No existe ese tipo de actividad", null, "Error")); } var asignador = _usuarioRepository.FindJefeDpto(request.IdentificacionAsignador); if (asignador == null) { return(new ActividadResponse("No se encontró el Jefe de departamento", null, "Error")); } var responsable = _usuarioRepository.FindDocente(request.IdentificacionResponsable); if (responsable == null) { return(new ActividadResponse("No se encontró el docente", null, "Error")); } var actividad = new Actividad(tipoActividad, asignador); var response = actividad.Asignar(responsable, request.HorasAsignadas); _actividadRepository.Add(actividad); _unitOfWork.Commit(); _emailServer.Send("Nueva actividad asignada", $"Se efectúo la asignacion de la actividad", responsable.Email); return(new ActividadResponse(response, actividad, "Ok")); }
public static Actividad CreateActividad() { var docente = DocenteMother.CreateDocente("12321313"); var jefeDpto = JefeDptoMother.CreateJefeDpto("123313"); var tipoActividad = new TipoActividad("Tutorias"); var actividad = new Actividad(tipoActividad, jefeDpto); actividad.Asignar(docente, 10); return(actividad); }
public void LasHorasAsignadasNoPuedenSerMayorAVeinte() { var dpto = new Departamento("AB21", "Departamento de Ingenieria de Sistemas"); var docente = new Docente("103423424", "Juan", "Perez", "*****@*****.**", "Masculino", dpto); var asignador = new JefeDpto("1223425", "Lucas", "Ortiz", "*****@*****.**", "Masculino", dpto); var tipoActividad = new TipoActividad("Asesoria"); var actividad = new Actividad(tipoActividad, asignador); var resultado = actividad.Asignar(docente, 25); var esperado = "Las horas asignadas no pueden ser mayor a veinte"; Assert.AreEqual(esperado, resultado); }