public IActionResult GetAccount(AccountNumberRequest request)
 {
     if (ModelState.IsValid)
     {
         SingleResponse <Account> response = new SingleResponse <Account>()
         {
             ResultCode = ResultCodes.normal
         };
         response.Result = _xbService.GetAccount(request.AccountNumber);
         response.Result.HasContractFile = _xbService.HasUploadedContract(response.Result.AccountNumber, 3);
         var overdraft = _xbService.GetCreditLines(ProductQualityFilter.Opened)
                         .Where(x => x.ConnectAccount.AccountNumber == response.Result.AccountNumber).ToList();
         response.Result.Overdraft = overdraft.FirstOrDefault();
         foreach (var item in overdraft)
         {
             if (item.Type == 25)
             {
                 response.Result.Overdraft = item;
             }
         }
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
        public ResponseAccount GetAccountByAccountNumber(AccountNumberRequest req)
        {
            ResponseAccount retVal = new ResponseAccount();

            retVal.Account = SQLGetAccount(config.getAccountByAccountNumber.Replace("%1", req.AccountNumber));;
            return(retVal);
        }
示例#3
0
        public async Task <IActionResult> PrintCardSwiftDetails(AccountNumberRequest request)
        {
            if (ModelState.IsValid)
            {
                SingleResponse <byte[]> response = await _reportManager.PrintCardSwiftDetails(request.AccountNumber);

                return(ResponseExtensions.ToHttpResponse(response));
            }
            else
            {
                return(ValidationError.GetValidationErrorResponse(ModelState));
            }
        }
示例#4
0
 public IActionResult GetExistingLoansDramContract(AccountNumberRequest request)
 {
     if (ModelState.IsValid)
     {
         SingleResponse <byte[]> response = new SingleResponse <byte[]>();
         response.Result     = _xbService.GetExistingLoansDramContract(request.AccountNumber);
         response.ResultCode = ResultCodes.normal;
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
示例#5
0
 public IActionResult GetFullCardByAccountNumber(AccountNumberRequest request)
 {
     if (ModelState.IsValid)
     {
         SingleResponse <Card> response = new SingleResponse <Card>()
         {
             ResultCode = ResultCodes.normal
         };
         response.Result = _xbService.GetCardByAccountNumber(request.AccountNumber);
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
 public IActionResult IsPOSAccount(AccountNumberRequest request)
 {
     if (ModelState.IsValid)
     {
         var response = new SingleResponse <bool>()
         {
             ResultCode = ResultCodes.normal
         };
         response.Result = _xbService.IsPOSAccount(request.AccountNumber);
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
 public IActionResult GetAccountJointCustomers(AccountNumberRequest request)
 {
     if (ModelState.IsValid)
     {
         var response = new SingleResponse <List <JointCustomer> >()
         {
             ResultCode = ResultCodes.normal
         };
         response.Result = _xbService.GetAccountJointCustomers(request.AccountNumber);
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
        public IActionResult GetCurrentAccountRequisites(AccountNumberRequest request)
        {
            if (ModelState.IsValid)
            {
                SingleResponse <string> response = new SingleResponse <string>();
                Account account      = _xbService.GetAccount(request.AccountNumber);
                string  contractName = "";
                if (account != null)
                {
                    if (account.Currency == "AMD")
                    {
                        contractName = "BankMailTransferDetails";
                    }
                    else if (account.Currency == "RUR")
                    {
                        contractName = "SwiftTransferDetailsRUR";
                    }
                    else
                    {
                        contractName = "SwiftTransferDetails";
                    }
                    Dictionary <string, string> parameters = new Dictionary <string, string>();
                    parameters.Add(key: "accountNumber", value: request.AccountNumber);


                    response.Result     = _contractService.RenderContract(contractName, parameters, "CurrentAccountRequisites");
                    response.ResultCode = ResultCodes.normal;
                }
                else
                {
                    response.ResultCode  = ResultCodes.failed;
                    response.Description = "Please, provide valid account number!";
                }

                return(ResponseExtensions.ToHttpResponse(response));
            }
            else
            {
                return(ValidationError.GetValidationErrorResponse(ModelState));
            }
        }
示例#9
0
        public ResponseAccount GetAccountByContactId(ContactIdRequest cidr)
        {
            var contactId = cidr.ContactId;
            var car       = from ca in contactAccountRelationships where ca.ContactId.Equals(contactId) select ca;

            if (car.Count() < 1)
            {
                throw new WebFaultException(HttpStatusCode.NoContent);
            }
            else if (car.Count() > 1)
            {
                throw new WebFaultException(HttpStatusCode.Conflict);
            }
            ContactAccountRelationship rel = car.FirstOrDefault();
            AccountNumberRequest       anr = new AccountNumberRequest {
                AccountNumber   = rel.AccountNumber,
                CustomAttribute = cidr.CustomAttribute
            };

            return(GetAccountByAccountNumber(anr));
        }
 public IActionResult GetOpenedAccountContract(AccountNumberRequest request)
 {
     if (ModelState.IsValid)
     {
         var response = new SingleResponse <byte[]>()
         {
             ResultCode = ResultCodes.normal
         };
         response.Result = _xbService.GetOpenedAccountContract(request.AccountNumber);
         if (response.Result == null)
         {
             response.ResultCode  = ResultCodes.validationError;
             response.Description = "Կցված պայմանագիր առկա չէ";
         }
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
示例#11
0
        public override void OnActionExecuting(ActionExecutingContext context)
        {
            if (context.ActionArguments.Count != 0)
            {
                AccountNumberRequest request = null;

                foreach (var argument in context.ActionArguments.Values.Where(v => v is AccountNumberRequest))
                {
                    request = argument as AccountNumberRequest;
                    break;
                }

                if (!_xbService.ValidateAccountNumber(request.AccountNumber))
                {
                    Response response = new Response
                    {
                        ResultCode = ResultCodes.validationError,
                        Description = _localizer["Հաշվեհամարը սխալ է։"]
                    };
                    context.Result = ResponseExtensions.ToHttpResponse(response);
                } 
            }
        }
示例#12
0
        public ResponseAccount GetAccountByAccountNumber(AccountNumberRequest req)
        {
            var accountNumber = req.AccountNumber;
            var acc           = from account in accounts where account.Number == accountNumber select account;

            if (acc.Count() < 1)
            {
                throw new WebFaultException(HttpStatusCode.NoContent);
            }
            else if (acc.Count() > 1)
            {
                throw new WebFaultException(HttpStatusCode.Conflict);
            }
            ResponseAccount retVal     = new ResponseAccount();
            Account         retAccount = new Account(acc.FirstOrDefault());

            if (retAccount != null && req.CustomAttribute != null && req.CustomAttribute.Equals("overwrite"))
            {
                retAccount.CustomAttribute = "overwritten custom attribute";
            }

            retVal.Account = retAccount;
            return(retVal);
        }