예제 #1
0
        public SeriesResult <UserShowWatch> UserShowWatchDelete(UserShowWatch record)
        {
            try
            {
                connection.Open();

                cmd = CreateSqlCommandForSP("UserShowWatchDelete");
                cmd.Parameters.AddWithValue("UserShowWatchID", record.ID);
                cmd.ExecuteNonQuery();

                return(new SeriesResult <UserShowWatch> {
                    Result = SQLResult.Success, Data = record
                });
            }
            catch (Exception e)
            {
                ErrorMethods.LogError(e.Message);

                return(new SeriesResult <UserShowWatch> {
                    Result = SQLResult.ErrorHasOccured, Message = e.Message
                });
            }
            finally
            {
                connection.Close();
            }
        }
예제 #2
0
        public SeriesResult <UserShowWatch> UserShowWatchAdd(UserShowWatch record)
        {
            try
            {
                connection.Open();

                cmd = CreateSqlCommandForSP("UserShowWatchAdd");
                cmd.Parameters.AddWithValue("UserShowID", record.UserShowID);
                cmd.Parameters.AddWithValue("SeasonNo", record.SeasonNo);
                cmd.Parameters.AddWithValue("EpisodeNo", record.EpisodeNo);
                cmd.Parameters.Add("ID", SqlDbType.Int).Direction = ParameterDirection.Output;
                cmd.ExecuteNonQuery();

                record.ID = int.Parse(cmd.Parameters["ID"].Value.ToString());

                return(new SeriesResult <UserShowWatch> {
                    Result = SQLResult.Success, Data = record
                });
            }
            catch (Exception e)
            {
                ErrorMethods.LogError(e.Message);

                return(new SeriesResult <UserShowWatch> {
                    Result = SQLResult.ErrorHasOccured, Message = e.Message
                });
            }
            finally
            {
                connection.Close();
            }
        }
예제 #3
0
        private async Task GetWatchedEpisodes()
        {
            SeriesResult <UserShowWatch> result = await AppGlobal.Db.UserShowWatchListAsync(MyViewModel.MyShow);

            MyViewModel.MyShow.EpisodesWatched = result.ListData;

            foreach (Episode episode in MyViewModel.MyShow.Episodes)
            {
                UserShowWatch watch = MyViewModel.MyShow.EpisodesWatched.SingleOrDefault(x => x.SeasonNo == episode.AiredSeason && x.EpisodeNo == episode.AiredEpisodeNumber);

                if (watch != null)
                {
                    episode.Watched = true;
                }
            }
        }
예제 #4
0
        private async Task <bool> EpisodeWatchedToggle(int episodeNumber)
        {
            try
            {
                UserShowWatch record = MyViewModel.MyShow
                                       .EpisodesWatched
                                       .SingleOrDefault(x => x.SeasonNo == MyViewModel.ViewingSeason && x.EpisodeNo == episodeNumber);

                if (record == null)
                {
                    UserShowWatch newRecord = new UserShowWatch
                    {
                        UserShowID = MyViewModel.MyShow.UserShowID,
                        SeasonNo   = MyViewModel.ViewingSeason,
                        EpisodeNo  = episodeNumber
                    };
                    SeriesResult <UserShowWatch> result = await AppGlobal.Db.UserShowWatchAddAsync(newRecord);

                    MyViewModel.MyShow.EpisodesWatched.Add(result.Data);
                }
                else
                {
                    SeriesResult <UserShowWatch> result = await AppGlobal.Db.UserShowWatchDeleteAsync(record);

                    MyViewModel.MyShow.EpisodesWatched.Remove(record);
                }

                return(true);
            }
            catch (Exception ex)
            {
                ErrorMethods.LogError(ex.Message);
            }

            return(false);
        }
예제 #5
0
 public async Task <SeriesResult <UserShowWatch> > UserShowWatchDeleteAsync(UserShowWatch record)
 {
     return(await Task.Run(() => UserShowWatchDelete(record)));
 }