219 lines
11 KiB
Plaintext
219 lines
11 KiB
Plaintext
@page "/tra"
|
|
@rendermode InteractiveServer
|
|
|
|
@using Web.Tra.Services
|
|
@inject CPXV2LogService CPXV2LogService
|
|
@inject PopupService PopupService
|
|
|
|
<RadzenStack Style="width:100%; background-color:var(--rz-primary-lighter);" class="rz-border-bottom rz-p-3" Orientation="Orientation.Horizontal" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Start">
|
|
<!--Search Block-->
|
|
<RadzenStack Style="height:10rem; width:fit-content;" class="rz-border-right rz-pr-5" Orientation="Orientation.Horizontal" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Start">
|
|
<!--Date Picker Block-->
|
|
<RadzenStack Style="font-size:1.5rem;" Orientation="Orientation.Vertical" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Center">
|
|
<RadzenStack Style="width: 25rem; margin-bottom:0.3rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Begin"></RadzenLabel>
|
|
<RadzenDatePicker @bind-Value=@RequestSearch.SearchStart TValue="DateOnly"></RadzenDatePicker>
|
|
</RadzenStack>
|
|
<RadzenStack Style="width:25rem; margin-bottom: 0.3rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="End"></RadzenLabel>
|
|
<RadzenDatePicker Style="font-size: 1.5rem !important;" @bind-Value=@RequestSearch.SearchEnd TValue="DateOnly"></RadzenDatePicker>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
|
|
<RadzenStack Style="cursor: pointer;" class="" Orientation="Orientation.Vertical" AlignItems="AlignItems.Center" JustifyContent="JustifyContent.Start" @onclick="@OnSearch">
|
|
<RadzenIcon Style="font-size: 3.5rem; font-weight:400; color:var(--rz-warning)" Icon="search"></RadzenIcon>
|
|
<RadzenLabel Style="font-size: 1.5rem; cursor:pointer; color:var(--rz-warning)" Text="Search"></RadzenLabel>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
|
|
<!--Selected Data Block-->
|
|
<RadzenStack Style="height:10rem; width:fit-content;" class="rz-border-right rz-pr-5" Orientation="Orientation.Horizontal" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Start">
|
|
<!--left-->
|
|
<RadzenStack Style="font-size:1.5rem;" Orientation="Orientation.Vertical" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Center">
|
|
<RadzenStack Style="width: 29rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Station Name"></RadzenLabel>
|
|
<RadzenTextBox @bind-Value=@SelectionStationName></RadzenTextBox>
|
|
</RadzenStack>
|
|
<RadzenStack Style="width: 29rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Product No"></RadzenLabel>
|
|
<RadzenTextBox @bind-Value=@SelectionProductNO></RadzenTextBox>
|
|
</RadzenStack>
|
|
<RadzenStack Style="width: 29rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Parent Info"></RadzenLabel>
|
|
<RadzenTextBox @bind-Value=@SelectionParentInfo></RadzenTextBox>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
<!--right-->
|
|
<RadzenStack Style="font-size:1.5rem;" Orientation="Orientation.Vertical" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Center">
|
|
<RadzenStack Style="width: 29rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Search Begin"></RadzenLabel>
|
|
<RadzenTextBox @bind-Value=@SelectionSearchBegin></RadzenTextBox>
|
|
</RadzenStack>
|
|
<RadzenStack Style="width: 29rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Search End"></RadzenLabel>
|
|
<RadzenTextBox @bind-Value=@SelectionSearchEnd></RadzenTextBox>
|
|
</RadzenStack>
|
|
<RadzenStack Style="width: 29rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Step Version"></RadzenLabel>
|
|
<RadzenTextBox @bind-Value=@SelectionStepVersion></RadzenTextBox>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
|
|
<!--Option Block-->
|
|
<RadzenStack Style="height:10rem; width:fit-content;" class="rz-border-right rz-pr-5" Orientation="Orientation.Horizontal" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Start">
|
|
<RadzenStack Style="font-size:1.5rem;" Orientation="Orientation.Vertical" AlignItems="AlignItems.Start" JustifyContent="JustifyContent.Center">
|
|
<RadzenStack Style="width: 18rem;" Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Merge By PartNumber"></RadzenLabel>
|
|
<RadzenSwitch @bind-Value=@IsMergePartNumberOption></RadzenSwitch>
|
|
</RadzenStack>
|
|
<RadzenStack Style="width: 18rem;" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween">
|
|
<RadzenLabel Text="Page Size"></RadzenLabel>
|
|
<RadzenNumeric @bind-Value=@PageSize></RadzenNumeric>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
</RadzenStack>
|
|
|
|
<RadzenTabs @ref="@tabs" Style="width:100%; height:100%;" RenderMode="TabRenderMode.Client" @bind-SelectedIndex=@SelectedTabIndex>
|
|
<Tabs>
|
|
@foreach (var tab in ListTabs)
|
|
{
|
|
<RadzenTabsItem Text="@tab.Key.ToString()">
|
|
<Template>
|
|
<span style="margin-right: 1rem; font-size: 1.5rem;">@context.Text</span>
|
|
<RadzenButton Size="ButtonSize.Small" Icon="close" Click="@(()=>OnClickClose(tab.Key))"></RadzenButton>
|
|
</Template>
|
|
<ChildContent>
|
|
@if (tab.Key == EnumTabs.OverviewC1.ToString())
|
|
{
|
|
<TraGrid TDataModel="OverviewMerged" DataList="@Overviews" OnClickContextMenu="@OnClickDetailOverviewContextMenu"
|
|
OnSelectRow="@OnSelectRowOverview" PageSize="@PageSize">
|
|
</TraGrid>
|
|
}
|
|
|
|
@if (tab.Key == EnumTabs.OverviewC1Detail.ToString())
|
|
{
|
|
@* <TraGrid TDataModel="Overview" DataList="@DetailOverviews" OnClickContextMenu="@OnClickHistoryContextMenu"
|
|
OnSelectRow="@OnSelectRowOverview" HostColumnMerge="true">
|
|
</TraGrid> *@
|
|
}
|
|
@*
|
|
@if (tab.Key.Contains(EnumTabs.TestHistoryC1.ToString()))
|
|
{
|
|
<TRAGrid TDataModel="TestHistory" DataList="@TestHistories" HostColumnMerge="true" VisibleRowNo="true">
|
|
</TRAGrid>
|
|
} *@
|
|
</ChildContent>
|
|
</RadzenTabsItem>
|
|
}
|
|
</Tabs>
|
|
</RadzenTabs>
|
|
|
|
@code {
|
|
private RequestSearch RequestSearch = new RequestSearch();
|
|
|
|
private string SelectionStationName = string.Empty;
|
|
private string SelectionProductNO = string.Empty;
|
|
private string SelectionParentInfo = string.Empty;
|
|
private string SelectionSearchBegin = string.Empty;
|
|
private string SelectionSearchEnd = string.Empty;
|
|
private string SelectionStepVersion = string.Empty;
|
|
|
|
private bool IsMergePartNumberOption = false;
|
|
private int PageSize = 30;
|
|
|
|
RadzenTabs tabs;
|
|
int SelectedTabIndex = 0;
|
|
Dictionary<string, EnumTabs> ListTabs = new Dictionary<string, EnumTabs>();
|
|
List<OverviewMerged> Overviews = new List<OverviewMerged>();
|
|
List<Overview> DetailOverviews = new List<Overview>();
|
|
// List<TestHistory> TestHistories = new List<TestHistory>();
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
}
|
|
|
|
private async Task OnSearch()
|
|
{
|
|
//날짜 오류
|
|
if(RequestSearch.SearchStart > RequestSearch.SearchEnd)
|
|
{
|
|
LogXnet.WriteLine("DateTime Set Error", LogXLabel.Error);
|
|
return;
|
|
}
|
|
|
|
PopupService.OpenIndicator("Search Data");
|
|
|
|
Overviews = await CPXV2LogService.GetOverviewMerged(RequestSearch);
|
|
if (ListTabs.ContainsKey(EnumTabs.OverviewC1.ToString()) == false)
|
|
ListTabs.Add($"{EnumTabs.OverviewC1}", EnumTabs.OverviewC1);
|
|
|
|
PopupService.CloseIndicator();
|
|
}
|
|
|
|
protected override void OnInitialized()
|
|
{
|
|
|
|
}
|
|
|
|
protected override void OnAfterRender(bool firstRender)
|
|
{
|
|
|
|
}
|
|
|
|
protected override void OnParametersSet()
|
|
{
|
|
|
|
// var searchData = OverviewService.SearchOverview();
|
|
//Overviews = searchData;
|
|
|
|
// if (ListTabs.ContainsKey(EnumTabs.OverviewC1.ToString()) == false)
|
|
// ListTabs.Add($"{EnumTabs.OverviewC1}", EnumTabs.OverviewC1);
|
|
}
|
|
|
|
private void OnSelectRowOverview(OverviewMerged overview)
|
|
{
|
|
// SelectionStationName = $"{overview.StationName} ({overview.Host},{overview.Section})";
|
|
// SelectionProductNO = $"{overview.ProductNo} ({overview.TestCode})";
|
|
// SelectionParentInfo = $"{overview.ParentNo} ({overview.FileVersion},{overview.FileCode})";
|
|
|
|
// SelectionSearchBegin = $"{overview.TestDate?.ToString("yyyy-MM-dd")} {overview.FirstTestTime}";
|
|
// SelectionSearchEnd = $"{overview.TestDate?.ToString("yyyy-MM-dd")} {overview.FinalTestTime}";
|
|
// SelectionStepVersion = $"{overview.StepVersion}";
|
|
}
|
|
|
|
private void OnClickDetailOverviewContextMenu()
|
|
{
|
|
// DetailOverviews = OverviewService.SearchDetailOverview(SelectedDataService.SelectedOverview);
|
|
|
|
// if (ListTabs.ContainsKey(EnumTabs.OverviewC1Detail.ToString()) == false)
|
|
// ListTabs.Add($"{EnumTabs.OverviewC1Detail.ToString()}", EnumTabs.OverviewC1Detail);
|
|
// tabs.Reload();
|
|
|
|
// SelectedTabIndex = ListTabs.Keys.ToList().IndexOf(EnumTabs.OverviewC1Detail.ToString());
|
|
}
|
|
|
|
private void OnClickHistoryContextMenu()
|
|
{
|
|
// TestHistories = OverviewService.SearchTestHistory(SelectedDataService.SelectedOverview);
|
|
|
|
// int index = ListTabs.Count(x => x.Key.Contains(EnumTabs.TestHistoryC1.ToString())) + 1;
|
|
|
|
// ListTabs.Add($"{EnumTabs.TestHistoryC1}({index})", EnumTabs.TestHistoryC1);
|
|
// tabs.Reload();
|
|
|
|
// SelectedTabIndex = ListTabs.Keys.ToList().IndexOf($"{EnumTabs.TestHistoryC1}({index})");
|
|
}
|
|
|
|
void OnClickClose(string tabKey)
|
|
{
|
|
if (ListTabs.ContainsKey(tabKey))
|
|
{
|
|
ListTabs.Remove(tabKey);
|
|
if (SelectedTabIndex >= ListTabs.Count)
|
|
SelectedTabIndex = ListTabs.Count - 1;
|
|
}
|
|
tabs.Reload();
|
|
}
|
|
} |