예제 #1
0
        public VocabularyModel GetVocaDetails(VocabularyQueryModel model)
        {
            try
            {
                var parameter = new DynamicParameters();
                using IDbConnection dbConnection = CreateConnection();
                // query select, truyền tham số kiểu $
                string queryString = $@"SELECT ID,WORD,ENGLISH,VIETNAMESE,SPELLING 
                                        FROM VOCABULARY 
                                        WHERE ID={model.ID} ";

                var result = dbConnection.Query <VocabularyModel>(queryString, parameter);
                return(result.FirstOrDefault());
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
예제 #2
0
        public async Task <IEnumerable <VocabularyModel> > GetListVoca(VocabularyQueryModel model)
        {
            try
            {
                var parameter = new DynamicParameters();
                using IDbConnection dbConnection = CreateConnection();
                string queryString = @"SELECT ID,WORD,ENGLISH,VIETNAMESE,SPELLING 
                                       FROM VOCABULARY 
                                       WHERE 1=1 ";
                if (!string.IsNullOrEmpty(model.FilterText))
                {
                    if (!string.IsNullOrEmpty(model.FilterBy))
                    {
                        if (model.FilterBy == "VIETNAMESE")
                        {
                            queryString += $" AND LOWER(VIETNAMESE) like '%{model.FilterText.ToLower()}%'";
                        }
                        if (model.FilterBy == "ENGLISH")
                        {
                            queryString += $" AND LOWER(ENGLISH) like '%{model.FilterText.ToLower()}%'";
                        }
                        if (model.FilterBy == "WORD")
                        {
                            queryString += $" AND LOWER(WORD) like '%{model.FilterText.ToLower()}%'";
                        }
                    }
                    else
                    {
                        queryString += $" AND (LOWER(VIETNAMESE) like '%{model.FilterText.ToLower()}%' ";
                        queryString += $" or LOWER(ENGLISH) like '%{model.FilterText.ToLower()}%' ";
                        queryString += $" or LOWER(WORD) like '%{model.FilterText.ToLower()}%' )";
                    }
                }

                var result = await dbConnection.QueryAsync <VocabularyModel>(queryString, parameter);

                return(result.ToList());
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
예제 #3
0
 public IActionResult GetListVocaDetails([FromBody] VocabularyQueryModel model)
 {
     return(Ok(_vocabularyRepository.GetVocaDetails(model)));
 }
예제 #4
0
 public async Task <IActionResult> GetListVoca([FromQuery] VocabularyQueryModel model)
 {
     return(PartialView("Partial/_ListVoca", await _vocabularyRepository.GetListVoca(model)));
 }