public IHttpActionResult Index([FromUri] string token, [FromBody] SubscriberVM model) { if (string.IsNullOrWhiteSpace(token) || !ModelState.IsValid) { return(BadRequest(ModelState)); } try { APIService.Subscription.UpdateSubscriber(model, token); return(Ok()); } catch { return(BadRequest(ModelState)); } }
public IHttpActionResult Index([FromBody] SubscriberVM model) { if (!ModelState.IsValid) { return(BadRequest()); } try { APIService.Subscription.UpdateSubscriber(model); return(Ok()); } catch { return(BadRequest(ModelState)); } }
public ActionResult Subscription(string msisdn, bool go, bool mobi, string heda, bool frmGame, long uID = 0) { try { ReturnMessage rm = null; ViewBag.heda = (string.IsNullOrEmpty(heda)) ? null : heda; bool isMobi = false; ViewBag.Go = go; ViewBag.frmGame = frmGame; if (Request.UserAgent.Contains("Mobi") == true) { isMobi = true; } ViewBag.IsMobile = isMobi; ViewBag.mtnNumber = string.IsNullOrEmpty(msisdn) ? null : msisdn; string subResponse = null; //Get App User Record var userRetVal = _NGSubscriptionsEntities.AppUser.Where(a => a.AppUserId == uID); AppUser appUser = null; if (userRetVal != null) { appUser = userRetVal.FirstOrDefault(); } SubscriberVM SVM; if (!string.IsNullOrEmpty(msisdn))//MTN Number { ReturnMessage mtnRetVal = null; mtnRetVal = _AppUserController.GetMTNSubscriptionDetails(msisdn, serviceShortcode); if (go && isMobi)//MTN Number with Subscription Clicked { //Initiate USSD Subscription new Thread(() => { LocalLogger.LogFileWrite( JsonConvert.SerializeObject(new LogVM() { Message = "Initiating USSD Subscription", LogData = msisdn })); }).Start(); if (mtnRetVal.Data == null) { if (appUser != null && !string.IsNullOrEmpty(appUser.szMobilePayer) && appUser.szMobilePayer.Trim() != msisdn.Trim()) { subResponse = MTNUSSDSubscription(uID, appUser.szMobilePayer, true, serviceShortcode, null, heda); } else { subResponse = MTNUSSDSubscription(uID, msisdn, true, serviceShortcode, null, heda); } ViewBag.responseMSG = subResponse; rm = new ReturnMessage() { Message = subResponse, Success = mtnRetVal.Success, Data = SVM = new SubscriberVM() { Subscriber = null, Exp = null, ServiceName = null, Status = null, Sub = null } }; } else { var subData = (GameData.GetMTNUserSubscriptionDetails_Result)mtnRetVal.Data; if (subData.Exp < DateTime.Now) { subResponse = MTNUSSDSubscription(uID, msisdn, true, serviceShortcode, null, heda); ViewBag.responseMSG = subResponse; } rm = new ReturnMessage() { Message = subResponse, Success = mtnRetVal.Success, Data = SVM = new SubscriberVM() { Subscriber = subData.Subscriber, Exp = subData.Exp, ServiceName = subData.ServiceName, Status = subData.Status, Sub = subData.Sub } }; } //else //{ // rm = new ReturnMessage() // { // Message = subResponse, // Success = mtnRetVal.Success, // Data = SVM = new SubscriberVM() // { // Exp = null, // ServiceName = null, // Status = null, // Sub = null // } // }; //} } else if (!go && isMobi)//MTN Number with Subscription NOT Clicked { if (mtnRetVal.Data == null) { rm = new ReturnMessage() { Message = subResponse, Success = mtnRetVal.Success, Data = SVM = new SubscriberVM() { Subscriber = null, Exp = null, ServiceName = null, Status = null, Sub = null } }; } else { var subData = (GameData.GetMTNUserSubscriptionDetails_Result)mtnRetVal.Data; ViewBag.responseMSG = null; rm = new ReturnMessage() { Message = subResponse, Success = mtnRetVal.Success, Data = SVM = new SubscriberVM() { Subscriber = subData.Subscriber, Exp = subData.Exp, ServiceName = subData.ServiceName, Status = subData.Status, Sub = subData.Sub } }; } } } else { //Pull Valid Login User Data from Session ReturnMessage retVal = null; if (uID > 0) { retVal = _AppUserController.GetSubscriptionDetails(uID, svcName, serviceShortcode); subResponse = retVal.Message; if (retVal.Data == null) { ViewBag.responseMSG = subResponse; rm = new ReturnMessage() { Message = subResponse, Success = retVal.Success, Data = SVM = new SubscriberVM() { Subscriber = null, Exp = null, ServiceName = null, Status = null, Sub = null } }; } else { var subData = (GetAppUserSubscriptionDetails_Result)retVal.Data; rm = new ReturnMessage() { Message = subResponse, Success = retVal.Success, Data = SVM = new SubscriberVM() { Subscriber = subData.Subscriber, Sub = subData.PeriodStart, Exp = subData.PeriodEnd, ServiceName = subData.Period, Status = subData.IsActive ? 1 : 0 } }; } } else { rm = new ReturnMessage() { Message = "Could not find user", Success = false, Data = SVM = new SubscriberVM() { Subscriber = null, Exp = null, ServiceName = null, Status = null, Sub = null } }; } } //Just for test of Auto Registration //ViewBag.IsMobile = true; //ViewBag.mtnNumber = "2348147911707"; ViewBag.fltwvSubscription = null; if (System.Web.HttpContext.Current.Session["fltwvSubscription"] != null) { ViewBag.fltwvSubscription = System.Web.HttpContext.Current.Session["fltwvSubscription"].ToString(); } System.Web.HttpContext.Current.Session["fltwvSubscription"] = null; return(View(rm)); } catch (Exception ex) { new Thread(() => { LocalLogger.LogFileWrite( JsonConvert.SerializeObject(new VIEWMODEL.LogVM() { Message = "Controller Method Error", LogData = ex })); }).Start(); return(View()); } }
public void Update(SubscriberVM model) { this.Email = model.Email == null ? this.Email : model.Email; this.IsSubscribedToResearches = model.IsSubscribedToResearches; this.SubscriptionTime = model.SubscriptionTime == 0 ? this.SubscriptionTime : model.SubscriptionTime; }