Exemple #1
0
        public static async Task <OperationsResponse> Delete(int id)
        {
            return(await Task.Run(() =>
            {
                try
                {
                    using (DataEntity db = new DataEntity())
                    {
                        AccountAchievement achievement = db.AccountAchievements.FirstOrDefault(a => a.Id == id);
                        if (achievement != null)
                        {
                            db.AccountAchievements.Remove(achievement);
                            db.SaveChanges();
                            return OperationsResponse.Ok;
                        }

                        return OperationsResponse.ServerError;
                    }
                }
                catch (Exception)
                {
                    return OperationsResponse.ServerError;
                }
            }
                                  ));
        }
Exemple #2
0
        public static async Task <OperationsResponse> Update(AccountAchievement newAchievement)
        {
            return(await Task.Run(() =>
            {
                try
                {
                    using (DataEntity db = new DataEntity())
                    {
                        AccountAchievement achievement = db.AccountAchievements.FirstOrDefault(a => a.Id == newAchievement.Id);
                        if (achievement != null)
                        {
                            achievement.AccountId = newAchievement.AccountId;
                            achievement.AchievementId = newAchievement.AchievementId;
                            achievement.Date = newAchievement.Date;
                            db.SaveChanges();
                            return OperationsResponse.Ok;
                        }

                        return OperationsResponse.ServerError;
                    }
                }
                catch (Exception)
                {
                    return OperationsResponse.ServerError;
                }
            }
                                  ));
        }
Exemple #3
0
 public static async Task <AccountAchievement> GetAchievementById(int id)
 {
     return(await Task.Run(() =>
     {
         try
         {
             using (DataEntity db = new DataEntity())
             {
                 AccountAchievement achievement = db.AccountAchievements.SingleOrDefault(a => a.Id == id);
                 return achievement;
             }
         }
         catch (Exception)
         {
             return null;
         }
     }
                           ));
 }
Exemple #4
0
        public static async Task <OperationsResponse> CreateAchievement(int accountId, int achievementId)
        {
            return(await Task.Run(() =>
            {
                try
                {
                    using (DataEntity db = new DataEntity())
                    {
                        bool checkIsExist = db.AccountAchievements.Count() != 0 && db.AccountAchievements.Any(a => a.AccountId == accountId && a.AchievementId == achievementId);
                        if (!checkIsExist)
                        {
                            checkIsExist = db.Accounts.Count() != 0 && db.Accounts.Any(a => a.Id == accountId);
                            if (!checkIsExist)
                            {
                                return OperationsResponse.UserNotExists;
                            }
                            checkIsExist = db.Achievements.Count() != 0 && db.Achievements.Any(a => a.Id == achievementId);
                            if (!checkIsExist)
                            {
                                return OperationsResponse.ServerError;
                            }
                            AccountAchievement newAchievement = new AccountAchievement
                            {
                                AccountId = accountId,
                                AchievementId = achievementId,
                                Date = DateTime.Now
                            };
                            db.AccountAchievements.Add(newAchievement);
                            db.SaveChanges();
                            return OperationsResponse.Ok;
                        }

                        return OperationsResponse.UserExists;
                    }
                }
                catch (Exception)
                {
                    return OperationsResponse.ServerError;
                }
            }));
        }
Exemple #5
0
 public static void Id_is_positive(AccountAchievement actual) => Assert.InRange(actual.Id, 1, int.MaxValue);