public ActionResult AjaxSelectList(int tableId, int searchSelectColumnId)
        {
            var vm = new SearchSelectControlViewModel();

            vm.SearchId = System.Guid.NewGuid().ToString();
            var input = new Models.Search.FetchTableColumnInfoInput();

            input.ColumnId = searchSelectColumnId;
            var output = fetchTableInfoRepository.FetchTableColumnInfo(input);

            vm.SearchSelectName  = output.ColumnInfo.ColumnName;
            vm.SearchDisplayName = output.ColumnInfo.ColumnDisplayName;
            return(PartialView("_SearchSelectControl", vm));
        }
        public ActionResult Search(int?tableId, int?settingId)
        {
            if (tableId.HasValue == false)
            {
                return(RedirectToAction("Index"));
            }

            var vm   = new SearchViewModel(tableId.Value);
            var list = new List <SearchTableColumn>();

            var input = new Models.Search.FetchTableAllColumnInfoInput();

            input.TableId = tableId.Value;
            var output = fetchTableInfoRepository.FetchTableAllColumnInfo(input);

            foreach (var item in output.FetchTableColumnDetails)
            {
                var i = new SearchTableColumn();
                i.ColumnId          = item.ColumnId;
                i.ColumnName        = item.ColumnName;
                i.ColumnDisplayName = item.ColumnDisplayName;
                list.Add(i);
            }

            vm.Columns = list;

            var wheres  = new List <SearchWhereControlViewModel>();
            var selects = new List <SearchSelectControlViewModel>();

            if (settingId.HasValue)
            {
                var saveInput = new Models.Search.FetchSettingInput();
                saveInput.SearchSettingId = settingId.Value;
                var saveOutput = saveSearchSettingRepository.FetchSetting(saveInput);

                foreach (var item in saveOutput.Wheres)
                {
                    var where = new SearchWhereControlViewModel()
                    {
                        SearchId          = System.Guid.NewGuid().ToString(),
                        SearchDisplayName = item.WhereColumnDisplayName,
                        SearchWhereName   = item.WhereColumnName,
                        SearchRange       = (int)item.WhereRange,
                        SearchValue       = item.WhereValue
                    };
                    wheres.Add(where);
                }

                foreach (var item in saveOutput.Selects)
                {
                    var select = new SearchSelectControlViewModel()
                    {
                        SearchId          = System.Guid.NewGuid().ToString(),
                        SearchDisplayName = item.SelectColumnDisplayName,
                        SearchSelectName  = item.SelectColumnName,
                        SearchSelectValue = (int)item.SearchSelectValue
                    };
                    selects.Add(select);
                }
            }
            vm.WhereDetails  = wheres;
            vm.SelectDetails = selects;

            return(View(vm));
        }