public void AddDeltagare(DeltagareViewModel viewModel) { int index = 0; try { var lastDeltagare = deltagareDb.GetAllDeltagarModels().LastOrDefault(); index = lastDeltagare.IdAccess + 1; } catch { } var model = new DeltagareModel { IdAccess = index, DeltagarNamn = viewModel.DeltagarNamn, MatId = viewModel.MatId, Måndag = viewModel.Måndag.ToString(), Tisdag = viewModel.Tisdag.ToString(), Onsdag = viewModel.Onsdag.ToString(), Torsdag = viewModel.Torsdag.ToString(), Fredag = viewModel.Fredag.ToString(), IsActive = true }; deltagareDb.AddDeltagare(model); }
public IActionResult AddDeltagare(DeltagareViewModel viewModel) { if (User.Identity.Name != "admin" && User.Identity.Name != "piahag") { return(RedirectToAction("index", "inventarie")); } if (viewModel.DeltagarNamn == null) { return(Redirect("../Närvaro/AddDeltagare?message=InkorrektInmatning")); } deltagarLogic.AddDeltagare(viewModel); deltagarList = deltagarLogic.GetAllDeltagare(); return(RedirectToAction("index")); }
public void b5TestAddDeltagare() { deltagarNamn = "UTestUser2"; var viewModel = new DeltagareViewModel { DeltagarNamn = deltagarNamn, Måndag = WorkDay.Halvdag, Tisdag = WorkDay.Halvdag, Onsdag = WorkDay.Halvdag, Torsdag = WorkDay.Halvdag, Fredag = WorkDay.Halvdag, IsActive = true }; deltagareVMLogic.AddDeltagare(viewModel); Assert.AreEqual(1, deltagareVMLogic.GetAllDeltagare().Where(x => x.DeltagarNamn == deltagarNamn).ToList().Count); }
public void A1TestAddDeltagare() { var deltagarVm = new DeltagareViewModel { DeltagarNamn = deltagarNamn, Måndag = BI.Models.WorkDay.Heldag, Tisdag = BI.Models.WorkDay.Heldag, Onsdag = BI.Models.WorkDay.Heldag, Torsdag = BI.Models.WorkDay.Heldag, Fredag = BI.Models.WorkDay.Heldag, IsActive = true, MatId = "1231532531231" }; deltagareVMLogic.AddDeltagare(deltagarVm); Assert.AreEqual(deltagarNamn, deltagareVMLogic.GetAllDeltagare().FirstOrDefault(x => x.DeltagarNamn == deltagarNamn).DeltagarNamn); }
public IActionResult EditDeltagare(DeltagareViewModel viewModel) { if (User.Identity.Name != "admin" && User.Identity.Name != "piahag") { return(RedirectToAction("index", "inventarie")); } var ogDeltagare = deltagarList.First(x => x.IdAcesss == viewModel.IdAcesss); viewModel.Id = ogDeltagare.Id; if (viewModel.DeltagarNamn == null) { return(Redirect("../Närvaro/EditDeltagare?id=" + viewModel.IdAcesss.ToString() + "&message=InkorrektInmatning")); } deltagarLogic.UpdateDeltagare(viewModel); deltagarList = deltagarLogic.GetAllDeltagare(); return(RedirectToAction("index")); }
public void UpdateDeltagare(DeltagareViewModel viewModel) { var model = new DeltagareModel { IdAccess = viewModel.IdAcesss, DeltagarNamn = viewModel.DeltagarNamn, MatId = viewModel.MatId, Fredag = viewModel.Fredag.ToString(), Torsdag = viewModel.Torsdag.ToString(), Onsdag = viewModel.Onsdag.ToString(), Tisdag = viewModel.Tisdag.ToString(), Måndag = viewModel.Måndag.ToString(), Id = viewModel.Id, IsActive = viewModel.IsActive }; deltagareDb.UpdateDeltagare(model); }
public DeltagareViewModel GetDeltagare(ObjectId Id) { var model = deltagareDb.GetDeltagare(Id); var viewModel = new DeltagareViewModel { IdAcesss = model.IdAccess, DeltagarNamn = model.DeltagarNamn, MatId = model.MatId, Fredag = HelperConvertLogic.GetWorkDayFromString(model.Fredag), Torsdag = HelperConvertLogic.GetWorkDayFromString(model.Fredag), Onsdag = HelperConvertLogic.GetWorkDayFromString(model.Fredag), Tisdag = HelperConvertLogic.GetWorkDayFromString(model.Fredag), Måndag = HelperConvertLogic.GetWorkDayFromString(model.Fredag), Id = model.Id, IsActive = model.IsActive }; return(viewModel); }
public List <DeltagareViewModel> GetAllDeltagare() { var returningList = new List <DeltagareViewModel>(); var models = deltagareDb.GetAllDeltagarModels(); foreach (var model in models) { var viewModel = new DeltagareViewModel { IdAcesss = model.IdAccess, DeltagarNamn = model.DeltagarNamn, MatId = model.MatId, Fredag = HelperConvertLogic.GetWorkDayFromString(model.Fredag), Torsdag = HelperConvertLogic.GetWorkDayFromString(model.Torsdag), Onsdag = HelperConvertLogic.GetWorkDayFromString(model.Onsdag), Tisdag = HelperConvertLogic.GetWorkDayFromString(model.Tisdag), Måndag = HelperConvertLogic.GetWorkDayFromString(model.Måndag), Id = model.Id, IsActive = model.IsActive }; returningList.Add(viewModel); } return(returningList); }
private ViewModelDeltagareAttendence GetAttendence(ViewModelDeltagareAttendence model, List <AttendenceViewModel> attendenceData, DeltagareViewModel deltagarn) { int expectedAttendence = 0; int actualAttendence = 0; int halvdaysAttended = 0; int heldaysAttended = 0; int sjukDays = 0; int ledigDays = 0; int frånvarandeDagar = 0; foreach (var data in attendenceData) { if (data.ExpectedMåndag != Models.WorkDay._) { expectedAttendence++; } if (data.ExpectedTisdag != Models.WorkDay._) { expectedAttendence++; } if (data.ExpectedOnsdag != Models.WorkDay._) { expectedAttendence++; } if (data.ExpectedTorsdag != Models.WorkDay._) { expectedAttendence++; } if (data.ExpectedFredag != Models.WorkDay._) { expectedAttendence++; } if (data.ExpectedMåndag == Models.WorkDay.Heldag) { if (data.Måndag == Models.Attendence.AttendenceOption.Heldag || data.Måndag == Models.Attendence.AttendenceOption.HeldagMat) { actualAttendence++; heldaysAttended++; } else if (data.Måndag == Models.Attendence.AttendenceOption.Halvdag || data.Måndag == Models.Attendence.AttendenceOption.HalvdagMat) { halvdaysAttended++; } else { if (data.Måndag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Måndag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } else if (data.ExpectedMåndag == Models.WorkDay.Halvdag) { if (data.Måndag == Models.Attendence.AttendenceOption.Halvdag || data.Måndag == Models.Attendence.AttendenceOption.HalvdagMat) { actualAttendence++; halvdaysAttended++; } else { if (data.Måndag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Måndag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } if (data.ExpectedTisdag == Models.WorkDay.Heldag) { if (data.Tisdag == Models.Attendence.AttendenceOption.Heldag || data.Tisdag == Models.Attendence.AttendenceOption.HeldagMat) { actualAttendence++; heldaysAttended++; } else if (data.Tisdag == Models.Attendence.AttendenceOption.Halvdag || data.Tisdag == Models.Attendence.AttendenceOption.HalvdagMat) { halvdaysAttended++; } else { if (data.Tisdag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Tisdag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } else if (data.ExpectedTisdag == Models.WorkDay.Halvdag) { if (data.Tisdag == Models.Attendence.AttendenceOption.Halvdag || data.Tisdag == Models.Attendence.AttendenceOption.HalvdagMat) { actualAttendence++; halvdaysAttended++; } else { if (data.Tisdag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Tisdag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } if (data.ExpectedOnsdag == Models.WorkDay.Heldag) { if (data.Onsdag == Models.Attendence.AttendenceOption.Heldag || data.Onsdag == Models.Attendence.AttendenceOption.HeldagMat) { actualAttendence++; heldaysAttended++; } else if (data.Onsdag == Models.Attendence.AttendenceOption.Halvdag || data.Onsdag == Models.Attendence.AttendenceOption.HalvdagMat) { halvdaysAttended++; } else { if (data.Onsdag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Onsdag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } else if (data.ExpectedOnsdag == Models.WorkDay.Halvdag) { if (data.Onsdag == Models.Attendence.AttendenceOption.Halvdag || data.Onsdag == Models.Attendence.AttendenceOption.HalvdagMat) { actualAttendence++; halvdaysAttended++; } else { if (data.Onsdag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Onsdag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } if (data.ExpectedTorsdag == Models.WorkDay.Heldag) { if (data.Torsdag == Models.Attendence.AttendenceOption.Heldag || data.Torsdag == Models.Attendence.AttendenceOption.HeldagMat) { actualAttendence++; heldaysAttended++; } else if (data.Torsdag == Models.Attendence.AttendenceOption.Halvdag || data.Torsdag == Models.Attendence.AttendenceOption.HalvdagMat) { halvdaysAttended++; } else { if (data.Torsdag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Torsdag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } else if (data.ExpectedTorsdag == Models.WorkDay.Halvdag) { if (data.Torsdag == Models.Attendence.AttendenceOption.Halvdag || data.Torsdag == Models.Attendence.AttendenceOption.HalvdagMat) { actualAttendence++; halvdaysAttended++; } else { if (data.Torsdag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Torsdag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } if (data.ExpectedFredag == Models.WorkDay.Heldag) { if (data.Fredag == Models.Attendence.AttendenceOption.Heldag || data.Fredag == Models.Attendence.AttendenceOption.HeldagMat) { actualAttendence++; heldaysAttended++; } else if (data.Fredag == Models.Attendence.AttendenceOption.Halvdag || data.Fredag == Models.Attendence.AttendenceOption.HalvdagMat) { halvdaysAttended++; } else { if (data.Fredag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Fredag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } else if (data.ExpectedFredag == Models.WorkDay.Halvdag) { if (data.Fredag == Models.Attendence.AttendenceOption.Halvdag || data.Fredag == Models.Attendence.AttendenceOption.HalvdagMat) { actualAttendence++; halvdaysAttended++; } else { if (data.Fredag == Models.Attendence.AttendenceOption.Sjuk) { sjukDays++; } else if (data.Fredag == Models.Attendence.AttendenceOption.Ledig) { ledigDays++; } else { frånvarandeDagar++; } } } } model.AttendendedDays = actualAttendence; model.ExpectedDays = expectedAttendence; model.SjukDays = sjukDays; model.LedigDays = ledigDays; model.Frånvarande = frånvarandeDagar; model.Heldagar = heldaysAttended; model.Halvdagar = halvdaysAttended; actualAttendence = actualAttendence * 100; int actualAddedAttendence = 0; try { actualAddedAttendence = (actualAttendence / expectedAttendence); } catch { } model.PercentageAttendence = actualAddedAttendence; return(model); }
public ViewModelMonthAttendence GetAttendenceForDeltagareForMonth(int monthsToLookBack, DateTime dateTime, DeltagareViewModel deltagarn) { var model = new ViewModelMonthAttendence { deltagaren = deltagarn, MånadNamn = dateTime.ToString("yyyy-MM") }; var attendenceData = närvaroLogic.GetAttendenceFörDeltagare(deltagarn.Id).Where(x => x.DateConcerning.Month == dateTime.Month && x.DateConcerning.Year == dateTime.Year).ToList(); var attendenceModel = GetAttendence(new ViewModelDeltagareAttendence(), attendenceData, deltagarn); model.AttendendedDays = attendenceModel.AttendendedDays; model.ExpectedDays = attendenceModel.ExpectedDays; model.Frånvarande = attendenceModel.Frånvarande; model.Halvdagar = attendenceModel.Halvdagar; model.Heldagar = attendenceModel.Heldagar; model.PercentageAttendence = attendenceModel.PercentageAttendence; model.SjukDays = attendenceModel.SjukDays; return(model); }
ViewModelMonthAttendence IDeltagarViewLogic.GetAttendenceForDeltagareForMonth(int monthsToLookBack, DateTime dateTime, DeltagareViewModel deltagarn) { throw new NotImplementedException(); }
public List <AttendenceViewModel> GetAttendenceForDate(DateTime date, DeltagareViewModel deltagarModel) { if (date.DayOfWeek == DayOfWeek.Tuesday) { date = date.AddDays(-1); } else if (date.DayOfWeek == DayOfWeek.Wednesday) { date = date.AddDays(-2); } else if (date.DayOfWeek == DayOfWeek.Thursday) { date = date.AddDays(-3); } else if (date.DayOfWeek == DayOfWeek.Friday) { date = date.AddDays(-4); } else if (date.DayOfWeek == DayOfWeek.Saturday) { date = date.AddDays(-5); } else if (date.DayOfWeek == DayOfWeek.Sunday) { date = date.AddDays(-6); } var returningList = new List <AttendenceViewModel>(); var deltagarnaActive = deltagareDb.GetAllDeltagarModels().Where(x => x.DeltagarNamn == deltagarModel.DeltagarNamn).ToList(); foreach (var deltagare in deltagarnaActive) { var attendences = närvaroDb.GetAttendenceForDate(date).Where(x => x.DeltagarIdInQuestion == deltagare.Id).ToList(); if (attendences.Count == 0) { var model = new AttendenceModel { DateConcerning = date, DeltagarIdInQuestion = deltagare.Id, ExpectedFredag = deltagare.Fredag, ExpectedTorsdag = deltagare.Torsdag, ExpectedOnsdag = deltagare.Onsdag, ExpectedTisdag = deltagare.Tisdag, ExpectedMåndag = deltagare.Måndag, Fredag = AttendenceOption.Frånvarande.ToString(), Torsdag = AttendenceOption.Frånvarande.ToString(), Onsdag = AttendenceOption.Frånvarande.ToString(), Tisdag = AttendenceOption.Frånvarande.ToString(), Måndag = AttendenceOption.Frånvarande.ToString() }; närvaroDb.AddAttendence(model); model = närvaroDb.GetAttendenceForDate(date).LastOrDefault(x => x.DeltagarIdInQuestion == deltagare.Id); var viewModel = new AttendenceViewModel { DateConcerning = date, DeltagarIdInQuestion = deltagare.Id, DeltagarNamn = deltagareDb.GetDeltagare(model.DeltagarIdInQuestion).DeltagarNamn, ExpectedFredag = HelperConvertLogic.GetWorkDayFromString(deltagare.Fredag), ExpectedTorsdag = HelperConvertLogic.GetWorkDayFromString(deltagare.Torsdag), ExpectedOnsdag = HelperConvertLogic.GetWorkDayFromString(deltagare.Onsdag), ExpectedTisdag = HelperConvertLogic.GetWorkDayFromString(deltagare.Tisdag), ExpectedMåndag = HelperConvertLogic.GetWorkDayFromString(deltagare.Måndag), Fredag = AttendenceOption.Frånvarande, Torsdag = AttendenceOption.Frånvarande, Onsdag = AttendenceOption.Frånvarande, Tisdag = AttendenceOption.Frånvarande, Måndag = AttendenceOption.Frånvarande, Id = model.Id }; returningList.Add(viewModel); } else { var model = attendences.FirstOrDefault(x => x.DeltagarIdInQuestion == deltagare.Id); var viewModel = new AttendenceViewModel { Id = model.Id, DateConcerning = date, DeltagarIdInQuestion = deltagare.Id, DeltagarNamn = deltagareDb.GetDeltagare(model.DeltagarIdInQuestion).DeltagarNamn, ExpectedFredag = HelperConvertLogic.GetWorkDayFromString(deltagare.Fredag), ExpectedTorsdag = HelperConvertLogic.GetWorkDayFromString(deltagare.Torsdag), ExpectedOnsdag = HelperConvertLogic.GetWorkDayFromString(deltagare.Onsdag), ExpectedTisdag = HelperConvertLogic.GetWorkDayFromString(deltagare.Tisdag), ExpectedMåndag = HelperConvertLogic.GetWorkDayFromString(deltagare.Måndag), Fredag = HelperConvertLogic.GetAttendenceOptionFromString(model.Fredag), Torsdag = HelperConvertLogic.GetAttendenceOptionFromString(model.Torsdag), Onsdag = HelperConvertLogic.GetAttendenceOptionFromString(model.Onsdag), Tisdag = HelperConvertLogic.GetAttendenceOptionFromString(model.Tisdag), Måndag = HelperConvertLogic.GetAttendenceOptionFromString(model.Måndag) }; returningList.Add(viewModel); } } return(returningList); }