public async Task <IActionResult> CheckIn(CheckInVM model) { var isCheckInActive = await this.schoolClassService.IsCheckInActive(model.ClassId); if (!isCheckInActive) { TempData[TempDataErrorMessageKey] = "You did not check in succesfully!\n Check in was locked!"; return(RedirectToAction(nameof(Details), new { id = model.ClassId })); } var schoolClass = await this.schoolClassService.GetDetailsSchoolClassVM(model.ClassId); if (schoolClass.Code != model.EnteredCode) { var isClassActive = await this.schoolClassService.GetCurrentBlock(model.ClassId) != 0; model.IsClassActive = isClassActive; ModelState.AddModelError("EnteredCode", "Wrong Code"); return(View(model)); } int currentBlock = await this.schoolClassService.GetCurrentBlock(model.ClassId); await this.attendanceService.CheckIn(model.UserId, model.ClassId, currentBlock); TempData[TempDataSuccessMessageKey] = $"Check In for block {model.CurrentBlock} was Succesfull!"; return(RedirectToAction(nameof(Details), new { id = model.ClassId })); }
public CheckInVM CheckTicketStation1(CheckInVM checkInVM) { var currentEventId = Convert.ToInt32(ConfigurationManager.AppSettings["CurrentEventID"]); using (var db = new TagsDataModel()) { var model = (from ticket in db.TICKETED_CHECKINS where ticket.TICKET_NUMBER.Equals(checkInVM.TicketNo.ToString()) && ticket.EVENT_ID == currentEventId select ticket).FirstOrDefault(); //checking in now. Ticket exists if (model != null && model.STATION_1 == false) { model.STATION_1 = true; model.STATION_1_CHECKIN_TIME = DateTime.Now; //TODO find logged in userID var user = (from loggedInUser in db.TAGS_LOGIN where loggedInUser.LAST_NAME.ToLower().Equals(User.Identity.Name) select loggedInUser).FirstOrDefault(); model.STATION_1_USER_ID = user.USER_ID; checkInVM.IsCheckedIn = true; checkInVM.TicketNotFound = false; checkInVM.AlreadyCheckedIn = false; } //ticket exists.. Already checked in else if (model != null && model.STATION_1 == true) { checkInVM.IsCheckedIn = false; checkInVM.TicketNotFound = false; checkInVM.AlreadyCheckedIn = true; } //ticket doesn't exist else if (model == null) { checkInVM.IsCheckedIn = false; checkInVM.TicketNotFound = true; checkInVM.AlreadyCheckedIn = false; } db.SaveChanges(); return(checkInVM); } }
public async Task <IActionResult> CheckIn(string userId, int classId) { var schoolClass = await this.schoolClassService.GetDetailsSchoolClassVM(classId); var isClassActive = await this.schoolClassService.GetCurrentBlock(classId) != 0; var model = new CheckInVM { SubjectName = schoolClass.Subject.Name, EnteredCode = schoolClass.EnteredCode, CodeGeneratedTime = schoolClass.CodeGeneratedTime, Date = schoolClass.Date, Time = schoolClass.Time, TimeLeft = schoolClass.TimeLeft, ClassId = classId, IsClassActive = isClassActive, CurrentBlock = await this.schoolClassService.GetCurrentBlock(classId) }; return(View(model)); }
public CheckInVM RevertCheckIn(CheckInVM checkInVM) { var currentEventId = Convert.ToInt32(ConfigurationManager.AppSettings["CurrentEventID"]); using (var db = new TagsDataModel()) { var model = (from ticket in db.TICKETED_CHECKINS where ticket.TICKET_NUMBER.Equals(checkInVM.TicketNo.ToString()) && ticket.EVENT_ID == currentEventId select ticket).FirstOrDefault(); //checking in now. Ticket exists if (model != null && model.STATION_1 == false) { checkInVM.IsCheckedIn = true; checkInVM.TicketNotFound = false; checkInVM.AlreadyCheckedIn = false; } //ticket exists.. Already checked in,reverting now else if (model != null && model.STATION_1 == true) { model.STATION_1 = false; model.STATION_1_CHECKIN_TIME = null; checkInVM.IsCheckedIn = false; checkInVM.TicketNotFound = false; checkInVM.AlreadyCheckedIn = true; } //ticket doesn't exist else if (model == null) { checkInVM.IsCheckedIn = false; checkInVM.TicketNotFound = true; checkInVM.AlreadyCheckedIn = false; } db.SaveChanges(); return(checkInVM); } }
public ActionResult CreateRegularCheckIn(CheckInVM checkInVM, Vehicle vehicle, Visitor visitor) { if (checkInVM.VisitorTypeID == 1) { VisitMain visit = new VisitMain() { ConeNumber = checkInVM.ConeNumber, ConeColorID = checkInVM.ConeColorID, VisitorTypeID = checkInVM.VisitorTypeID, CheckInMainGateID = checkInVM.GateID, CheckInMainTime = DateTime.Now, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, CreatedBy = 1, ModifiedBy = 1, CheckInMainUserID = 1, // CheckInMainUserID is user's id who is doing checkin SiteID = 1 // SiteID is SiteID from where visitor is doing checkin }; db.VisitMain.Add(visit); db.SaveChanges(); } if (checkInVM.VisitorTypeID == 2) { VisitMain visit = new VisitMain() { CheckInMainTime = DateTime.Now, Location = checkInVM.Location, PassNumber = checkInVM.PassNo, Organization = checkInVM.Organization, CheckInMainGateID = checkInVM.GateID, VisitorTypeID = checkInVM.VisitorTypeID, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, CreatedBy = 1, ModifiedBy = 1, CheckInMainUserID = 1, // CheckInMainUserID is user's id who is doing checkin SiteID = 1 // SiteID is SiteID from where visitor is doing checkin }; db.VisitMain.Add(visit); db.SaveChanges(); } if (checkInVM.VisitorTypeID == 3) { VisitMain visit = new VisitMain() { CheckInMainTime = DateTime.Now, UnitNo = checkInVM.UnitNo, SectionSector = checkInVM.SectionSector, EmergencyVehicleType = checkInVM.EmergencyVehicleType, CheckInMainGateID = checkInVM.GateID, VisitorTypeID = checkInVM.VisitorTypeID, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, CreatedBy = 1, ModifiedBy = 1, CheckInMainUserID = 1, // CheckInMainUserID is user's id who is doing checkin SiteID = 1 // SiteID is SiteID from where visitor is doing checkin }; db.VisitMain.Add(visit); db.SaveChanges(); } if (checkInVM.VisitorTypeID == 4) { if (vehicle.VehicleID == 0) { vehicle.CreatedOn = DateTime.Now; vehicle.ModifiedOn = DateTime.Now; vehicle.CreatedBy = 1; vehicle.ModifiedBy = 1; //vehicle.VehicleColorID = checkInVM.ColorID; //vehicle.VehicleStateID = checkInVM.StateID; db.Vehicle.Add(vehicle); db.SaveChanges(); } VisitMain visitMain = new VisitMain() { VehicleID = vehicle.VehicleID, VisitorTypeID = checkInVM.VisitorTypeID, CheckInMainGateID = checkInVM.GateID, CheckInMainTime = DateTime.Now, PlacardNo = checkInVM.PlacardNo, VehicleSearchConsent = checkInVM.VehicleSearchConsent, VehicleSearchResult = checkInVM.VehicleSearchResult, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, CreatedBy = 1, ModifiedBy = 1, CheckInMainUserID = 1, // CheckInMainUserID is user's id who is doing checkin SiteID = 1 // SiteID is SiteID from where visitor is doing checkin }; db.VisitMain.Add(visitMain); db.SaveChanges(); VisitDetail visit = new VisitDetail() { VisitorID = visitor.VisitorID, CheckInSignature = checkInVM.CheckInSignature, CheckiInMainID = visitMain.VisitMainID, ProofOfInsurance = checkInVM.ProofOfInsurance, isManualCheckIn = checkInVM.isManualCheckIn, isDriverCheckOut = checkInVM.isDriverCheckOut, isManualCheckOut = checkInVM.isManualCheckOut, DestinationID = checkInVM.DestinationID, isDriverCheckIn = checkInVM.isDriverCheckIn, OrientationVisit = checkInVM.OrientationVisit, CheckInTime = DateTime.UtcNow, Notes = checkInVM.Notes, CreatedOn = DateTime.Now, ModifiedOn = DateTime.Now, CreatedBy = 1, ModifiedBy = 1, }; db.VisitDetail.Add(visit); db.SaveChanges(); } return(RedirectToAction("Index")); }