public ActionResult WorkReport(WorkReportViewModel model) { int year = DateTime.Now.Year; int month = DateTime.Now.Month; if (!string.IsNullOrWhiteSpace(model.Month)) { string[] arr = model.Month.Split("/".ToArray(), StringSplitOptions.RemoveEmptyEntries); int yearTemp, monthTemp; if (int.TryParse(arr[0], out monthTemp) && int.TryParse(arr[1], out yearTemp) && monthTemp > 0 && yearTemp > 1900) { year = yearTemp; month = monthTemp; } } if (CurrentUser.IsManager) { model = WorkReportService.GetAllUserWorkReports(year, month, model.SortField, model.SortDirection, model.Filter); } else { model = WorkReportService.GetWorkReports(CurrentUser.Id, year, month); } return(View(model)); }
// GET: WorkReports to ListWR public IActionResult ListWR() { var workReports = _context.WorkReport.Select(w => w.Id); var workReportViewModel = new WorkReportViewModel() { WorkReports = _context.WorkReport.Where(w => w.Id != 0).Include(w => w.AssignedFE).Include(w => w.BusinessCentre).ToList(), TotalTimeWorked = _context.WorkReport.Sum(w => w.TimeWorked), TotalPayment = _context.WorkReport.Sum(w => w.TotalPayment), TotalDueToPay = _context.WorkReport.Sum(w => w.DueToPay) }; return(View(workReportViewModel)); }
public async Task <IActionResult> SingleWorkReport(Guid?workId, bool?inventorySummarySelected) { Work work = null; if (inventorySummarySelected != null) { ViewBag.InventorySummarySelected = !inventorySummarySelected; } if (workId != null && workId != Guid.Empty) { try { work = await _repo.GetWork(workId); } catch (Exception) { ViewBag.WorkSelected = false; } } else { ViewBag.WorkSelected = true; } ViewBag.InventorySummarySelected = inventorySummarySelected; var temp = await _repo.GetAllWork(); List <Work> works = temp.ToList(); for (int i = 0; i < works.Count; i++) { works[i].DropDownDisplayStr = works[i].EndlasNumber + " - " + works[i].WorkDescription; } ViewData["WorkId"] = new SelectList(works, "WorkId", "DropDownDisplayStr"); WorkReportViewModel vm = null; if (work != null) { vm = new WorkReportViewModel() { Work = work, WorkId = work.WorkId, WorkItems = work.WorkItems, InventorySummarySelected = !inventorySummarySelected, PowderBottles = new List <PowderBottle>(), PowderBottleGroups = new List <List <PowderBottle> >() }; List <PowderBottle> list = new(); foreach (var workItem in work.WorkItems) { if (workItem.PartsForWork.Any()) { foreach (var part in workItem.PartsForWork) { foreach (var usedPowder in part.PowdersUsed) { list.Insert(0, usedPowder.PowderBottle); } } } } list = list.OrderBy(l => l.PowderBottleId).ToList(); Guid?lastGuid = Guid.Empty; foreach (var powder in list) { if (lastGuid != powder.PowderBottleId) { vm.PowderBottleGroups.Insert(0, new List <PowderBottle>()); lastGuid = powder.PowderBottleId; } vm.PowderBottleGroups[0].Insert(0, powder); } foreach (var workItem in work.WorkItems) { // render the image bytes if present if (workItem.StaticPartInfo != null && workItem.StaticPartInfo.DrawingImageBytes != null) { FileURL.SetImageUrl(workItem.StaticPartInfo); } } } return(View(vm)); }