Beispiel #1
0
        /// <summary>
        /// Grids the process suspension.
        /// </summary>
        /// <param name="suspensionRequest">The suspension request.</param>
        /// <returns></returns>
        public async Task <int> Grid_ProcessSuspension(SuspensionRequest suspensionRequest)
        {
            try
            {
                SqlParameter[] parameters =
                {
                    new SqlParameter("@ChangeRequestID", SqlDbType.Int),
                    new SqlParameter("@SuspensionType",  SqlDbType.Int),
                    new SqlParameter("@Remarks",         SqlDbType.NVarChar),
                    new SqlParameter("@Status",          SqlDbType.NVarChar),
                    new SqlParameter("@RejectReason",    SqlDbType.NVarChar),
                    new SqlParameter("@CurrentStatus",   SqlDbType.Int),
                };

                parameters[0].Value = suspensionRequest.ChangeRequestID;
                parameters[1].Value = suspensionRequest.SuspensionType;
                parameters[2].Value = suspensionRequest.Remarks;
                parameters[3].Value = suspensionRequest.Status;
                parameters[4].Value = suspensionRequest.RejectReason;
                parameters[5].Value = suspensionRequest.CurrentStatus;



                _DataHelper = new DataAccessHelper("Grid_ProcessSuspension_v1", parameters, _configuration);
                DataTable dt = new DataTable();
                return(await _DataHelper.RunAsync());
            }

            catch (Exception ex)
            {
                LogInfo.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical));

                throw;
            }
            finally
            {
                _DataHelper.Dispose();
            }
        }
Beispiel #2
0
        public async Task <IActionResult> ProcessSuspension([FromHeader(Name = "Grid-Service-Header-Token")] string token,
                                                            [FromForm] SuspensionRequest suspensionRequest)
        {
            try
            {
                if (string.IsNullOrEmpty(token))
                {
                    return(Ok(new OperationResponse
                    {
                        HasSucceeded = false,
                        IsDomainValidationErrors = true,
                        Message = EnumExtensions.GetDescription(CommonErrors.TokenEmpty)
                    }));
                }
                if (!ModelState.IsValid)
                {
                    return(StatusCode((int)HttpStatusCode.OK, new OperationResponse
                    {
                        HasSucceeded = false,
                        IsDomainValidationErrors = true,
                        Message = string.Join("; ", ModelState.Values
                                              .SelectMany(x => x.Errors)
                                              .Select(x => x.ErrorMessage))
                    }));
                }

                if (!ValidateGridHeaderToken(token))
                {
                    return(Ok(new OperationResponse
                    {
                        HasSucceeded = false,
                        Message = EnumExtensions.GetDescription(DbReturnValue.TokenAuthFailed),
                        IsDomainValidationErrors = true
                    }));
                }

                var result = await _dataAccess.Grid_ProcessSuspension(suspensionRequest);

                if (result == Enum.ReturnSuccess)
                {
                    return(Ok(new OperationResponse
                    {
                        HasSucceeded = true,
                        Message = "Success",
                        IsDomainValidationErrors = false
                    }));
                }
                else
                {
                    return(Ok(new OperationResponse
                    {
                        HasSucceeded = false,
                        Message = "Failure",
                        IsDomainValidationErrors = false
                    }));
                }
            }
            catch (Exception ex)
            {
                LogInfo.Error(new ExceptionHelper().GetLogString(ex, ErrorLevel.Critical));

                return(Ok(new OperationResponse
                {
                    HasSucceeded = false,
                    Message = StatusMessages.ServerError,
                    IsDomainValidationErrors = false
                }));
            }
        }