initial commit
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
@page "/leave/leave-request"
|
||||
@using Indotalent.Features.Leave.LeaveRequest.Components
|
||||
@using Indotalent.Features.Leave.LeaveRequest.Cqrs
|
||||
@using MudBlazor
|
||||
|
||||
@if (_currentView == ViewMode.Create)
|
||||
{
|
||||
<_LeaveRequestCreateForm OnCancel="BackToTable" OnSuccess="HandleSuccess" />
|
||||
}
|
||||
else if (_currentView == ViewMode.Update || _currentView == ViewMode.View)
|
||||
{
|
||||
<_LeaveRequestUpdateForm Data="_selectedData!" ReadOnly="@(_currentView == ViewMode.View)" OnCancel="BackToTable" OnSuccess="HandleSuccess" />
|
||||
}
|
||||
else
|
||||
{
|
||||
<_LeaveRequestDataTable OnAdd="() => ShowCreate()" OnEdit="(item) => ShowUpdate(item, false)" OnView="(item) => ShowUpdate(item, true)" />
|
||||
}
|
||||
|
||||
@code {
|
||||
private enum ViewMode { Table, Create, Update, View }
|
||||
private ViewMode _currentView = ViewMode.Table;
|
||||
private UpdateLeaveRequestRequest? _selectedData;
|
||||
|
||||
private void ShowCreate() => _currentView = ViewMode.Create;
|
||||
|
||||
private void ShowUpdate(UpdateLeaveRequestRequest data, bool isReadOnly)
|
||||
{
|
||||
_selectedData = data;
|
||||
_currentView = isReadOnly ? ViewMode.View : ViewMode.Update;
|
||||
}
|
||||
|
||||
private void BackToTable() { _currentView = ViewMode.Table; _selectedData = null; }
|
||||
|
||||
private void HandleSuccess() { _currentView = ViewMode.Table; _selectedData = null; }
|
||||
}
|
||||
Reference in New Issue
Block a user