Loads of stuff, deletion works, SignalR working
This commit is contained in:
@@ -21,66 +21,118 @@
|
|||||||
|
|
||||||
<Grid Grid.Column="0">
|
<Grid Grid.Column="0">
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="9*" />
|
<RowDefinition Height="8*" />
|
||||||
<RowDefinition Height="1*" />
|
<RowDefinition Height="2*" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
|
|
||||||
<ListBox Grid.Row="0">
|
<ListBox Grid.Row="0" ItemsSource="{Binding Services}" SelectedItem="{Binding SelectedService}">
|
||||||
|
<ListBox.ItemContainerStyle>
|
||||||
|
<Style TargetType="ListBoxItem">
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
||||||
|
<Setter Property="Padding" Value="0" />
|
||||||
|
<Setter Property="Margin" Value="0" />
|
||||||
|
</Style>
|
||||||
|
</ListBox.ItemContainerStyle>
|
||||||
<ListBox.ItemTemplate>
|
<ListBox.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<Button Content="{Binding NAME}" Margin="5px"/>
|
<Label Content="{Binding NAME}"/>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ListBox.ItemTemplate>
|
</ListBox.ItemTemplate>
|
||||||
</ListBox>
|
</ListBox>
|
||||||
<Button Grid.Row="1" Margin="5" Content="Expand all" Click="ExpandAllServices"/>
|
|
||||||
|
<UniformGrid Grid.Row="1" Rows="3">
|
||||||
|
<Button Content="Delete selected" Command="{Binding DeleteServiceCommand}"></Button>
|
||||||
|
<Button Content="Create new" Command="{Binding CreateServiceCommand}"></Button>
|
||||||
|
<Button Content="Expand all" Click="ExpandAllServices"/>
|
||||||
|
</UniformGrid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
<Grid Grid.Column="1">
|
<Grid Grid.Column="1">
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="9*" />
|
<RowDefinition Height="8*" />
|
||||||
<RowDefinition Height="1*" />
|
<RowDefinition Height="2*" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
|
|
||||||
<ListBox Grid.Row="0">
|
<ListBox Grid.Row="0" ItemsSource="{Binding Customers}" SelectedItem="{Binding SelectedCustomer}">
|
||||||
|
<ListBox.ItemContainerStyle>
|
||||||
|
<Style TargetType="ListBoxItem">
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
||||||
|
<Setter Property="Padding" Value="0" />
|
||||||
|
<Setter Property="Margin" Value="0" />
|
||||||
|
</Style>
|
||||||
|
</ListBox.ItemContainerStyle>
|
||||||
<ListBox.ItemTemplate>
|
<ListBox.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<Button Content="{Binding NAME}" Margin="5px"/>
|
<Label Content="{Binding NAME}"/>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ListBox.ItemTemplate>
|
</ListBox.ItemTemplate>
|
||||||
</ListBox>
|
</ListBox>
|
||||||
<Button Grid.Row="1" Margin="5" Content="Expand all" Click="ExpandAllCustomers" />
|
|
||||||
|
<UniformGrid Grid.Row="1" Rows="3">
|
||||||
|
<Button Content="Delete selected" Command="{Binding DeleteCustomerCommand}"></Button>
|
||||||
|
<Button Content="Create new" Command="{Binding CreateCustomerCommand}"></Button>
|
||||||
|
<Button Content="Expand all" Click="ExpandAllCustomers"/>
|
||||||
|
</UniformGrid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
<Grid Grid.Column="2">
|
<Grid Grid.Column="2">
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="9*" />
|
<RowDefinition Height="8*" />
|
||||||
<RowDefinition Height="1*" />
|
<RowDefinition Height="2*" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
|
|
||||||
<ListBox Grid.Row="0">
|
<ListBox Grid.Row="0" ItemsSource="{Binding MaintainerTeams}" SelectedItem="{Binding SelectedMaintainerTeam}">
|
||||||
|
<ListBox.ItemContainerStyle>
|
||||||
|
<Style TargetType="ListBoxItem">
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
||||||
|
<Setter Property="Padding" Value="0" />
|
||||||
|
<Setter Property="Margin" Value="0" />
|
||||||
|
</Style>
|
||||||
|
</ListBox.ItemContainerStyle>
|
||||||
<ListBox.ItemTemplate>
|
<ListBox.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<Button Content="{Binding NAME}" Margin="5px"/>
|
<Label Content="{Binding NAME}"/>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ListBox.ItemTemplate>
|
</ListBox.ItemTemplate>
|
||||||
</ListBox>
|
</ListBox>
|
||||||
<Button Grid.Row="1" Margin="5" Content="Expand all" Click="ExpandAllClients" />
|
|
||||||
|
<UniformGrid Grid.Row="1" Rows="3">
|
||||||
|
<Button Content="Delete selected" Command="{Binding DeleteMaintainerTeamCommand}"></Button>
|
||||||
|
<Button Content="Create new" Command="{Binding CreateMaintainerTeamCommand}"></Button>
|
||||||
|
<Button Content="Expand all" Click="ExpandAllMaintainerTeams"/>
|
||||||
|
</UniformGrid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
<Grid Grid.Column="3">
|
<Grid Grid.Column="3">
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="9*" />
|
<RowDefinition Height="8*" />
|
||||||
<RowDefinition Height="1*" />
|
<RowDefinition Height="2*" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
|
|
||||||
<ListBox Grid.Row="0">
|
<ListBox Grid.Row="0" ItemsSource="{Binding Employees}" SelectedItem="{Binding SelectedEmployee}">
|
||||||
|
<ListBox.ItemContainerStyle>
|
||||||
|
<Style TargetType="ListBoxItem">
|
||||||
|
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
|
||||||
|
<Setter Property="VerticalContentAlignment" Value="Stretch" />
|
||||||
|
<Setter Property="Padding" Value="0" />
|
||||||
|
<Setter Property="Margin" Value="0" />
|
||||||
|
</Style>
|
||||||
|
</ListBox.ItemContainerStyle>
|
||||||
<ListBox.ItemTemplate>
|
<ListBox.ItemTemplate>
|
||||||
<DataTemplate>
|
<DataTemplate>
|
||||||
<Button Content="{Binding NAME}" Margin="5px"/>
|
<Label Content="{Binding NAME}"/>
|
||||||
</DataTemplate>
|
</DataTemplate>
|
||||||
</ListBox.ItemTemplate>
|
</ListBox.ItemTemplate>
|
||||||
</ListBox>
|
</ListBox>
|
||||||
<Button Grid.Row="1" Margin="5" Content="Expand all" Click="ExpandAllTeams" />
|
|
||||||
|
<UniformGrid Grid.Row="1" Rows="3">
|
||||||
|
<Button Content="Delete selected" Command="{Binding DeleteEmployeeCommand}"></Button>
|
||||||
|
<Button Content="Create new" Command="{Binding CreateEmployeeCommand}"></Button>
|
||||||
|
<Button Content="Expand all" Click="ExpandAllEmployees"/>
|
||||||
|
</UniformGrid>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -23,12 +23,12 @@ namespace WD7UVN_SzTGUI_2023242.Client.WPF
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExpandAllClients(object sender, RoutedEventArgs e)
|
private void ExpandAllEmployees(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExpandAllTeams(object sender, RoutedEventArgs e)
|
private void ExpandAllMaintainerTeams(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -183,7 +183,7 @@ namespace WD7UVN_SzTGUI_2023242.Client.WPF
|
|||||||
public async Task DeleteAsync(int id, string endpoint)
|
public async Task DeleteAsync(int id, string endpoint)
|
||||||
{
|
{
|
||||||
HttpResponseMessage response =
|
HttpResponseMessage response =
|
||||||
await client.DeleteAsync(endpoint + "/" + id.ToString());
|
await client.DeleteAsync("api/" + endpoint + "/" + id.ToString());
|
||||||
|
|
||||||
if (!response.IsSuccessStatusCode)
|
if (!response.IsSuccessStatusCode)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,24 +2,48 @@
|
|||||||
using System.ComponentModel;
|
using System.ComponentModel;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using CommunityToolkit.Mvvm.ComponentModel;
|
using CommunityToolkit.Mvvm.ComponentModel;
|
||||||
|
using System.Windows.Input;
|
||||||
|
using CommunityToolkit.Mvvm.Input;
|
||||||
|
|
||||||
namespace WD7UVN_SzTGUI_2023242.Client.WPF.ViewModels
|
namespace WD7UVN_SzTGUI_2023242.Client.WPF.ViewModels
|
||||||
{
|
{
|
||||||
public class MainWindowViewModel : ObservableRecipient
|
public class MainWindowViewModel : ObservableRecipient
|
||||||
{
|
{
|
||||||
private string errorMessage;
|
|
||||||
|
|
||||||
public string ErrorMessage
|
|
||||||
{
|
|
||||||
get { return errorMessage; }
|
|
||||||
set { SetProperty(ref errorMessage, value); }
|
|
||||||
}
|
|
||||||
|
|
||||||
public RestCollection<Service> Services { get; set; }
|
public RestCollection<Service> Services { get; set; }
|
||||||
public RestCollection<MaintainerTeam> MaintainerTeams { get; set; }
|
public RestCollection<MaintainerTeam> MaintainerTeams { get; set; }
|
||||||
public RestCollection<Customer> Customers { get; set; }
|
public RestCollection<Customer> Customers { get; set; }
|
||||||
public RestCollection<Employee> Employees { get; set; }
|
public RestCollection<Employee> Employees { get; set; }
|
||||||
|
|
||||||
|
private Service selectedService;
|
||||||
|
public Service SelectedService
|
||||||
|
{
|
||||||
|
get { return selectedService; }
|
||||||
|
set { SetProperty(ref selectedService, value); (DeleteServiceCommand as RelayCommand).NotifyCanExecuteChanged(); }
|
||||||
|
}
|
||||||
|
private Employee selectedEmployee;
|
||||||
|
public Employee SelectedEmployee
|
||||||
|
{
|
||||||
|
get { return selectedEmployee; }
|
||||||
|
set { SetProperty(ref selectedEmployee, value); (DeleteEmployeeCommand as RelayCommand).NotifyCanExecuteChanged(); }
|
||||||
|
}
|
||||||
|
private Customer selectedCustomer;
|
||||||
|
public Customer SelectedCustomer
|
||||||
|
{
|
||||||
|
get { return selectedCustomer; }
|
||||||
|
set { SetProperty(ref selectedCustomer, value); (DeleteCustomerCommand as RelayCommand).NotifyCanExecuteChanged(); }
|
||||||
|
}
|
||||||
|
private MaintainerTeam selectedMaintainerTeam;
|
||||||
|
public MaintainerTeam SelectedMaintainerTeam
|
||||||
|
{
|
||||||
|
get { return selectedMaintainerTeam; }
|
||||||
|
set { SetProperty(ref selectedMaintainerTeam, value); (DeleteMaintainerTeamCommand as RelayCommand).NotifyCanExecuteChanged(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
public ICommand DeleteServiceCommand { get; set; }
|
||||||
|
public ICommand DeleteCustomerCommand { get; set; }
|
||||||
|
public ICommand DeleteMaintainerTeamCommand { get; set; }
|
||||||
|
public ICommand DeleteEmployeeCommand { get; set; }
|
||||||
|
|
||||||
public static bool IsInDesignMode
|
public static bool IsInDesignMode
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
@@ -33,10 +57,46 @@ namespace WD7UVN_SzTGUI_2023242.Client.WPF.ViewModels
|
|||||||
{
|
{
|
||||||
if (!IsInDesignMode)
|
if (!IsInDesignMode)
|
||||||
{
|
{
|
||||||
Services = new RestCollection<Service>("http://localhost:5000/", "api/Service");
|
Services = new RestCollection<Service>("http://localhost:5000/", "api/Service", "hub");
|
||||||
Employees = new RestCollection<Employee>("http://localhost:5000/", "api/Employee");
|
Employees = new RestCollection<Employee>("http://localhost:5000/", "api/Employee", "hub");
|
||||||
MaintainerTeams = new RestCollection<MaintainerTeam>("http://localhost:5000/", "api/MaintainerTeam");
|
MaintainerTeams = new RestCollection<MaintainerTeam>("http://localhost:5000/", "api/MaintainerTeam", "hub");
|
||||||
Customers = new RestCollection<Customer>("http://localhost:5000/", "api/Customer");
|
Customers = new RestCollection<Customer>("http://localhost:5000/", "api/Customer", "hub");
|
||||||
|
|
||||||
|
DeleteServiceCommand = new RelayCommand(() =>
|
||||||
|
{
|
||||||
|
Services.Delete(SelectedService.ID);
|
||||||
|
},
|
||||||
|
() =>
|
||||||
|
{
|
||||||
|
return SelectedService != null;
|
||||||
|
});
|
||||||
|
|
||||||
|
DeleteCustomerCommand = new RelayCommand(() =>
|
||||||
|
{
|
||||||
|
Customers.Delete(SelectedCustomer.ID);
|
||||||
|
},
|
||||||
|
() =>
|
||||||
|
{
|
||||||
|
return SelectedCustomer != null;
|
||||||
|
});
|
||||||
|
|
||||||
|
DeleteEmployeeCommand = new RelayCommand(() =>
|
||||||
|
{
|
||||||
|
Employees.Delete(SelectedEmployee.ID);
|
||||||
|
},
|
||||||
|
() =>
|
||||||
|
{
|
||||||
|
return SelectedEmployee != null;
|
||||||
|
});
|
||||||
|
|
||||||
|
DeleteMaintainerTeamCommand = new RelayCommand(() =>
|
||||||
|
{
|
||||||
|
MaintainerTeams.Delete(SelectedMaintainerTeam.ID);
|
||||||
|
},
|
||||||
|
() =>
|
||||||
|
{
|
||||||
|
return SelectedMaintainerTeam != null;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,12 +7,54 @@
|
|||||||
</ApplicationDefinition>
|
</ApplicationDefinition>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Update="Windows\GetAllServices.xaml.cs">
|
<Compile Update="Windows\Create\CreateNewCustomer.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\Create\CreateNewEmployee.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\Create\CreateNewMaintainerTeam.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\Create\CreateNewService.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\GetAll\GetAllCustomers.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\GetAll\GetAllEmployees.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\GetAll\GetAllMaintainerTeams.xaml.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Update="Windows\GetAll\GetAllServices.xaml.cs">
|
||||||
<SubType>Code</SubType>
|
<SubType>Code</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Page Update="Windows\GetAllServices.xaml">
|
<Page Update="Windows\Create\CreateNewCustomer.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\Create\CreateNewEmployee.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\Create\CreateNewMaintainerTeam.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\Create\CreateNewService.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\GetAll\GetAllCustomers.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\GetAll\GetAllEmployees.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\GetAll\GetAllMaintainerTeams.xaml">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
|
<Page Update="Windows\GetAll\GetAllServices.xaml">
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</Page>
|
</Page>
|
||||||
<Page Update="MainWindow.xaml">
|
<Page Update="MainWindow.xaml">
|
||||||
|
|||||||
Reference in New Issue
Block a user