uind-hikvision-attendance-m.../src/HikvisionAttendanceManager.App/UserManagementView.xaml

89 lines
6.4 KiB
XML

<UserControl x:Class="HikvisionAttendanceManager.App.UserManagementView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel>
<TextBlock Text="User Management" FontSize="25" FontWeight="SemiBold" Foreground="#17233B"/>
<TextBlock Text="Create individual Hikvision users with HRMS photo enrollment, or delete users by employee ID." Margin="0,6,0,22" Foreground="#66758C"/>
<Border Style="{StaticResource CardStyle}" Margin="0,0,0,14">
<StackPanel>
<TextBlock Text="HIKVISION DEVICE" Style="{StaticResource CardCaption}"/>
<DockPanel Margin="0,12,0,0">
<Button x:Name="TestConnectionButton" Content="Test Connection" DockPanel.Dock="Right" Style="{StaticResource PrimaryButton}" Click="TestConnection_Click"/>
<ComboBox x:Name="DeviceCombo" DisplayMemberPath="Name" MinWidth="310" HorizontalAlignment="Left"/>
</DockPanel>
<TextBlock x:Name="DeviceStatusText" Margin="0,10,0,0" Foreground="#66758C"/>
</StackPanel>
</Border>
<TabControl>
<TabItem Header="Create User">
<StackPanel Margin="0,12,0,0">
<Border Style="{StaticResource CardStyle}" Margin="0,0,0,14">
<StackPanel>
<TextBlock Text="HRMS EMPLOYEE" Style="{StaticResource CardCaption}"/>
<Grid Margin="0,12,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="220"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Margin="0,0,10,0">
<TextBlock Text="Location Site" Foreground="#475569"/>
<ComboBox x:Name="SiteCombo" DisplayMemberPath="DisplayName" SelectionChanged="SiteChanged"/>
</StackPanel>
<StackPanel Grid.Column="1" Margin="0,0,10,0">
<TextBlock Text="Search employee (serial or name)" Foreground="#475569"/>
<TextBox x:Name="SearchBox" KeyDown="SearchBox_KeyDown"/>
</StackPanel>
<Button Grid.Column="2" Content="Search" VerticalAlignment="Bottom" Click="Search_Click"/>
</Grid>
<TextBlock x:Name="SearchStatusText" Margin="0,8,0,0" Foreground="#66758C"/>
<ListBox x:Name="SearchResults" DisplayMemberPath="Display" Height="120" Margin="0,8,0,0" SelectionChanged="SearchResults_Changed"/>
<TextBlock x:Name="SelectedEmployeeText" Margin="0,12,0,0" Foreground="#334155" TextWrapping="Wrap"/>
</StackPanel>
</Border>
<Border Style="{StaticResource CardStyle}" Margin="0,0,0,14">
<StackPanel>
<TextBlock Text="CREATE &amp; ENROLL" Style="{StaticResource CardCaption}"/>
<TextBlock x:Name="CreateProgressText" Margin="0,12,0,0" Foreground="#475569"/>
<Button Content="Create User" Style="{StaticResource PrimaryButton}" HorizontalAlignment="Left" Margin="0,14,0,0" Click="CreateUser_Click"/>
</StackPanel>
</Border>
</StackPanel>
</TabItem>
<TabItem Header="Delete Users">
<StackPanel Margin="0,12,0,0">
<Border Style="{StaticResource CardStyle}" Margin="0,0,0,14">
<StackPanel>
<TextBlock Text="EMPLOYEE IDs TO DELETE" Style="{StaticResource CardCaption}"/>
<DockPanel Margin="0,12,0,0">
<Button Content="+ Add" DockPanel.Dock="Right" Click="AddDeleteId_Click"/>
<TextBox x:Name="DeleteIdBox" Margin="0,0,8,0" KeyDown="DeleteIdBox_KeyDown"/>
</DockPanel>
<WrapPanel x:Name="DeleteChips" Margin="0,12,0,0"/>
<Button Content="Delete Selected Users" Style="{StaticResource PrimaryButton}" HorizontalAlignment="Left" Margin="0,14,0,0" Click="DeleteUsers_Click"/>
</StackPanel>
</Border>
</StackPanel>
</TabItem>
</TabControl>
<Border x:Name="ResultsCard" Style="{StaticResource CardStyle}" Visibility="Collapsed" Margin="0,14,0,0">
<StackPanel>
<TextBlock x:Name="CompletionText" FontSize="17" FontWeight="SemiBold"/>
<DataGrid x:Name="ResultsGrid" AutoGenerateColumns="False" IsReadOnly="True" CanUserAddRows="False" Margin="0,12,0,0" MaxHeight="260">
<DataGrid.Columns>
<DataGridTextColumn Header="Employee" Binding="{Binding EmployeeNumber}" Width="100"/>
<DataGridTextColumn Header="Name" Binding="{Binding EmployeeName}" Width="*"/>
<DataGridTextColumn Header="User" Binding="{Binding UserStatus}" Width="100"/>
<DataGridTextColumn Header="Face" Binding="{Binding FaceStatus}" Width="100"/>
<DataGridTextColumn Header="Verification" Binding="{Binding VerificationStatus}" Width="100"/>
<DataGridTextColumn Header="Result" Binding="{Binding OverallResult}" Width="90"/>
<DataGridTextColumn Header="Reason" Binding="{Binding Reason}" Width="2*"/>
</DataGrid.Columns>
</DataGrid>
</StackPanel>
</Border>
</StackPanel>
</ScrollViewer>
</UserControl>