profileShare

rasmusjy / splitapp-backend-clean-onion

Read-only snapshot

No repository description.

main default branch 429 files Expires Sep 13, 2026, 9:06 AM
ExpenseMapper.cs 1,149 bytes
1 using App.BLL.DTO;
2 using App.DTO.v1;
3
4 namespace App.DTO.Mappers;
5
6 public static class ExpenseMapper
7 {
8 public static ExpenseDto MapToDto(ExpenseBllDto expense)
9 {
10 return new ExpenseDto
11 {
12 Id = expense.Id,
13 TripId = expense.TripId,
14 PaidByUserId = expense.PaidByUserId,
15 PaidByUserName = expense.PaidByUserFullName,
16 BudgetCategoryId = expense.BudgetCategoryId,
17 BudgetCategoryName = expense.BudgetCategory?.Name,
18 CurrencyId = expense.CurrencyId,
19 CurrencyCode = expense.Currency?.Code,
20 CurrencySymbol = expense.Currency?.Symbol,
21 Amount = expense.Amount,
22 Description = expense.Description,
23 ExpenseDate = expense.ExpenseDate,
24 SplitMethod = expense.SplitMethod.ToString(),
25 Splits = expense.Splits?.Select(s => new ExpenseSplitDto
26 {
27 Id = s.Id,
28 UserId = s.UserId,
29 UserName = s.UserFullName,
30 Amount = s.Amount,
31 Percentage = s.Percentage
32 }).ToList()
33 };
34 }
35 }
36