public async Task <IActionResult> Post([FromBody] WhiteListingRequest request) { try { if (!ModelState.IsValid) { return(Ok(new OperationResponse { HasSucceeded = false, IsDomainValidationErrors = true, StatusCode = ((int)ResponseStatus.BadRequest).ToString(), Message = string.Join("; ", ModelState.Values .SelectMany(x => x.Errors) .Select(x => x.ErrorMessage)) })); } UrlWhiteListingDataAccess _whitelistingAccess = new UrlWhiteListingDataAccess(_iconfiguration); DatabaseResponse response = await _whitelistingAccess.RequestWhitelisting(request); if (response.ResponseCode == (int)DbReturnValue.CreateSuccess) { return(Ok(new OperationResponse { HasSucceeded = true, IsDomainValidationErrors = false, Message = EnumExtensions.GetDescription(DbReturnValue.CreateSuccess), ReturnedObject = response.Results })); } else { Log.Error(EnumExtensions.GetDescription(DbReturnValue.CreationFailed)); return(Ok(new OperationResponse { HasSucceeded = false, IsDomainValidationErrors = false, Message = EnumExtensions.GetDescription(DbReturnValue.RecordExists), ReturnedObject = response.Results })); } } catch (Exception ex) { Log.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical)); return(Ok(new OperationResponse { HasSucceeded = false, Message = StatusMessages.ServerError, StatusCode = ((int)ResponseStatus.ServerError).ToString(), IsDomainValidationErrors = false })); } }
public async Task <DatabaseResponse> RequestWhitelisting(WhiteListingRequest request) { try { SqlParameter[] parameters = { new SqlParameter("@URL", SqlDbType.NVarChar), new SqlParameter("@RequestedBy", SqlDbType.Int) }; parameters[0].Value = request.URL; parameters[1].Value = request.RequestedBy; _DataHelper = new DataAccessHelper("CreateWhiteListingRequest", parameters, _configuration); DataTable dt = new DataTable(); int result = await _DataHelper.RunAsync(dt); List <WhiteListingURLsIncludingId> whiteListingURL = new List <WhiteListingURLsIncludingId>(); if (dt != null && dt.Rows.Count > 0) { whiteListingURL = (from model in dt.AsEnumerable() select new WhiteListingURLsIncludingId() { Id = model.Field <decimal>("Id"), RequestedBy = model.Field <string>("RequestedBy"), RequestedOn = model.Field <DateTime>("RequestedOn"), URL = model.Field <string>("URL"), VerifiedBy = model.Field <string>("VerifiedBy"), VerifiedOn = model.Field <DateTime?>("VerifiedOn") == null ? null : model.Field <DateTime?>("VerifiedOn"), IsApproved = model.Field <bool>("IsApproved"), RejectedReason = model.Field <string>("RejectedReason") // VerifiedById = model.Field<int?>("VerifiedById") }).ToList(); } return(new DatabaseResponse { ResponseCode = result, Results = whiteListingURL }); } catch (Exception ex) { Log.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical)); throw; } finally { _DataHelper.Dispose(); } }