Beispiel #1
0
        public IActionResult Index()
        {
            _logger.LogInfo($"Zapytanie do metody Index()");

            DisplayErrorFromRedirectIfNecessary();

            var result = _drugStoreRepo.Get();

            if (result.IsSuccess)
            {
                return(View(Mapper.Map <IEnumerable <DrugStoreStockViewModel> >(result.Value)));
            }

            AddLocalError(result.FailureMessage);
            return(View(Enumerable.Empty <DrugStoreStockViewModel>()));
        }
Beispiel #2
0
        public IActionResult BuySomeItems(int id)
        {
            var prescriptionResult = _prescriptionRepo.Get(id);
            var drugsStoreResult   = _drugStoreStockRepo.Get();

            if (!prescriptionResult.IsSuccess)
            {
                return(RedirectToPrescriptionDetails(id, prescriptionResult.FailureMessage));
            }
            if (!drugsStoreResult.IsSuccess)
            {
                return(RedirectToPrescriptionDetails(id, drugsStoreResult.FailureMessage));
            }

            var prescription = Mapper.Map <PrescriptionViewModel>(prescriptionResult.Value);

            var items = from pItem in prescription.PrescriptionItems
                        where !pItem.BoughtOut
                        join available in drugsStoreResult.Value
                        on pItem.MedicineId equals available.MedicineId
                        select new BuySingleItemViewModel
            {
                Available       = available.Quantity,
                Amount          = 0,
                ItemId          = pItem.Id,
                MedicineName    = $"{pItem.Medicine.Name} - {pItem.Medicine.MedicineContent}",
                RemainingAmount = pItem.RemainingToBought,
                UnitPrice       = pItem.Medicine.UnitPrice
            };

            if (items.Count() == 0)
            {
                return(RedirectToPrescriptionDetails(prescription.Id, "Apteka nie ma na stanie żadnych leków, które znajdują się na recepcie"));
            }

            var model = new BuySomeItemsViewModel
            {
                PrescriptionId = id,
                Items          = items.ToList()
            };

            return(View(model));
        }