public Models.RoomService CreateRoomService(RoomServiceDto roomServiceDto) { using IDbConnection database = new SqlConnection(DatabaseConnectionString); if (CheckIfReservationExist(roomServiceDto.ReservationId) == null) { return(null); } const string roomServiceQuery = "INSERT INTO Hotel.RoomService VALUES (@reservationId, @date); SELECT * FROM Hotel.RoomService WHERE id = SCOPE_IDENTITY()"; var roomService = database.QueryFirst <RoomServiceDao>(roomServiceQuery, new { reservationId = roomServiceDto.ReservationId, date = DateTime.Now }); var orderItems = new List <int>(roomServiceDto.OrderId); orderItems.ForEach(item => { if (CheckIfItemExist(item) == null) { return; } var roomServiceFoodDao = new RoomServiceItemDao() { RoomServiceId = roomService.Id, ItemId = item }; using IDbConnection connection = new SqlConnection(DatabaseConnectionString); const string insertQuery = "INSERT INTO Hotel.RoomService_Item VALUES (@roomServiceId, @itemId)"; connection.Execute(insertQuery, roomServiceFoodDao); }); return(TransformDaoToBusinessLogicRoomService(roomService)); }
public ActionResult <Models.RoomService> CreateReservation(RoomServiceDto roomServiceDto) { return(_roomService.CreateRoomService(roomServiceDto)); }