Example #1
0
        private void BuildDtosForCriteriaAdd(CountsQueryModel model, out O2CV1QueryDto queryDto, out CriteriaDto criteriaDto)
        {
            queryDto = new O2CV1QueryDto
            {
                CreatedBy   = Session.GetDataFromSession <string>("LogedUserFullname"),//User.Identity.Name,
                Deleted     = false,
                Description = model.QueryName,
                QueryName   = model.QueryName,
                QueryId     = model.QueryId
            };

            criteriaDto = new CriteriaDto
            {
                CompareOperator = model.CriteriaModel.SelectedCriteria,
                CompareValue    = model.CriteriaModel.CriteriaCompareValue,
                Createdby       = Session.GetDataFromSession <string>("LogedUserFullname"),//User.Identity.Name,
                TableName       = model.SelectedTable,
                Description     =
                    $"{model.SelectedTable} {model.SelectedColumn} {model.CriteriaModel.SelectedCriteria} {model.CriteriaModel.CriteriaCompareValue}",
                Disabled = false,
                Name     =
                    $"{model.SelectedTable} {model.SelectedColumn} {model.CriteriaModel.SelectedCriteria} {model.CriteriaModel.CriteriaCompareValue}",
                TableColumn = model.SelectedColumn
            };
        }
Example #2
0
        private void GetQueryCriteriaIntoModel(string queryId, CountsQueryModel model)
        {
            var tableNames = _schemaRepository.GetSchemaTables();
            CriteriaRepository criteriaRepository = new CriteriaRepository(_dbConnectionString);
            var criteriaThisQuery = criteriaRepository.GetCriteriaForQuery(Convert.ToInt64(queryId));

            model.QueryCriteria = CriteriaMapper.MapCriteriaDtoToCriteriaGridViewModel(criteriaThisQuery);
        }
Example #3
0
        public ActionResult Criteria(string queryId, string queryName)
        {
            var tableNames = _schemaRepository.GetSchemaBackBoneRelatedTables();

            IEnumerable <DropDownItem> temptablelist = tableNames.Select(name => new DropDownItem
            {
                DropDownDisplay = name,
                DropDownValue   = name
            }).OrderBy(x => x.DropDownDisplay).ToList();

            var model = new CountsQueryModel
            {
                _tables       = GetSelectListItems(temptablelist),
                QueryId       = queryId,
                QueryName     = queryName,
                CriteriaModel = { _criteria = BuildModelCriteria() }
            };

            ViewBag.temptablelist = temptablelist;
            GetQueryCriteriaIntoModel(queryId, model);
            return(View(model));
        }
Example #4
0
        public ActionResult SyncQuery(CountsQueryModel model)
        {
            if (ModelState.IsValid)
            {
                O2CV1QueryDto queryDto;
                CriteriaDto   criteriaDto;
                BuildDtosForCriteriaAdd(model, out queryDto, out criteriaDto);
                var criteriaBusiness = new O2CV1Business(_dbConnectionString);
                var queryId          = criteriaBusiness.CreateNextCriteriaForQuery(queryDto, criteriaDto);
                model.QueryId    = queryId;
                queryDto.QueryId = queryId;



                SaveQuerySqlChanges(queryId, queryDto);
                ModelState.Clear();

                ResetCountsQueryModel(criteriaDto, queryDto, model);

                return(View("Criteria", model));
            }
            return(Redirect("Index"));
        }
Example #5
0
        private void ResetCountsQueryModel(CriteriaDto criteriaDto, O2CV1QueryDto queryDto, CountsQueryModel model)
        {
            var tableNames = _schemaRepository.GetSchemaTables();

            IEnumerable <DropDownItem> temptablelist = tableNames.Select(name => new DropDownItem
            {
                DropDownDisplay = name,
                DropDownValue   = name
            }).OrderBy(x => x.DropDownDisplay).ToList();

            model.SelectedTable = criteriaDto.TableName;
            model.QueryId       = queryDto.QueryId;
            model.QueryName     = queryDto.QueryName;
            model._tables       = GetSelectListItems(temptablelist);
            model.QueryId       = queryDto.QueryId;
            model.CriteriaModel = new CriteriaModel {
                _criteria = BuildModelCriteria()
            };
            ViewBag.temptablelist = temptablelist;

            var tableSchemaModels = _schemaRepository.GetSchemaTableColumns(criteriaDto.TableName);
            IEnumerable <DropDownItem> tempColumnList = tableSchemaModels.MetaData.Select(col => new DropDownItem
            {
                DropDownDisplay = col.Name,
                DropDownValue   = $"{criteriaDto.TableName}.{col.Name}"
            }).OrderBy(x => x.DropDownDisplay).ToList();

            model._columns = tempColumnList.ToList();
            CriteriaRepository criteriaRepository = new CriteriaRepository(_dbConnectionString);
            var criteriaThisQuery = criteriaRepository.GetCriteriaForQuery(Convert.ToInt64(queryDto.QueryId));

            model.QueryCriteria = CriteriaMapper.MapCriteriaDtoToCriteriaGridViewModel(criteriaThisQuery);
        }