public IActionResult Delete(int id)
        {
            try
            {
                PBSubscriptions singleById = _pbSubscriptionsRepository.GetById(id);

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

                _pbSubscriptionsRepository.Delete(singleById);
                int save = _pbSubscriptionsRepository.Save();

                if (save > 0)
                {
                    return(NoContent());
                }

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

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

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

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

                if (save > 0)
                {
                    return(CreatedAtRoute("GetById", new { controller = "PBSubscriptions", 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] PBSubscriptionsViewModel viewModel)
        {
            try
            {
                if (viewModel == null)
                {
                    return(BadRequest());
                }

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

                PBSubscriptions singleById = _pbSubscriptionsRepository.GetById(id);

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

                singleById.PBNo            = viewModel.PBNo;
                singleById.MSISDN          = viewModel.MSISDN;
                singleById.Keyword         = viewModel.Keyword;
                singleById.SubStartedDate  = viewModel.SubStartedDate;
                singleById.PrizeDate       = viewModel.PrizeDate;
                singleById.LastUpdatedBy   = viewModel.LastUpdatedBy;
                singleById.LastUpdatedDate = DateTime.Now;

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

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

                return(BadRequest());
            }
            catch (Exception exception)
            {
                //Do something with the exception
                return(StatusCode((int)HttpStatusCode.InternalServerError));
            }
        }
        public IActionResult Get(int id)
        {
            try
            {
                PBSubscriptions pbSubscriptions = _pbSubscriptionsRepository.GetById(id);

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

                return(Ok(Mapper.Map <PBSubscriptionsViewModel>(pbSubscriptions)));
            }
            catch (Exception exception)
            {
                //Do something with the exception
                return(StatusCode((int)HttpStatusCode.InternalServerError));
            }
        }
        private void SaveSubscriptionData(string content, string address)
        {
            string numbers = content.Substring(7).Trim(); // get the numbers
            string MSISDN = address.Split(':').LastOrDefault();

            PBSubscriptions pbSubscriptions = new PBSubscriptions()
            {
                MSISDN = MSISDN,
                PBNo = numbers,
                CreatedBy = MSISDN,
                LastUpdatedBy = MSISDN,
                PrizeDate = DateTime.Now,
                SubStartedDate=DateTime.Now,
                CreatedDate = DateTime.Now,
                LastUpdatedDate = DateTime.Now,
                IsActive = true
            };
            PBSubscriptionsRepository.Add(pbSubscriptions);
            PBSubscriptionsRepository.Save();
        }
 public void Delete(PBSubscriptions toDelete)
 {
     _ctx.PBSubscriptions.Remove(toDelete);
 }
 public PBSubscriptions Update(PBSubscriptions toUpdate)
 {
     _ctx.PBSubscriptions.Update(toUpdate);
     return(toUpdate);
 }
 public PBSubscriptions Add(PBSubscriptions toAdd)
 {
     _ctx.PBSubscriptions.Add(toAdd);
     return(toAdd);
 }