public void CreateInvidualScores(Teamscan teamscan)
        {
            IEnumerable <TeamMember> activeTeamMemberList = _unitOfWork.TeamMemberRepository.GetAllActiveTeamMembersByTeam(teamscan.TeamId);
            var team       = _unitOfWork.TeamRepository.GetById(teamscan.TeamId);
            var teamleader = _unitOfWork.UserRepository.GetById(team.TeamleaderId);

            foreach (TeamMember teamMember in activeTeamMemberList)
            {
                var newIndividualScore = new IndividualScoreCreateDto
                {
                    Id           = Guid.NewGuid(),
                    TeamMemberId = teamMember.Id,
                    TeamscanId   = teamscan.Id
                };

                _unitOfWork.IndividualScoreRepository.Add(_mapper.Map <IndividualScore>(newIndividualScore));

                if (teamMember.Email != teamleader.Email)
                {
                    _mailer.InviteTeamscan(teamMember, team, teamleader, newIndividualScore.Id).Wait();
                }
            }
        }
示例#2
0
        public void GetAllInterpretationTranslationsByLevelAndDysfunction_ShouldReturnInterpretationTranslations_WhenValidIds()
        {
            var teamscan = new Teamscan
            {
                Id                  = teamscanId,
                Number              = teamscanNumber,
                Title               = $"Teamscan {teamscanNumber}",
                StartDate           = DateTime.Today,
                EndDate             = DateTime.Today,
                TeamId              = teamId,
                ScoreTrust          = 3m,
                ScoreAccountability = 2m,
                ScoreCommitment     = 4m,
                ScoreConflict       = 2.5m,
                ScoreResults        = 5m,
                StartedById         = startedById
            };

            var levels = new List <Level>()
            {
                lowLevel, mediumLevel, highLevel, defaultLevel
            };

            var trustInterpretation = new InterpretationTranslation
            {
                InterpretationId = trustInterpretationId,
                LanguageId       = languageId,
                Text             = text
            };

            var conflictInterpretation = new InterpretationTranslation
            {
                InterpretationId = conflictInterpretationId,
                LanguageId       = languageId,
                Text             = text
            };

            var commitmentInterpretation = new InterpretationTranslation
            {
                InterpretationId = commitmentInterpretationId,
                LanguageId       = languageId,
                Text             = text
            };

            var accountabilityInterpretation = new InterpretationTranslation
            {
                InterpretationId = accountabilityInterpretationId,
                LanguageId       = languageId,
                Text             = text
            };

            var resultsInterpretation = new InterpretationTranslation
            {
                InterpretationId = resultsInterpretationId,
                LanguageId       = languageId,
                Text             = text
            };

            _unitOfWork.Setup(x => x.TeamscanRepository.GetById(teamscanId)).Returns(teamscan);
            _unitOfWork.Setup(x => x.DysfunctionRepository.GetAll(It.IsAny <Expression <Func <Dysfunction, bool> > >(), null, It.IsAny <Expression <Func <Dysfunction, object> >[]>())).Returns(dysfunctions);
            _unitOfWork.Setup(x => x.LevelRepository.GetAll(It.IsAny <Expression <Func <Level, bool> > >(), null, It.IsAny <Expression <Func <Level, object> >[]>())).Returns(levels);

            _unitOfWork.Setup(x => x.InterpretationTranslationRepository.GetTranslatedInterpretationTranslationByLevelAndDysfunction(1, 1, languageId)).Returns(trustInterpretation);
            _unitOfWork.Setup(x => x.InterpretationTranslationRepository.GetTranslatedInterpretationTranslationByLevelAndDysfunction(1, 2, languageId)).Returns(conflictInterpretation);
            _unitOfWork.Setup(x => x.InterpretationTranslationRepository.GetTranslatedInterpretationTranslationByLevelAndDysfunction(3, 3, languageId)).Returns(commitmentInterpretation);
            _unitOfWork.Setup(x => x.InterpretationTranslationRepository.GetTranslatedInterpretationTranslationByLevelAndDysfunction(1, 4, languageId)).Returns(accountabilityInterpretation);
            _unitOfWork.Setup(x => x.InterpretationTranslationRepository.GetTranslatedInterpretationTranslationByLevelAndDysfunction(3, 5, languageId)).Returns(resultsInterpretation);

            var result = _service.GetAllInterpretationTranslationsByLevelAndDysfunction(languageId, teamscanId);

            Assert.Equal(5, result.ToList().Count);
        }