// GET: Costs/Edit/5
        public ActionResult Edit(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Costs costs = db.Costs.Find(id);

            // TOLE DODAŠ za error date2
            CostsViewModel view = new CostsViewModel();

            view.Amount      = costs.Amount;
            view.Date        = costs.Date;
            view.CostID      = costs.CostID;
            view.CostTypeID  = costs.CostTypeID;
            view.Note        = costs.Note;
            view.Description = costs.Description;

            if (costs == null)
            {
                return(HttpNotFound());
            }
            ViewBag.CostTypeID = new SelectList(db.CostTypes, "CostTypeID", "Name", costs.CostTypeID);
            return(View(view)); // tukaj dodaš VIEW!!
        }
        public IActionResult Index(SortState sortState = SortState.TypeOfGsmAsc, int page = 1)
        {
            CostsFilterViewModel filter = HttpContext.Session.Get <CostsFilterViewModel>(filterKey);

            if (filter == null)
            {
                filter = new CostsFilterViewModel {
                    PricePerLiter = 0, DateOfCostGsm = default
                };
                HttpContext.Session.Set(filterKey, filter);
            }

            string modelKey = $"{typeof(Costs).Name}-{page}-{sortState}-{filter.PricePerLiter}-{filter.DateOfCostGsm}";

            if (!cache.TryGetValue(modelKey, out CostsViewModel model))
            {
                model = new CostsViewModel();

                IQueryable <Costs> costs = GetSortedEntities(sortState, filter.PricePerLiter, filter.DateOfCostGsm);

                int count    = costs.Count();
                int pageSize = 10;
                model.PageViewModel = new PageViewModel(count, page, pageSize);

                model.Costs                = count == 0 ? new List <Costs>() : costs.Skip((model.PageViewModel.PageNumber - 1) * pageSize).Take(pageSize).ToList();
                model.SortViewModel        = new SortViewModel(sortState);
                model.CostsFilterViewModel = filter;

                cache.Set(modelKey, model);
            }

            return(View(model));
        }
        public async Task <IActionResult> Delete(int id, int page)
        {
            Costs costs = await context.Costs.FindAsync(id);

            if (costs == null)
            {
                return(NotFound());
            }

            bool   deleteFlag = false;
            string message    = "Do you want to delete this entity";

            if (context.Containers.Any(s => s.TypeOfGsmid == costs.CostId) && context.Costs.Any(s => s.TypeOfGsmid == costs.CostId))
            {
                message = "This entity has entities, which dependents from this. Do you want to delete this entity and other, which dependents from this?";
            }

            CostsViewModel costsViewModel = new CostsViewModel();

            costsViewModel.Cost          = costs;
            costsViewModel.PageViewModel = new PageViewModel {
                PageNumber = page
            };
            costsViewModel.DeleteViewModel = new DeleteViewModels {
                Message = message, IsDeleted = deleteFlag
            };

            return(View(costsViewModel));
        }
        public IActionResult Create(int page)
        {
            CostsViewModel costsViewModel = new CostsViewModel();

            costsViewModel.PageViewModel = new PageViewModel {
                PageNumber = page
            };

            return(View(costsViewModel));
        }
        public CostsPage(Filter Item)
        {
            InitializeComponent();

            ////Creating TapGestureRecognizers
            //var tapbutton = new TapGestureRecognizer();
            ////Binding events
            //tapbutton.Tapped += tapbutton_Tapped;
            ////Associating tap events to the image buttons
            //floatButton.GestureRecognizers.Add(tapbutton);

            BindingContext = viewModel = new CostsViewModel(Item, new DialogService());
        }
        public async Task <IActionResult> Create(CostsViewModel costsViewModel)
        {
            if (ModelState.IsValid)
            {
                await context.Costs.AddAsync(costsViewModel.Cost);

                await context.SaveChangesAsync();

                cache.Clean();
                return(RedirectToAction("Index", "Costs"));
            }

            return(View(costsViewModel));
        }
        public async Task <IActionResult> Edit(int id, int page)
        {
            Costs costs = await context.Costs.FindAsync(id);

            if (costs != null)
            {
                CostsViewModel costsViewModel = new CostsViewModel();
                costsViewModel.PageViewModel = new PageViewModel {
                    PageNumber = page
                };
                costsViewModel.Cost = costs;

                return(View(costsViewModel));
            }

            return(NotFound());
        }
        public async Task <IActionResult> Delete(CostsViewModel costsViewModel)
        {
            bool   deleteFlag = true;
            string message    = "Do you want to delete this entity";
            Costs  costs      = await context.Costs.FindAsync(costsViewModel.Cost.CostId);

            costsViewModel.DeleteViewModel = new DeleteViewModels {
                Message = message, IsDeleted = deleteFlag
            };
            if (costs == null)
            {
                return(NotFound());
            }

            context.Costs.Remove(costs);
            await context.SaveChangesAsync();

            cache.Clean();
            return(View(costsViewModel));
        }
        public ActionResult Edit([Bind(Include = "CostID,CostTypeID,Amount,Date,Note,Description")] CostsViewModel CostsViewModel)
        {
            if (ModelState.IsValid)
            {
                Costs model = db.Costs.Find(CostsViewModel.CostID);

                model.Amount      = CostsViewModel.Amount;
                model.Date        = CostsViewModel.Date;
                model.Note        = CostsViewModel.Note;
                model.Description = CostsViewModel.Description;
                model.CostTypeID  = CostsViewModel.CostTypeID;

                model.DateModified = DateTime.Now;
                model.ModifiedBy   = Guid.Parse(User.Identity.GetUserId());

                db.Entry(model).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.CostTypeID = new SelectList(db.CostTypes, "CostTypeID", "Name", CostsViewModel.CostTypeID);
            return(View(CostsViewModel));
        }
        public async Task <IActionResult> Edit(CostsViewModel costsViewModel)
        {
            if (ModelState.IsValid)
            {
                Costs costs = context.Costs.Find(costsViewModel.Cost.CostId);
                if (costs != null)
                {
                    costs.PricePerLiter = costsViewModel.Cost.PricePerLiter;
                    costs.DateOfCostGsm = costsViewModel.Cost.DateOfCostGsm;

                    context.Costs.Update(costs);
                    await context.SaveChangesAsync();

                    cache.Clean();
                    return(RedirectToAction("Index", "Costs", new { page = costsViewModel.PageViewModel.PageNumber }));
                }
                else
                {
                    return(NotFound());
                }
            }

            return(View(costsViewModel));
        }
 public Costs()
 {
     InitializeComponent();
     DataContext = new CostsViewModel();
 }
Beispiel #12
0
 public Costs(DateTime start, DateTime end)
 {
     InitializeComponent();
     DataContext = new CostsViewModel(start, end);
 }