Added audit while mark as complete ininvoice
This commit is contained in:
parent
843dc8edfc
commit
34bd84ad73
@ -1144,6 +1144,7 @@ namespace Marco.Pms.Services.Controllers
|
||||
// Create a scope for permission service resolution
|
||||
using var scope = _serviceScopeFactory.CreateScope();
|
||||
var _permission = scope.ServiceProvider.GetRequiredService<PermissionServices>();
|
||||
var _updateLogHelper = scope.ServiceProvider.GetRequiredService<UtilityMongoDBHelper>();
|
||||
|
||||
// Get the currently logged-in employee
|
||||
var loggedInEmployee = await _userHelper.GetCurrentEmployeeAsync();
|
||||
@ -1196,15 +1197,31 @@ namespace Marco.Pms.Services.Controllers
|
||||
|
||||
try
|
||||
{
|
||||
var invoiceStateBeforeChange = _updateLogHelper.EntityToBsonDocument(invoice);
|
||||
|
||||
// Mark invoice as completed.
|
||||
invoice.MarkAsCompleted = true;
|
||||
invoice.UpdatedAt = DateTime.UtcNow;
|
||||
invoice.UpdatedById = loggedInEmployee.Id;
|
||||
|
||||
// Persist the change to the database.
|
||||
await _context.SaveChangesAsync();
|
||||
|
||||
_logger.LogInfo("Invoice {InvoiceId} marked as completed by user {UserId}", invoiceId, loggedInEmployee.Id);
|
||||
|
||||
return Ok(ApiResponse<object>.SuccessResponse(new { }, "Invoice is marked as completed successfully", 200));
|
||||
await _updateLogHelper.PushToUpdateLogsAsync(new UpdateLogsObject
|
||||
{
|
||||
EntityId = invoice.Id.ToString(),
|
||||
UpdatedById = loggedInEmployee.Id.ToString(),
|
||||
OldObject = invoiceStateBeforeChange,
|
||||
UpdatedAt = DateTime.UtcNow
|
||||
}, "InvoiceModificationLog");
|
||||
|
||||
var response = _mapper.Map<InvoiceListVM>(invoice);
|
||||
response.UpdatedBy = _mapper.Map<BasicEmployeeVM>(loggedInEmployee);
|
||||
response.BalanceAmount = response.BasicAmount + response.TaxAmount;
|
||||
|
||||
return Ok(ApiResponse<object>.SuccessResponse(response, "Invoice is marked as completed successfully", 200));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user