public PartialViewResult _CycleSearch(CycleVM search) { var selectedIds = new List <int>(); if (!string.IsNullOrEmpty(search.SelectedTerritories)) { selectedIds = search.SelectedTerritories .Split(',', StringSplitOptions.RemoveEmptyEntries) .Select(int.Parse) .ToList(); } if (!LoggedIsSystemAdmin) { search.DepartmentIds.Add(LoggedUserDepartmentId); } var cycles = UnitOfWork.CyclesBL.CycleSearch(search, selectedIds); var model = cycles.Select(f => new CycleVM(f)) .ToList(); return(PartialView("_CyclesList", model)); }
public IList <CycleVM> FilterCycle(CycleVM search) { try { var selectedIds = new List <int>(); if (!string.IsNullOrEmpty(search.SelectedTerritories)) { selectedIds = search.SelectedTerritories .Split(',', StringSplitOptions.RemoveEmptyEntries) .Select(int.Parse) .ToList(); } if (!LoggedIsSystemAdmin) { search.DepartmentIds.Add(LoggedUserDepartmentId); } var cycles = UnitOfWork.CyclesBL.CycleSearch(search, selectedIds); var model = cycles.Select(f => new CycleVM(f)) .ToList(); return(model); } catch (Exception e) { return(null); } }
public CycleExport(CycleVM obj) { Name = obj.Name; CycleType = Enum.GetName(typeof(POPEnums.CycleType), obj.CycleType).ToString(); StartDate = obj.StartDate.Value.Date; ReconciliationDate = obj.ReconciliationDate.Value; EndDate = obj.EndDate.Value; Status = Enum.GetName(typeof(POPEnums.CycleStatus), obj.CycleStatus).ToString(); IsActive = (obj.CycleIsActive == true) ? "Active" : "Inactive"; StockAmount = obj.TotalItems; }
public FileResult ExportCycelReport(CycleVM form) { using (var stream = new MemoryStream()) try { var ListCycle = FilterCycle(form); var SheetCycle = ListCycle.Select(c => new CycleExport(c)).ToArray(); var CycelReport = Helper.GenerateDataTable(SheetCycle); using (var wb = new XLWorkbook()) { wb.Worksheets.Add(CycelReport, "CyclesReport"); wb.SaveAs(stream); return(File(stream.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "CyclesReport.xlsx")); } } catch (Exception e) { return(null); } }
public IActionResult CycleDetails(int id) { var cycle = UnitOfWork.CyclesBL.GetCyclewithDep(id); if (cycle != null) { var model = new CycleVM() { CycleId = cycle.CycleId, Name = cycle.Name, CycleType = cycle.Type, StartDate = cycle.StartDate, EndDate = cycle.EndDate, ReconciliationDate = cycle.ReconciliationDate, Department = cycle.Department?.Name, }; ViewBag.Title = model.Name; return(View(model)); } return(RedirectToAction("index", "Home")); }
public PartialViewResult filterCyclesReport(CycleVM search) { var model = FilterCycle(search); return(PartialView("_CycleReport", model)); }
public List <Cycles> CycleSearch(CycleVM search, List <int> selectedTerr) { List <Cycles> results = new List <Cycles>(); try { var CurrentDate = DateTime.Now; var query = Context.Cycles.Include(f => f.CycleProduct) .Include(f => f.Department) .Where(c => c.Department.IsActive == true) .AsQueryable(); if (search != null) { if (!string.IsNullOrWhiteSpace(search.Name)) { query = query.Where(u => u.Name != null && u.Name.Contains(search.Name)); } if (search.SearchStartDate != null) { DateTime StartDate = DateTime.ParseExact(search.SearchStartDate, "dd/MM/yyyy HH:mm", null); query = query.Where(u => u.StartDate >= StartDate); } if (search.SearchEndDate != null) { DateTime EndDate = DateTime.ParseExact(search.SearchEndDate, "dd/MM/yyyy HH:mm", null); query = query.Where(u => u.EndDate <= EndDate); } if (search.Status != null) { if (search.Status == (int)POPEnums.CycleStatus.Running) { query = query.Where(c => c.StartDate <CurrentDate && c.EndDate> CurrentDate); } if (search.Status == (int)POPEnums.CycleStatus.Ended) { query = query.Where(c => c.EndDate < CurrentDate); } else if (search.Status == (int)POPEnums.CycleStatus.Upcoming) { query = query.Where(c => c.StartDate > CurrentDate); } } if (search.IsActive?.Count > 0) { query = query.Where(c => search.IsActive.Contains(c.IsActive)); } if (search.Type?.Count > 0 && !search.Type.Contains(0)) { query = query.Where(c => search.Type.Contains(c.Type)); } if (search.DepartmentIds?.Count > 0) { query = query.Where(c => search.DepartmentIds.Contains(c.DepartmentId)); } if (selectedTerr.Count > 0) { query = query.Where(c => c.CycleTerritory.Any(t => selectedTerr.Contains(t.TerritoryId))); //query = query.Where(u => u.LnkUserRole.Any(lnk => search.Role.Contains(lnk.RoleId))); //foreach (var item in selectedTerr) //{ // var model = Context.CycleTerritory.Where(f => f.TerritoryId == item).Select(f => f.CycleId).Distinct(); // query = query.Where(c => c.CycleId == item); //} } } results = query.OrderByDescending(d => d.StartDate) .ThenBy(d => d.EndDate) .ToList(); } catch { } return(results); }