public IActionResult Attend(AttendanceDto dto)
        {
            var userId = _userManager.GetUserId(this.User);

            if (_unityOfWork.Attendances.GetAttendance(dto.GigId, userId) != null)
            {
                return(BadRequest());
            }

            _unityOfWork.Attendances.AttendGig(dto, userId);
            _unityOfWork.Complete();


            return(Ok());
        }
        public void Attend_AttemptingToReAttend_ShouldReturnBadRequest()
        {
            // Arrange
            var attendanceDto = new AttendanceDto {
                GigId = 1
            };
            var attendance = new Attendance();

            _mockAttandanceRepository.Setup(r => r.GetAttendance(_UserId, 1)).Returns(attendance);

            // Act
            var result = _controller.Attend(attendanceDto).Result;

            // Assert
            Assert.IsInstanceOf <BadRequestErrorMessageResult>(result);
        }
Example #3
0
        public void TestInitialize()
        {
            _mockRepository = new Mock <IAttendanceRepository>();

            var mockUoW = new Mock <IUnitOfWork>();

            mockUoW.SetupGet(u => u.Attendances).Returns(_mockRepository.Object);

            _controller = new AttendancesController(mockUoW.Object);
            _userId     = "1";
            _controller.MockCurrentUser(_userId, "user1");

            _dto = new AttendanceDto {
                GigId = 1
            };
        }
Example #4
0
        public IHttpActionResult Delete(AttendanceDto dto)
        {
            var userId     = User.Identity.GetUserId();
            var attendance = _unitOfWork.Attendances.GetAttendance(dto.GigId, userId);

            if (attendance == null)
            {
                return(NotFound());
            }

            _unitOfWork.Attendances.Remove(attendance);

            _unitOfWork.Complete();

            return(Ok(dto));
        }
        public void Attend_ExistAttend_BadRequest()
        {
            var attendanceDto = new AttendanceDto {
                GigId = 1
            };
            var attend = new List <Attendance> {
                new Attendance {
                    gigId = 1, AttendeeId = "1"
                }
            };

            _mockRepository.Setup(a => a.GetAttendance("1", 1)).Returns(attend);
            var result = _attendancesController.Attend(attendanceDto);

            result.Should().BeOfType <BadRequestErrorMessageResult>();
        }
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();
            var exists = _context.Attendances.Any(a => a.AttendeeId == userId && a.GigId == dto.GigId);

            if (exists)
            {
                return(BadRequest("The attendance already exists"));
            }
            var attendance = new Attendance {
                GigId = dto.GigId, AttendeeId = userId
            };

            _context.Attendances.Add(attendance);
            _context.SaveChanges();
            return(Ok());
        }
Example #7
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();
            var exists = _unitOfWork.Attendances.UserAttendsGig(userId, dto.GigId);

            if (exists)
            {
                return(BadRequest("The attendance already exists"));
            }
            else
            {
                _unitOfWork.Attendances.Attend(userId, dto.GigId);
                _unitOfWork.Complete();

                return(Ok());
            }
        }
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            if (_context.Attendances.Any(a => a.CongregrationId == dto.CongregrationId))
            {
                return(BadRequest("Already added to Calendar"));
            }
            var attendance = new Attendance()
            {
                AttendanceId    = Guid.NewGuid().ToString(),
                CongregrationId = dto.CongregrationId,
                AttendeeId      = User.Identity.GetUserId()
            };

            _context.Attendances.Add(attendance);
            _context.SaveChanges();

            return(Ok());
        }
Example #9
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (_context.Attendances.Any(a => a.AttendeeId == userId && a.GigId == dto.GigId))
            {
                return(BadRequest("You have already attended this gig.."));
            }



            var attendance = new Attendance(dto.GigId, userId);

            _context.Attendances.Add(attendance);

            _context.SaveChanges();
            return(Ok());
        }
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            if (unitOfWork.Attendances.GetAttendance(dto.GigId, User.Identity.GetUserId()) != null)
            {
                return(BadRequest("The attendance already exists"));
            }

            var attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = User.Identity.GetUserId()
            };

            unitOfWork.Attendances.Add(attendance);
            unitOfWork.Complete();

            return(Ok());
        }
Example #11
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userid = User.Identity.GetUserId();

            if (_context.Attendances.Any(x => x.AttendeeId == userid && x.GigId == dto.GigId))
            {
                return(BadRequest("This attendance already exists."));
            }
            var attendance = new Attendance()
            {
                GigId      = dto.GigId,
                AttendeeId = userid
            };

            _context.Attendances.Add(attendance);
            _context.SaveChanges();
            return(Ok());
        }
        public IHttpActionResult Attend(AttendanceDto attendanceDto)
        {
            var userId = User.Identity.GetUserId();

            if (_dbContext.Attendances.Any(a => a.AttendeeId == userId && a.CourseId == attendanceDto.CourseId))
            {
                return(BadRequest("The Attendance already exists"));
            }
            var attendance = new Attendance
            {
                CourseId   = attendanceDto.CourseId,
                AttendeeId = userId
            };

            _dbContext.Attendances.Add(attendance);
            _dbContext.SaveChanges();
            return(Ok());
        }
        public IActionResult CreateAttendance([FromBody] AttendanceDto Attendance)
        {
            if (Attendance == null)
            {
                return(BadRequest(ModelState));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!_AttendanceRepository.CreateAttendance(Attendance))
            {
                return(StatusCode(500, ModelState));
            }
            return(NoContent());
        }
Example #14
0
        public OutputBase SaveAttendance(SaveAttendanceInput input)
        {
            var date     = new TimeStamp(Clock.Now, true).Date;
            var employee = _employeeRepository.FirstOrDefault(emp => emp.Number == input.EmployeeNumber);

            if (employee == null)
            {
                return new OutputBase {
                           Message = "Invalid employee number", Success = false
                }
            }
            ;

            var      checkIn  = new TimeStamp(date, true).AddHours(input.HourIn).AddMinutes(input.MuniteIn).Date;
            DateTime?checkOut = null;

            if (input.HourOut != null && input.MuniteOut != null)
            {
                checkOut = new TimeStamp(date, true).AddHours(input.HourOut.Value).AddMinutes(input.MuniteOut.Value).Date;
            }

            if (_attendanceRepository.Query(
                    q => q.Any(at => at.Date == input.Date && at.Id != input.Id)))
            {
                return(new OutputBase
                {
                    Message = string.Format("An attendance entry have already been made for {0} for {1}",
                                            employee.Fullname, date.ToShortDateString())
                });
            }
            var attendance = new AttendanceDto
            {
                ClockIn    = checkIn,
                ClockOut   = checkOut,
                Date       = date,
                EmployeeId = employee.Id,
                Id         = input.Id ?? 0
            };

            _attendanceRepository.InsertOrUpdate(Mapper.Map <Attendance>(attendance));
            return(new OutputBase {
                Message = "Attendance saved", Success = true
            });
        }
        public IHttpActionResult Attend/*([FromBody] int courseId)*/ (AttendanceDto attdanceDto)
        {
            var userId = User.Identity.GetUserId();

            if (_dbContext.Attendances.Any(a => a.AttendeeId == userId && a.CourseId == attdanceDto.CourseId))
            {
                return(BadRequest("The Attendance Alrealy exists !"));
            }
            var attendance = new Attendance
            {
                CourseId   = /*courseId*/ attdanceDto.CourseId,
                AttendeeId = User.Identity.GetUserId()
            };

            _dbContext.Attendances.Add(attendance);
            _dbContext.SaveChanges();

            return(Ok());
        }
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (_unitOfWork.Attendances.AnyAttendance(dto.GigId, userId))
            {
                return(BadRequest("The attendance already exists"));
            }
            var attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = userId
            };

            _unitOfWork.Attendances.Add(attendance);
            _unitOfWork.Complete();

            return(Ok());
        }
      public IHttpActionResult Attend(AttendanceDto dto)
      {
          var userID = User.Identity.GetUserId();

          if (DB.Attendances.Any(a => a.AttendeeID == userID && a.GigID == dto.GigID))
          {
              return(BadRequest("The attendance is already exists"));
          }
          var Attendance = new Attendance
          {
              GigID      = dto.GigID,
              AttendeeID = userID
          };

          DB.Attendances.Add(Attendance);
          DB.SaveChanges();

          return(Ok());
      }
Example #18
0
        public IHttpActionResult Attend(AttendanceDto attendanceDto)
        {
            var attendeId = User.Identity.GetUserId();

            if (_context.Attendences.Any(a => a.GigId == attendanceDto.GigId && a.AttendeId == attendeId))
            {
                return(BadRequest("Attendance already exists"));
            }

            var attendance = new Attendance()
            {
                GigId     = attendanceDto.GigId,
                AttendeId = attendeId
            };

            _context.Attendences.Add(attendance);
            _context.SaveChanges();
            return(Ok());
        }
Example #19
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var UserID = User.Identity.GetUserId();

            if (_context.Attendances.Any(a => a.AttendeeID == UserID && a.GigID == dto.GigId))
            {
                return(BadRequest("The Attendance Already exist."));
            }

            Attendance attendance = new Attendance
            {
                GigID      = dto.GigId,
                AttendeeID = UserID
            };

            _context.Attendances.Add(attendance);
            _context.SaveChanges();
            return(Ok());
        }
        public IHttpActionResult Attend(AttendanceDto dto) //[FromBody] int gigId) // thanks to DTOs
        {
            if (_unitOfWork.Attendance
                .GetGigUserAttendance(User.Identity.GetUserId(), dto.GigId) != null)
            {
                return(BadRequest("There is already a registered attendace for this gig and current user"));
            }

            var attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = User.Identity.GetUserId()
            };

            _unitOfWork.Attendance.Add(attendance);
            _unitOfWork.Complete();

            return(Ok(dto.GigId));
        }
        public IHttpActionResult Follow(AttendanceDto attendanceDto)
        {
            var userId = User.Identity.GetUserId();

            if (_dbContext.Followings.Any(f => f.FollowerId == userId && f.FolloweeId == FollowingDto.FollweeId))
            {
                return(BadRequest("The Attendance already exists!"));
            }
            var attendance = new Attendance
            {
                FollowerId = userId,
                FolloweeId = FollowingDto.FollweeId
            };

            _dbContext.Attendances.Add(attendance);
            _dbContext.SaveChanges();

            return(Ok());
        }
        public void Attend_AttendanceWithGivenIdExists_ShouldReturnBadRequest()
        {
            // Setup - add an attendance to repository
            var attendance = new Attendance();

            _mockRepository.Setup(r => r.GetAttendance(1, _userId)).Returns(attendance);

            // Setup - create attendance dto
            var attendanceDto = new AttendanceDto()
            {
                CoopId = 1
            };

            // Action - attempt to add an attendance with same id
            var result = _controller.Attend(attendanceDto);

            // Assert - attendance already exists
            result.Should().BeOfType <BadRequestErrorMessageResult>();
        }
Example #23
0
        //ASP.NET Web API does not look for scalar parameter (int) in request body, it expects it to be in the URL
        public IHttpActionResult Attend(AttendanceDto dto)  //We wont get userId for security reasons
        {
            var userId = User.Identity.GetUserId();

            if (_context.Attendances.Any(a => a.AttendeeId == userId && a.GigId == dto.GigId))
            {
                return(BadRequest("The attendance already exists"));
            }
            //So that the primary key is not duplicated
            Attendance attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = User.Identity.GetUserId()
            };

            _context.Attendances.Add(attendance);
            _context.SaveChanges();
            return(Ok());
        }
Example #24
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (_unitOfWork.Attendances.GetAttendance(dto.GigId, userId) != null)
            {
                return(BadRequest("User is already attending this gig."));
            }

            var attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = userId
            };

            _unitOfWork.Attendances.Add(attendance);
            _unitOfWork.Complete();

            return(Ok());
        }
Example #25
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (_unitOfWork.Attendances.GetAttendance(dto.GigId, userId) != null)
            {
                return(Content(HttpStatusCode.BadRequest, ErrorMsg.AttendanceAlreadyExsits));
            }

            var attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = userId
            };

            _unitOfWork.Attendances.Add(attendance);
            _unitOfWork.Complete();

            return(Ok());
        }
        public IHttpActionResult Attendance(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (_context.Attendances.Any(at => at.AttendeeId == userId && at.GigId == dto.GigId))
            {
                return(BadRequest("Already Exists"));
            }

            var attendance = new Attendance
            {
                GigId      = dto.GigId,
                AttendeeId = userId
            };

            _context.Attendances.Add(attendance);
            _context.SaveChanges();

            return(Ok());
        }
Example #27
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (db.Attendences.Any(a => a.AttendeeId == userId && a.BitId == dto.BitId))
            {
                return(BadRequest("The attendance already exists"));
            }

            var attendance = new Attendance
            {
                BitId      = dto.BitId,
                AttendeeId = userId
            };

            db.Attendences.Add(attendance);
            db.SaveChanges();

            return(Ok());
        }
        public IHttpActionResult Play(AttendanceDto dto)
        {
            var userId = User.Identity.GetUserId();

            if (_context.Players.Any(a => a.PlayerId == userId && a.SessionId == dto.SessionId))
            {
                return(BadRequest("The attendance already exists."));
            }

            var attendance = new Attendance
            {
                SessionId = dto.SessionId,
                PlayerId  = userId
            };

            _context.Players.Add(attendance);
            _context.SaveChanges();

            return(Ok());
        }
Example #29
0
        public async Task UpdateStudentAttendanceAsync(AttendanceDto attendanceDto)
        {
            if (attendanceDto == null)
            {
                throw new ArgumentNullException($"Argument {nameof(attendanceDto)} can't be null!");
            }

            var attendance = await context.Set <Attendance>().FirstAsync(a => a.WorkshopId == attendanceDto.WorkshopId &&
                                                                         a.StudentId == attendanceDto.StudentId);

            if (attendance == null)
            {
                throw new ArgumentException($"Attendance with student id: {attendanceDto.StudentId} " +
                                            $"and workshop id: {attendanceDto.WorkshopId} doesn't exists!");
            }

            attendance.IsAttended = attendanceDto.IsAttended;

            await context.SaveChangesAsync();
        }
Example #30
0
        public IHttpActionResult Attend(AttendanceDto dto)
        {
            var currentUser = User.Identity.GetUserId();

            if (_context.Attendance.Any(a => a.AttendeeId == currentUser && a.EventId == dto.EventId))
            {
                return(BadRequest("The attendance already exists."));
            }

            var attendance = new Attendance
            {
                EventId    = dto.EventId,
                AttendeeId = currentUser
            };

            _context.Attendance.Add(attendance);
            _context.SaveChanges();

            return(Ok());
        }