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"));
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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);
        }