Sending the ExpenseLogs in Details API
This commit is contained in:
parent
a7392a515d
commit
2ccae935f3
@ -27,6 +27,7 @@ namespace Marco.Pms.Model.ViewModels.Expenses
|
||||
public string Description { get; set; } = string.Empty;
|
||||
public string? Location { get; set; }
|
||||
public List<BasicDocumentVM> Documents { get; set; } = new List<BasicDocumentVM>();
|
||||
public List<ExpenseLogVM> ExpenseLogs { get; set; } = new List<ExpenseLogVM>();
|
||||
public string? GSTNumber { get; set; }
|
||||
public int? NoOfPersons { get; set; }
|
||||
public bool IsActive { get; set; } = true;
|
||||
|
12
Marco.Pms.Model/ViewModels/Expenses/ExpenseLogVM.cs
Normal file
12
Marco.Pms.Model/ViewModels/Expenses/ExpenseLogVM.cs
Normal file
@ -0,0 +1,12 @@
|
||||
using Marco.Pms.Model.ViewModels.Activities;
|
||||
|
||||
namespace Marco.Pms.Model.ViewModels.Expenses
|
||||
{
|
||||
public class ExpenseLogVM
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
public BasicEmployeeVM? UpdatedBy { get; set; }
|
||||
public string Action { get; set; } = string.Empty;
|
||||
public string? Comment { get; set; }
|
||||
}
|
||||
}
|
@ -188,11 +188,7 @@ namespace MarcoBMS.Services.Controllers
|
||||
employeeQuery = employeeQuery.Where(e => (e.FirstName + " " + e.LastName).ToLower().Contains(searchStringLower));
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(searchString) && (projectId == null || projectId == Guid.Empty))
|
||||
{
|
||||
employeeQuery = employeeQuery.Take(10);
|
||||
}
|
||||
var response = await employeeQuery.Select(e => _mapper.Map<BasicEmployeeVM>(e)).ToListAsync();
|
||||
var response = await employeeQuery.Take(10).Select(e => _mapper.Map<BasicEmployeeVM>(e)).ToListAsync();
|
||||
return Ok(ApiResponse<object>.SuccessResponse(response, $"{response.Count} records of employees fetched successfully", 200));
|
||||
}
|
||||
[HttpGet]
|
||||
|
@ -123,6 +123,7 @@ namespace Marco.Pms.Services.MappingProfiles
|
||||
CreateMap<Expenses, ExpenseList>();
|
||||
CreateMap<CreateExpensesDto, Expenses>();
|
||||
CreateMap<UpdateExpensesDto, Expenses>();
|
||||
CreateMap<ExpenseLog, ExpenseLogVM>();
|
||||
|
||||
CreateMap<ExpensesReimburse, ExpensesReimburseVM>();
|
||||
CreateMap<Expenses, ExpenseDetailsMongoDB>()
|
||||
|
@ -321,6 +321,9 @@ namespace Marco.Pms.Services.Service
|
||||
response!.ThumbPreSignedUrl = _s3Service.GeneratePreSignedUrl(document.ThumbS3Key);
|
||||
}
|
||||
|
||||
var expenselogs = await _context.ExpenseLogs.Include(el => el.UpdatedBy).Where(el => el.ExpenseId == vm.Id).Select(el => _mapper.Map<ExpenseLogVM>(el)).ToListAsync();
|
||||
|
||||
vm.ExpenseLogs = expenselogs;
|
||||
|
||||
_logger.LogInfo("Employee {EmployeeId} successfully fetched expense details with ID {ExpenseId}", loggedInEmployee.Id, vm.Id);
|
||||
return ApiResponse<object>.SuccessResponse(vm, "Successfully fetched the details of expense", 200);
|
||||
|
Loading…
x
Reference in New Issue
Block a user