Пример #1
0
        public void Update(ILearningRoomWithSignIn learningRoom)
        {
            var learningRoomsWithSignIn = _learningRoomWithSignInGateway.Load(learningRoom.Reference);
            var signInsAdded            = learningRoom.SignIns
                                          .Where(signIn => learningRoomsWithSignIn.SignIns.All(s => !s.Reference.Equals(signIn.Reference)))
                                          .ToList();

            signInsAdded.ForEach(s => _signInPersistor.Add(s));
            _persistence.Complete();
        }
        private LearningRoomStatus MapStatus(ILearningRoomWithSignIn room)
        {
            var currentDateTime = DateTimeUtil.GetNow();

            if (currentDateTime < room.StartDate)
            {
                return(LearningRoomStatus.NotStart);
            }

            if (room.StartDate < currentDateTime && currentDateTime < room.EndDate)
            {
                return(LearningRoomStatus.InProgress);
            }

            return(LearningRoomStatus.Complete);
        }
 private bool MapIsSignIn(ILearningRoomWithSignIn room, UserReference user)
 {
     return(room.SignIns.Any(s => s.Participant.Equals(user)));
 }