Class TimesheetsController
- Namespace
- KadicErp.WebApi.Controllers.Workforce
- Assembly
- KadicErp.WebApi.dll
[Route("api/workforce/timesheets")]
[ApiController]
[Authorize]
[RequireModule("WORKFORCE")]
public class TimesheetsController : ControllerBase
- Inheritance
-
object
ControllerBase
TimesheetsController
Constructors
public TimesheetsController(IMediator mediator, IStringLocalizer<GeneralMessages> localizer)
Parameters
mediator IMediator
localizer IStringLocalizer<GeneralMessages>
Methods
Approve(ApproveTimeEntriesCommand, CancellationToken)
[HttpPost("approve")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_APPROVE")]
public Task<IActionResult> Approve(ApproveTimeEntriesCommand command, CancellationToken ct)
Parameters
command ApproveTimeEntriesCommand
ct CancellationToken
Returns
- Task<IActionResult>
Create(CreateTimeEntryCommand, CancellationToken)
[HttpPost]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_SUBMIT")]
public Task<IActionResult> Create(CreateTimeEntryCommand command, CancellationToken ct)
Parameters
command CreateTimeEntryCommand
ct CancellationToken
Returns
- Task<IActionResult>
Delete(Guid, CancellationToken)
[HttpDelete("{id:guid}")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_SUBMIT")]
public Task<IActionResult> Delete(Guid id, CancellationToken ct)
Parameters
id Guid
ct CancellationToken
Returns
- Task<IActionResult>
GetByContractor(Guid, DateTime, DateTime, CancellationToken)
[HttpGet("contractor/{contractorId:guid}")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_VIEW")]
public Task<IActionResult> GetByContractor(Guid contractorId, DateTime from, DateTime to, CancellationToken ct)
Parameters
contractorId Guid
from DateTime
to DateTime
ct CancellationToken
Returns
- Task<IActionResult>
GetList(int, int, Guid?, Guid?, TimeEntryStatus?, DateTime?, DateTime?, CancellationToken)
[HttpGet]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_VIEW")]
public Task<IActionResult> GetList(int pageNumber = 1, int pageSize = 20, Guid? contractorId = null, Guid? engagementId = null, TimeEntryStatus? status = null, DateTime? from = null, DateTime? to = null, CancellationToken ct = default)
Parameters
pageNumber int
pageSize int
contractorId Guid?
engagementId Guid?
status TimeEntryStatus?
from DateTime?
to DateTime?
ct CancellationToken
Returns
- Task<IActionResult>
GetPendingCount(CancellationToken)
[HttpGet("pending-count")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_VIEW")]
public Task<IActionResult> GetPendingCount(CancellationToken ct)
Parameters
ct CancellationToken
Returns
- Task<IActionResult>
GetWeeklySummary(Guid, DateTime, CancellationToken)
[HttpGet("weekly-summary")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_VIEW")]
public Task<IActionResult> GetWeeklySummary(Guid engagementId, DateTime weekStart, CancellationToken ct)
Parameters
engagementId Guid
weekStart DateTime
ct CancellationToken
Returns
- Task<IActionResult>
Reject(Guid, RejectTimeEntryCommand, CancellationToken)
[HttpPost("{id:guid}/reject")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_REJECT")]
public Task<IActionResult> Reject(Guid id, RejectTimeEntryCommand command, CancellationToken ct)
Parameters
id Guid
command RejectTimeEntryCommand
ct CancellationToken
Returns
- Task<IActionResult>
Submit(SubmitTimeEntriesCommand, CancellationToken)
[HttpPost("submit")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_SUBMIT")]
public Task<IActionResult> Submit(SubmitTimeEntriesCommand command, CancellationToken ct)
Parameters
command SubmitTimeEntriesCommand
ct CancellationToken
Returns
- Task<IActionResult>
Update(Guid, UpdateTimeEntryCommand, CancellationToken)
[HttpPut("{id:guid}")]
[Authorize(Policy = "WORKFORCE_TIMESHEETS_SUBMIT")]
public Task<IActionResult> Update(Guid id, UpdateTimeEntryCommand command, CancellationToken ct)
Parameters
id Guid
command UpdateTimeEntryCommand
ct CancellationToken
Returns
- Task<IActionResult>