Example #1
0
 public void UpdateSubscription(Common.Models.Subscription subscription, DateTime dt)
 {
     using (var context = new DataContext())
     {
         var subscriptionDb = context.Subscriptions.Where(x => x.SerialId == subscription.SerialId && x.UserId == subscription.UserId).FirstOrDefault();
         if (subscriptionDb != null)
         {
             subscriptionDb.Notified = dt;
             context.SaveChanges();
         }
     }
 }
Example #2
0
        public ErrorCode AddSubscription(Common.Models.Subscription subscription)
        {
            try
            {
                using (var context = new DataContext())
                {
                    var serial = context.Serials.Where(x => x.Id == subscription.SerialId).FirstOrDefault();
                    if (serial == null)
                    {
                        return(ErrorCode.SerialNotFound);
                    }

                    var user = context.Users.Where(x => x.Id == subscription.UserId).FirstOrDefault();
                    if (user == null)
                    {
                        user = new User
                        {
                            Id           = subscription.UserId,
                            Conversation = subscription.Conversation
                        };
                        context.Users.Add(user);

                        context.SaveChanges();
                    }

                    var subscriptionDb = context.Subscriptions.Where(x => x.SerialId == serial.Id && x.UserId == subscription.UserId).FirstOrDefault();
                    if (subscriptionDb != null)
                    {
                        return(ErrorCode.SubscriptionAlreadyExists);
                    }
                    subscriptionDb = new Subscription
                    {
                        SerialId = serial.Id,
                        UserId   = user.Id,
                        Notified = SqlDateTime.MinValue.Value
                    };
                    context.Subscriptions.Add(subscriptionDb);

                    context.SaveChanges();

                    return(ErrorCode.Ok);
                }
            }
            catch
            {
                return(ErrorCode.Error);
            }
        }
Example #3
0
        public ErrorCode DeleteSubscription(Common.Models.Subscription subscription)
        {
            try
            {
                using (var context = new DataContext())
                {
                    var serial = context.Serials.Where(x => x.Id == subscription.SerialId).FirstOrDefault();
                    if (serial == null)
                    {
                        return(ErrorCode.SerialNotFound);
                    }

                    var user = context.Users.Where(x => x.Id == subscription.UserId).FirstOrDefault();
                    if (user == null)
                    {
                        user = new User
                        {
                            Id = subscription.UserId
                        };
                        context.Users.Add(user);
                        context.SaveChanges();
                    }

                    var subscriptionDb = context.Subscriptions.Where(x => x.SerialId == serial.Id && x.UserId == subscription.UserId).FirstOrDefault();
                    if (subscriptionDb == null)
                    {
                        return(ErrorCode.SuscriptionNotFound);
                    }
                    context.Subscriptions.Remove(subscriptionDb);

                    context.SaveChanges();

                    return(ErrorCode.Ok);
                }
            }
            catch
            {
                return(ErrorCode.Error);
            }
        }