public static async Task DodajKantone(IServiceProvider serviceProvider)
        {
            var _kantonService = serviceProvider.GetRequiredService <IKanton>();
            List <Tuple <string, string> > kantoni = new List <Tuple <string, string> > {
                Tuple.Create("Kanton Sarajevo", "KS"),
                Tuple.Create("Zeničko-Dobojski", "ZDK"),
                Tuple.Create("Hercegovačko-neretvanski", "HNK"),
                Tuple.Create("Zapadnohercegovački", "ZHK"),
                Tuple.Create("Srednjobosanski", "SBK"),
                Tuple.Create("Bosansko-podrinjski", "BPK"),
                Tuple.Create("Tuzlanski", "TK"),
                Tuple.Create("Posavski", "PK"),
                Tuple.Create("Unsko-sanski", "USK"),
                Tuple.Create("Hercegbosanski", "HBK")
            };

            foreach (var t in kantoni)
            {
                var kanton = new Kanton
                {
                    Naziv  = t.Item1,
                    Oznaka = t.Item2
                };
                await _kantonService.KreirajKanton(kanton);
            }
        }
        public async Task <IActionResult> Promijeni(int id, [Bind("Id,Naziv")] Kanton kanton)
        {
            if (id != kanton.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(kanton);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!KantonExists(kanton.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Prikazi)));
            }
            return(View(kanton));
        }
예제 #3
0
 public async Task KreirajKanton(Kanton kanton)
 {
     if (!KantonPostoji(kanton))
     {
         _context.Kanton.Add(kanton);
         await _context.SaveChangesAsync();
     }
 }
예제 #4
0
        private TaxConfiguration GetSteuerkonfiguration(Kanton kanton, Betragsart betragsart)
        {
            //Konfigurationen laden und holen
            IList<TaxConfiguration> configurations = _taxconfigurationRepository.FindByKantonAndBetragsart(kanton, betragsart);

            if (configurations.Count != 1) throw new ApplicationException(string.Format("Es sollte genau eine Steuerkonfiguration geben! Es gibt aber: {0}! Suchkriterien: Steueramt: {1}, Betragsart: {2}", configurations.Count, kanton, betragsart));

            return configurations[0];
        }
예제 #5
0
        public TaxStrategyBase GetStrategy(Kanton kanton, Betragsart art)
        {
            TaxConfiguration configuration = GetSteuerkonfiguration(kanton, art);

            Type strategyType = _strategyRegistry[configuration.Strategieart];
            if (strategyType == null) throw new Exception(string.Format("Steuerberechnungsstrategie ist unbekannt: {0}!", configuration.Strategieart));

            TaxStrategyBase strategy = (TaxStrategyBase) Activator.CreateInstance(strategyType, new object[] { configuration });
            return strategy;
        }
        public ActionResult kantonSnimi(string Naziv, int Drzava)
        {
            mssql  s = new mssql();
            Kanton k = new Kanton();

            k.Naziv  = Naziv;
            k.Drzava = Drzava;
            k.Drzave = s.Drzave.SingleOrDefault(x => x.Id == Drzava);
            s.Kanton.Add(k);
            s.SaveChanges();

            return(RedirectToAction("KantonDodaj"));
        }
예제 #7
0
        private bool KantonPostoji(Kanton kanton)
        {
            var kantoni = GetKantoni();

            foreach (var k in kantoni)
            {
                if (k.Naziv == kanton.Naziv)
                {
                    return(true);
                }
            }
            return(false);
        }
        public async Task <IActionResult> Dodaj([Bind("Id,Naziv")] Kanton kanton)
        {
            if (ModelState.IsValid)
            {
                _context.Add(kanton);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Prikazi)));
            }

            var model = _context.Kanton.ToList();

            return(View("Prikazi", model));
        }
예제 #9
0
        public IActionResult Snimi(KantonDodajVM input)
        {
            if (!ModelState.IsValid)
            {
                return(View("Dodaj", input));
            }

            Kanton noviKanton = new Kanton()
            {
                Naziv         = input.Naziv,
                SkraceniNaziv = input.SkraceniNaziv
            };

            _context.Kantoni.Add(noviKanton);

            _context.SaveChanges();

            return(RedirectToAction("Index"));
        }
        public decimal Calculate(Kanton kanton, Betragsart art, decimal betrag)
        {
            TaxStrategyBase strategy = TaxStrategyFactory.GetInstance().GetStrategy(kanton, art);

            return strategy.Calculate(betrag);
        }
 public IList<TaxConfiguration> FindByKantonAndBetragsart(Kanton kanton, Betragsart betragsart)
 {
     throw new NotImplementedException();
 }