public IActionResult Post([FromBody] PBOnDemandViewModel viewModel) { try { if (viewModel == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } PBOnDemand item = Mapper.Map <PBOnDemand>(viewModel); item.CreatedDate = DateTime.Now; item.LastUpdatedDate = DateTime.Now; item.IsActive = true; _pbOnDemandRepository.Add(item); int save = _pbOnDemandRepository.Save(); if (save > 0) { return(CreatedAtRoute("GetById", new { controller = "PBOnDemand", id = item.Id }, item)); } return(BadRequest()); } catch (Exception exception) { //Do something with the exception return(StatusCode((int)HttpStatusCode.InternalServerError)); } }
private void SaveAllPBNumbers(string numbers, string address, string msisdnNumber, string pbNumbers, BDAppsRepository bdapps) { PBOnDemand pbOnDemandToUpdate = PBOnDemandRepository.GetAll().FirstOrDefault(oItem => oItem.MSISDN == msisdnNumber && oItem.Keyword == _configurationHelper.SmsKeyword); if (pbOnDemandToUpdate != null) { string concatePBNumbers = pbOnDemandToUpdate.PBNo + "," + pbNumbers; pbOnDemandToUpdate.PBNo = concatePBNumbers.Split(',').Distinct().Aggregate((a, b) => a.Trim() + "," + b.Trim()).ToString(); pbOnDemandToUpdate.LastUpdatedDate = DateTime.Now; PBOnDemandRepository.Update(pbOnDemandToUpdate); PBOnDemandRepository.Save(); } else { PBOnDemand pbOnDemand = new PBOnDemand(); pbOnDemand.MSISDN = msisdnNumber; pbOnDemand.Keyword = numbers.Substring(0, 3).ToUpper().Trim(); pbOnDemand.PBNo = pbNumbers; pbOnDemand.CreatedBy = pbOnDemand.MSISDN; pbOnDemand.LastUpdatedBy = pbOnDemand.MSISDN; pbOnDemand.PrizeDate = DateTime.Now; pbOnDemand.CreatedDate = DateTime.Now; pbOnDemand.LastUpdatedDate = DateTime.Now; pbOnDemand.IsActive = true; pbOnDemand.IsActiveSubscription = bdapps.IsActiveSubscriber(address); PBOnDemandRepository.Add(pbOnDemand); PBOnDemandRepository.Save(); } }
private void UpdateSubscription(string address, bool activate) { string MSISDN = address.Split(':').LastOrDefault(); List <PBOnDemand> userOnDemandList = _pbOnDemandRepository.GetAll().Where(oItem => oItem.MSISDN == MSISDN).ToList(); userOnDemandList.ForEach(oItem => { oItem.IsActiveSubscription = activate; oItem.LastUpdatedDate = DateTime.Now; }); _pbOnDemandRepository.Save(); }