Files
WorkFlowCheck/src/WorkFlowCheck.MAUI/Pages/BaseStock/CheckPoints/CheckPointEditPage.xaml.cs
T

76 lines
2.3 KiB
C#

using System.Windows.Input;
using WorkFlowCheck.Common.DTO;
namespace WorkFlowCheck.MAUI.Pages.BaseStock.CheckPoints;
public partial class CheckPointEditPage : ContentPage
{
public CheckPointDTO CheckPointDTO { get; set; }
public ICommand SaveCommand { get; }
public ICommand CancelCommand { get; }
public CheckPointEditPage(CheckPointDTO checkPointDTO)
{
InitializeComponent();
CheckPointDTO = checkPointDTO;
BindingContext = this;
SaveCommand = new Command(OnSave);
CancelCommand = new Command(OnCancel);
LoadCheckPointCheckListRows();
}
private void LoadCheckPointCheckListRows()
{
//IsRefreshing = true;
//await _syncService.SyncDatas();
CheckPointCheckListRows.ItemsSource = CheckPointDTO.CheckListTemplateRowDTO;
//IsRefreshing = false;
//OnPropertyChanged(nameof(IsRefreshing));
}
private async void OnSave()
{
// Adatok mentése és visszairányítás az elõzõ oldalra
// Például adatbázisba mentés elõtt itt végrehajthatsz további mûveleteket
await Navigation.PopAsync();
}
// A törlési (Cancel) logika
private async void OnCancel()
{
// Visszatérés az elõzõ oldalra anélkül, hogy mentenénk bármit
//await Navigation.PopAsync();
await Shell.Current.GoToAsync("//CheckPointsPage");
}
}
public class AnswerTypeTemplateSelector : DataTemplateSelector
{
public DataTemplate I_N_Template { get; set; }
public DataTemplate P_Template { get; set; }
public DataTemplate V_Template { get; set; }
public DataTemplate SI_N_Template { get; set; }
public DataTemplate I_SN_Template { get; set; }
public DataTemplate PI_N_Template { get; set; }
public DataTemplate I_PN_Template { get; set; }
protected override DataTemplate OnSelectTemplate(object item, BindableObject container)
{
if (item is CheckListTemplateRowDTO model)
{
return model.AnswerType switch
{
"I-N" => I_N_Template,
"P" => P_Template,
"V" => V_Template,
"SI-N" => SI_N_Template,
"I-SN" => I_SN_Template,
"PI-N" => PI_N_Template,
"I-PN" => I_PN_Template,
_ => I_N_Template
};
}
return null;
}
}