Ejemplo n.º 1
0
        public ActionResult Kambariu_uzimtumo_ataskaitos_langas(int hotelid)
        {
            if (hotelid > 0)
            {
                ViewData["code"] = hotelid;
            }
            RoomsBusynessViewModel model = new RoomsBusynessViewModel();

            return(View(model));
        }
Ejemplo n.º 2
0
        public ActionResult CreateReport(RoomsBusynessViewModel model, int hotelid)
        {
            TimeSpan                    xd     = model.EndTime - model.StartTime;
            List <Kambarys>             rooms  = repository.Set <Kambarys>().Where(x => x.fk_Viesbutisid == hotelid).ToList();
            Viesbutis                   hotel  = repository.Set <Viesbutis>().Find(hotelid);
            RoomsReportResultsViewModel model2 = new RoomsReportResultsViewModel();

            model2.Title     = hotel.pavadinimas;
            model2.StartTime = model.StartTime;
            model2.EndTime   = model.EndTime;
            List <RoomResult> results = new List <RoomResult>();

            foreach (var item in rooms)
            {
                RoomResult result = new RoomResult();
                result.Number = item.numeris;
                List <Rezervacijos_kambarys> data = repository.Set <Rezervacijos_kambarys>().Where(x => x.fk_Kambarysid == item.id).ToList();
                double count = 0;
                foreach (var item2 in data)
                {
                    Rezervacija data2 = repository.Set <Rezervacija>().Find(item2.fk_Rezervacijaid);
                    if (data2.rezervacijos_pradzia >= model.EndTime)
                    {
                        count += 0;
                    }
                    if (data2.rezervacijos_pradzia >= model.StartTime && data2.rezervacijos_pabaiga <= model.EndTime)
                    {
                        count += data2.rezervacijos_pabaiga.Subtract(data2.rezervacijos_pradzia).TotalDays;
                    }
                    if (data2.rezervacijos_pradzia >= model.StartTime && data2.rezervacijos_pradzia < model.EndTime && data2.rezervacijos_pabaiga > model.EndTime)
                    {
                        count += model.EndTime.Subtract(data2.rezervacijos_pradzia).TotalDays;
                    }
                }

                double lol = xd.TotalDays;
                result.Busyness = count * 100 / lol;
                results.Add(result);
            }
            model2.results = results;
            return(View(model2));
        }