/// <summary> /// This is to update <see cref="UserWordPair" /> learning period /// </summary> /// <param name="PairKnowledges">Int is <see cref="UserWordPair" /> id</param> /// <returns></returns> public async Task UpdateKnowledge(int userid, IKnowledgeQualifier knowledgeQualifier) { // calculate knowledge update IEnumerable <UserWordPair> userWordPairs = CalculateKnowledgeUpdate(userid, knowledgeQualifier); // update knowledge licence await userWordPairRepository.Update(userWordPairs); }
private IEnumerable <UserWordPair> CalculateKnowledgeUpdate(int userid, IKnowledgeQualifier knowledgeQualifier) { Dictionary <int, KnowledgeQualitys> knowledgeQuality = knowledgeQualifier.Qualify(); // load all user words IEnumerable <UserWordPair> userWordPairs = userWordPairRepository.GetWhere(u => knowledgeQuality.ContainsKey(u.WordPairId) && u.UserId.Equals(userid)); // calculate knowledge update userWordPairs = UpdateLicenseInformation(userWordPairs, knowledgeQuality); return(userWordPairs); }