1
0

2 Commits c9af63b3a2 ... 55be19f064

Autor SHA1 Nachricht Datum
  shabanin.serzh@gmail.com 55be19f064 Окно редактирования vor 2 Jahren
  shabanin.serzh@gmail.com 477b727c00 Добавление фото, настройка интерфейса, создание бизнес логики vor 2 Jahren
100 geänderte Dateien mit 795 neuen und 19 gelöschten Zeilen
  1. 59 0
      ShabaninDemoEkz/AddChanged.xaml
  2. 91 0
      ShabaninDemoEkz/AddChanged.xaml.cs
  3. 16 0
      ShabaninDemoEkz/App.xaml
  4. 38 0
      ShabaninDemoEkz/ChangedPrior.xaml
  5. 84 0
      ShabaninDemoEkz/ChangedPrior.xaml.cs
  6. 1 1
      ShabaninDemoEkz/Clases/LoadPages.cs
  7. 48 0
      ShabaninDemoEkz/Clases/ProdAgent.cs
  8. 89 0
      ShabaninDemoEkz/Clases/VModel.cs
  9. 1 1
      ShabaninDemoEkz/MainWindow.xaml
  10. 1 1
      ShabaninDemoEkz/MainWindow.xaml.cs
  11. 74 0
      ShabaninDemoEkz/Pages/AgentPage.xaml
  12. 139 0
      ShabaninDemoEkz/Pages/AgentPage.xaml.cs
  13. 154 4
      ShabaninDemoEkz/ShabaninDemoEkz.csproj
  14. 0 12
      ShabaninDemoEkz/VModel.cs
  15. BIN
      ShabaninDemoEkz/agents/agent_1.png
  16. BIN
      ShabaninDemoEkz/agents/agent_10.png
  17. BIN
      ShabaninDemoEkz/agents/agent_100.png
  18. BIN
      ShabaninDemoEkz/agents/agent_101.png
  19. BIN
      ShabaninDemoEkz/agents/agent_102.png
  20. BIN
      ShabaninDemoEkz/agents/agent_103.png
  21. BIN
      ShabaninDemoEkz/agents/agent_104.png
  22. BIN
      ShabaninDemoEkz/agents/agent_105.png
  23. BIN
      ShabaninDemoEkz/agents/agent_106.png
  24. BIN
      ShabaninDemoEkz/agents/agent_107.png
  25. BIN
      ShabaninDemoEkz/agents/agent_108.png
  26. BIN
      ShabaninDemoEkz/agents/agent_109.png
  27. BIN
      ShabaninDemoEkz/agents/agent_11.png
  28. BIN
      ShabaninDemoEkz/agents/agent_110.png
  29. BIN
      ShabaninDemoEkz/agents/agent_111.png
  30. BIN
      ShabaninDemoEkz/agents/agent_112.png
  31. BIN
      ShabaninDemoEkz/agents/agent_113.png
  32. BIN
      ShabaninDemoEkz/agents/agent_114.png
  33. BIN
      ShabaninDemoEkz/agents/agent_115.png
  34. BIN
      ShabaninDemoEkz/agents/agent_116.png
  35. BIN
      ShabaninDemoEkz/agents/agent_117.png
  36. BIN
      ShabaninDemoEkz/agents/agent_118.png
  37. BIN
      ShabaninDemoEkz/agents/agent_119.png
  38. BIN
      ShabaninDemoEkz/agents/agent_12.png
  39. BIN
      ShabaninDemoEkz/agents/agent_120.png
  40. BIN
      ShabaninDemoEkz/agents/agent_121.png
  41. BIN
      ShabaninDemoEkz/agents/agent_122.png
  42. BIN
      ShabaninDemoEkz/agents/agent_123.png
  43. BIN
      ShabaninDemoEkz/agents/agent_124.png
  44. BIN
      ShabaninDemoEkz/agents/agent_125.png
  45. BIN
      ShabaninDemoEkz/agents/agent_126.png
  46. BIN
      ShabaninDemoEkz/agents/agent_127.png
  47. BIN
      ShabaninDemoEkz/agents/agent_128.png
  48. BIN
      ShabaninDemoEkz/agents/agent_129.png
  49. BIN
      ShabaninDemoEkz/agents/agent_13.png
  50. BIN
      ShabaninDemoEkz/agents/agent_130.png
  51. BIN
      ShabaninDemoEkz/agents/agent_14.png
  52. BIN
      ShabaninDemoEkz/agents/agent_15.png
  53. BIN
      ShabaninDemoEkz/agents/agent_16.png
  54. BIN
      ShabaninDemoEkz/agents/agent_17.png
  55. BIN
      ShabaninDemoEkz/agents/agent_18.png
  56. BIN
      ShabaninDemoEkz/agents/agent_19.png
  57. BIN
      ShabaninDemoEkz/agents/agent_2.png
  58. BIN
      ShabaninDemoEkz/agents/agent_20.png
  59. BIN
      ShabaninDemoEkz/agents/agent_21.png
  60. BIN
      ShabaninDemoEkz/agents/agent_22.png
  61. BIN
      ShabaninDemoEkz/agents/agent_23.png
  62. BIN
      ShabaninDemoEkz/agents/agent_24.png
  63. BIN
      ShabaninDemoEkz/agents/agent_25.png
  64. BIN
      ShabaninDemoEkz/agents/agent_26.png
  65. BIN
      ShabaninDemoEkz/agents/agent_27.png
  66. BIN
      ShabaninDemoEkz/agents/agent_28.png
  67. BIN
      ShabaninDemoEkz/agents/agent_29.png
  68. BIN
      ShabaninDemoEkz/agents/agent_3.png
  69. BIN
      ShabaninDemoEkz/agents/agent_30.png
  70. BIN
      ShabaninDemoEkz/agents/agent_31.png
  71. BIN
      ShabaninDemoEkz/agents/agent_32.png
  72. BIN
      ShabaninDemoEkz/agents/agent_33.png
  73. BIN
      ShabaninDemoEkz/agents/agent_34.png
  74. BIN
      ShabaninDemoEkz/agents/agent_35.png
  75. BIN
      ShabaninDemoEkz/agents/agent_36.png
  76. BIN
      ShabaninDemoEkz/agents/agent_37.png
  77. BIN
      ShabaninDemoEkz/agents/agent_38.png
  78. BIN
      ShabaninDemoEkz/agents/agent_39.png
  79. BIN
      ShabaninDemoEkz/agents/agent_4.png
  80. BIN
      ShabaninDemoEkz/agents/agent_40.png
  81. BIN
      ShabaninDemoEkz/agents/agent_41.png
  82. BIN
      ShabaninDemoEkz/agents/agent_42.png
  83. BIN
      ShabaninDemoEkz/agents/agent_43.png
  84. BIN
      ShabaninDemoEkz/agents/agent_44.png
  85. BIN
      ShabaninDemoEkz/agents/agent_45.png
  86. BIN
      ShabaninDemoEkz/agents/agent_46.png
  87. BIN
      ShabaninDemoEkz/agents/agent_47.png
  88. BIN
      ShabaninDemoEkz/agents/agent_48.png
  89. BIN
      ShabaninDemoEkz/agents/agent_49.png
  90. BIN
      ShabaninDemoEkz/agents/agent_5.png
  91. BIN
      ShabaninDemoEkz/agents/agent_50.png
  92. BIN
      ShabaninDemoEkz/agents/agent_51.png
  93. BIN
      ShabaninDemoEkz/agents/agent_52.png
  94. BIN
      ShabaninDemoEkz/agents/agent_53.png
  95. BIN
      ShabaninDemoEkz/agents/agent_54.png
  96. BIN
      ShabaninDemoEkz/agents/agent_55.png
  97. BIN
      ShabaninDemoEkz/agents/agent_56.png
  98. BIN
      ShabaninDemoEkz/agents/agent_57.png
  99. BIN
      ShabaninDemoEkz/agents/agent_58.png
  100. BIN
      ShabaninDemoEkz/agents/agent_59.png

+ 59 - 0
ShabaninDemoEkz/AddChanged.xaml

@@ -0,0 +1,59 @@
+<Window x:Class="ShabaninDemoEkz.AddChanged"
+        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+        xmlns:local="clr-namespace:ShabaninDemoEkz"
+        mc:Ignorable="d"
+        MinHeight="750"
+        Title="AddChanged" Height="750" Width="800">
+    <Grid>
+        <Grid.ColumnDefinitions>
+            <ColumnDefinition Width="75"/>
+            <ColumnDefinition Width="157*"/>
+   
+        </Grid.ColumnDefinitions>
+        <Grid.RowDefinitions>
+            <RowDefinition Height="100"/>
+            <RowDefinition Height="*"></RowDefinition>
+        </Grid.RowDefinitions>
+        <DockPanel Grid.ColumnSpan="3">
+            <Image Source="Resurses/Приятный шелест.png"/>
+            <TextBlock Text="Приятный шелест" FontSize="58"/>
+        </DockPanel>
+
+        <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Vertical"  Width="296" Grid.Row="1" Grid.ColumnSpan="2">
+            <GroupBox Header="Наименование" >
+                <TextBox x:Name="TitleTxt" Text="{Binding Title}"/>
+            </GroupBox>
+            <GroupBox Header="Тип агента">
+                <ComboBox Name="TypeA"/>
+            </GroupBox>
+            <GroupBox Header="Адресс">
+                <TextBox x:Name="AdressTxt" Text="{Binding Address}"/>
+            </GroupBox>
+            <GroupBox Header="ИНН">
+                <TextBox x:Name="InnTxt" Text="{Binding INN}"/>
+            </GroupBox>
+            <GroupBox Header="КПП">
+                <TextBox x:Name="KPP" Text="{Binding KPP}"/>
+            </GroupBox>
+            <GroupBox Header="Директор">
+                <TextBox x:Name="DirectorTxt" Text="{Binding DirectorName}"/>
+            </GroupBox>
+            <GroupBox Header="Телефон">
+                <TextBox x:Name="PhoneTxt" Text="{Binding Phone}"/>
+            </GroupBox>
+            <GroupBox Header="E-mail">
+                <TextBox x:Name="EmailTxt" Text="{Binding Email}"/>
+            </GroupBox>
+            <GroupBox Header="Приоритет">
+                <TextBox x:Name="Prioriti" Text="{Binding Priority}"/>
+            </GroupBox>
+            <Button x:Name="SaveBtn" Content="Сохранить" FontSize="20" Margin="0 20 0 0" Click="SaveBtn_Click"/>
+            <Button x:Name="DelBtn" Content="Удалить" FontSize="20" Margin="0 20 0 0" Click="DelBtn_Click"/>
+        </StackPanel>
+
+
+    </Grid>
+</Window>

+ 91 - 0
ShabaninDemoEkz/AddChanged.xaml.cs

@@ -0,0 +1,91 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Shapes;
+
+namespace ShabaninDemoEkz
+{
+    /// <summary>
+    /// Логика взаимодействия для AddChanged.xaml
+    /// </summary>
+    public partial class AddChanged : Window
+    {
+        IList ls;
+        Agent Agent;
+        public AddChanged(IList lss)
+        {
+            InitializeComponent();
+            ls = lss;
+            foreach (Agent a in lss)
+            {
+                Agent = a;
+            }
+            DataContext = Agent;
+
+            TypeA.ItemsSource = BaseConnect.BaseModel.AgentType.Where(x => x.ID > 0).ToList();
+
+            TypeA.DisplayMemberPath = "Title";
+            TypeA.SelectedValuePath = "ID";
+            TypeA.SelectedIndex = Agent.AgentTypeID - 1;
+
+
+        }
+
+        private void SaveBtn_Click(object sender, RoutedEventArgs e)
+        {
+
+            try
+            {
+                if (Convert.ToInt32(Prioriti.Text) >= 0)
+                {
+                    MessageBoxResult dialogResult = MessageBox.Show("Сохранить?", "Сохранение", MessageBoxButton.YesNo, MessageBoxImage.Information);
+                    if (dialogResult == MessageBoxResult.Yes)
+                    {
+                        Agent.AgentTypeID = TypeA.SelectedIndex + 1;
+                        BaseConnect.BaseModel.SaveChanges();
+                        MessageBox.Show("Изменения сохранены", "Сохранение изменений", MessageBoxButton.OK, MessageBoxImage.Information);
+                    }
+
+
+                }
+                else
+                {
+                    MessageBox.Show("Ошибка сохранения", "Ошибка сохранения", MessageBoxButton.OK, MessageBoxImage.Error);
+                }
+            }
+            catch
+            {
+                MessageBox.Show("Ошибка сохранения", "Ошибка сохранения", MessageBoxButton.OK, MessageBoxImage.Error);
+            }
+        }
+
+        private void DelBtn_Click(object sender, RoutedEventArgs e)
+        {
+            try
+            {
+                MessageBoxResult dialogResult = MessageBox.Show("Удалить?", "Удаление", MessageBoxButton.YesNo, MessageBoxImage.Information);
+                if (dialogResult == MessageBoxResult.Yes)
+                {
+                    BaseConnect.BaseModel.Agent.Remove(Agent);
+                    BaseConnect.BaseModel.SaveChanges();
+                    MessageBox.Show("Запись удалена", "Удаление", MessageBoxButton.OK, MessageBoxImage.Information);
+                    this.Hide();
+                }
+            }
+            catch
+            {
+                MessageBox.Show("Ошибка удаления", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
+            }
+        }
+    }
+}

+ 16 - 0
ShabaninDemoEkz/App.xaml

@@ -6,10 +6,26 @@
     <Application.Resources>
         <Style TargetType="Button">
             <Setter Property="Background" Value="#46B29D"/>
+            <Setter Property="FontFamily" Value="Monotype Corsiva"/>
         </Style>
 
         <Style TargetType="TextBlock">
             <Setter Property="FontFamily" Value="Monotype Corsiva"/>
+            <Setter Property="FontSize" Value="20"/>
+        </Style>
+
+        <Style TargetType="ComboBox">
+            <Setter Property="FontFamily" Value="Monotype Corsiva"/>
+        </Style>
+
+        <Style TargetType="TextBox">
+            <Setter Property="FontFamily" Value="Monotype Corsiva"/>
+            <Setter Property="FontSize" Value="20"/>
+        </Style>
+
+        <Style TargetType="GroupBox">
+            <Setter Property="FontFamily" Value="Monotype Corsiva"/>
+            <Setter Property="FontSize" Value="20"/>
         </Style>
     </Application.Resources>
 </Application>

+ 38 - 0
ShabaninDemoEkz/ChangedPrior.xaml

@@ -0,0 +1,38 @@
+<Window x:Class="ShabaninDemoEkz.ChangedPrior"
+        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+        xmlns:local="clr-namespace:ShabaninDemoEkz"
+        mc:Ignorable="d"
+        MaxHeight="400"
+        MaxWidth="400"
+        MinHeight="400"
+        MinWidth="400"
+        Icon="Resurses/Приятный шелест.ico"
+        Title="Изменение приоритета" Height="400" Width="400">
+
+
+    <Grid>
+        <Grid.ColumnDefinitions>
+            <ColumnDefinition Width="55"/>
+            <ColumnDefinition Width="*"/>
+        </Grid.ColumnDefinitions>
+        <Grid.RowDefinitions>
+            <RowDefinition Height="75"/>
+            <RowDefinition Height="*"></RowDefinition>
+        </Grid.RowDefinitions>
+        <DockPanel Grid.ColumnSpan="2">
+            <Image Source="Resurses/Приятный шелест.png"/>
+            <TextBlock Text="Приятный шелест" FontSize="38"/>
+        </DockPanel>
+
+        <StackPanel Orientation="Vertical" HorizontalAlignment="Center" VerticalAlignment="Center" Grid.ColumnSpan="2" Grid.Row="1">
+            <GroupBox Header="Новый приоритет">
+                <TextBox x:Name="priorTxt" />
+
+            </GroupBox>
+            <Button x:Name="SaveP" Click="SaveP_Click">Сохранить</Button>
+        </StackPanel>
+    </Grid>
+</Window>

+ 84 - 0
ShabaninDemoEkz/ChangedPrior.xaml.cs

@@ -0,0 +1,84 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Shapes;
+
+namespace ShabaninDemoEkz
+{
+    /// <summary>
+    /// Логика взаимодействия для ChangedPrior.xaml
+    /// </summary>
+    public partial class ChangedPrior : Window
+    {
+        IList lss;
+        VModel VM = new VModel();
+        List<Agent> agents;
+        public ChangedPrior(IList ls)
+        {
+            InitializeComponent();
+            lss = ls;
+            agents = VM.agent;
+
+            List<int> i = new List<int>();
+            foreach (Agent a in ls)
+            {
+                i.Add(a.Priority);
+            }
+            priorTxt.Text = i.Max().ToString();
+
+        }
+
+        public void changed()
+        {
+
+
+            foreach (Agent a in lss)
+            {
+                foreach (Agent aa in agents)
+                {
+                    if (a.ID == aa.ID)
+                    {
+                        aa.Priority = Convert.ToInt32(priorTxt.Text);
+                    }
+                }
+            }
+
+        }
+
+        private void SaveP_Click(object sender, RoutedEventArgs e)
+        {
+            try
+            {
+                if (Convert.ToInt32(priorTxt.Text) >= 0 && priorTxt.Text != "")
+                {
+                    MessageBoxResult dialogResult = MessageBox.Show("Сохранить?", "Сохранение", MessageBoxButton.YesNo, MessageBoxImage.Information);
+                    if (dialogResult == MessageBoxResult.Yes)
+                    {
+                        changed();
+                        BaseConnect.BaseModel.SaveChanges();
+                        MessageBox.Show("Изменения сохранены", "Сохранение изменений", MessageBoxButton.OK, MessageBoxImage.Information);
+                    }
+                }
+                else
+                {
+                    MessageBox.Show("Неверный формат приоритета", "Ошибка формата", MessageBoxButton.OK, MessageBoxImage.Error);
+
+                }
+            }
+            catch {
+                MessageBox.Show("Неверный формат приоритета", "Ошибка формата", MessageBoxButton.OK, MessageBoxImage.Error);
+            }
+
+        }
+    }
+}

+ 1 - 1
ShabaninDemoEkz/Clases/LoadPages.cs

@@ -7,7 +7,7 @@ using System.Windows.Controls;
 
 namespace ShabaninDemoEkz
 {
-    class LoadPages
+   public class LoadPages
     {
         public static Frame MainFrame;
 

+ 48 - 0
ShabaninDemoEkz/Clases/ProdAgent.cs

@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ShabaninDemoEkz
+{
+    public partial class Agent
+    {
+
+        public string TypeA;
+
+        public string typea
+        {
+            get
+            {
+                return TypeA;
+            }
+            set
+            {
+                TypeA = value;
+            }
+
+        }
+
+        public int CountSum;
+        public int counts
+        {
+            get { return CountSum; }
+            set { CountSum = value; }
+        }
+
+        public int Skidka;
+        public int skidka
+        {
+            get { return Skidka; }
+            set { Skidka = value; }
+        }
+
+        public string Color;
+        public string grencolor
+        {
+            get { return Color; }
+            set { Color = value; }
+        }
+    }
+}

+ 89 - 0
ShabaninDemoEkz/Clases/VModel.cs

@@ -0,0 +1,89 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ShabaninDemoEkz
+{
+    public class VModel
+    {
+        public List<Agent> agent;
+        public List<AgentType> ta;
+        public List<ProductSale> ps;
+        public VModel()
+        {
+            agent = LoadDate();
+        }
+
+        public List<Agent> LoadDate()
+        {
+            agent = BaseConnect.BaseModel.Agent.ToList();
+            ta = BaseConnect.BaseModel.AgentType.ToList();
+            ps = BaseConnect.BaseModel.ProductSale.ToList();
+
+
+            foreach (Agent a in agent)
+            {
+                if (a.Logo == "" || a.Logo == "null")
+                {
+                    a.Logo = "/Resurses/picture.png";
+                }
+
+                foreach (AgentType at in ta)
+                {
+                    if (a.AgentTypeID == at.ID)
+                    {
+                        a.typea = at.Title;
+                    }
+                }
+
+                DateTime second = DateTime.Now;
+                DateTime first = second.AddDays(-365);
+                int count = 0;
+                int scount = 0;
+                foreach (ProductSale p in ps)
+                {
+                    if ((p.SaleDate > first && p.SaleDate < second) && a.ID == p.AgentID)
+                    {
+                        count += p.ProductCount;
+                    }
+
+                    if (a.ID == p.AgentID)
+                    {
+                        scount += p.ProductCount;
+                    }
+
+                }
+                if (scount < 10000)
+                {
+                    a.skidka = 0;
+                }
+                if (scount >= 10000 && scount < 50000)
+                {
+                    a.skidka = 5;
+                }
+                if (scount >= 50000 && scount < 150000)
+                {
+                    a.skidka = 10;
+                }
+                if (scount >= 150000 && scount < 500000)
+                {
+                    a.skidka = 20;
+                }
+                if (scount >= 500000)
+                {
+                    a.skidka = 25;
+                    a.grencolor = "LightGreen";
+                }
+                a.counts = count;
+
+
+
+            }
+
+
+            return agent;
+        }
+    }
+}

+ 1 - 1
ShabaninDemoEkz/MainWindow.xaml

@@ -8,7 +8,7 @@
         Title="Агенты" Height="450" Width="800"
         Icon="Resurses/Приятный шелест.ico"
         >
-    <Grid>
+    <Grid Background="#C6D7FF">
         <Grid.ColumnDefinitions>
             <ColumnDefinition Width="75"/>
             <ColumnDefinition Width="*"/>

+ 1 - 1
ShabaninDemoEkz/MainWindow.xaml.cs

@@ -24,7 +24,7 @@ namespace ShabaninDemoEkz
         {
             InitializeComponent();
             BaseConnect.BaseModel = new Entities();
-            MainFrame.Navigate(new );
+            MainFrame.Navigate(new AgentPage());
             LoadPages.MainFrame = MainFrame;
         }
     }

+ 74 - 0
ShabaninDemoEkz/Pages/AgentPage.xaml

@@ -0,0 +1,74 @@
+<Page x:Class="ShabaninDemoEkz.AgentPage"
+      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
+      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
+      xmlns:local="clr-namespace:ShabaninDemoEkz"
+      mc:Ignorable="d" 
+      d:DesignHeight="450" d:DesignWidth="800"
+      Title="AgentPage">
+
+    <Page.Resources>
+        <DataTemplate x:Key="ListAgentD">
+            <Border BorderBrush="Black" BorderThickness="2" >
+                <StackPanel Orientation="Horizontal" Background="{Binding grencolor}">
+                    <StackPanel Orientation="Horizontal" Width="600">
+                        <Image Height="100" Width="100" Source="{Binding Logo}"/>
+                        <StackPanel Orientation="Vertical">
+                            <TextBlock Text="{Binding typea}">
+                            <Run Text=" | "/>
+                            <Run Text="{Binding Title}"/>
+                            </TextBlock>
+                            <TextBlock Text="{Binding counts}">
+                            <Run Text=" продаж за год"/>
+                            </TextBlock>
+                            <TextBlock Text="{Binding Phone}"/>
+                            <TextBlock Text="Приоритетность:">
+                            <Run Text="{Binding Priority}"/>
+                            </TextBlock>
+                        </StackPanel>
+                    </StackPanel>
+                    <StackPanel>
+                        <TextBlock Text="{Binding skidka}" Margin="0 0 0 10" Width="40">
+                            <Run Text="%" />
+                        </TextBlock>
+                    </StackPanel>
+                </StackPanel>
+            </Border>
+        </DataTemplate>
+    </Page.Resources>
+
+    <Grid>
+        <Grid.ColumnDefinitions>
+            <ColumnDefinition Width="50"/>
+            <ColumnDefinition Width="*"/>
+        </Grid.ColumnDefinitions>
+        <Grid.RowDefinitions>
+            <RowDefinition Height="60"/>
+            <RowDefinition Height="*"/>
+        </Grid.RowDefinitions>
+
+        <StackPanel Grid.ColumnSpan="2" Orientation="Horizontal">
+            <GroupBox Header="Поиск"  Width="150">
+                <TextBox x:Name="searchBar" TextChanged="searchBar_TextChanged" />
+            </GroupBox>
+            <GroupBox Header="Сортировка">
+                <ComboBox Name="SortCMB" SelectionChanged="SortCMB_SelectionChanged">
+                    <ComboBoxItem Content="Без сортировки"/>
+                    <ComboBoxItem Content="Наименование ↑"/>
+                    <ComboBoxItem Content="Наименование ↓"/>
+                    <ComboBoxItem Content="Размер скидки ↑"/>
+                    <ComboBoxItem Content="Размер скидки ↓"/>
+                    <ComboBoxItem Content="Приоритет агента ↑"/>
+                    <ComboBoxItem Content="Приоритет агента ↓"/>
+                </ComboBox>
+            </GroupBox>
+
+            <GroupBox Header="Фильтрация">
+                <ComboBox Name="FilterCmb" SelectionChanged="FilterCmb_SelectionChanged"/>
+            </GroupBox>
+            <Button x:Name="ChangePrior" Content="Изменить приоритет на ..." Height="45" Visibility="Collapsed" Click="ChangePrior_Click"/>
+        </StackPanel>
+        <ListView x:Name="AgentList" ItemTemplate="{StaticResource ListAgentD}" Grid.ColumnSpan="2" Grid.Row="1" SelectionMode="Extended" SelectionChanged="AgentList_SelectionChanged" MouseDoubleClick="AgentList_MouseDoubleClick"/>
+    </Grid>
+</Page>

+ 139 - 0
ShabaninDemoEkz/Pages/AgentPage.xaml.cs

@@ -0,0 +1,139 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+
+namespace ShabaninDemoEkz
+{
+    /// <summary>
+    /// Логика взаимодействия для AgentPage.xaml
+    /// </summary>
+    public partial class AgentPage : Page
+    {
+        VModel VM = new VModel();
+        List<Agent> agents;
+        public AgentPage()
+        {
+            InitializeComponent();
+            DataContext = VM;
+            agents = VM.agent;
+            AgentList.ItemsSource = agents;
+            SortCMB.SelectedIndex = 0;
+
+            FilterCmb.ItemsSource = BaseConnect.BaseModel.AgentType.ToList();
+            FilterCmb.SelectedValuePath = "ID";
+            FilterCmb.DisplayMemberPath = "Title";
+            FilterCmb.SelectedIndex = 0;
+
+        }
+
+        private void FilterCmb_SelectionChanged(object sender, SelectionChangedEventArgs e)
+        {
+            Filter();
+        }
+
+        private void SortCMB_SelectionChanged(object sender, SelectionChangedEventArgs e)
+        {
+            Filter();
+        }
+
+        public void Filter()
+        {
+            agents = VM.agent;
+            try
+            {
+                switch (SortCMB.SelectedIndex)
+                {
+                    case 0:
+
+                        break;
+                    case 1:
+                        agents = agents.OrderBy(x => x.Title).ToList();
+                        break;
+                    case 2:
+                        agents = agents.OrderBy(x => x.Title).ToList();
+                        agents.Reverse();
+                        break;
+                    case 3:
+                        agents = agents.OrderBy(x => x.skidka).ToList();
+                        break;
+                    case 4:
+                        agents = agents.OrderBy(x => x.skidka).ToList();
+                        agents.Reverse();
+                        break;
+                    case 5:
+                        agents = agents.OrderBy(x => x.Priority).ToList();
+                        break;
+                    case 6:
+                        agents = agents.OrderBy(x => x.Priority).ToList();
+                        agents.Reverse();
+                        break;
+                }
+            }
+            catch
+            {
+
+            }
+
+            try
+            {
+                if (FilterCmb.SelectedIndex != 0)
+                    agents = agents.Where(x => x.AgentTypeID == FilterCmb.SelectedIndex).ToList();
+            }
+            catch { }
+
+
+            try
+            {
+                agents = agents.Where(x => x.Title.Contains(searchBar.Text) || x.Email.Contains(searchBar.Text) || x.Phone.Contains(searchBar.Text)).ToList();
+            }
+            catch { }
+            AgentList.ItemsSource = agents;
+        }
+
+        private void searchBar_TextChanged(object sender, TextChangedEventArgs e)
+        {
+            Filter();
+        }
+
+        private void AgentList_SelectionChanged(object sender, SelectionChangedEventArgs e)
+        {
+            if (AgentList.SelectedItems.Count > 1)
+            {
+                ChangePrior.Visibility = Visibility.Visible;
+                
+            }
+            else
+            {
+
+                ChangePrior.Visibility = Visibility.Collapsed;
+            }
+        }
+
+        private void ChangePrior_Click(object sender, RoutedEventArgs e)
+        {
+            IList ls = AgentList.SelectedItems;
+            new ChangedPrior(ls).ShowDialog();
+            Filter();
+        }
+
+        private void AgentList_MouseDoubleClick(object sender, MouseButtonEventArgs e)
+        {
+            IList ls = AgentList.SelectedItems;
+            new AddChanged(ls).ShowDialog();
+            VM = new VModel();
+            Filter();
+        }
+    }
+}

+ 154 - 4
ShabaninDemoEkz/ShabaninDemoEkz.csproj

@@ -64,9 +64,18 @@
       <Generator>MSBuild:Compile</Generator>
       <SubType>Designer</SubType>
     </ApplicationDefinition>
+    <Compile Include="AddChanged.xaml.cs">
+      <DependentUpon>AddChanged.xaml</DependentUpon>
+    </Compile>
     <Compile Include="Agent.cs">
       <DependentUpon>Model1.tt</DependentUpon>
     </Compile>
+    <Compile Include="ChangedPrior.xaml.cs">
+      <DependentUpon>ChangedPrior.xaml</DependentUpon>
+    </Compile>
+    <Compile Include="Pages\AgentPage.xaml.cs">
+      <DependentUpon>AgentPage.xaml</DependentUpon>
+    </Compile>
     <Compile Include="AgentPriorityHistory.cs">
       <DependentUpon>Model1.tt</DependentUpon>
     </Compile>
@@ -88,6 +97,7 @@
       <DesignTime>True</DesignTime>
       <DependentUpon>Model1.tt</DependentUpon>
     </Compile>
+    <Compile Include="Clases\ProdAgent.cs" />
     <Compile Include="Product.cs">
       <DependentUpon>Model1.tt</DependentUpon>
     </Compile>
@@ -109,7 +119,19 @@
     <Compile Include="Supplier.cs">
       <DependentUpon>Model1.tt</DependentUpon>
     </Compile>
-    <Compile Include="VModel.cs" />
+    <Compile Include="Clases\VModel.cs" />
+    <Page Include="AddChanged.xaml">
+      <SubType>Designer</SubType>
+      <Generator>MSBuild:Compile</Generator>
+    </Page>
+    <Page Include="ChangedPrior.xaml">
+      <SubType>Designer</SubType>
+      <Generator>MSBuild:Compile</Generator>
+    </Page>
+    <Page Include="Pages\AgentPage.xaml">
+      <SubType>Designer</SubType>
+      <Generator>MSBuild:Compile</Generator>
+    </Page>
     <Page Include="MainWindow.xaml">
       <Generator>MSBuild:Compile</Generator>
       <SubType>Designer</SubType>
@@ -175,10 +197,138 @@
     <Resource Include="Resurses\Приятный шелест.ico" />
     <Resource Include="Resurses\Приятный шелест.png" />
   </ItemGroup>
+  <ItemGroup />
   <ItemGroup>
-    <Folder Include="Pages\" />
-  </ItemGroup>
-  <ItemGroup>
+    <Resource Include="agents\agent_1.png" />
+    <Resource Include="agents\agent_10.png" />
+    <Resource Include="agents\agent_100.png" />
+    <Resource Include="agents\agent_101.png" />
+    <Resource Include="agents\agent_102.png" />
+    <Resource Include="agents\agent_103.png" />
+    <Resource Include="agents\agent_104.png" />
+    <Resource Include="agents\agent_105.png" />
+    <Resource Include="agents\agent_106.png" />
+    <Resource Include="agents\agent_107.png" />
+    <Resource Include="agents\agent_108.png" />
+    <Resource Include="agents\agent_109.png" />
+    <Resource Include="agents\agent_11.png" />
+    <Resource Include="agents\agent_110.png" />
+    <Resource Include="agents\agent_111.png" />
+    <Resource Include="agents\agent_112.png" />
+    <Resource Include="agents\agent_113.png" />
+    <Resource Include="agents\agent_114.png" />
+    <Resource Include="agents\agent_115.png" />
+    <Resource Include="agents\agent_116.png" />
+    <Resource Include="agents\agent_117.png" />
+    <Resource Include="agents\agent_118.png" />
+    <Resource Include="agents\agent_119.png" />
+    <Resource Include="agents\agent_12.png" />
+    <Resource Include="agents\agent_120.png" />
+    <Resource Include="agents\agent_121.png" />
+    <Resource Include="agents\agent_122.png" />
+    <Resource Include="agents\agent_123.png" />
+    <Resource Include="agents\agent_124.png" />
+    <Resource Include="agents\agent_125.png" />
+    <Resource Include="agents\agent_126.png" />
+    <Resource Include="agents\agent_127.png" />
+    <Resource Include="agents\agent_128.png" />
+    <Resource Include="agents\agent_129.png" />
+    <Resource Include="agents\agent_13.png" />
+    <Resource Include="agents\agent_130.png" />
+    <Resource Include="agents\agent_14.png" />
+    <Resource Include="agents\agent_15.png" />
+    <Resource Include="agents\agent_16.png" />
+    <Resource Include="agents\agent_17.png" />
+    <Resource Include="agents\agent_18.png" />
+    <Resource Include="agents\agent_19.png" />
+    <Resource Include="agents\agent_2.png" />
+    <Resource Include="agents\agent_20.png" />
+    <Resource Include="agents\agent_21.png" />
+    <Resource Include="agents\agent_22.png" />
+    <Resource Include="agents\agent_23.png" />
+    <Resource Include="agents\agent_24.png" />
+    <Resource Include="agents\agent_25.png" />
+    <Resource Include="agents\agent_26.png" />
+    <Resource Include="agents\agent_27.png" />
+    <Resource Include="agents\agent_28.png" />
+    <Resource Include="agents\agent_29.png" />
+    <Resource Include="agents\agent_3.png" />
+    <Resource Include="agents\agent_30.png" />
+    <Resource Include="agents\agent_31.png" />
+    <Resource Include="agents\agent_32.png" />
+    <Resource Include="agents\agent_33.png" />
+    <Resource Include="agents\agent_34.png" />
+    <Resource Include="agents\agent_35.png" />
+    <Resource Include="agents\agent_36.png" />
+    <Resource Include="agents\agent_37.png" />
+    <Resource Include="agents\agent_38.png" />
+    <Resource Include="agents\agent_39.png" />
+    <Resource Include="agents\agent_4.png" />
+    <Resource Include="agents\agent_40.png" />
+    <Resource Include="agents\agent_41.png" />
+    <Resource Include="agents\agent_42.png" />
+    <Resource Include="agents\agent_43.png" />
+    <Resource Include="agents\agent_44.png" />
+    <Resource Include="agents\agent_45.png" />
+    <Resource Include="agents\agent_46.png" />
+    <Resource Include="agents\agent_47.png" />
+    <Resource Include="agents\agent_48.png" />
+    <Resource Include="agents\agent_49.png" />
+    <Resource Include="agents\agent_5.png" />
+    <Resource Include="agents\agent_50.png" />
+    <Resource Include="agents\agent_51.png" />
+    <Resource Include="agents\agent_52.png" />
+    <Resource Include="agents\agent_53.png" />
+    <Resource Include="agents\agent_54.png" />
+    <Resource Include="agents\agent_55.png" />
+    <Resource Include="agents\agent_56.png" />
+    <Resource Include="agents\agent_57.png" />
+    <Resource Include="agents\agent_58.png" />
+    <Resource Include="agents\agent_59.png" />
+    <Resource Include="agents\agent_6.png" />
+    <Resource Include="agents\agent_60.png" />
+    <Resource Include="agents\agent_61.png" />
+    <Resource Include="agents\agent_62.png" />
+    <Resource Include="agents\agent_63.png" />
+    <Resource Include="agents\agent_64.png" />
+    <Resource Include="agents\agent_65.png" />
+    <Resource Include="agents\agent_66.png" />
+    <Resource Include="agents\agent_67.png" />
+    <Resource Include="agents\agent_68.png" />
+    <Resource Include="agents\agent_69.png" />
+    <Resource Include="agents\agent_7.png" />
+    <Resource Include="agents\agent_70.png" />
+    <Resource Include="agents\agent_71.png" />
+    <Resource Include="agents\agent_72.png" />
+    <Resource Include="agents\agent_73.png" />
+    <Resource Include="agents\agent_74.png" />
+    <Resource Include="agents\agent_75.png" />
+    <Resource Include="agents\agent_76.png" />
+    <Resource Include="agents\agent_77.png" />
+    <Resource Include="agents\agent_78.png" />
+    <Resource Include="agents\agent_79.png" />
+    <Resource Include="agents\agent_8.png" />
+    <Resource Include="agents\agent_80.png" />
+    <Resource Include="agents\agent_81.png" />
+    <Resource Include="agents\agent_82.png" />
+    <Resource Include="agents\agent_83.png" />
+    <Resource Include="agents\agent_84.png" />
+    <Resource Include="agents\agent_85.png" />
+    <Resource Include="agents\agent_86.png" />
+    <Resource Include="agents\agent_87.png" />
+    <Resource Include="agents\agent_88.png" />
+    <Resource Include="agents\agent_89.png" />
+    <Resource Include="agents\agent_9.png" />
+    <Resource Include="agents\agent_90.png" />
+    <Resource Include="agents\agent_91.png" />
+    <Resource Include="agents\agent_92.png" />
+    <Resource Include="agents\agent_93.png" />
+    <Resource Include="agents\agent_94.png" />
+    <Resource Include="agents\agent_95.png" />
+    <Resource Include="agents\agent_96.png" />
+    <Resource Include="agents\agent_97.png" />
+    <Resource Include="agents\agent_98.png" />
+    <Resource Include="agents\agent_99.png" />
     <Content Include="Model1.Context.tt">
       <Generator>TextTemplatingFileGenerator</Generator>
       <LastGenOutput>Model1.Context.cs</LastGenOutput>

+ 0 - 12
ShabaninDemoEkz/VModel.cs

@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace ShabaninDemoEkz
-{
-    class VModel
-    {
-    }
-}

BIN
ShabaninDemoEkz/agents/agent_1.png


BIN
ShabaninDemoEkz/agents/agent_10.png


BIN
ShabaninDemoEkz/agents/agent_100.png


BIN
ShabaninDemoEkz/agents/agent_101.png


BIN
ShabaninDemoEkz/agents/agent_102.png


BIN
ShabaninDemoEkz/agents/agent_103.png


BIN
ShabaninDemoEkz/agents/agent_104.png


BIN
ShabaninDemoEkz/agents/agent_105.png


BIN
ShabaninDemoEkz/agents/agent_106.png


BIN
ShabaninDemoEkz/agents/agent_107.png


BIN
ShabaninDemoEkz/agents/agent_108.png


BIN
ShabaninDemoEkz/agents/agent_109.png


BIN
ShabaninDemoEkz/agents/agent_11.png


BIN
ShabaninDemoEkz/agents/agent_110.png


BIN
ShabaninDemoEkz/agents/agent_111.png


BIN
ShabaninDemoEkz/agents/agent_112.png


BIN
ShabaninDemoEkz/agents/agent_113.png


BIN
ShabaninDemoEkz/agents/agent_114.png


BIN
ShabaninDemoEkz/agents/agent_115.png


BIN
ShabaninDemoEkz/agents/agent_116.png


BIN
ShabaninDemoEkz/agents/agent_117.png


BIN
ShabaninDemoEkz/agents/agent_118.png


BIN
ShabaninDemoEkz/agents/agent_119.png


BIN
ShabaninDemoEkz/agents/agent_12.png


BIN
ShabaninDemoEkz/agents/agent_120.png


BIN
ShabaninDemoEkz/agents/agent_121.png


BIN
ShabaninDemoEkz/agents/agent_122.png


BIN
ShabaninDemoEkz/agents/agent_123.png


BIN
ShabaninDemoEkz/agents/agent_124.png


BIN
ShabaninDemoEkz/agents/agent_125.png


BIN
ShabaninDemoEkz/agents/agent_126.png


BIN
ShabaninDemoEkz/agents/agent_127.png


BIN
ShabaninDemoEkz/agents/agent_128.png


BIN
ShabaninDemoEkz/agents/agent_129.png


BIN
ShabaninDemoEkz/agents/agent_13.png


BIN
ShabaninDemoEkz/agents/agent_130.png


BIN
ShabaninDemoEkz/agents/agent_14.png


BIN
ShabaninDemoEkz/agents/agent_15.png


BIN
ShabaninDemoEkz/agents/agent_16.png


BIN
ShabaninDemoEkz/agents/agent_17.png


BIN
ShabaninDemoEkz/agents/agent_18.png


BIN
ShabaninDemoEkz/agents/agent_19.png


BIN
ShabaninDemoEkz/agents/agent_2.png


BIN
ShabaninDemoEkz/agents/agent_20.png


BIN
ShabaninDemoEkz/agents/agent_21.png


BIN
ShabaninDemoEkz/agents/agent_22.png


BIN
ShabaninDemoEkz/agents/agent_23.png


BIN
ShabaninDemoEkz/agents/agent_24.png


BIN
ShabaninDemoEkz/agents/agent_25.png


BIN
ShabaninDemoEkz/agents/agent_26.png


BIN
ShabaninDemoEkz/agents/agent_27.png


BIN
ShabaninDemoEkz/agents/agent_28.png


BIN
ShabaninDemoEkz/agents/agent_29.png


BIN
ShabaninDemoEkz/agents/agent_3.png


BIN
ShabaninDemoEkz/agents/agent_30.png


BIN
ShabaninDemoEkz/agents/agent_31.png


BIN
ShabaninDemoEkz/agents/agent_32.png


BIN
ShabaninDemoEkz/agents/agent_33.png


BIN
ShabaninDemoEkz/agents/agent_34.png


BIN
ShabaninDemoEkz/agents/agent_35.png


BIN
ShabaninDemoEkz/agents/agent_36.png


BIN
ShabaninDemoEkz/agents/agent_37.png


BIN
ShabaninDemoEkz/agents/agent_38.png


BIN
ShabaninDemoEkz/agents/agent_39.png


BIN
ShabaninDemoEkz/agents/agent_4.png


BIN
ShabaninDemoEkz/agents/agent_40.png


BIN
ShabaninDemoEkz/agents/agent_41.png


BIN
ShabaninDemoEkz/agents/agent_42.png


BIN
ShabaninDemoEkz/agents/agent_43.png


BIN
ShabaninDemoEkz/agents/agent_44.png


BIN
ShabaninDemoEkz/agents/agent_45.png


BIN
ShabaninDemoEkz/agents/agent_46.png


BIN
ShabaninDemoEkz/agents/agent_47.png


BIN
ShabaninDemoEkz/agents/agent_48.png


BIN
ShabaninDemoEkz/agents/agent_49.png


BIN
ShabaninDemoEkz/agents/agent_5.png


BIN
ShabaninDemoEkz/agents/agent_50.png


BIN
ShabaninDemoEkz/agents/agent_51.png


BIN
ShabaninDemoEkz/agents/agent_52.png


BIN
ShabaninDemoEkz/agents/agent_53.png


BIN
ShabaninDemoEkz/agents/agent_54.png


BIN
ShabaninDemoEkz/agents/agent_55.png


BIN
ShabaninDemoEkz/agents/agent_56.png


BIN
ShabaninDemoEkz/agents/agent_57.png


BIN
ShabaninDemoEkz/agents/agent_58.png


BIN
ShabaninDemoEkz/agents/agent_59.png


Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.