public SocialChannelExceptionBase( string channel, ErrorCodeEnum errorCode, string errorMessage) : base( $"SocialLogin channel exception\r\n" + $" Channel = {channel}\r\n" + $" ErrorCode = {errorCode.ToString()}\r\n" + $" ErrorMessage = {errorMessage}") { this.Channel = channel; this.ErrorCode = errorCode; this.ErrorMessage = errorMessage; }
/// <summary> /// 返回失败结果 /// </summary> /// <param name="errorCode"></param> /// <returns></returns> protected ResponseModel Fail(ErrorCodeEnum errorCode) { var errorDescription = "未知错误"; var memberInfo = (typeof(ErrorCodeEnum)).GetMember(errorCode.ToString()); if (memberInfo.Length > 0) { var attrs = memberInfo[0].GetCustomAttributes(typeof(DescriptionAttribute), false); if (attrs.Length > 0) { //返回枚举值得描述信息 errorDescription = ((DescriptionAttribute)attrs[0]).Description; } } return(new ResponseModel { Code = (int)errorCode, Message = errorDescription }); }
public DefinedException(ErrorCodeEnum error) { Error = new ErrorModel { ErrorCode = (int)error, Message = error.ToString() }; }
public DefinedException(ErrorCodeEnum error, dynamic data) { Error = new ErrorModel { ErrorCode = (int)error, Message = error.ToString(), Data = data }; }
public static string GetMessage(ErrorCodeEnum code) => Resource.ResourceManager.GetString(code.ToString()) ?? code.ToString();
public async Task <IActionResult> Callback(string token, string secondTrackCode) { _webBaseUrl = string.Format("{0}://{1}", Request.Scheme, Request.Host); _logger.LogDebug("CallBack"); _logger.LogDebug("token:" + token); _logger.LogDebug("secondTrackCode:" + secondTrackCode); Transaction transaction = await _transactionRepository.Get(Guid.Parse(secondTrackCode)); if (transaction.Status == (byte)TransactionStatusEnum.Success || transaction.Status == (byte)TransactionStatusEnum.Cancel) { return(BadRequest()); } string longurl = transaction.CallbackUrl; var uriBuilder = new UriBuilder(longurl); var query = HttpUtility.ParseQueryString(uriBuilder.Query); string message = ""; var refNum = Request.Form["RefNum"]; ErrorCodeEnum bankErrorCode = ErrorCodeEnum.UnkownError; try { if (RequestUnpack()) { if (_transactionState.Equals("OK")) { bankErrorCode = ErrorCodeEnum.NoError; transaction.BankErrorCode = (byte)bankErrorCode; transaction.Status = (byte)TransactionStatusEnum.BankOk; transaction.ModifiedOn = DateTime.Now; transaction.ModifiedBy = 1; transaction.BankTrackCode = refNum; await _transactionRepository.Update(transaction); query["id"] = transaction.Id.ToString(); query["trackCode"] = transaction.UserTrackCode.ToString(); query["status"] = true.ToString(); query["errorCode"] = bankErrorCode.ToString(); query["message"] = message; uriBuilder.Query = query.ToString(); longurl = uriBuilder.ToString(); var url3 = string.Format(longurl); return(Redirect(url3)); } else { _isError = true; _errorMsg = "متاسفانه بانک خريد شما را تاييد نکرده است"; if (_transactionState.Equals("CanceledByUser") || _transactionState.Equals(string.Empty)) { // Transaction was canceled by user _isError = true; _errorMsg = "تراكنش توسط خريدار كنسل شد"; bankErrorCode = ErrorCodeEnum.CanceledByUser; } //InvalidParameters else if (_transactionState.Equals("InvalidParameters")) { // Amount of revers teransaction is more than teransaction _errorMsg = "پارامترهای ارسال شده به بانک اشتباه است"; bankErrorCode = ErrorCodeEnum.InvalidParameters; } else if (_transactionState.Equals("InvalidAmount")) { // Amount of revers teransaction is more than teransaction _errorMsg = "مبلغ تراکنش معکوس بیشتر از مبلغ تراکنش است"; bankErrorCode = ErrorCodeEnum.InvalidAmount; } else if (_transactionState.Equals("InvalidTransaction")) { // Can not find teransaction _errorMsg = "تراکنش معتبر نمی باشد"; bankErrorCode = ErrorCodeEnum.InvalidTransaction; } else if (_transactionState.Equals("InvalidCardNumber")) { // Card number is wrong _errorMsg = "شماره کارت معتبر نمی باشد"; bankErrorCode = ErrorCodeEnum.InvalidCardNumber; } else if (_transactionState.Equals("NoSuchIssuer")) { // Issuer can not find _errorMsg = "صادر کننده پیدا نشد"; bankErrorCode = ErrorCodeEnum.NoSuchIssuer; } else if (_transactionState.Equals("ExpiredCardPickUp")) { // The card is expired _errorMsg = "کارت انتخاب شده منقضی شده است"; bankErrorCode = ErrorCodeEnum.ExpiredCardPickUp; } else if (_transactionState.Equals("AllowablePINTriesExceededPickUp")) { // For third time user enter a wrong PIN so card become invalid _errorMsg = "پین انتخاب شده محدودیت کارت دارد"; bankErrorCode = ErrorCodeEnum.AllowablePINTriesExceededPickUp; } else if (_transactionState.Equals("IncorrectPIN")) { // Pin card is wrong _errorMsg = "پین کد اشتباه است"; bankErrorCode = ErrorCodeEnum.IncorrectPIN; } else if (_transactionState.Equals("ExceedsWithdrawalAmountLimit")) { // Exceeds withdrawal from amount limit _errorMsg = "پرداخت بیشتر از از حد مجاز می باشد"; bankErrorCode = ErrorCodeEnum.ExceedsWithdrawalAmountLimit; } else if (_transactionState.Equals("TransactionCannotBeCompleted")) { // PIN and PAD are currect but Transaction Cannot Be Completed _errorMsg = "تراکنش کامل نشد"; bankErrorCode = ErrorCodeEnum.TransactionCannotBeCompleted; } else if (_transactionState.Equals("ResponseReceivedTooLate")) { // Timeout occur _errorMsg = "جواب کاربر بیشتر از حد مجاز طول کشید"; bankErrorCode = ErrorCodeEnum.ResponseReceivedTooLate; } else if (_transactionState.Equals("SuspectedFraudPickUp")) { // User did not insert cvv2 & expiredate or they are wrong. _errorMsg = "کاربر اطلاعات کارت خود را به درستی وارد نکرده است"; bankErrorCode = ErrorCodeEnum.SuspectedFraudPickUp; } else if (_transactionState.Equals("NoSufficientFunds")) { // there are not suficient funds in the account _errorMsg = "موجودی کافی نمی باشد"; bankErrorCode = ErrorCodeEnum.NoSufficientFunds; } else if (_transactionState.Equals("IssuerDownSlm")) { // The bank server is down _errorMsg = "سرور بانک غیرفعال است"; bankErrorCode = ErrorCodeEnum.BankServerIsDown; } else if (_transactionState.Equals("TMEError")) { // unknown error occur _errorMsg = "خطای ناشناخته"; bankErrorCode = ErrorCodeEnum.UnkownError; } } } } catch (Exception ex) { _errorMsg = ex.Message; _logger.LogError(ex.Message); } _logger.LogError(_errorMsg); var mid1 = Request.Form["MID"]; transaction.Status = (byte)TransactionStatusEnum.Failed; transaction.BankErrorCode = (byte)bankErrorCode; transaction.BankErrorMessage = _errorMsg; transaction.ModifiedOn = DateTime.Now; transaction.ModifiedBy = 1; await _transactionRepository.Update(transaction); query["id"] = transaction.Id.ToString(); query["trackCode"] = transaction.UserTrackCode.ToString(); query["status"] = false.ToString(); query["errorCode"] = ((byte)bankErrorCode).ToString(); query["message"] = _errorMsg; uriBuilder.Query = query.ToString(); longurl = uriBuilder.ToString(); var url = string.Format(longurl); return(Redirect(url)); }