예제 #1
0
        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)));
        }
예제 #2
0
        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));
        }