public async Task <IActionResult> GetLicenceSummaryAsync([FromBody] dynamic value) { SafeCentralLicenceDetail result = new SafeCentralLicenceDetail(); try { string svalue = Convert.ToString(value); dynamic partnerJsonEntity = JsonConvert.DeserializeObject(svalue); var subid = Convert.ToInt32(partnerJsonEntity["sid"].Value); Subscription subscription = _subscriptionService.GetById(subid); LicenceEnvironment le = _licenceEnvironmentService.GetBymanagerId(subscription.LicencingEnvironment); //Check Authorization status if (!IsAuthorised(subscription.LicenceKey)) { Response.StatusCode = (int)HttpStatusCode.Unauthorized; return(Json(string.Empty)); } if (subscription.LicencingEnvironment == (int)LicencingEnvironmentEnum.Development) { manager.Licence.Proxy.LsxDevCore lsxDevCore = new manager.Licence.Proxy.LsxDevCore(url: le.CoreURL, username: subscription.CoreAuthUsername, password: subscription.CoreAuthPassword, brandid: subscription.BrandId, campaignid: subscription.Campaign, logger: _logger); result = await lsxDevCore.GetLicenceDetailsAsync(subscription.LicenceKey); return(Json(result)); } else if (subscription.LicencingEnvironment == (int)LicencingEnvironmentEnum.Production) { manager.Licence.Proxy.Ls1Core Ls1Core = new manager.Licence.Proxy.Ls1Core(url: le.CoreURL, username: subscription.CoreAuthUsername, password: subscription.CoreAuthPassword, brandid: subscription.BrandId, campaignid: subscription.Campaign, logger: _logger); result = await Ls1Core.GetLicenceDetailsAsync(subscription.LicenceKey); return(Json(result)); } } catch (System.InvalidOperationException) { return(Json(result)); } catch (Exception ex) { _logger.LogError(ex.GetLogText("licapi_getlicencesummaryasync")); return(Json(ex.Message)); } return(Json("")); }
public async Task <IActionResult> DeactivateSeatAsync([FromBody] dynamic value) { bool result = false; try { string svalue = Convert.ToString(value); dynamic partnerJsonEntity = JsonConvert.DeserializeObject(svalue); var seatKey = partnerJsonEntity["sk"].Value; var subId = Convert.ToInt32(partnerJsonEntity["sid"].Value); Subscription subscription = _subscriptionService.GetById(subId); if (subscription == null) { return(Json(new { c = ResultCode.LicenceResultCodes.SubscriptionDoesntExist, d = "" })); } LicenceEnvironment le = _licenceEnvironmentService.GetBymanagerId(subscription.LicencingEnvironment); if (subscription.LicencingEnvironment == (int)LicencingEnvironmentEnum.Development) { manager.Licence.Proxy.LsxDevCore lsxDevCore = new manager.Licence.Proxy.LsxDevCore(url: le.CoreURL, username: subscription.CoreAuthUsername, password: subscription.CoreAuthPassword, brandid: subscription.BrandId, campaignid: subscription.Campaign, logger: _logger); var licresult = await lsxDevCore.GetLicenceDetailsAsync(subscription.LicenceKey); foreach (var item in licresult.ComputersCurrentlyInstalled) { if (item.Seats.Where(x => x.SeatKey == seatKey).Count() > 0) { foreach (var seat in item.Seats) { result = lsxDevCore.DeactivateSeat(seat.SeatKey); } } } if (result) { return(Json(new { c = ResultCode.Success, d = "" })); } else { return(Json(new { c = ResultCode.LicenceResultCodes.FailedToDeactivateSeat, d = "" })); } } else if (subscription.LicencingEnvironment == (int)LicencingEnvironmentEnum.Production) { manager.Licence.Proxy.Ls1Core Ls1Core = new manager.Licence.Proxy.Ls1Core(url: le.CoreURL, username: subscription.CoreAuthUsername, password: subscription.CoreAuthPassword, brandid: subscription.BrandId, campaignid: subscription.Campaign, logger: _logger); var licresult = await Ls1Core.GetLicenceDetailsAsync(subscription.LicenceKey); foreach (var item in licresult.ComputersCurrentlyInstalled) { if (item.Seats.Where(x => x.SeatKey == seatKey).Count() > 0) { foreach (var seat in item.Seats) { result = Ls1Core.DeactivateSeat(seat.SeatKey); } } } if (result) { return(Json(new { c = ResultCode.Success, d = "" })); } else { return(Json(new { c = ResultCode.LicenceResultCodes.FailedToDeactivateSeat, d = "" })); } } } catch (System.InvalidOperationException) { return(Json(new { c = ResultCode.Success, d = "" })); } catch (Exception ex) { _logger.LogError(ex.GetLogText("licapi_DeactivateSeat")); return(Json(new { c = ResultCode.GenericException, d = ex.Message })); } //something went wrong. return(Json(new { c = ResultCode.LicenceResultCodes.FailedToDeactivateSeat, d = "" })); }