Ejemplo n.º 1
0
        public IActionResult GetColumns(int accountId, int formId)
        {
            try
            {
                _logger.Log(LogLevel.Information, "columns");
                _logger.Log(LogLevel.Critical, "columns test");
                if (!_accountRepository.AccountExists(accountId))
                {
                    _logger.LogInformation($"Account with id {accountId} wasn't found when accessing columns.");
                    return(NotFound());
                }

                if (!_formRepository.FormExists(formId))
                {
                    _logger.LogInformation($"Form with id {formId} wasn't found when accessing forms.");
                    return(NotFound());
                }

                var columnsForForm        = _formRepository.GetColumnForForm(formId);
                var columnsForFormResults =
                    Mapper.Map <IEnumerable <ColumnDto> >(columnsForForm);

                return(Ok(columnsForFormResults));
            }
            catch (Exception ex)
            {
                _logger.LogCritical($"Exception while getting column for form with id {formId}.", ex);
                return(StatusCode(500, "A problem happened while handling your request."));
            }
        }
Ejemplo n.º 2
0
        public IActionResult CreateAction(int accountId, int formId,
                                          [FromBody] FormActionsDto formAction)
        {
            if (formAction == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!_accountRepository.AccountExists(accountId))
            {
                return(NotFound());
            }

            if (!_formRepository.FormExists(formId))
            {
                return(NotFound());
            }

            var columnEntity = _formRepository.GetDistinctColumnForForm(formId);

            if (columnEntity == null)
            {
                return(NotFound());
            }
            else
            {
                try
                {
                    var            clientTablePrefix      = Startup.Configuration["AppSettings:clientTablePrefix"];
                    var            clientConnectionString = Startup.Configuration["ConnectionStrings:connFDClientData"];
                    ClientDBHelper clientDBHelper         = new ClientDBHelper(accountId, formId, clientConnectionString, clientTablePrefix);

                    if (clientDBHelper.TableExists(clientDBHelper.GetClientTableName()))
                    {
                        clientDBHelper.UpdateTable(columnEntity);
                    }
                    else
                    {
                        clientDBHelper.CreateTable(columnEntity);
                    }
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Message));
                }
            }

            return(Ok());
        }