mirror of
https://gitlab.com/fabinfra/fabaccess/borepin.git
synced 2025-03-12 23:01:52 +01:00
Start adding Show Machines from User
This commit is contained in:
parent
0a27854331
commit
2334cbc20d
25
Borepin/Borepin/Converter/ListNotEmptyConverter.cs
Normal file
25
Borepin/Borepin/Converter/ListNotEmptyConverter.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Globalization;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace Borepin.Converter
|
||||
{
|
||||
public class ListNotEmptyConverter : IValueConverter
|
||||
{
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
if(value != null && value is IList)
|
||||
{
|
||||
ICollection collection = value as ICollection;
|
||||
return collection.Count > 0;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
throw new NotSupportedException();
|
||||
}
|
||||
}
|
||||
}
|
@ -8,6 +8,7 @@
|
||||
<ContentPage.Resources>
|
||||
<ResourceDictionary>
|
||||
<converters:InvertBoolConverter x:Key="InvertBoolConverter"/>
|
||||
<converters:ListNotEmptyConverter x:Key="ListNotEmptyConverter"/>
|
||||
</ResourceDictionary>
|
||||
</ContentPage.Resources>
|
||||
<ContentPage.Content>
|
||||
@ -24,17 +25,26 @@
|
||||
Android="true"/>
|
||||
</Button.IsVisible>
|
||||
</Button>
|
||||
<RefreshView Command="{Binding RefreshCommand}" IsRefreshing="{Binding IsRefreshing}">
|
||||
<ListView ItemsSource="{Binding MachineListItemViewModel_List}" IsVisible="{Binding IsConnected}" SelectionMode="None">
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ViewCell>
|
||||
<views:MachineListItemView />
|
||||
</ViewCell>
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
</ListView>
|
||||
</RefreshView>
|
||||
<Label Text="Your Machines" IsVisible="{Binding UserAssignedMachineListItemViewModel_List, Converter={StaticResource ListNotEmptyConverter}}"/>
|
||||
<ListView ItemsSource="{Binding UserAssignedMachineListItemViewModel_List}" IsVisible="{Binding UserAssignedMachineListItemViewModel_List, Converter={StaticResource ListNotEmptyConverter}}" SelectionMode="None">
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ViewCell>
|
||||
<views:MachineListItemView />
|
||||
</ViewCell>
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
</ListView>
|
||||
<Label Text="All Machines"/>
|
||||
<ListView ItemsSource="{Binding MachineListItemViewModel_List}" SelectionMode="None">
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ViewCell>
|
||||
<views:MachineListItemView />
|
||||
</ViewCell>
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
</ListView>
|
||||
</StackLayout>
|
||||
<StackLayout IsVisible="{Binding IsConnected, Converter={StaticResource InvertBoolConverter}}">
|
||||
<Label Text="Please connect to Server" ></Label>
|
||||
|
@ -10,6 +10,7 @@ using FabAccessAPI.Schema;
|
||||
using Prism.Services.Dialogs;
|
||||
using Prism.Services;
|
||||
using Prism.AppModel;
|
||||
using static FabAccessAPI.Schema.Machine;
|
||||
|
||||
namespace Borepin.PageModel
|
||||
{
|
||||
@ -45,25 +46,44 @@ namespace Borepin.PageModel
|
||||
|
||||
IsConnected = true;
|
||||
|
||||
IMachineSystem machineInterface = await _BFFHService.GetMachineSystemInterface().ConfigureAwait(false);
|
||||
IMachineSystem machineSystem = await _BFFHService.GetMachineSystemInterface().ConfigureAwait(false);
|
||||
MachineSystem.IInfoInterface machine_infoInterface = await machineSystem.Info().ConfigureAwait(false);
|
||||
|
||||
MachineSystem.IInfoInterface infoInterface = await machineInterface.Info().ConfigureAwait(false);
|
||||
IUserSystem userSystem = await _BFFHService.GetUserSystemInterface().ConfigureAwait(false);
|
||||
UserSystem.IInfoInterface user_infoInterface = await userSystem.Info().ConfigureAwait(false);
|
||||
User user_self = (await user_infoInterface.GetUserSelf().ConfigureAwait(false)).Item1;
|
||||
|
||||
IReadOnlyList<Machine> machine_list = await infoInterface.GetMachineList().ConfigureAwait(false);
|
||||
IReadOnlyList<Machine> machine_list = await machine_infoInterface.GetMachineList().ConfigureAwait(false);
|
||||
|
||||
List<MachineListItemViewModel> viewmodel_list = new List<MachineListItemViewModel>();
|
||||
List<MachineListItemViewModel> viewmodel_list_user_assigned = new List<MachineListItemViewModel>();
|
||||
foreach (Machine machine in machine_list)
|
||||
{
|
||||
viewmodel_list.Add(new MachineListItemViewModel(machine));
|
||||
if(((InUseInterface_Proxy)machine.Inuse).IsNull)
|
||||
{
|
||||
viewmodel_list.Add(new MachineListItemViewModel(machine));
|
||||
}
|
||||
else
|
||||
{
|
||||
viewmodel_list_user_assigned.Add(new MachineListItemViewModel(machine));
|
||||
}
|
||||
}
|
||||
|
||||
MachineListItemViewModel_List = viewmodel_list;
|
||||
UserAssignedMachineListItemViewModel_List = viewmodel_list_user_assigned;
|
||||
|
||||
IsBusy = false;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Fields
|
||||
private IList<MachineListItemViewModel> _UserAssignedMachineListItemViewModel_List;
|
||||
public IList<MachineListItemViewModel> UserAssignedMachineListItemViewModel_List
|
||||
{
|
||||
get => _UserAssignedMachineListItemViewModel_List;
|
||||
set => SetProperty(ref _UserAssignedMachineListItemViewModel_List, value);
|
||||
}
|
||||
|
||||
private IList<MachineListItemViewModel> _MachineListItemViewModel_List;
|
||||
public IList<MachineListItemViewModel> MachineListItemViewModel_List
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user