Exemple #1
0
        public int Insert(SubscriptionInsertModel subscriptionInsertModel)
        {
            int result = 0;

            if (subscriptionInsertModel == null)
            {
                result = 0;
                return(result);
            }


            #region Check duplicate
            Subscription existingSubscription = null;

            try
            {
                existingSubscription = _uow
                                       .GetRepository <Subscription>()
                                       .GetAll()
                                       .FirstOrDefault(s =>
                                                       s.MenteeId == subscriptionInsertModel.MenteeId &&
                                                       s.ChannelId == subscriptionInsertModel.ChannelId);
            }
            catch (Exception e)
            {
                throw e;
            }

            if (existingSubscription != null)
            {
                result = 1;
                return(result);
            }


            #endregion


            Subscription subscriptionInsert = new Subscription
            {
                SubscriptionId  = Guid.NewGuid(),
                ChannelId       = subscriptionInsertModel.ChannelId,
                MenteeId        = subscriptionInsertModel.MenteeId,
                IsDisable       = subscriptionInsertModel.IsDisable,
                TimeSubscripted = DateTime.Now
            };

            try
            {
                _uow.GetRepository <Subscription>().Insert(subscriptionInsert);
                _uow.Commit();
                result = 2;
            }
            catch (Exception e)
            {
                throw e;
            }

            return(result);
        }
Exemple #2
0
        public IActionResult Insert(SubscriptionInsertModel subscriptionInsertModel)
        {
            if (subscriptionInsertModel == null)
            {
                return(BadRequest("Subscription info must not be null"));
            }

            int result = _subscription.Insert(subscriptionInsertModel);

            if (result == 0)
            {
                return(BadRequest("Faulthy Subscription info."));
            }
            else if (result == 1)
            {
                return(BadRequest("Already subscribed to this channel"));
            }

            return(Ok("Subscription Inserted"));
        }