public async Task <Internship> Insert(InternshipCreationDto entity, Company user) { var newInternship = new Internship { CreatorId = user.Id, Title = entity.Title, RequiredFieldsOfStudy = entity.RequiredFieldsOfStudy, Description = entity.Description, Environment = entity.Environment, TechnicalDescription = entity.TechnicalDescription, ExtraRequirements = entity.ExtraRequirements, ResearchTheme = entity.ResearchTheme, Activities = entity.Activities, RequiredStudentsAmount = entity.RequiredStudentsAmount, AssignedStudents = entity.AssignedStudents, AdditionalRemarks = entity.AdditionalRemarks, Periods = entity.PeriodOfInternship, InternshipState = InternshipState.New, DateOfState = DateTime.UtcNow, Reviewers = new List <ReviewerInternships>() }; await _context.AddAsync(newInternship); await Save(); return(newInternship); }
public async Task <ActionResult <Internship> > Create([FromBody] InternshipCreationDto model) { var user = await _userManager.GetUserAsync(User); if (user == null) { return(Unauthorized()); } var result = await _service.Insert(model, await _userService.GetCompany(user)); return(Ok(result)); }
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(); }