private async Task SavePayment(int status, APIPaymentsRequest input, Response response) { await _dbContext.Payments.AddAsync(new Payment { AmountMultiplier = FileAmountType.Cents, Client = input.Header.Client, FileAmount = input.Payments.FileContents.FileAmount, PaymentStatus = (PaymentStatus)status, Reference = input.Payments.FileContents.Reference, BranchCode = input.Payments.FileContents.BranchCode, AccountNumber = input.Payments.FileContents.AccountNumber, Result = response.Result, ResultMessage = status == 2?response.ResultMessage:string.Empty, }); await _dbContext.SaveChangesAsync(); }
private async Task <APIPaymentsRequest> MakeHeader(PaymentCreator input) { var apiPaymentsRequest = new APIPaymentsRequest(); var entity = await _dbContext.Employees. Include(x => x.Account) .ThenInclude(x => x.Bank) .FirstOrDefaultAsync(x => x.Id == input.EmployeeId); var file = new FileContentRequestDto { Reference = entity.Account.Bank.Reference, AccountType = entity.Account.AccountType, AmountMultiplier = FileAmountType.Cents, AccountNumber = entity.Account.AccountNumber, FileAmount = 100, BranchCode = entity.Account.BranchCode, FirstName = entity.FirstName, Surname = entity.Surname }; apiPaymentsRequest.Payments.FileContents = file; apiPaymentsRequest.Header = new HeaderRequestDto { Service = input.Service, ServiceType = input.ServiceType, CallBackUrl = _config["PaySoft:CallBackUrl"], Client = entity.ClientCode, PsVer = _config["PaySoft:PsVer"], DueDate = "20200625" }; apiPaymentsRequest.Totals = new TotalRequestDto { Records = 1, Amount = 100, AccountHash = file.BranchCode, BranchHash = file.BranchCode }; return(apiPaymentsRequest); }