/// <summary>
        /// Filters a list electric bike in the station base on bike category
        /// </summary>
        /// <param name="stationId">The station you want to filter list of bike</param>
        /// <returns>Return the list base on bike category</returns>
        public List <BaseBike> GetListElectricsInStation(int stationId)
        {
            IEnumerable <BaseBike> baseBikes = connecter.SqlData.BaseBikes.Where(x => x.StationId == stationId && x.Category == "electric");

            baseBikes = baseBikes.Select(x =>
            {
                ElectricBikeTable electricBike = connecter.SqlData.ElectricBikes.Find(x.BikeId);
                return(new ElectricBike(x, electricBike));
            });
            return(baseBikes.ToList());
        }
        /// <summary>Get bike by QR code</summary>
        /// <param name="QRCode">QR Code you want to find</param>
        /// <returns>Return the bike with specified QR Code or null if not found</returns>
        public BaseBike GetBikeByQRCode(string QRCode)
        {
            BaseBike baseBike = connecter.SqlData.BaseBikes.SingleOrDefault(x => x.QRCode == QRCode);
            BaseBike result   = null;

            if (baseBike.Category == "bike")
            {
                result = new Bike(baseBike);
            }
            else if (baseBike.Category == "tandem")
            {
                result = new Tandem(baseBike);
            }
            else if (baseBike.Category == "electric")
            {
                ElectricBikeTable electricBike = connecter.SqlData.ElectricBikes.Find(baseBike.BikeId);
                result = new ElectricBike(baseBike, electricBike);
            }
            return(result);
        }
        /// <summary>
        /// Get bike by bike's id
        /// </summary>
        /// <param name="id">the bike's id you want to find</param>
        /// <returns>Return the bike with specified ID or null if not found</returns>
        public BaseBike GetBikeById(int id)
        {
            BaseBike baseBike = connecter.SqlData.BaseBikes.Find(id);
            BaseBike result   = null;

            if (baseBike.Category == "bike")
            {
                result = new Bike(baseBike);
            }
            else if (baseBike.Category == "tandem")
            {
                result = new Tandem(baseBike);
            }
            else if (baseBike.Category == "electric")
            {
                ElectricBikeTable electricBike = connecter.SqlData.ElectricBikes.Find(baseBike.BikeId);
                result = new ElectricBike(baseBike, electricBike);
            }
            return(result);
        }