public Attendance GetAttendance(AttendanceForCreationDto attendanceForCreationDto) { var attendance = _context.Attendance.FirstOrDefault(a => a.Monday == attendanceForCreationDto.Monday && a.Tuesday == attendanceForCreationDto.Tuesday && a.Wednesday == attendanceForCreationDto.Wednesday && a.Thursday == attendanceForCreationDto.Thursday && a.Friday == attendanceForCreationDto.Friday && a.Saturday == attendanceForCreationDto.Saturday); if (attendance == null) { var daysAttending = Convert.ToInt32(attendanceForCreationDto.Monday) + Convert.ToInt32(attendanceForCreationDto.Tuesday) + Convert.ToInt32(attendanceForCreationDto.Wednesday) + Convert.ToInt32(attendanceForCreationDto.Thursday) + Convert.ToInt32(attendanceForCreationDto.Friday) + Convert.ToInt32(attendanceForCreationDto.Saturday); attendance = new Attendance { Monday = attendanceForCreationDto.Monday, Tuesday = attendanceForCreationDto.Tuesday, Wednesday = attendanceForCreationDto.Wednesday, Thursday = attendanceForCreationDto.Thursday, Friday = attendanceForCreationDto.Friday, Saturday = attendanceForCreationDto.Saturday, DaysAttending = daysAttending }; _context.Attendance.Add(attendance); } return(attendance); }
public IHttpActionResult Attend([FromBody] AttendanceForCreationDto attendanceForCreation) { if (attendanceForCreation == null) { return(NotFound()); } if (!ModelState.IsValid) { return(BadRequest()); } DateTime attendanceDate = DateTime.Parse(attendanceForCreation.DateTime); string attDate = (attendanceDate.DayOfWeek).ToString(); if (!attDate.Equals("Thursday")) { if (!attDate.Equals("Saturday")) { return(BadRequest("Wrong date Choice. Attendance should be done for Thursday and Saturday only!")); } } //look up for the current date with phone number and see whether the item has been already saved. var checkForDuplicate = _context.Attendances.Any(a => a.PhoneNumber == attendanceForCreation.PhoneNumber); if (checkForDuplicate) { return(BadRequest("The attendance for " + attendanceForCreation.DateTime + " Already marked.")); } var attendance = new Attendance { FirstName = attendanceForCreation.FirstName, OtherName = attendanceForCreation.OtherName, DateTime = DateTime.Parse(attendanceForCreation.DateTime), Remarks = attendanceForCreation.Remarks, Attended = attendanceForCreation.Attended, LeaderId = 1, VoiceId = attendanceForCreation.VoiceId, PhoneNumber = attendanceForCreation.PhoneNumber }; _context.Attendances.Add(attendance); _context.SaveChanges(); return(Ok()); }