public async Task <IActionResult> AssignSubscription(int userId, SubscriptionEnum subscription) { var user = await _userService.GetUserAsync(userId); await _subscriptionService.AssignSubscriptionAsync(userId, subscription); var mapped = _mapper.Map <UserWithSubscriptionResponse>(user); return(Created("", new ApiOkResponse(mapped))); }
public async Task <IActionResult> PostAsync([FromBody] SaveSubscriptionResource resource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetMessages())); } var subscriptions = _mapper.Map <SaveSubscriptionResource, Subscription>(resource); var result = await _subscriptionService.AssignSubscriptionAsync(subscriptions.CustomerId, subscriptions.SubscriptionPlanId, subscriptions.StartDate, subscriptions.ExpiryDate); if (!result.Success) { return(BadRequest(result.Message)); } var subscriptionsResource = _mapper.Map <Subscription, SubscriptionResource>(result.Resource); return(Ok(subscriptionsResource)); }