コード例 #1
0
ファイル: BookingData.cs プロジェクト: techiew/HotelAdmin
        //Henter alle registrerte bookinger i databasen som ikke har utgått (før dags dato)
        public List <Booking> GetData()
        {
            DataRow[] result = DatabaseManager.SelectFromTable("booking", "tildato >= #" + DateTime.Now.ToString(dateFormat) + "#");
            //DatabaseManager.Query("SELECT * FROM booking WHERE tildato >= CURDATE();");

            if (result == null)
            {
                Console.WriteLine("BookingData.GetData: Datasettet er tomt");
                return(null);
            }

            List <Booking> bookings = new List <Booking>();
            int            bookingID;
            int            roomID;
            int            orderID;
            string         fromDate;
            string         toDate;

            foreach (DataRow row in result)
            {
                bookingID = (int)row["bookingID"];
                roomID    = (int)row["romID"];
                orderID   = (int)row["bestillingID"];
                fromDate  = ((DateTime)row["fradato"]).ToShortDateString();
                toDate    = ((DateTime)row["tildato"]).ToShortDateString();
                bookings.Add(new Booking(bookingID, roomID, orderID, fromDate, toDate));
            }

            return(bookings);
        }
コード例 #2
0
ファイル: BookingData.cs プロジェクト: techiew/HotelAdmin
        // Finn alle rom som er ledige for en periode
        public static List <Room> GetAvailableRoomsForPeriod(string fromDate, string toDate)
        {
            //DataSet result = DatabaseManager.Query
            //	(
            //	"SELECT romID FROM rom WHERE romID NOT IN (SELECT romID FROM booking WHERE tildato >= CURDATE() AND (fradato <= '" + toDate + "') AND ('" + fromDate + "' <= tildato));"
            //	);

            string fromDateCorrect = (DateTime.Parse(fromDate)).ToString(dateFormat);
            string toDateCorrect   = (DateTime.Parse(toDate)).ToString(dateFormat);
            string curDate         = DateTime.Now.ToString(dateFormat);

            string subString = "";

            DataRow[] sub = DatabaseManager.SelectFromTable
                            (
                "booking",
                "tildato >= #" + curDate + "# AND (fradato <= #" + toDateCorrect + "#) AND (#" + fromDateCorrect + "# <= tildato)"
                            );

            int roomID;

            foreach (DataRow row in sub)
            {
                roomID     = (int)row["romID"];
                subString += roomID + ",";
            }

            if (subString.Length > 0)
            {
                subString = subString.Remove(subString.Length - 1);
            }
            else
            {
                subString = "-999";
            }

            DataRow[] result = DatabaseManager.SelectFromTable
                               (
                "rom",
                "romID NOT IN (" + subString + ")"
                               );

            if (result == null)
            {
                Console.WriteLine("BookingData.GetAvailableRoomsForPeriod: Datasettet er tomt");
                return(new List <Room>());
            }

            List <Room> availableRooms = new List <Room>();

            foreach (DataRow row in result)
            {
                roomID = (int)row["romID"];
                availableRooms.Add(new Room(roomID, "Ukjent", false, false));
            }

            return(availableRooms);
        }
コード例 #3
0
        // Fyll inn nødvendig data i drop-in skjemaet
        private void GetDropInData()
        {
            DataRow[] result = DatabaseManager.SelectFromTable("romtyper", "romtype <> 'xdxdxdxd'");
            //DatabaseManager.Query("SELECT romtype FROM romtyper;"); // TODO: må fikse han karen her, funker ikke i offline modus
            string roomType;

            if (result == null)
            {
                return;
            }

            foreach (DataRow row in result)
            {
                roomType = (string)row["romtype"];
                dropInComboBox.Items.Add(CultureInfo.CurrentCulture.TextInfo.ToTitleCase(roomType.ToLower()));
            }

            dropInComboBox.SelectedIndex = 0;
        }
コード例 #4
0
ファイル: OrderData.cs プロジェクト: techiew/HotelAdmin
        // Hent data som vi trenger om bestillinger
        public List <Order> GetData()
        {
            DataTable result = null;

            try {
                result = DatabaseManager.SelectFromTable("bestillinger", "tildelt = false").CopyToDataTable();
            } catch (InvalidOperationException) {
            }

            if (result == null)
            {
                Console.WriteLine("OrderData.GetData: Datasettet er tomt");
                return(null);
            }

            List <Order> OrderList = new List <Order>();
            int          orderID;
            string       roomType;
            DateTime     fromDate;
            DateTime     toDate;
            string       assigned;
            int          phoneNumber;
            string       firstName;
            string       lastName;

            foreach (DataRow row in result.Rows)
            {
                orderID     = (int)row["bestillingID"];
                roomType    = (string)row["romtype"];
                fromDate    = (DateTime)row["fradato"];
                toDate      = (DateTime)row["tildato"];
                assigned    = (string)row["tildelt"]; // == "false") ? false : true;   marius bøll
                phoneNumber = (int)row["tlf"];
                firstName   = (string)row["fornavn"];
                lastName    = (string)row["etternavn"];
                string fromDateString = fromDate.ToShortDateString();
                string toDateString   = toDate.ToShortDateString();
                Order  order          = new Order(orderID, roomType, fromDateString, toDateString, assigned, phoneNumber, firstName, lastName);
                OrderList.Add(order);
            }

            return(OrderList);
        }
コード例 #5
0
ファイル: BookingData.cs プロジェクト: techiew/HotelAdmin
        // Sjekk om et angitt rom er ledig for en gitt periode
        public static bool IsRoomOccupiedForPeriod(int roomID, string fromDate, string toDate)
        {
            //DataSet result = DatabaseManager.Query
            //(
            //"SELECT romID FROM booking WHERE tildato >= CURDATE() AND romID = " + roomID + " AND (fradato <= '" + toDate + "') AND ('" + fromDate + "' <= tildato);"
            //);

            string fromDateCorrect = (DateTime.Parse(fromDate)).ToString(dateFormat);
            string toDateCorrect   = (DateTime.Parse(toDate)).ToString(dateFormat);
            string curDate         = DateTime.Now.ToString(dateFormat);

            int count = DatabaseManager.SelectFromTable
                        (
                "booking",
                "tildato >= #" + curDate + "#" +
                " AND romID = " + roomID + " AND (fradato <= #" + toDateCorrect + "#)" +
                " AND (#" + fromDateCorrect + "# <= tildato);"
                        ).Length;

            return((count == 0) ? false : true);
        }