public IActionResult Post([FromBody] PBSubscriptionRevenueViewModel viewModel)
        {
            try
            {
                if (viewModel == null)
                {
                    return(BadRequest());
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                PBSubscriptionRevenue item = Mapper.Map <PBSubscriptionRevenue>(viewModel);
                item.CreatedDate     = DateTime.Now;
                item.LastUpdatedDate = DateTime.Now;
                item.IsActive        = true;

                _pbSubscriptionRevenueRepository.Add(item);
                int save = _pbSubscriptionRevenueRepository.Save();

                if (save > 0)
                {
                    return(CreatedAtRoute("GetById", new { controller = "PBSubscriptionRevenue", id = item.Id }, item));
                }

                return(BadRequest());
            }
            catch (Exception exception)
            {
                //Do something with the exception
                return(StatusCode((int)HttpStatusCode.InternalServerError));
            }
        }
        public IActionResult Put(int id, [FromBody] PBSubscriptionRevenueViewModel viewModel)
        {
            try
            {
                if (viewModel == null)
                {
                    return(BadRequest());
                }

                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                PBSubscriptionRevenue singleById = _pbSubscriptionRevenueRepository.GetById(id);

                if (singleById == null)
                {
                    return(NotFound());
                }

                singleById.MSISDN           = viewModel.MSISDN;
                singleById.Cycle            = viewModel.Cycle;
                singleById.SubscriptionDate = viewModel.SubscriptionDate;
                singleById.SubscriptionType = viewModel.SubscriptionType;
                singleById.LastUpdatedBy    = viewModel.LastUpdatedBy;
                singleById.LastUpdatedDate  = DateTime.Now;

                _pbSubscriptionRevenueRepository.Update(singleById);
                int save = _pbSubscriptionRevenueRepository.Save();

                if (save > 0)
                {
                    return(Ok(Mapper.Map <PBSubscriptionRevenueViewModel>(singleById)));
                }

                return(BadRequest());
            }
            catch (Exception exception)
            {
                //Do something with the exception
                return(StatusCode((int)HttpStatusCode.InternalServerError));
            }
        }