public Faktura skapaFaktura(int bokningsNr)
        {
            Bokning B = BoknRepo.GetBokning(bokningsNr);

            foreach (Bok b in B.böcker)
            {
                b.bokning = null;
            }

            int FNr = FakRepo.fakturor.Count + 1;

            DateTime endDate = DateTime.Today;
            double   pris    = 0;

            TimeSpan ts = endDate - B.endDate;

            pris = ts.Days * 10;

            if (pris <= 0)
            {
                pris = 0;
            }

            Faktura F = new Faktura(FNr, pris, B, B.böcker, B.startDate, endDate);

            FakRepo.AddFaktura(F);

            BoknRepo.DeleteBokning(B.BokningsNr);


            return(F);
        }
예제 #2
0
        public Faktura ÅterlämnaMarkeradeBöckerOchGenereraFaktura(Bokning valdBokning, List <Bok> valdaBöcker)
        {
            var återlämningsDatum = DateTime.Now;

            //faktura
            int fakturaID;

            if (valdBokning.FakturaLista == null)
            {
                fakturaID = 0;
            }
            else
            {
                fakturaID = valdBokning.FakturaLista.Count();
            }


            string fakturaNummer = valdBokning.BokningsNummer + fakturaID.ToString();

            var nyaTotalPriset = BeräknaTotalPris(valdaBöcker, återlämningsDatum, valdBokning);

            var     förfalloDatum = återlämningsDatum.AddDays(30);
            Faktura f             = new Faktura(fakturaNummer, nyaTotalPriset, återlämningsDatum, förfalloDatum, valdBokning, valdaBöcker);

            LäggTillFaktura(f);

            return(f);
        }
예제 #3
0
 public Faktura(string fakturanummer, int totalpris, DateTime startDatum, DateTime förfallodatum, Bokning bokning, List <Bok> återlämnadeBöcker)
 {
     FakturaNummer     = fakturanummer;
     Totalpris         = totalpris;
     StartDatum        = startDatum;
     FörfalloDatum     = förfallodatum;
     faktureradBokning = bokning;
     faktureradeBöcker = återlämnadeBöcker;
 }
예제 #4
0
 public Faktura(int fakturaId, double pris, Bokning bokning, List <Bok> böcker, DateTime startDate, DateTime endDate)
 {
     this.FakturaId = fakturaId;
     this.Pris      = pris;
     this.bokning   = bokning;
     this.böcker    = böcker;
     this.endDate   = DateTime.Today;
     this.startDate = bokning.startDate;
 }
예제 #5
0
 public int BeräknaTotalPris(List <Bok> böcker, DateTime återlämningsDatum, Bokning bokning)
 {
     foreach (Bok bok in böcker)
     {
         if (återlämningsDatum > bokning.SlutDatum)
         {
             int TotalPris = Convert.ToInt32(((återlämningsDatum - bokning.SlutDatum).TotalDays)) * 10;
             return(TotalPris);
         }
     }
     return(0);
 }
        //Metod för att hämta en bokning i listan
        public Bokning GetBokning(int BokningsNr)
        {
            Bokning b = null;

            foreach (Bokning B in Bokningar)
            {
                if (B.BokningsNr == BokningsNr)
                {
                    b = B;
                }
            }

            return(b);
        }
예제 #7
0
        public Bokning SparaBokning(string medlemsnummer, IEnumerable <Bok> selectedItems, DateTime startdatum)
        {
            string bokningsnummer = (HämtaAllaBokningar().Count() + 1).ToString();
            var    startDatum     = startdatum;
            var    slutDatum      = startDatum.AddDays(14);
            var    expedit        = HämtaExpeditMedID(BibliotekController.inloggadExpeditID);
            var    medlem         = HämtaMedlemMedID(medlemsnummer);

            List <Bok> valdaBöcker = new List <Bok>();

            foreach (Bok bok in selectedItems)
            {
                valdaBöcker.Add(bok);
            }



            Bokning b = new Bokning(bokningsnummer, startDatum, slutDatum, expedit, medlem, valdaBöcker);

            LäggTillBokning(b);
            return(b);
        }
예제 #8
0
        //EN metod som skapar en bokning
        public Bokning skapaBokning(int MedlemsNr, List <Bok> böcker, int anstNr, BusinessManager bm)
        {
            Medlem   M          = bm.MedRepo.GetMedlem(MedlemsNr);
            Anställd A          = bm.GetAnställd(anstNr);
            DateTime start      = DateTime.Today;
            DateTime end        = start.AddDays(7);
            int      BokningsNr = bm.BoknRepo.Bokningar.Count + 1;

            Bokning B = new Bokning(M, A, BokningsNr, start, end, böcker);

            A.bokningar.Add(B);
            M.bokningar.Add(B);
            //Bokningar.Add(B);

            foreach (Bok bok in B.böcker)
            {
                bok.bokning = B;
            }


            return(B);
        }
예제 #9
0
 public void UppdateraBokning(Bokning bokning)
 {
     BoknRep.Uppdatera(bokning);
 }
예제 #10
0
 public void TaBortBokning(Bokning bokning)
 {
     BoknRep.TaBort(bokning);
 }
예제 #11
0
 public void LäggTillBokning(Bokning bokning)
 {
     BoknRep.LäggTill(bokning);
 }
 //Metod för att lägga in en bokning i Bokningslistan
 public void AddBokning(Bokning B)
 {
     Bokningar.Add(B);
 }