public async Task <ActionResult <DepositResponseModel> > GetDividentsInfo(ClaimsPrincipal currentUser, string username) { if (currentUser.HasClaim(c => c.Type == "Roles")) { var userAuthenticate = await dbContext.Users.FirstOrDefaultAsync(x => x.Username == username); DepositResponseModel depositResponseModel = new DepositResponseModel(); UserAccResponseModel userDeposits = new UserAccResponseModel(); DividentValidation dividentService = new DividentValidation(); if (userAuthenticate == null) { responseMessage.Message = "User not found"; return(StatusCode(404, responseMessage)); } else { bool isChecked = false; foreach (var depositRef in dbContext.Deposits.Where(x => x.UserId == userAuthenticate.Id)) { await dividentService.GetDividentPayment(depositRef); isChecked = true; } if (isChecked) { responseMessage.Message = "Check susscessfull"; return(StatusCode(200, depositResponseModel)); } else { responseMessage.Message = "You don't have a Deposit!"; return(StatusCode(400, responseMessage)); } } } else { responseMessage.Message = "You are not authorized to do such actions"; return(StatusCode(403, responseMessage)); } }
public async Task <ActionResult <ICollection <DepositResponseModel> > > GetDepositsInfo(ClaimsPrincipal currentUser, string username) { if (currentUser.HasClaim(c => c.Type == "Roles")) { var userAuthenticate = await dbContext.Users.FirstOrDefaultAsync(x => x.Username == username); List <DepositResponseModel> userDeposits = new List <DepositResponseModel>(); if (userAuthenticate == null) { responseMessage.Message = "User not found"; return(StatusCode(404, responseMessage)); } else { foreach (var depositRef in dbContext.Deposits.Where(x => x.UserId == userAuthenticate.Id)) { var deposit = depositRef; DepositResponseModel depositResponseModel = new DepositResponseModel(); depositResponseModel.IBAN = deposit.Iban; depositResponseModel.Amount = deposit.Amount; depositResponseModel.Divident = deposit.Divident; depositResponseModel.PaymentDate = deposit.PaymentDate; userDeposits.Add(depositResponseModel); } if (userDeposits.Count > 0) { return(StatusCode(200, userDeposits.OrderBy(x => x.IBAN))); } responseMessage.Message = "You don't have a Deposit!"; return(StatusCode(400, responseMessage)); } } else { responseMessage.Message = "You are not authorized to do such actions"; return(StatusCode(403, responseMessage)); } }