UI fejlesztése
This commit is contained in:
@@ -44,9 +44,13 @@ public partial class CheckListPage : ContentPage
|
||||
{
|
||||
var taskCompletionSource = new TaskCompletionSource<string>();
|
||||
await Navigation.PushAsync(new NFCWaiter(taskCompletionSource));
|
||||
var result = await taskCompletionSource.Task;
|
||||
var checkPintCode = await taskCompletionSource.Task;
|
||||
if (!string.IsNullOrEmpty(checkPintCode))
|
||||
{
|
||||
await Navigation.PopAsync();
|
||||
await Navigation.PushAsync(new CheckListWorkPage(checkListHeaderDTO.Id, checkPintCode));
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
private async Task LoadCheckListTemplate()
|
||||
|
||||
@@ -0,0 +1,206 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
x:Class="WorkFlowCheck.MAUI.Pages.CheckList.CheckListWorkPage"
|
||||
xmlns:templateselectors="clr-namespace:WorkFlowCheck.MAUI.TemplateSelectors"
|
||||
xmlns:local="clr-namespace:WorkFlowCheck.MAUI.Pages.CheckList"
|
||||
Title="CheckListWorkPage">
|
||||
<StackLayout Padding="20">
|
||||
<Label Text="Ellenőrzési feladatok" FontAttributes="Bold" FontSize="Medium" HorizontalOptions="Center" />
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<CollectionView x:Name="CheckPointCheckListRows"
|
||||
HeightRequest="640"
|
||||
ItemTemplate="{StaticResource AnswerTemplateSelector}">
|
||||
<CollectionView.EmptyView>
|
||||
<Label Text="Nincsenek feladatok." HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
</CollectionView.EmptyView>
|
||||
</CollectionView>
|
||||
</Frame>
|
||||
</StackLayout>
|
||||
<ContentPage.Resources>
|
||||
<DataTemplate x:Key="I_N_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" />
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
||||
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Label Grid.Column="3" Text="Válasz" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="P_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*">
|
||||
<Label Text="Fénykép készítése szükséges" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Label Grid.Column="3" Text="Válasz" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="V_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex,StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" />
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*">
|
||||
<Label Text="Érték megadása szükséges" Grid.Column="0" HorizontalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Label Grid.Column="3" Text="Válasz" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="SI_N_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||
<Label Text="I" Grid.Column="0" BackgroundColor="Yellow" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Label Grid.Column="3" Text="Válasz" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="I_SN_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="N" Grid.Column="1" BackgroundColor="Yellow" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Grid Grid.Column="3" RowDefinitions="Auto,Auto">
|
||||
<local:BindableRadioButton
|
||||
Grid.Row="0"
|
||||
Content="Igen"
|
||||
Value="Igen"
|
||||
BindableGroupName="{Binding GroupName}"
|
||||
IsChecked="{Binding SelectedAnswer, Converter={StaticResource RadioButtonConverter}, ConverterParameter=Igen}"
|
||||
HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
<local:BindableRadioButton
|
||||
Grid.Row="1"
|
||||
Content="Nem"
|
||||
Value="Nem"
|
||||
BindableGroupName="{Binding GroupName}"
|
||||
IsChecked="{Binding SelectedAnswer, Converter={StaticResource RadioButtonConverter}, ConverterParameter=Nem}"
|
||||
HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="PI_N_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||
<Label Text="I" Grid.Column="0" BackgroundColor="Red" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="N" Grid.Column="1" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Grid Grid.Column="3" RowDefinitions="Auto,Auto">
|
||||
<local:BindableRadioButton
|
||||
Grid.Row="0"
|
||||
Content="Igen"
|
||||
Value="Igen"
|
||||
BindableGroupName="{Binding GroupName}"
|
||||
IsChecked="{Binding SelectedAnswer, Converter={StaticResource RadioButtonConverter}, ConverterParameter=Igen}"
|
||||
HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
<local:BindableRadioButton
|
||||
Grid.Row="1"
|
||||
Content="Nem"
|
||||
Value="Nem"
|
||||
BindableGroupName="{Binding GroupName}"
|
||||
IsChecked="{Binding SelectedAnswer, Converter={StaticResource RadioButtonConverter}, ConverterParameter=Nem}"
|
||||
HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="I_PN_Template">
|
||||
<Frame BorderColor="Gray" Padding="1" Margin="2" HasShadow="True" CornerRadius="2">
|
||||
<Grid ColumnSpacing="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="3*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.RowIndex, StringFormat='{}{0:D1}.'}" BackgroundColor="WhiteSmoke" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="{Binding CheckListTemplateRowDTO.OperationDescription}" BackgroundColor="WhiteSmoke" Grid.Column="1" />
|
||||
<Grid Grid.Column="2" ColumnDefinitions="*,*">
|
||||
<Label Text="I" Grid.Column="0" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
<Label Text="N" Grid.Column="1" BackgroundColor="Red" TextColor="Black" HorizontalTextAlignment="Center" VerticalTextAlignment="Center"/>
|
||||
</Grid>
|
||||
<Grid Grid.Column="3" RowDefinitions="Auto,Auto">
|
||||
<local:BindableRadioButton
|
||||
Grid.Row="0"
|
||||
Content="Igen"
|
||||
Value="Igen"
|
||||
BindableGroupName="{Binding GroupName}"
|
||||
IsChecked="{Binding SelectedAnswer, Converter={StaticResource RadioButtonConverter}, ConverterParameter=Igen}"
|
||||
HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
<local:BindableRadioButton
|
||||
Grid.Row="1"
|
||||
Content="Nem"
|
||||
Value="Nem"
|
||||
BindableGroupName="{Binding GroupName}"
|
||||
IsChecked="{Binding SelectedAnswer, Converter={StaticResource RadioButtonConverter}, ConverterParameter=Nem}"
|
||||
HorizontalOptions="Center" VerticalOptions="Center"/>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Frame>
|
||||
</DataTemplate>
|
||||
<templateselectors:AnswerTypeTemplateSelector x:Key="AnswerTemplateSelector"
|
||||
I_N_Template="{StaticResource I_N_Template}"
|
||||
P_Template="{StaticResource P_Template}"
|
||||
SI_N_Template="{StaticResource SI_N_Template}"
|
||||
I_SN_Template="{StaticResource I_SN_Template}"
|
||||
PI_N_Template="{StaticResource PI_N_Template}"
|
||||
I_PN_Template="{StaticResource I_PN_Template}"
|
||||
V_Template="{StaticResource V_Template}"/>
|
||||
</ContentPage.Resources>
|
||||
</ContentPage>
|
||||
@@ -0,0 +1,54 @@
|
||||
using WorkFlowCheck.Common.DTO;
|
||||
using WorkFlowCheck.MAUI.Services.Interfaces;
|
||||
using Microsoft.Maui.Controls;
|
||||
|
||||
namespace WorkFlowCheck.MAUI.Pages.CheckList;
|
||||
|
||||
public partial class CheckListWorkPage : ContentPage
|
||||
{
|
||||
private readonly ICheckListService _checkListService;
|
||||
private string _checkPointCode;
|
||||
private int _checkListHeaderId;
|
||||
private UserDTO _userDTO;
|
||||
|
||||
|
||||
public CheckListWorkPage(int checkListHeaderId, string checkPointCode)
|
||||
{
|
||||
InitializeComponent();
|
||||
_checkPointCode = checkPointCode;
|
||||
_checkListHeaderId = checkListHeaderId;
|
||||
_checkListService = MauiProgram.ServiceProvider.GetRequiredService<ICheckListService>();
|
||||
_userDTO = MauiProgram.ServiceProvider.GetRequiredService<IUserService>().GetCurrentUser();
|
||||
}
|
||||
protected override async void OnAppearing()
|
||||
{
|
||||
base.OnAppearing();
|
||||
BindingContext = this;
|
||||
|
||||
await LoadCheckPointCheckListRows();
|
||||
}
|
||||
|
||||
private async Task LoadCheckPointCheckListRows()
|
||||
{
|
||||
CheckPointCheckListRows.ItemsSource = await _checkListService.GetCheckListRowsByCheckPointCode(_userDTO.Id, _checkListHeaderId, _checkPointCode);
|
||||
}
|
||||
}
|
||||
public class BindableRadioButton : RadioButton
|
||||
{
|
||||
public static readonly BindableProperty BindableGroupNameProperty =
|
||||
BindableProperty.Create(nameof(BindableGroupName), typeof(string), typeof(BindableRadioButton), default(string), propertyChanged: OnGroupNameChanged);
|
||||
|
||||
public string BindableGroupName
|
||||
{
|
||||
get => (string)GetValue(BindableGroupNameProperty);
|
||||
set => SetValue(BindableGroupNameProperty, value);
|
||||
}
|
||||
|
||||
private static void OnGroupNameChanged(BindableObject bindable, object oldValue, object newValue)
|
||||
{
|
||||
if (bindable is BindableRadioButton radioButton && newValue is string newGroupName)
|
||||
{
|
||||
radioButton.GroupName = newGroupName;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user