/// <summary>
        /// Updates the asynchronous.
        /// </summary>
        /// <param name="model">The Rate Plan Records.</param>
        /// <returns>
        /// Update Record Async
        /// </returns>
        /// <exception cref="ArgumentNullException">Room Configuration</exception>
        public async Task <int> UpdateAsync(RatePlanModel model)
        {
            try
            {
                if (model == null)
                {
                    throw new ArgumentNullException("vendor");
                }

                return(await this.ratePlanRepository.UpdateAsync(model));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        /// <summary>
        /// Updates the asynchronous.
        /// </summary>
        /// <param name="model">The Rate Plan Records.</param>
        /// <returns>
        /// Update Record Async
        /// </returns>
        /// <exception cref="ArgumentNullException">Vendor</exception>
        public async Task <int> AddAsync(RatePlanModel model)
        {
            try
            {
                if (model == null)
                {
                    throw new ArgumentNullException("Vendor");
                }

                await this.ratePlanRepository.InsertAsync(model);

                return(model.RP_Id);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }