Example #1
0
 public static void UpdateApplicationsinDatabase(ExchangeDbContext db, IEnumerable <StudentApplication> newUploadedApplications)
 {
     using (var transaction = db.Database.BeginTransaction())
     {
         db.StudentApplications.RemoveRange(db.StudentApplications);
         db.SaveChanges();
         db.AddRange(newUploadedApplications);
         db.SaveChanges();
         transaction.Commit();
     }
 }
Example #2
0
        public void Save(SellOrder order)
        {
            var dbOrder = _dbContext.SellOrders.FirstOrDefault(o => o.Id == order.Id);

            if (dbOrder != null)
            {
                dbOrder.Qty = order.Qty;
            }
            else
            {
                _dbContext.SellOrders.Add(order);
            }

            _dbContext.SaveChanges();
        }
 public void Apply(ExchangeDbContext dbContext)
 {
     dbContext.Deals.AddRange(Deals);
     dbContext.BuyOrders.AddRange(BuyOrders);
     dbContext.SellOrders.AddRange(SellOrders);
     dbContext.SaveChanges();
 }
        public void GetValuteFromXml()
        {
            XmlSerializer deserializer = new XmlSerializer(typeof(List <Valuta>));
            TextReader    reader       = new StreamReader(@"C:/Users/Antonio/Desktop/valute.xml");
            object        obj          = deserializer.Deserialize(reader);
            var           valute       = (List <Valuta>)obj;

            foreach (var valuta in valute)
            {
                Valuta ids = _context.Valute.Find(valuta.ValutaId);

                if (ids == null)
                {
                    valuta.DatumAzuriranja = DateTime.Now;
                    _context.Add(valuta);
                }
                else
                {
                    ids.ValutaId        = valuta.ValutaId;
                    ids.KorisnikId      = valuta.KorisnikId;
                    ids.Naziv           = valuta.Naziv;
                    ids.Tecaj           = valuta.Tecaj;
                    ids.SlikaValute     = valuta.SlikaValute;
                    ids.AktivnoOd       = valuta.AktivnoOd;
                    ids.AktivnoDo       = valuta.AktivnoDo;
                    ids.DatumAzuriranja = valuta.DatumAzuriranja;

                    _context.Update(ids);
                }
                _context.SaveChanges();
            }
            reader.Close();
        }
Example #5
0
        public virtual void UpdateLine(ICollection <VoucherLine> entity)
        {
            foreach (var item in entity)
            {
                _db.Entry(item).State = EntityState.Modified;
            }

            _db.SaveChanges();
        }
        private static void IzvrsiTransakciju(
            BaznaTransakcija transakcija,
            bool validacija,
            IDictionary <string, List <string> > validacioneGreske)
        {
            using (var context = new ExchangeDbContext())
            {
                context.Transakcije.Add(transakcija);

                foreach (var finansijskaTransakcija in transakcija.FinansijskeTransakcije)
                {
                    var racun = context.RacuniBlagajne.FirstOrDefault(it => it.SifraValute.ToLower().Trim() == finansijskaTransakcija.SifraValuteRacunaBlagajne.ToLower().Trim());
                    if (racun == null)
                    {
                        DodajValidacionuGresku(validacioneGreske, "", "Ne postoji racun za valutu {finansijskaTransakcija.SifraValuteRacunaBlagajne}!");
                        if (validacija == false)
                        {
                            throw new Exception("Ne postoji racun za valutu {finansijskaTransakcija.SifraValuteRacunaBlagajne}");
                        }
                    }
                    else
                    {
                        if (finansijskaTransakcija.Smer == SmerFinansijskeTransakcije.Izlaz &&
                            racun.Stanje < finansijskaTransakcija.Iznos &&
                            transakcija.FinansijskeTransakcije.Any(it => it.RacunBlagajne.SifraValute == racun.SifraValute && it.Smer == SmerFinansijskeTransakcije.Ulaz) == false)
                        {
                            DodajValidacionuGresku(validacioneGreske, "IznosIz", $"Nema dovoljno sredstava na računu {racun.SifraValute}!");
                            if (validacija == false)
                            {
                                throw new Exception($"Nema dovoljno sredstava na računu {racun.SifraValute}!");
                            }
                        }
                        else
                        {
                            switch (finansijskaTransakcija.Smer)
                            {
                            case SmerFinansijskeTransakcije.Izlaz:
                                racun.Stanje -= finansijskaTransakcija.Iznos;
                                break;

                            default:
                                racun.Stanje += finansijskaTransakcija.Iznos;
                                break;
                            }
                        }
                    }
                }

                if (validacija == false)
                {
                    context.SaveChanges();
                }
            }
        }
Example #7
0
 public void SaveRange(IEnumerable <Deal> deals)
 {
     _context.Deals.AddRange(deals);
     _context.SaveChanges();
 }
        private static Dictionary <string, List <string> > IzvrsiInternal(StornoCmd cmd, bool validacija = false)
        {
            var rezultat = new Dictionary <string, List <string> >();

            using (var context = new ExchangeDbContext())
            {
                var transakcija = context.Transakcije.FirstOrDefault(it => it.Id == cmd.IdTransakcije);
                if (transakcija == null)
                {
                    DodajValidacionuGresku(rezultat, "", $"Transakcija sa Id-jem {cmd.IdTransakcije} ne postoji!!!");
                    if (validacija == false)
                    {
                        throw new Exception($"Transakcija sa Id-jem {cmd.IdTransakcije} ne postoji!!!");
                    }
                }
                else
                {
                    transakcija.Stornirana = true;

                    if (cmd.Opis != null)
                    {
                        transakcija.Opis = cmd.Opis;
                    }

                    var brojac = transakcija.FinansijskeTransakcije.Max(it => it.Redosled);

                    var stornoFinansijskeTransakcije = transakcija.FinansijskeTransakcije.Select(
                        it => new FinansijskaTransakcija
                    {
                        Redosled = ++brojac,
                        Iznos    = it.Iznos,
                        Smer     = (it.Smer == SmerFinansijskeTransakcije.Ulaz) ? SmerFinansijskeTransakcije.Izlaz : SmerFinansijskeTransakcije.Ulaz,
                        SifraValuteRacunaBlagajne = it.SifraValuteRacunaBlagajne
                    }).ToList();

                    foreach (var finansijskaTransakcija in stornoFinansijskeTransakcije)
                    {
                        var racun = context.RacuniBlagajne.FirstOrDefault(it =>
                                                                          it.SifraValute.ToLower().Trim() ==
                                                                          finansijskaTransakcija.SifraValuteRacunaBlagajne.ToLower().Trim());

                        if (racun == null)
                        {
                            DodajValidacionuGresku(rezultat, "", $"Ne postoji racun za valutu {finansijskaTransakcija.SifraValuteRacunaBlagajne}!!!");
                            if (validacija == false)
                            {
                                throw new Exception($"Ne postoji racun za valutu {finansijskaTransakcija.SifraValuteRacunaBlagajne}!!!");
                            }
                        }
                        else
                        {
                            if (racun.Stanje < finansijskaTransakcija.Iznos)
                            {
                                DodajValidacionuGresku(rezultat, "", $"Nema dovoljno sredstava na racunu {racun.SifraValute}!!!");
                                if (validacija == false)
                                {
                                    throw new Exception($"Nema dovoljno sredstava na racunu {racun.SifraValute}!!!");
                                }
                            }
                            else
                            {
                                switch (finansijskaTransakcija.Smer)
                                {
                                case SmerFinansijskeTransakcije.Izlaz:
                                    racun.Stanje -= finansijskaTransakcija.Iznos;
                                    break;

                                default:
                                    racun.Stanje += finansijskaTransakcija.Iznos;
                                    break;
                                }
                                transakcija.FinansijskeTransakcije.Add(finansijskaTransakcija);
                            }
                        }
                    }

                    if (validacija == false)
                    {
                        context.SaveChanges();
                    }
                }
            }

            return(rezultat);
        }
Example #9
0
        public static void SeedDatabase(ExchangeDbContext db)
        {
            /* Load default approvals */
            using (var reader = new StreamReader("api/AdminTools/approved-unit-sets.csv"))
            {
                var(errors, unitSets) = EquivalenceUnitSetsReader.LoadEquivalencies(reader);
                if (errors != null)
                {
                    Console.WriteLine(errors);
                    return;
                }
                EquivalenceUnitSetsReader.UpdateEquivalenciesInDatabase(db, unitSets);
            }

            db.Add(new StudentApplication
            {
                SubmittedAt               = DateTime.Now,
                LastUpdatedAt             = DateTime.Now,
                StudentName               = "Henry Hollingworth",
                StudentNumber             = "21471423",
                Major1st                  = "Computer Science",
                ExchangeUniversityCountry = "Finalnd",
                ExchangeUniversityHref    = "http://finalnd.com",
                ExchangeUniversityName    = "Finland University",
                Status   = StudentApplicationStatus.Incomplete,
                UnitSets = new UnitSet[]
                {
                    new UnitSet
                    {
                        ExchangeUniversityCountry = "Finalnd",
                        ExchangeUniversityHref    = "http://finalnd.com",
                        ExchangeUniversityName    = "Finland University",
                        IsContextuallyApproved    = true,
                        IsEquivalent           = null,
                        EquivalentUWAUnitLevel = UWAUnitLevel.Two,
                        ExchangeUnits          = new ExchangeUnit[]
                        {
                            new ExchangeUnit
                            {
                                Code  = "MATH-HARD",
                                Title = "The Hardest Math",
                                Href  = "http://hard-math.com"
                            }
                        },
                        UWAUnits = new UWAUnit[]
                        {
                            new UWAUnit
                            {
                                Code  = "MATH-1001",
                                Title = "Mathematics I",
                                Href  = "http://uwa-unit.com"
                            },
                            new UWAUnit
                            {
                                Code  = "MATH-1002",
                                Title = "Mathematics II",
                                Href  = "http://uwa-unit.com"
                            }
                        },
                        Comments = "Very good!"
                    }
                }
            });
            db.Add(new StudentApplication
            {
                SubmittedAt               = DateTime.Now,
                LastUpdatedAt             = DateTime.Now,
                StudentName               = "Josh Ellis",
                StudentNumber             = "24579463",
                Major1st                  = "Computer Science",
                ExchangeUniversityCountry = "Finalnd",
                ExchangeUniversityHref    = "http://finalnd.com",
                ExchangeUniversityName    = "Holloween University",
                Status   = StudentApplicationStatus.New,
                UnitSets = new UnitSet[]
                {
                    new UnitSet
                    {
                        ExchangeUniversityCountry = "Finalnd",
                        ExchangeUniversityHref    = "http://finalnd.com",
                        ExchangeUniversityName    = "Finland University",
                        IsContextuallyApproved    = null,
                        IsEquivalent           = null,
                        EquivalentUWAUnitLevel = null,
                        ExchangeUnits          = new ExchangeUnit[]
                        {
                            new ExchangeUnit
                            {
                                Code  = "MATH-HARD",
                                Title = "The Hardest Math",
                                Href  = "http://hard-math.com"
                            }
                        },
                        UWAUnits = new UWAUnit[]
                        {
                            new UWAUnit
                            {
                                Code  = "MATH-1001",
                                Title = "Mathematics I",
                                Href  = "http://uwa-unit.com"
                            },
                            new UWAUnit
                            {
                                Code  = "MATH-1002",
                                Title = "Mathematics II",
                                Href  = "http://uwa-unit.com"
                            }
                        },
                        Comments = "Not a good choice"
                    }
                }
            });
            db.SaveChanges();
        }