浏览代码

Изменение функционала

Данилов Денис 1 年之前
父节点
当前提交
d82f62c1b9

+ 31 - 0
esoft/Class/GetGrade.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Media.Animation;
+
+namespace esoft.Class
+{
+    internal class GetGrade
+    {
+        string name;
+
+        public string Name
+        {
+            get { return name; }
+            set { name = value; }
+        }
+
+        public static List<GetGrade> FillGrade()
+        {
+            List<GetGrade> list = new List<GetGrade>
+            {
+                new GetGrade { Name = "junior" },
+                new GetGrade { Name = "middle" },
+                new GetGrade { Name = "senior" },
+            };
+            return list;
+        }
+    }
+}

+ 51 - 57
esoft/Pages/AddEditServicePage.xaml

@@ -10,124 +10,118 @@
 
     <Grid>
 
-        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" Width="700" Background="White">
-            <StackPanel VerticalAlignment="Center" Width="700" Height="370" Background="#e8e8e8">
-
-                <StackPanel Height="25" Background="#87d3ff"/>
-                <Separator Height="10" Background="{x:Null}" />
-
+        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" Height="1080" Width="1920" Background="White">
+            <StackPanel VerticalAlignment="Center" Height="1080" Width="1920" Background="#e8e8e8">
+                <Separator Height="50" Background="{x:Null}" />
                 <StackPanel>
-                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left">
                         <Separator Width="20" Background="{x:Null}"/>
-                        <StackPanel Orientation="Horizontal" Width="456">
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="Название задачи:" FontSize="20"></TextBlock>
-                            <Separator Width="16" Background="{x:Null}" />
-                            <TextBox x:Name="TBoxTitle" Width="275" Height="20"></TextBox>
+                        <StackPanel Orientation="Horizontal" Width="1200">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Название задачи:" FontSize="40"></TextBlock>
+                            <Separator Width="26" Background="{x:Null}" />
+                            <TextBox x:Name="TBoxTitle" Width="851" Height="40" FontSize="30"></TextBox>
                         </StackPanel>
                         <Separator Width="20" Background="{x:Null}" />
-                        <StackPanel Orientation="Horizontal" Width="200">
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="Дата:" FontSize="20"></TextBlock>
+                        <StackPanel Orientation="Horizontal" Width="485">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Дата:" FontSize="40"></TextBlock>
                             <Separator Width="5" Background="{x:Null}" />
-                            <DatePicker Name="DPickerDateCreate" Background="White" Height="25" FontSize="14" Width="140" IsEnabled="False" />
+                            <DatePicker Name="DPickerDateCreate" Background="White" Height="40" FontSize="24" Width="350" IsEnabled="False" />
                         </StackPanel>
                     </StackPanel>
 
-                    <Separator Height="10" Background="{x:Null}" />
+                    <Separator Height="30" Background="{x:Null}" />
 
-                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment = "Left">
-                        <StackPanel Orientation="Horizontal" Width="480" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left">
+                        <StackPanel Orientation="Horizontal" Width="1222">
                             <Separator Width="20" Background="{x:Null}"/>
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="ФИО исполнителя:" FontSize="20"></TextBlock>
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="ФИО исполнителя:" FontSize="40"></TextBlock>
                             <Separator Width="5" Background="{x:Null}" />
-                            <ComboBox Name="cbExecutor" Width="276" Height="20" DisplayMemberPath=""></ComboBox>
+                            <ComboBox Name="cbExecutor" Width="850" Height="40" FontSize="29" DisplayMemberPath=""></ComboBox>
                         </StackPanel>
 
                         <Separator Width="17" Background="{x:Null}" />
 
-                        <StackPanel Orientation="Horizontal" Width="200">
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="Крайний срок:" FontSize="20"></TextBlock>
+                        <StackPanel Orientation="Horizontal" Width="270">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Крайний срок:" FontSize="40"/>
                         </StackPanel>
                     </StackPanel>
 
                     <Separator Height="0" Background="{x:Null}" />
 
-                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment = "Left">
-                        <StackPanel Orientation="Horizontal" Width="480" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left">
+                        <StackPanel Orientation="Horizontal" Width="1222">
                             <Separator Width="20" Background="{x:Null}"/>
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="ФИО менеджера:" FontSize="20"></TextBlock>
-                            <Separator Width="17" Background="{x:Null}" />
-                            <ComboBox Name="cbManager" Width="276" Height="20" DisplayMemberPath=""></ComboBox>
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="ФИО менеджера:" FontSize="40"></TextBlock>
+                            <Separator Width="30" Background="{x:Null}" />
+                            <ComboBox Name="cbManager" Width="850" Height="40" FontSize="29" DisplayMemberPath=""></ComboBox>
                         </StackPanel>
 
                         <Separator Width="17" Background="{x:Null}" />
 
-                        <StackPanel Orientation="Horizontal" Width="200">
-                            <DatePicker Name="DPickerDateDeadLine" Background="White" Height="25" FontSize="14" Width="190" />
+                        <StackPanel Orientation="Horizontal" Width="500">
+                            <DatePicker Name="DPickerDateDeadLine" Background="White" Height="40" FontSize="24" Width="450" />
                         </StackPanel>
                     </StackPanel>
 
 
-                    <Separator Height="10" Background="{x:Null}" />
+                    <Separator Height="30" Background="{x:Null}" />
 
-                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left">
                         <Separator Width="20" Background="{x:Null}"/>
-                        <TextBlock Style="{StaticResource BlockCommon}" Text="Cтатус:" FontSize="20"></TextBlock>
-                        <Separator Width="5" Background="{x:Null}" />
-                        <ComboBox Name="cbStatus" Width="184" Height="20" DisplayMemberPath="Name"/>
+                        <TextBlock Style="{StaticResource BlockCommon}" Text="Cтатус:" FontSize="40"></TextBlock>
+                        <Separator Width="25" Background="{x:Null}" />
+                        <ComboBox Name="cbStatus" Width="440" Height="40" FontSize="29" DisplayMemberPath="Name"/>
 
                         <Separator Width="20" Background="{x:Null}"/>
 
-                        <TextBlock Style="{StaticResource BlockCommon}" Text="Сложность:" FontSize="20"></TextBlock>
+                        <TextBlock Style="{StaticResource BlockCommon}" Text="Сложность:" FontSize="40"></TextBlock>
                         <Separator Width="5" Background="{x:Null}"/>
-                        <xctk:IntegerUpDown x:Name="IUDComplexityTask" Width="71" Height="20"/>
+                        <xctk:IntegerUpDown x:Name="IUDComplexityTask" Width="375" Height="40" FontSize="29"/>
 
                         <Separator Width="25" Background="{x:Null}"/>
-                        
-                        <StackPanel Orientation="Horizontal" Width="200">
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="Дата выполнения:" FontSize="20"></TextBlock>
+
+                        <StackPanel Orientation="Horizontal" Width="450">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Дата выполнения:" FontSize="40"></TextBlock>
                         </StackPanel>
 
                     </StackPanel>
 
-
-
-
-                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left">
                         <Separator Width="20" Background="{x:Null}"/>
-                        <TextBlock Style="{StaticResource BlockCommon}" Text="Время выполнение задачи:" FontSize="20"></TextBlock>
-                        <Separator Width="20" Background="{x:Null}" />
-                        <xctk:IntegerUpDown x:Name="IUDTimeTask" Width="182" Height="20"/>
+                        <TextBlock Style="{StaticResource BlockCommon}" Text="Время выполнение задачи:" FontSize="40"></TextBlock>
+                        <Separator Width="45" Background="{x:Null}" />
+                        <xctk:IntegerUpDown x:Name="IUDTimeTask" Width="653" Height="40" FontSize="29"/>
                         <Separator Width="25" Background="{x:Null}" />
-                        <StackPanel Orientation="Horizontal" Width="200">
-                            <DatePicker Name="DPickerDateCompleted" Background="White" Height="25" FontSize="14" Width="190" IsEnabled="False" />
+                        <StackPanel Orientation="Horizontal" Width="480">
+                            <DatePicker Name="DPickerDateCompleted" Background="White" Height="40" FontSize="24" Width="450" IsEnabled="False" />
                         </StackPanel>
                         
                     </StackPanel>
 
-                    <Separator Height="10" Background="{x:Null}" />
+                    <Separator Height="30" Background="{x:Null}" />
 
-                    <StackPanel Orientation="Horizontal" Width="480" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left">
                         <Separator Width="20" Background="{x:Null}"/>
-                        <TextBlock Style="{StaticResource BlockCommon}" Text="Характер задачи:" FontSize="20"></TextBlock>
+                        <TextBlock Style="{StaticResource BlockCommon}" Text="Характер задачи:" FontSize="40"></TextBlock>
                         <Separator Width="20" Background="{x:Null}" />
-                        <ComboBox Name="cbNatureTask" Width="275" Height="20">
+                        <ComboBox Name="cbNatureTask" Width="864" Height="40" FontSize="29">
                             <ComboBoxItem Content="Анализ и проектирование"/>
                             <ComboBoxItem Content="Установка оборудования"/>
                             <ComboBoxItem Content="Техническое обслуживание и сопровождение"/>
                         </ComboBox>
                     </StackPanel>
 
-                    <Separator Height="10" Background="{x:Null}" />
+                    <Separator Height="30" Background="{x:Null}" />
 
-                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment = "Left">
-                        <StackPanel Orientation="Horizontal" Width="480" HorizontalAlignment = "Left">
+                    <StackPanel Orientation="Horizontal" Width="1750" HorizontalAlignment = "Left" Height="320">
+                        <StackPanel Orientation="Horizontal" Width="1232">
                             <Separator Width="20" Background="{x:Null}"/>
-                            <TextBlock Style="{StaticResource BlockCommon}" Text="Описание:" FontSize="20" HorizontalAlignment="Left" VerticalAlignment="Top"></TextBlock>
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Описание:" FontSize="40" HorizontalAlignment="Left" VerticalAlignment="Top"></TextBlock>
                             <Separator Width="20" Background="{x:Null}" />
-                            <TextBox x:Name="TBoxDescription" Width="336" Height="65" TextWrapping="Wrap" AcceptsReturn="True"></TextBox>
+                            <TextBox x:Name="TBoxDescription" Width="988" Height="310" FontSize="30" VerticalAlignment="Top" TextWrapping="Wrap" AcceptsReturn="True"></TextBox>
                         </StackPanel>
 
-                        <Button Grid.Row="3" Name="BtnSaveTask" Content="Сохранить" Width="191" Height="NaN" BorderThickness="0" Style="{StaticResource  StandartButtons}" Margin="16,10,0,15" Click ="BtnSaveTask_Click">
+                        <Button Grid.Row="3" Name="BtnSaveTask" Content="Сохранить" Width="450" Height="79" BorderThickness="0" Style="{StaticResource  StandartButtons}" Margin="16,10,0,15" Click ="BtnSaveTask_Click" FontSize="36" VerticalAlignment="Bottom">
                             <Button.Resources>
                                 <Style TargetType="Border">
                                     <Setter Property="CornerRadius" Value="10"/>

+ 126 - 3
esoft/Pages/AddExecutorPage.xaml

@@ -4,11 +4,134 @@
       xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
       xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
       xmlns:local="clr-namespace:esoft.Pages"
+      xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
       mc:Ignorable="d" 
-      d:DesignHeight="450" d:DesignWidth="800"
-      Title="AddExecutorPage">
+      Title="Исполнитель" Height="1080" Width="1920">
 
     <Grid>
-        
+        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" Width="1920" Height="1080" Background="White">
+            <StackPanel VerticalAlignment="Center" Width="1920" Height="1080" Background="#e8e8e8">
+                <StackPanel Width="700" HorizontalAlignment="Left">
+                    <Separator Height="50" Background="{x:Null}" />
+                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment="Left">
+                        <Separator Width="20" Background="{x:Null}"/>
+                        <StackPanel Orientation="Horizontal" Width="680">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Фамилия:" FontSize="35"></TextBlock>
+                            <Separator Width="16" Background="{x:Null}" />
+                            <TextBox x:Name="TBoxSurname" Width="500" Height="35" FontSize="23"></TextBox>
+                        </StackPanel>
+                    </StackPanel>
+
+                    <Separator Height="10" Background="{x:Null}"/>
+
+                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment="Left">
+                        <Separator Width="20" Background="{x:Null}"/>
+                        <StackPanel Orientation="Horizontal" Width="680">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Имя:" FontSize="35"></TextBlock>
+                            <Separator Width="92" Background="{x:Null}" />
+                            <TextBox x:Name="TBoxName" Width="500" Height="35" FontSize="23"></TextBox>
+                        </StackPanel>
+                    </StackPanel>
+
+                    <Separator Height="10" Background="{x:Null}"/>
+
+                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment="Left">
+                        <Separator Width="20" Background="{x:Null}"/>
+                        <StackPanel Orientation="Horizontal" Width="680">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Отчество:" FontSize="35"></TextBlock>
+                            <Separator Width="12" Background="{x:Null}" />
+                            <TextBox x:Name="TBoxLastName" Width="500" Height="35" FontSize="23"></TextBox>
+                        </StackPanel>
+                    </StackPanel>
+
+                    <Separator Height="10" Background="{x:Null}"/>
+
+                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment="Left">
+                        <Separator Width="20" Background="{x:Null}"/>
+                        <StackPanel Orientation="Horizontal" Width="680">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Логин:" FontSize="35"></TextBlock>
+                            <Separator Width="63" Background="{x:Null}" />
+                            <TextBox x:Name="TBoxLogin" Width="500" Height="35" FontSize="23"></TextBox>
+                        </StackPanel>
+                    </StackPanel>
+
+                    <Separator Height="10" Background="{x:Null}"/>
+
+                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment="Left">
+                        <Separator Width="20" Background="{x:Null}"/>
+                        <StackPanel Orientation="Horizontal" Width="680">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Пароль:" FontSize="35"></TextBlock>
+                            <Separator Width="41" Background="{x:Null}" />
+                            <TextBox x:Name="TBoxPassword" Width="500" Height="35" FontSize="23"></TextBox>
+                        </StackPanel>
+                    </StackPanel>
+
+                    <Separator Height="10" Background="{x:Null}" />
+
+                    <StackPanel Orientation="Horizontal" Width="700" HorizontalAlignment="Left">
+                        <Separator Width="20" Background="{x:Null}"/>
+                        <StackPanel Orientation="Horizontal" Width="680">
+                            <TextBlock Style="{StaticResource BlockCommon}" Text="Грэйд:" FontSize="35"></TextBlock>
+                            <Separator Width="68" Background="{x:Null}" />
+                            <ComboBox Name="cbGrade" Width="500" Height="35" DisplayMemberPath="Name" FontSize="23"/>
+                        </StackPanel>
+                    </StackPanel>
+
+                    <Button Grid.Row="3" Name="BtnSaveExecutor" Content="Сохранить" FontSize="35" Width="680" Height="NaN" BorderThickness="0" Style="{StaticResource  StandartButtons}" Margin="16,10,0,15" Click="BtnSaveExecutor_Click">
+                        <Button.Resources>
+                            <Style TargetType="Border">
+                                <Setter Property="CornerRadius" Value="10"/>
+                            </Style>
+                        </Button.Resources>
+                    </Button>
+                </StackPanel>
+
+                <StackPanel Margin="700,-425,0,0" Grid.Row="1" Width="1194" Height="1016" Background="#FFDADADA">
+                    <TextBlock Text="Название задачи" FontSize="26" Margin="-870, 10, 0, 0" FontWeight="Bold" Width="256"/>
+                    <TextBlock Text="Дата создания задачи" FontSize="26" Margin="-50, -40, 0, 0" FontWeight="Bold" Width="325"/>
+                    <TextBlock Text="Менеджер" HorizontalAlignment="Center" FontSize="26" Margin="480, -40, 0, 0" VerticalAlignment ="Center" FontWeight="Bold"></TextBlock>
+                    <TextBlock Text="Статус" HorizontalAlignment="Right" FontSize="26" Margin="0, -40, 135, 0" VerticalAlignment ="Center" FontWeight="Bold"></TextBlock>
+                </StackPanel>
+
+                <ListView Grid.Row="1" Name="LViewTask" Height="790" Width="1194" HorizontalAlignment="Center" Background="{x:Null}" BorderBrush="{x:Null}" Margin="700,-1120,0,0" ScrollViewer.VerticalScrollBarVisibility="Hidden" MouseDoubleClick="LViewTask_MouseDoubleClick">
+                    <ListView.ItemContainerStyle>
+                        <Style TargetType="ListViewItem">
+                            <Setter Property="Margin" Value="0,0,0,10"/>
+                            <Setter Property="Width" Value="1170"/>
+                            <Style.Resources>
+                                <Style TargetType="Border">
+                                    <Setter Property="CornerRadius" Value="30"/>
+                                </Style>
+                            </Style.Resources>
+                            <Style.Triggers>
+                                <DataTrigger Binding="{Binding Status}" Value="запланирована">
+                                    <Setter Property="Background" Value="#73bbff"/>
+                                </DataTrigger>
+                                <DataTrigger Binding="{Binding Status}" Value="исполняется">
+                                    <Setter Property="Background" Value="#ffef5e"/>
+                                </DataTrigger>
+                                <DataTrigger Binding="{Binding Status}" Value="выполнена">
+                                    <Setter Property="Background" Value="#76cc6e"/>
+                                </DataTrigger>
+                                <DataTrigger Binding="{Binding Status}" Value="отменена">
+                                    <Setter Property="Background" Value="#cc6e6e"/>
+                                </DataTrigger>
+                            </Style.Triggers>
+                        </Style>
+                    </ListView.ItemContainerStyle>
+
+                    <ListView.ItemTemplate>
+                        <DataTemplate>
+                            <Grid HorizontalAlignment="Center" Width="1900" Height="109">
+                                <TextBlock Text="{Binding Title}" FontSize="24" Margin="390, 0, 0, 0" VerticalAlignment="Center" HorizontalAlignment="Left" Width="350" TextWrapping="Wrap"></TextBlock>
+                                <TextBlock Text="{Binding CreateDateTime, StringFormat='{}{0:dd MMMM yyyy г.}', ConverterCulture='ru-RU'}" Margin="760, 32, 0, 0"  FontSize="24"></TextBlock>
+                                <TextBlock Text="{Binding FioManager}" Margin="1125, 0, 0, 0" VerticalAlignment="Center" FontSize="24"></TextBlock>
+                                <TextBlock Text="{Binding Status}" Margin="1330, 0, 0, 0" VerticalAlignment="Center" FontSize="24"></TextBlock>
+                            </Grid>
+                        </DataTemplate>
+                    </ListView.ItemTemplate>
+                </ListView>
+            </StackPanel>
+        </StackPanel>
     </Grid>
 </Page>

+ 95 - 2
esoft/Pages/AddExecutorPage.xaml.cs

@@ -1,6 +1,10 @@
-using System;
+using esoft.Class;
+using esoft.Entities;
+using System;
+using System.CodeDom.Compiler;
 using System.Collections.Generic;
 using System.Linq;
+using System.Net.NetworkInformation;
 using System.Text;
 using System.Threading.Tasks;
 using System.Windows;
@@ -20,9 +24,98 @@ namespace esoft.Pages
     /// </summary>
     public partial class AddExecutorPage : Page
     {
-        public AddExecutorPage()
+        ActualContext actualContext = new ActualContext();
+        ExecuterFill tasks = new ExecuterFill();
+        List<ExecuterFill> executorContext = new List<ExecuterFill>();
+        List<TaskFill> taskContext = new List<TaskFill>();
+        private ExecuterFill selectedExecutor;
+        private bool isEditing = false;
+
+        public AddExecutorPage(ExecuterFill executor)
         {
             InitializeComponent();
+            LViewTask.ItemsSource = Class.TaskFill.TaskFills();
+            selectedExecutor = executor;
+            if (selectedExecutor.Executor != null)
+            {
+                isEditing = true;
+            }
+            FillForm();
+            LoadAndSortTasks();
+            LoadUserRule(selectedExecutor);
+        }
+
+        private void FillForm()
+        {
+            cbGrade.ItemsSource = GetGrade.FillGrade();
+
+            if (isEditing && selectedExecutor != null)
+            {
+                TBoxSurname.Text = selectedExecutor.MiddleName;
+                TBoxName.Text = selectedExecutor.Name;
+                TBoxLastName.Text = selectedExecutor.LastName;
+                if (cbGrade.ItemsSource is IEnumerable<GetGrade> gradeList)
+                {
+                    cbGrade.SelectedItem = gradeList.FirstOrDefault(executor => executor.Name == selectedExecutor.Grade);
+                }
+            }
+        }
+
+        private void LoadUserRule(ExecuterFill selectedExecutor)
+        {
+            taskContext = Class.TaskFill.TaskFills();
+
+            // Фильтрация задач по выбранному исполнителю
+            if (selectedExecutor != null)
+            {
+                LViewTask.ItemsSource = taskContext.Where(task => task.FioUser == selectedExecutor.FioUser);
+            }
+            else
+            {
+                LViewTask.ItemsSource = taskContext; // Если исполнитель не выбран, отображаем все задачи
+            }
+        }
+
+        private void LoadAndSortTasks()
+        {
+            // Сортируем задачи по убыванию даты создания
+            taskContext = Class.TaskFill.TaskFills();
+            taskContext = taskContext.OrderByDescending(task => task.CreateDateTime).ToList();
+            LViewTask.ItemsSource = taskContext;
+        }
+
+        private void BtnSaveExecutor_Click(object sender, RoutedEventArgs e)
+        {
+
+        }
+
+        // Функция для получения ID менеджера
+        private int GetManagerID()
+        {
+            // Получение ID менеджера текущего пользователя
+            var currentUser = GetCurrent.CurrentUser;
+            return currentUser?.ID ?? 0; // Предполагается, что ManagerID указывает на ID менеджера
+        }
+
+        private void LViewTask_MouseDoubleClick(object sender, MouseButtonEventArgs e)
+        {
+            if (LViewTask.SelectedItem is TaskFill selectedTask)
+            {
+                // Проверяем, не является ли статус задачи "выполнена" или "отменена"
+                if (selectedTask.Status != "выполнена" && selectedTask.Status != "отменена")
+                {
+                    AddEditServicePage editPage = new AddEditServicePage(selectedTask); // Передаем выбранную задачу в окно редактирования
+                    NavigationService.Navigate(editPage); // Открываем окно редактирования
+                }
+                else
+                {
+                    MessageBox.Show("Нельзя редактировать задачи со статусом '" + selectedTask.Status + "'", "Внимание", MessageBoxButton.OK, MessageBoxImage.Information);
+                }
+            }
+            else
+            {
+                MessageBox.Show("Выберите задачу для редактирования.", "Внимание", MessageBoxButton.OK, MessageBoxImage.Information);
+            }
         }
     }
 }

+ 1 - 1
esoft/Pages/ExecutorsListPage.xaml

@@ -62,7 +62,7 @@
             <TextBlock Text="Менеджер" HorizontalAlignment="Center" Margin="1300, -35, 0, 0" VerticalAlignment ="Center" FontSize="26" FontWeight="Bold" TextWrapping="Wrap"></TextBlock>
         </StackPanel>
 
-        <ListView Grid.Row="1" x:Name="LViewExecutors" Height="720" Width="1900" HorizontalAlignment="Center" VerticalAlignment="Top" Background="{x:Null}" BorderBrush="{x:Null}" Margin="0,83,0,0" MouseDoubleClick="LViewExecutors_MouseDoubleClick">
+        <ListView Grid.Row="1" x:Name="LViewExecutors" Height="720" Width="1900" HorizontalAlignment="Center" VerticalAlignment="Top" Background="{x:Null}" BorderBrush="{x:Null}" Margin="0,83,0,0" MouseDoubleClick="LViewExecutors_MouseDoubleClick" ScrollViewer.VerticalScrollBarVisibility="Hidden">
             <ListView.ItemContainerStyle>
                 <Style TargetType="ListViewItem">
                     <Setter Property="Margin" Value="0,0,0,10"/>

+ 26 - 2
esoft/Pages/ExecutorsListPage.xaml.cs

@@ -50,7 +50,8 @@ namespace esoft.Pages
 
         private void BtnAddExecutor_Click(object sender, RoutedEventArgs e)
         {
-
+            // Перенаправление пользователя на страницу с задачами
+            NavigationService.Navigate(new Pages.AddExecutorPage(executer));
         }
 
         private void BtnUpdate_Click(object sender, RoutedEventArgs e)
@@ -60,7 +61,30 @@ namespace esoft.Pages
 
         private void LViewExecutors_MouseDoubleClick(object sender, MouseButtonEventArgs e)
         {
-
+            if (LViewExecutors.SelectedItem is ExecuterFill selectedExecutor)
+            {
+                AddExecutorPage editPage = new AddExecutorPage(selectedExecutor); // Передаем выбранного Исполнителя в окно редактирования
+
+                // Заполнение данных из выбранного исполнителя в форму редактирования
+                editPage.TBoxSurname.Text = selectedExecutor.MiddleName;
+                editPage.TBoxName.Text = selectedExecutor.FirstName;
+                editPage.TBoxLastName.Text = selectedExecutor.LastName;
+                editPage.TBoxLogin.Text = selectedExecutor.Login;
+                editPage.TBoxPassword.Text = selectedExecutor.Password;
+
+                // Поиск соответствующего элемента в ComboBox `cbGrade` и установка его в качестве выбранного
+                if (editPage.cbGrade.ItemsSource is IEnumerable<GetGrade> gradeList)
+                {
+                    var selectedGrade = gradeList.FirstOrDefault(executor => executor.Name == selectedExecutor.Grade);
+                    editPage.cbGrade.SelectedItem = selectedGrade;
+                }
+
+                NavigationService.Navigate(editPage); // Открываем окно редактирования
+            }
+            else
+            {
+                MessageBox.Show("Выберите исполнителя для редактирования.", "Внимание", MessageBoxButton.OK, MessageBoxImage.Information);
+            }
         }
 
         private void FilterTasks()

+ 9 - 1
esoft/Pages/TaskLists.xaml

@@ -65,7 +65,7 @@
             <TextBlock Text="Статус" HorizontalAlignment="Right" Margin="0, -35, 170, 0" VerticalAlignment ="Center" FontSize="26" FontWeight="Bold"></TextBlock>
         </StackPanel>
 
-        <ListView Grid.Row="1" Name="LViewTask" Height="720" Width="1900" HorizontalAlignment="Center" VerticalAlignment="Top" Background="{x:Null}" BorderBrush="{x:Null}" Margin="0,83,0,0" MouseDoubleClick="LViewTask_MouseDoubleClick">
+        <ListView Grid.Row="1" Name="LViewTask" Height="720" Width="1900" HorizontalAlignment="Center" VerticalAlignment="Top" Background="{x:Null}" BorderBrush="{x:Null}" Margin="0,83,0,0" MouseDoubleClick="LViewTask_MouseDoubleClick" ScrollViewer.VerticalScrollBarVisibility="Hidden">
             <ListView.ItemContainerStyle>
                 <Style TargetType="ListViewItem">
                     <Setter Property="Margin" Value="0,0,0,10"/>
@@ -129,5 +129,13 @@
             </Button.Resources>
         </Button>
 
+        <Button Grid.Row="3" HorizontalAlignment="Left" Name="BtnExecutorList" Content="Список исполнителей" Width="225" Height="40" BorderThickness="0" Style="{StaticResource  StandartButtons}" Margin="60,820,0,15" Click="BtnExecutorList_Click">
+            <Button.Resources>
+                <Style TargetType="Border">
+                    <Setter Property="CornerRadius" Value="10"/>
+                </Style>
+            </Button.Resources>
+        </Button>
+
     </Grid>
 </Page>

+ 6 - 0
esoft/Pages/TaskLists.xaml.cs

@@ -214,6 +214,12 @@ namespace esoft.Pages
             LViewTask.ItemsSource = Class.TaskFill.TaskFills();
         }
 
+        private void BtnExecutorList_Click(object sender, RoutedEventArgs e)
+        {
+            // Перенаправление пользователя на страницу с задачами
+            NavigationService.Navigate(new Pages.ExecutorsListPage());
+        }
+
         private void LViewTask_MouseDoubleClick(object sender, MouseButtonEventArgs e)
         {
             if (LViewTask.SelectedItem is TaskFill selectedTask)

+ 1 - 0
esoft/esoft.csproj

@@ -97,6 +97,7 @@
     <Compile Include="Class\ActualContext.cs" />
     <Compile Include="Class\ExecuterFill.cs" />
     <Compile Include="Class\GetCurrentUser.cs" />
+    <Compile Include="Class\GetGrade.cs" />
     <Compile Include="Class\StatusTask.cs" />
     <Compile Include="Class\TaskFill.cs" />
     <Compile Include="Class\UserInFIO.cs" />