Ejemplo n.º 1
0
        public async Task <bool> FeedbackTeacher(InternshipFeedbackTeacherDto model)
        {
            var internship = await Get(model.InternshipId);

            var reviewerInternship = internship.Reviewers.FirstOrDefault(x => x.ReviewerId == model.TeacherId);

            internship.Reviewers.Remove(reviewerInternship);
            reviewerInternship.Feedback       = model.Feedback;
            reviewerInternship.StateOfTeacher = model.ReviewedState;

            internship.Reviewers.Add(reviewerInternship);

            if (IsReviewedByAllTeachers(internship.Reviewers))
            {
                internship.InternshipState = InternshipState.InReviewByCoordinator;
                internship.DateOfState     = DateTime.UtcNow;
            }

            _context.Update(internship);
            await Save();

            return(true);
        }
        public async Task <ActionResult <bool> > FeedbackTeacher(InternshipFeedbackTeacherDto model)
        {
            var result = await _service.FeedbackTeacher(model);

            return(Ok(result));
        }
Ejemplo n.º 3
0
        public void Setup()
        {
            _context = ContextHelper.GetDatabaseContext();

            sut = new InternshipService(_context);

            dto = new InternshipCreationDto
            {
                RequiredFieldsOfStudy  = new List <string>(),
                AssignedStudents       = new List <string>(),
                Environment            = new List <string>(),
                TechnicalDescription   = "TechnicalDescription",
                ExtraRequirements      = "ExtraRequirements",
                ResearchTheme          = "ResearchTheme",
                Activities             = new List <string>(),
                RequiredStudentsAmount = 2,
                AdditionalRemarks      = "AdditionalRemarks",
                PeriodOfInternship     = new List <string>(),
                Description            = "Description"
            };

            for (int i = 0; i < 10; i++)
            {
                dto.RequiredFieldsOfStudy.Add("ReqFOS" + i);
                dto.AssignedStudents.Add("AssignedStudent" + i);
                dto.Environment.Add("Environment" + i);
                dto.Activities.Add("Activity" + i);
                dto.PeriodOfInternship.Add("Period" + i);
            }

            internship = new Internship
            {
                CreatorId              = Guid.NewGuid(),
                RequiredFieldsOfStudy  = dto.RequiredFieldsOfStudy,
                AssignedStudents       = dto.AssignedStudents,
                Environment            = dto.Environment,
                TechnicalDescription   = "TechnicalDescription",
                ExtraRequirements      = "ExtraRequirements",
                ResearchTheme          = "ResearchTheme",
                Activities             = dto.Activities,
                RequiredStudentsAmount = 2,
                AdditionalRemarks      = "AdditionalRemarks",
                Id = Guid.NewGuid(),
                InternshipState = 0,
                Periods         = dto.PeriodOfInternship,
                Description     = "Description",
                DateOfState     = DateTime.UtcNow
            };

            userTeacher = new User
            {
                Id           = Guid.NewGuid(),
                City         = "City",
                Email        = "*****@*****.**",
                FirstName    = "John",
                HouseNumber  = 18,
                LastName     = "Doe",
                PasswordHash = Guid.NewGuid().ToString(),
                PhoneNumber  = "+3259874896",
                ZipCode      = 7890,
                UserName     = "******",
                StreetName   = "Easy Street"
            };

            userTeacher2 = new User
            {
                Id           = Guid.NewGuid(),
                City         = "City",
                Email        = "*****@*****.**",
                FirstName    = "John",
                HouseNumber  = 18,
                LastName     = "Doe",
                PasswordHash = Guid.NewGuid().ToString(),
                PhoneNumber  = "+3259874896",
                ZipCode      = 7890,
                UserName     = "******",
                StreetName   = "Easy Street"
            };

            company = new Company
            {
                Id = internship.CreatorId
            };


            ReviewerInternships reviewerInternships = new ReviewerInternships
            {
                ReviewedInternship = internship,
                Reviewer           = userTeacher
            };

            reviewerList = new List <ReviewerInternships> {
                reviewerInternships
            };

            internship.Reviewers = reviewerList;

            IFCDto = new InternshipFeedbackCoordinatorDto
            {
                Feedback      = "coordinator",
                InternshipId  = internship.Id,
                ReviewedState = InternshipState.ApprovedByAll
            };

            IFTDto = new InternshipFeedbackTeacherDto
            {
                Feedback     = "teacher",
                InternshipId = internship.Id,
                TeacherId    = userTeacher.Id
            };

            updateDto = new InternshipUpdate
            {
                ID            = internship.Id,
                ResearchTheme = "ResearchTheme",
                Description   = "DescriptionUpdate",
                Activities    = new List <string>()
                {
                    "test"
                },
                AdditionalRemarks = "test",
                AssignedStudents  = new List <string>()
                {
                    "Jan"
                },
                Environment = new List <string>()
                {
                    "test"
                },
                ExtraRequirements  = "test",
                PeriodOfInternship = new List <string>()
                {
                    "test"
                },
                RequiredFieldsOfStudy = new List <string>()
                {
                    "AON"
                },
                RequiredStudentsAmount = 1,
                TechnicalDescription   = "test",
                Title = "test"
            };

            _context.Add(reviewerInternships);
            _context.Add(userTeacher);
            _context.Add(internship);
            _context.SaveChanges();
        }