Beispiel #1
0
        public List <EWSReadPart> GetReadingPartsByUserID(int userID, bool getRelations = true)
        {
            IRepositoryBase <EWSReadPart>   _rep          = new RepositoryBase <EWSReadPart>(false);
            IRepositoryBase <EWSKnownWords> _repKnownWord = new RepositoryBase <EWSKnownWords>(false);
            IRepositoryBase <EWSList>       _repList      = new RepositoryBase <EWSList>(false);

            List <EWSReadPart> result = _rep.GetList(p => p.UserID == userID);

            foreach (var item1 in result)
            {
                item1.EWSList = _repList.Get(p => p.UN == item1.ListUN);

                item1.EWSList.ListKnow = new List <Guid>();

                foreach (var item2 in item1.EWSList.EWSListWord)
                {
                    EWSKnownWords listWord = _repKnownWord.Get(p => p.WordUN == item2.WordUN);

                    if (listWord != null)
                    {
                        item1.EWSList.ListKnow.Add((Guid)listWord.WordUN);
                    }
                }
            }

            return(result);
        }
Beispiel #2
0
        public List <EWSWord> GetWords(string wordBody = "", string description = "")
        {
            IRepositoryBase <EWSWord>       _rep         = new RepositoryBase <EWSWord>();
            IRepositoryBase <EWSKnownWords> _repKnowWord = new RepositoryBase <EWSKnownWords>();

            List <EWSWord> result = null;

            if (!string.IsNullOrEmpty(wordBody) && !string.IsNullOrEmpty(description))
            {
                result = _rep.GetList(p => p.WordBody.StartsWith(wordBody) || p.Description.StartsWith(description));
            }
            else if (!string.IsNullOrEmpty(wordBody))
            {
                result = _rep.GetList(p => p.WordBody.StartsWith(wordBody));
            }
            else if (!string.IsNullOrEmpty(description))
            {
                result = _rep.GetList(p => p.WordBody.StartsWith(description));
            }

            if (result != null)
            {
                foreach (var item in result)
                {
                    EWSKnownWords known = _repKnowWord.Get(p => p.WordUN == item.UN);

                    if (known != null)
                    {
                        item.Known = true;
                    }
                }
            }
            return(result);
        }
Beispiel #3
0
        public void SetIKnowWord(Guid wordID, int userID)
        {
            RepositoryBase <EWSKnownWords> _rep          = new RepositoryBase <EWSKnownWords>();
            RepositoryBase <EWSWillLearn>  _repLearnList = new RepositoryBase <EWSWillLearn>();


            //sorgula yoksa ekle.
            EWSKnownWords knownWord = _rep.Get(p => p.WordUN == wordID && p.UserID == userID);

            //varsa öğreneceklerim listesinden çıkar
            EWSWillLearn learnList = _repLearnList.Get(p => p.WordUN == wordID && p.UserID == userID);

            if (learnList != null)
            {
                _repLearnList.Remove(learnList);
            }

            if (knownWord != null)
            {
                return;
            }

            EWSKnownWords listKnow = new EWSKnownWords()
            {
                UN     = Guid.NewGuid(),
                UserID = userID,
                WordUN = wordID
            };

            _rep.Add(listKnow);
        }
Beispiel #4
0
        public void SetILearn(Guid wordID, int userID)
        {
            RepositoryBase <EWSWillLearn>  _rep      = new RepositoryBase <EWSWillLearn>();
            RepositoryBase <EWSKnownWords> _repKnown = new RepositoryBase <EWSKnownWords>();

            //varsa bildiklerim listesinden çıkar
            EWSKnownWords learnList = _repKnown.Get(p => p.WordUN == wordID && p.UserID == userID);

            if (learnList != null)
            {
                _repKnown.Remove(learnList);
            }

            //sorgula yoksa ekle.
            EWSWillLearn willLearnWord = _rep.Get(p => p.WordUN == wordID && p.UserID == userID);

            if (willLearnWord != null)
            {
                return;
            }

            EWSWillLearn listLearn = new EWSWillLearn()
            {
                UN     = Guid.NewGuid(),
                UserID = userID,
                WordUN = wordID
            };

            _rep.Add(listLearn);
        }
Beispiel #5
0
        public void RemoveIKnow(Guid wordID, int userID)
        {
            RepositoryBase <EWSKnownWords> _rep = new RepositoryBase <EWSKnownWords>();

            EWSKnownWords listKnow = _rep.Get(p => p.WordUN == wordID && p.UserID == userID);

            _rep.Remove(listKnow);
        }
Beispiel #6
0
        public EWSWord GetWordByBody(string wordBody)
        {
            IRepositoryBase <EWSWord>       _rep      = new RepositoryBase <EWSWord>();
            IRepositoryBase <EWSKnownWords> _repKnown = new RepositoryBase <EWSKnownWords>();
            EWSWord word = _rep.Get(p => p.WordBody == wordBody);

            if (word != null)
            {
                EWSKnownWords known = _repKnown.Get(p => p.WordUN == word.UN);
                if (known != null)
                {
                    word.Known = true;
                }
            }
            return(word);
        }
Beispiel #7
0
        /// <summary>
        /// Gets word by ID
        /// </summary>
        /// <param name="ID"></param>
        /// <returns></returns>
        public EWSWord GetWordById(Guid ID, int userID, bool ProxyCreationEnabled = true)
        {
            RepositoryBase <EWSWord>           _rep          = new RepositoryBase <EWSWord>(ProxyCreationEnabled);
            RepositoryBase <EWSSampleSentence> _repSen       = new RepositoryBase <EWSSampleSentence>(ProxyCreationEnabled);
            RepositoryBase <EWSKnownWords>     _repKnown     = new RepositoryBase <EWSKnownWords>(false);
            RepositoryBase <EWSWillLearn>      _repWillLearn = new RepositoryBase <EWSWillLearn>(false);

            EWSWord wrd = _rep.Get(p => p.UN == ID);

            //bilinenler listesinde var mı kontrol et.
            EWSKnownWords known = _repKnown.Get(p => p.WordUN == wrd.UN && p.UserID == userID);

            if (known != null)
            {
                wrd.Known     = true;
                wrd.WillLearn = false;
            }
            else
            {
                wrd.Known = false;
            }

            if (wrd.Known == false)
            {
                //bilinenler listesinde var mı kontrol et.
                EWSWillLearn willLearn = _repWillLearn.Get(p => p.WordUN == wrd.UN && p.UserID == userID);

                if (willLearn != null)
                {
                    wrd.WillLearn = true;
                }
                else
                {
                    wrd.WillLearn = false;
                }
            }
            //EWSSampleSentence sample = wrd.EWSSampleSentence.FirstOrDefault();
            //sample.WordUN = wrd.UN;

            //_repSen.Add(sample);

            return(_rep.Get(p => p.UN == ID));
        }
Beispiel #8
0
        public List <EWSList> GetAllList(int?userID)
        {
            IRepositoryBase <EWSList>      _rep = new RepositoryBase <EWSList>();
            IRepositoryBase <EWSWillLearn> _repListWillLearn = new RepositoryBase <EWSWillLearn>();
            IRepositoryBase <EWSReadPart>  _repReadinPart    = new RepositoryBase <EWSReadPart>();

            IRepositoryBase <EWSKnownWords> _repKnownWord = new RepositoryBase <EWSKnownWords>();

            //IRepositoryBase<EWSLearnList> _repLearnList = new RepositoryBase<EWSLearnList>();
            short          listState = (short)ListState.silindi.GetHashCode();
            List <EWSList> lists     = _rep.GetList(p => (p.UserID == null || p.UserID == userID) && p.State != listState);


            List <EWSList> returnList = new List <EWSList>();

            foreach (var item in lists)
            {
                if (item.EWSReadPart != null && item.EWSReadPart.Count == 0)
                {
                    returnList.Add(item);
                }
            }

            foreach (var item1 in returnList)
            {
                item1.ListKnow = new List <Guid>();

                foreach (var item2 in item1.EWSListWord)
                {
                    EWSKnownWords listWord = _repKnownWord.Get(p => p.WordUN == item2.WordUN);

                    if (listWord != null)
                    {
                        item1.ListKnow.Add((Guid)listWord.WordUN);
                    }
                }
            }
            return(returnList);
        }
Beispiel #9
0
        public EWSWord GetWordByEWSListWordID(Guid listID, int rownumber, string type, int userID)
        {
            rownumber--;
            RepositoryBase <EWSWord> _rep = new RepositoryBase <EWSWord>(false);

            RepositoryBase <EWSListWord>       _repListWord       = new RepositoryBase <EWSListWord>(false);
            RepositoryBase <EWSKnownWords>     _repListKnow       = new RepositoryBase <EWSKnownWords>(false);
            RepositoryBase <EWSWillLearn>      _repListLearn      = new RepositoryBase <EWSWillLearn>(false);
            RepositoryBase <EWSSampleSentence> _repSampleSentence = new RepositoryBase <EWSSampleSentence>(false);

            List <EWSListWord>   lists     = null;
            List <EWSKnownWords> listKnown = null;
            List <EWSWillLearn>  listLearn = null;

            Guid wID = new Guid();

            if (type == "all")
            {
                lists = _repListWord.GetList(p => p.ListUN == listID);
                wID   = (Guid)lists[rownumber].WordUN;
            }
            if (type == "known")
            {
                listKnown = _repListKnow.GetList(p => p.UserID == userID);
                wID       = (Guid)listKnown[rownumber].WordUN;
            }
            if (type == "willlearn")
            {
                listLearn = _repListLearn.GetList(p => p.UserID == userID);
                wID       = (Guid)listLearn[rownumber].WordUN;
            }


            EWSWord word = _rep.Get(p => p.UN == wID);

            //kelimenin kullanıcı tarafından bilinip bilinmediğini kontrol et.
            EWSKnownWords lstKnown = _repListKnow.Get(p => p.WordUN == word.UN && p.UserID == userID);

            if (lstKnown != null)
            {
                word.Known = true;
            }
            else
            {
                word.Known = false;
            }

            EWSWillLearn lstLearn = _repListLearn.Get(p => p.WordUN == word.UN && p.UserID == userID);

            if (lstLearn != null)
            {
                word.WillLearn = true;
            }
            else
            {
                word.WillLearn = false;
            }

            //word.EWSSampleSentence = _repSampleSentence.GetList(p => p.WordUN == word.UN && p.UserID == userID);
            return(word);
        }