public List <BatchReport> GetBatchReportsForDateSelector(DateSelectorModal dateSelectorModal)
        {
            List <BatchReport> reports = new List <BatchReport>();

            switch (dateSelectorModal.TimeFrame)
            {
            case "year":
                reports = _BatchRepository.GetBatchesByYear(dateSelectorModal.Year);
                dateSelectorModal.TimeFrameTitle = dateSelectorModal.Year.ToString();
                break;

            case "week":
                reports = _BatchRepository.GetBatchesByWeek(dateSelectorModal.Week, dateSelectorModal.YearForWeek);
                dateSelectorModal.TimeFrameTitle = dateSelectorModal.YearForWeek.ToString() + " Week : " + dateSelectorModal.Week;
                break;

            case "dates":
                reports = _BatchRepository.GetBatchesByDates(dateSelectorModal.DateFrom, dateSelectorModal.DateTo);
                dateSelectorModal.TimeFrameTitle = dateSelectorModal.DateFrom.ToShortDateString() + " To " + dateSelectorModal.DateTo.ToShortDateString();
                break;

            default:
                break;
            }

            return(reports);
        }
        public IActionResult Overview(DateSelectorModal dateSelectorModal)
        {
            MatVarOverviewViewModel overview = new MatVarOverviewViewModel();

            if (!dateSelectorModal.TimeSet)
            {
                overview.DateSelectorModal.TimeFrame = "year";
                overview.DateSelectorModal.Week      = HelperMethods.GetWeekNumber(DateTime.Now);
                overview.DateSelectorModal.Year      = DateTime.Now.Year;
            }
            else
            {
                overview.DateSelectorModal = dateSelectorModal;
            }
            GetGainsAndLosses(overview);
            return(View(overview));
        }
        public IActionResult MaterialUsageSingle(string name, DateSelectorModal dateSelectorModal)
        {
            List <BatchReport>     reports = new List <BatchReport>();
            MaterialDetails        details = _materialDetailsRepository.GetSingleMaterial(name);
            MaterialUsageViewModel materialUsageViewModel = new MaterialUsageViewModel();

            materialUsageViewModel.Name              = details.Name;
            materialUsageViewModel.ProductCode       = details.ProductCode;
            materialUsageViewModel.ShortName         = details.ShortName;
            materialUsageViewModel.CostPerTon        = details.CostPerTon;
            materialUsageViewModel.DateSelectorModal = dateSelectorModal;
            reports = helper.GetBatchReportsForDateSelector(materialUsageViewModel.DateSelectorModal);
            materialUsageViewModel.streamInfo = GetStreamMatVarBreakdown(reports, details.Name);
            CalculateWeeklyUsageForSetTimePeriod(materialUsageViewModel, reports, details);
            materialUsageViewModel.WeeklyUsage = materialUsageViewModel.WeeklyUsage.OrderBy(x => x.Year).ThenBy(x => x.WeekNo).ToList();

            return(View("MaterialUsageSingle", materialUsageViewModel));
        }
Esempio n. 4
0
        public IViewComponentResult Invoke(DateSelectorModal dateSelectorModal)
        {
            foreach (var year in _BatchRepository.GetYearsInSystemForDropDown())
            {
                dateSelectorModal.YearsAvailable.Add(new SelectListItem {
                    Text = year.ToString(), Value = year.ToString()
                });
            }

            foreach (var week in _BatchRepository.GetWeeksInSystemForDropDown(dateSelectorModal.YearForWeek))
            {
                dateSelectorModal.WeeksAvailable.Add(new SelectListItem {
                    Text = week.ToString(), Value = week.ToString()
                });
            }

            return(View(dateSelectorModal));
        }
        public MaterialUsageViewModel(IMaterialDetailsRepository MaterialDetailsRepository, IBatchRepository batchReportRepository)
        {
            _materialDetailsRepository = MaterialDetailsRepository;
            _batchReportRepository     = batchReportRepository;
            DateSelectorModal          = new DateSelectorModal();

            foreach (var material in _materialDetailsRepository.GetAllMaterialDetails())
            {
                if (material.IncludeInMatVar)
                {
                    MaterialsForDropDown.Add(new SelectListItem()
                    {
                        Text = material.ShortName, Value = material.Name
                    });
                }
            }

            MaterialsForDropDown = MaterialsForDropDown.OrderBy(x => x.Text).ToList();
        }
 public MatVarOverviewViewModel()
 {
     DateSelectorModal = new DateSelectorModal();
 }