public ActionResult View(int id)
        {
            var item  = pricelistLogic.GetPricelist(id);
            var model = new PricelistViewModel
            {
                ID             = item.ID,
                ContractId     = item.ContractId,
                Data           = item.Data,
                FinRepCenterId = item.FinRepCenterId,
                From           = item.From,
                Name           = item.Name,
                ProductId      = item.ProductId,
                To             = item.To,
                Comment        = item.Comment,
                IsDataExists   = item.Data != null,
                Prices         = pricelistLogic.GetPrices(id).ToList()
            };

            model.Dictionaries.Add("FinRepCenter", dataLogic.GetFinRepCenters());
            model.Dictionaries.Add("Currency", dataLogic.GetCurrencies());
            model.Dictionaries.Add("Contract", dataLogic.GetContracts());
            model.Dictionaries.Add("Product", dataLogic.GetProducts());
            model.Dictionaries.Add("Service", dataLogic.GetServiceTypes());
            model.Dictionaries.Add("Vat", dataLogic.GetVats());
            return(View(model));
        }
Beispiel #2
0
        public IHttpActionResult GetPricelist()
        {
            PricelistViewModel model = new PricelistViewModel();

            model.TicketPrice = new Dictionary <string, int>();
            foreach (var item in UnitOfWork.TicketPrice.GetAll())
            {
                model.TicketPrice.Add(item.Type.ToString(), (int)item.Price);
            }
            return(Ok(model));
        }
Beispiel #3
0
        private PricelistViewModel AdaptPricelistViewModel()
        {
            PricelistViewModel model = new PricelistViewModel();

            model.TicketPrice = new Dictionary <string, int>();
            foreach (var item in UnitOfWork.TicketPrice.GetAll())
            {
                model.TicketPrice.Add(item.Type.ToString(), (int)item.Price);
            }
            return(model);
        }
Beispiel #4
0
        public IHttpActionResult UpdatePricelist(PricelistViewModel model)
        {
            try
            {
                Pricelist OldPricelist = UnitOfWork.Pricelist.Find(x => x.Active == true).First();
                Pricelist newPricelist = new Pricelist();
                newPricelist.ActivePrices = OldPricelist.ActivePrices;
                OldPricelist.Active       = false;
                OldPricelist.EndTime      = DateTime.Today;
                newPricelist.StartTime    = DateTime.Today;
                newPricelist.Active       = true;
                int cnt = newPricelist.ActivePrices.Count;
                for (int i = 0; i < cnt; i++)
                {
                    if (newPricelist.ActivePrices.ToList()[i].Type == TicketType.Vremenska)
                    {
                        newPricelist.ActivePrices.ToList()[i].Price = model.TicketPrice["Vremenska"];
                    }
                    else if (newPricelist.ActivePrices.ToList()[i].Type == TicketType.Dnevna)
                    {
                        newPricelist.ActivePrices.ToList()[i].Price = model.TicketPrice["Dnevna"];
                    }
                    else if (newPricelist.ActivePrices.ToList()[i].Type == TicketType.Mesecna)
                    {
                        newPricelist.ActivePrices.ToList()[i].Price = model.TicketPrice["Mesecna"];
                    }
                    else
                    {
                        newPricelist.ActivePrices.ToList()[i].Price = model.TicketPrice["Godisnja"];
                    }
                    newPricelist.ActivePrices.ToList()[i].Pricelist = newPricelist;
                }
                UnitOfWork.Pricelist.Update(OldPricelist);
                UnitOfWork.Pricelist.Add(newPricelist);
                UnitOfWork.Complete();

                var tickets = UnitOfWork.TicketPrice.GetAll();
                for (int i = 0; i < 4; i++)
                {
                    tickets.ToList()[i].Pricelist = UnitOfWork.Pricelist.Find(x => x.Active == true).First();
                    UnitOfWork.TicketPrice.Update(tickets.ToList()[i]);
                }
                UnitOfWork.Complete();
                return(Ok($"Pricelist successfully updated."));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public ActionResult Edit(int id)
        {
            // TODO: roles
            var pricelist = pricelistLogic.GetPricelist(id);

            // TEMP:
            if (pricelist.ProductId.HasValue)
            {
                pricelistLogic.FixPricelistKinds(id, pricelist.ProductId.Value);
            }

            var model = new PricelistViewModel
            {
                ID             = pricelist.ID,
                Name           = pricelist.Name,
                Comment        = pricelist.Comment,
                ProductId      = pricelist.ProductId,
                ContractId     = pricelist.ContractId,
                FinRepCenterId = pricelist.FinRepCenterId,
                From           = pricelist.From,
                To             = pricelist.To,
                Prices         = pricelistLogic.GetPrices(id).ToList(),
                PriceKinds     = pricelistLogic.GetPriceKinds(id).ToList()
            };

            model.Dictionaries.Add("ContractorByContract", dataLogic.GetContractorsByContract());
            model.Dictionaries.Add("FinRepCenter", dataLogic.GetFinRepCenters());
            model.Dictionaries.Add("Contractor", dataLogic.GetContractors());
            model.Dictionaries.Add("Contract", dataLogic.GetContracts());
            model.Dictionaries.Add("Currency", dataLogic.GetCurrencies());
            model.Dictionaries.Add("Product", dataLogic.GetProducts());
            model.Dictionaries.Add("Service", dataLogic.GetServiceTypes());
            model.Dictionaries.Add("Measure", dataLogic.GetMeasures());
            model.Dictionaries.Add("Vat", dataLogic.GetVats());

            return(View(model));
        }