public async Task <GroupTransactionResponse> GetTransactionAsync(int id) { GroupTransactionResponse transaction = new GroupTransactionResponse(); var payer = new MemberResponse(); var receiver = new MemberResponse(); var tData = _Context.group_transaction.SingleOrDefault(c => c.grouptransactionID == id); var payerData = _Context.user.SingleOrDefault(c => c.userID == tData.grouptransPayerID); payer.ID = payerData.userID; payer.Name = payerData.first_name; var recData = _Context.user.SingleOrDefault(c => c.userID == tData.grouptransReceiverID); receiver.ID = recData.userID; receiver.Name = recData.first_name; transaction.ID = tData.grouptransactionID; transaction.payer = payer; transaction.receiver = receiver; transaction.groupID = tData.groupID.GetValueOrDefault(); if (transaction.groupID != 0) { var name = _Context.group.SingleOrDefault(c => c.groupID == transaction.groupID); transaction.groupName = name.group_name; } transaction.paid_share = tData.paid_share; transaction.created_at = tData.created_at; return(transaction); }
public async Task <List <GroupTransactionResponse> > GetIndividualTransactionsAsync(int Userid, int Friendid) { List <GroupTransactionResponse> transactions = new List <GroupTransactionResponse>(); var tData = _Context.group_transaction.Where(c => (c.grouptransPayerID == Userid || c.grouptransPayerID == Friendid) && (c.grouptransReceiverID == Userid || c.grouptransReceiverID == Friendid)).ToList(); for (var i = 0; i < tData.Count; i++) { var trans = new GroupTransactionResponse(); trans = await GetTransactionAsync(tData[i].grouptransactionID); transactions.Add(trans); } return(transactions); }
public async Task <List <GroupTransactionResponse> > GetAllTransactionsAsync(int Userid) { List <GroupTransactionResponse> transactions = new List <GroupTransactionResponse>(); var tData = _Context.group_transaction.Where(c => (c.grouptransPayerID == Userid || c.grouptransReceiverID == Userid) || c.groupsID.members.Any(aa => aa.userID == Userid)).ToList(); for (var i = 0; i < tData.Count; i++) { var trans = new GroupTransactionResponse(); trans = await GetTransactionAsync(tData[i].grouptransactionID); transactions.Add(trans); } return(transactions); }
public async Task <List <GroupTransactionResponse> > GetGroupTransactionsAsync(int Groupid) { List <GroupTransactionResponse> transactions = new List <GroupTransactionResponse>(); var tData = _Context.group_transaction.Where(c => c.groupID == Groupid).ToList(); for (var i = 0; i < tData.Count; i++) { var trans = new GroupTransactionResponse(); trans = await GetTransactionAsync(tData[i].grouptransactionID); transactions.Add(trans); } return(transactions); }