Your Name 2 years ago
parent
commit
bf9bfe2d02

+ 81 - 71
СУБД Техносервис/FormMain.Designer.cs

@@ -31,8 +31,8 @@
             this.components = new System.ComponentModel.Container();
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormMain));
             this.panel1 = new System.Windows.Forms.Panel();
-            this.pictureBox1 = new System.Windows.Forms.PictureBox();
             this.label1 = new System.Windows.Forms.Label();
+            this.pictureBox1 = new System.Windows.Forms.PictureBox();
             this.label2 = new System.Windows.Forms.Label();
             this.TbxLogin = new System.Windows.Forms.TextBox();
             this.TbxPassw = new System.Windows.Forms.TextBox();
@@ -42,19 +42,20 @@
             this.techServiceBAUDataSet = new СУБД_Техносервис.TechServiceBAUDataSet();
             this.BsEmployee = new System.Windows.Forms.BindingSource(this.components);
             this.employeeTableAdapter = new СУБД_Техносервис.TechServiceBAUDataSetTableAdapters.EmployeeTableAdapter();
-            this.panel2 = new System.Windows.Forms.Panel();
-            this.PCapcha = new System.Windows.Forms.Panel();
-            this.TbxCapcha = new System.Windows.Forms.TextBox();
+            this.PanelCapcha = new System.Windows.Forms.Panel();
             this.label4 = new System.Windows.Forms.Label();
-            this.LblC1 = new System.Windows.Forms.Label();
-            this.LblC2 = new System.Windows.Forms.Label();
-            this.LblC3 = new System.Windows.Forms.Label();
+            this.TbxCapcha = new System.Windows.Forms.TextBox();
+            this.PCapcha = new System.Windows.Forms.Panel();
             this.LblC4 = new System.Windows.Forms.Label();
+            this.LblC3 = new System.Windows.Forms.Label();
+            this.LblC2 = new System.Windows.Forms.Label();
+            this.LblC1 = new System.Windows.Forms.Label();
+            this.TimerForLogin = new System.Windows.Forms.Timer(this.components);
             this.panel1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.techServiceBAUDataSet)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.BsEmployee)).BeginInit();
-            this.panel2.SuspendLayout();
+            this.PanelCapcha.SuspendLayout();
             this.PCapcha.SuspendLayout();
             this.SuspendLayout();
             // 
@@ -69,6 +70,16 @@
             this.panel1.Size = new System.Drawing.Size(495, 100);
             this.panel1.TabIndex = 0;
             // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Font = new System.Drawing.Font("Arial Narrow", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+            this.label1.Location = new System.Drawing.Point(35, 31);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(177, 37);
+            this.label1.TabIndex = 1;
+            this.label1.Text = "Авторизация";
+            // 
             // pictureBox1
             // 
             this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Right;
@@ -80,16 +91,6 @@
             this.pictureBox1.TabIndex = 0;
             this.pictureBox1.TabStop = false;
             // 
-            // label1
-            // 
-            this.label1.AutoSize = true;
-            this.label1.Font = new System.Drawing.Font("Arial Narrow", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
-            this.label1.Location = new System.Drawing.Point(35, 31);
-            this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(177, 37);
-            this.label1.TabIndex = 1;
-            this.label1.Text = "Авторизация";
-            // 
             // label2
             // 
             this.label2.AutoSize = true;
@@ -105,6 +106,7 @@
             this.TbxLogin.Name = "TbxLogin";
             this.TbxLogin.Size = new System.Drawing.Size(157, 21);
             this.TbxLogin.TabIndex = 2;
+            this.TbxLogin.Text = "m";
             // 
             // TbxPassw
             // 
@@ -112,6 +114,7 @@
             this.TbxPassw.Name = "TbxPassw";
             this.TbxPassw.Size = new System.Drawing.Size(157, 21);
             this.TbxPassw.TabIndex = 4;
+            this.TbxPassw.Text = "m";
             this.TbxPassw.UseSystemPasswordChar = true;
             // 
             // label3
@@ -160,15 +163,32 @@
             // 
             this.employeeTableAdapter.ClearBeforeFill = true;
             // 
-            // panel2
+            // PanelCapcha
+            // 
+            this.PanelCapcha.Controls.Add(this.label4);
+            this.PanelCapcha.Controls.Add(this.TbxCapcha);
+            this.PanelCapcha.Controls.Add(this.PCapcha);
+            this.PanelCapcha.Location = new System.Drawing.Point(238, 132);
+            this.PanelCapcha.Name = "PanelCapcha";
+            this.PanelCapcha.Size = new System.Drawing.Size(233, 143);
+            this.PanelCapcha.TabIndex = 7;
+            this.PanelCapcha.Visible = false;
             // 
-            this.panel2.Controls.Add(this.label4);
-            this.panel2.Controls.Add(this.TbxCapcha);
-            this.panel2.Controls.Add(this.PCapcha);
-            this.panel2.Location = new System.Drawing.Point(238, 132);
-            this.panel2.Name = "panel2";
-            this.panel2.Size = new System.Drawing.Size(233, 143);
-            this.panel2.TabIndex = 7;
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Location = new System.Drawing.Point(32, 109);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(75, 16);
+            this.label4.TabIndex = 2;
+            this.label4.Text = "Введите капчу";
+            // 
+            // TbxCapcha
+            // 
+            this.TbxCapcha.Location = new System.Drawing.Point(113, 106);
+            this.TbxCapcha.Name = "TbxCapcha";
+            this.TbxCapcha.Size = new System.Drawing.Size(100, 21);
+            this.TbxCapcha.TabIndex = 1;
             // 
             // PCapcha
             // 
@@ -184,32 +204,27 @@
             this.PCapcha.TabIndex = 0;
             this.PCapcha.Paint += new System.Windows.Forms.PaintEventHandler(this.PCapcha_Paint);
             // 
-            // TbxCapcha
-            // 
-            this.TbxCapcha.Location = new System.Drawing.Point(113, 106);
-            this.TbxCapcha.Name = "TbxCapcha";
-            this.TbxCapcha.Size = new System.Drawing.Size(100, 21);
-            this.TbxCapcha.TabIndex = 1;
-            // 
-            // label4
+            // LblC4
             // 
-            this.label4.AutoSize = true;
-            this.label4.Location = new System.Drawing.Point(32, 109);
-            this.label4.Name = "label4";
-            this.label4.Size = new System.Drawing.Size(75, 16);
-            this.label4.TabIndex = 2;
-            this.label4.Text = "Введите капчу";
+            this.LblC4.AutoSize = true;
+            this.LblC4.BackColor = System.Drawing.Color.Transparent;
+            this.LblC4.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.LblC4.Location = new System.Drawing.Point(175, 46);
+            this.LblC4.Name = "LblC4";
+            this.LblC4.Size = new System.Drawing.Size(38, 41);
+            this.LblC4.TabIndex = 3;
+            this.LblC4.Text = "S";
             // 
-            // LblC1
+            // LblC3
             // 
-            this.LblC1.AutoSize = true;
-            this.LblC1.BackColor = System.Drawing.Color.Transparent;
-            this.LblC1.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.LblC1.Location = new System.Drawing.Point(17, 18);
-            this.LblC1.Name = "LblC1";
-            this.LblC1.Size = new System.Drawing.Size(38, 41);
-            this.LblC1.TabIndex = 0;
-            this.LblC1.Text = "S";
+            this.LblC3.AutoSize = true;
+            this.LblC3.BackColor = System.Drawing.Color.Transparent;
+            this.LblC3.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.LblC3.Location = new System.Drawing.Point(116, 18);
+            this.LblC3.Name = "LblC3";
+            this.LblC3.Size = new System.Drawing.Size(38, 41);
+            this.LblC3.TabIndex = 2;
+            this.LblC3.Text = "S";
             // 
             // LblC2
             // 
@@ -222,27 +237,21 @@
             this.LblC2.TabIndex = 1;
             this.LblC2.Text = "S";
             // 
-            // LblC3
+            // LblC1
             // 
-            this.LblC3.AutoSize = true;
-            this.LblC3.BackColor = System.Drawing.Color.Transparent;
-            this.LblC3.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.LblC3.Location = new System.Drawing.Point(116, 18);
-            this.LblC3.Name = "LblC3";
-            this.LblC3.Size = new System.Drawing.Size(38, 41);
-            this.LblC3.TabIndex = 2;
-            this.LblC3.Text = "S";
+            this.LblC1.AutoSize = true;
+            this.LblC1.BackColor = System.Drawing.Color.Transparent;
+            this.LblC1.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.LblC1.Location = new System.Drawing.Point(17, 18);
+            this.LblC1.Name = "LblC1";
+            this.LblC1.Size = new System.Drawing.Size(38, 41);
+            this.LblC1.TabIndex = 0;
+            this.LblC1.Text = "S";
             // 
-            // LblC4
+            // TimerForLogin
             // 
-            this.LblC4.AutoSize = true;
-            this.LblC4.BackColor = System.Drawing.Color.Transparent;
-            this.LblC4.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
-            this.LblC4.Location = new System.Drawing.Point(175, 46);
-            this.LblC4.Name = "LblC4";
-            this.LblC4.Size = new System.Drawing.Size(38, 41);
-            this.LblC4.TabIndex = 3;
-            this.LblC4.Text = "S";
+            this.TimerForLogin.Interval = 10000;
+            this.TimerForLogin.Tick += new System.EventHandler(this.TimerForLogin_Tick);
             // 
             // FormMain
             // 
@@ -250,7 +259,7 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.BackColor = System.Drawing.Color.White;
             this.ClientSize = new System.Drawing.Size(495, 304);
-            this.Controls.Add(this.panel2);
+            this.Controls.Add(this.PanelCapcha);
             this.Controls.Add(this.CbxShowPassw);
             this.Controls.Add(this.BtnVhod);
             this.Controls.Add(this.TbxPassw);
@@ -273,8 +282,8 @@
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.techServiceBAUDataSet)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.BsEmployee)).EndInit();
-            this.panel2.ResumeLayout(false);
-            this.panel2.PerformLayout();
+            this.PanelCapcha.ResumeLayout(false);
+            this.PanelCapcha.PerformLayout();
             this.PCapcha.ResumeLayout(false);
             this.PCapcha.PerformLayout();
             this.ResumeLayout(false);
@@ -296,7 +305,7 @@
         private TechServiceBAUDataSet techServiceBAUDataSet;
         private System.Windows.Forms.BindingSource BsEmployee;
         private TechServiceBAUDataSetTableAdapters.EmployeeTableAdapter employeeTableAdapter;
-        private System.Windows.Forms.Panel panel2;
+        private System.Windows.Forms.Panel PanelCapcha;
         private System.Windows.Forms.Label label4;
         private System.Windows.Forms.TextBox TbxCapcha;
         private System.Windows.Forms.Panel PCapcha;
@@ -304,6 +313,7 @@
         private System.Windows.Forms.Label LblC3;
         private System.Windows.Forms.Label LblC2;
         private System.Windows.Forms.Label LblC1;
+        private System.Windows.Forms.Timer TimerForLogin;
     }
 }
 

+ 37 - 7
СУБД Техносервис/FormMain.cs

@@ -24,11 +24,12 @@ namespace СУБД_Техносервис
         /// </summary>
         void GetCapcha()
         {
-            Captcha = Guid.NewGuid().ToString().Substring(0,4);
+            Captcha = Guid.NewGuid().ToString().Substring(0, 4);
             LblC1.Text = Captcha[0].ToString();
             LblC2.Text = Captcha[1].ToString();
             LblC3.Text = Captcha[2].ToString();
             LblC4.Text = Captcha[3].ToString();
+            TbxCapcha.Clear();
         }
 
 
@@ -46,23 +47,42 @@ namespace СУБД_Техносервис
 
         private void BtnVhod_Click(object sender, EventArgs e)
         {
-            BsEmployee.Filter = $"Password = '{TbxPassw.Text}' and Login = '{TbxLogin.Text}'";
-            if (BsEmployee.Count == 0)
+
+            if (TbxCapcha.Text != Captcha && PanelCapcha.Visible == true)
             {
-                MessageBox.Show("Неверный логин или пароль.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                GetCapcha();
+                BtnVhod.Enabled = false;
+                TimerForLogin.Start();
+
+                MessageBox.Show("Неверная капча.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                 return;
             }
-            if (TbxCapcha.Text != Captcha)
+            BsEmployee.Filter = $"Password = '{TbxPassw.Text}' and Login = '{TbxLogin.Text}'";
+            if (BsEmployee.Count == 0)
             {
-                MessageBox.Show("Неверная капча.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+                if (!PanelCapcha.Visible)
+                {
+                    PanelCapcha.Visible = true;
+                }
+                else
+                {
+                    BtnVhod.Enabled = false;
+                    TimerForLogin.Start();
+                }
+                GetCapcha();
+
+                MessageBox.Show("Неверный логин или пароль.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                 return;
             }
             FormWorkPlace FrmWork = new FormWorkPlace();
             this.Hide();
             FrmWork.ShowDialog();
             this.Show();
+            GetCapcha();
             TbxLogin.Clear();
             TbxPassw.Clear();
+            PanelCapcha.Visible = false;
+            TbxCapcha.Clear();
         }
 
         private void PCapcha_Paint(object sender, PaintEventArgs e)
@@ -71,8 +91,18 @@ namespace СУБД_Техносервис
             for (int i = 0; i < 7; i++)
             {
                 e.Graphics.DrawLine(new Pen(Color.Black, 2), 0, Rnd.Next(PCapcha.Height), PCapcha.Width, Rnd.Next(PCapcha.Height));
-
             }
         }
+
+        private void button1_Click(object sender, EventArgs e)
+        {
+            GetCapcha();
+        }
+
+        private void TimerForLogin_Tick(object sender, EventArgs e)
+        {
+            BtnVhod.Enabled = true;
+            TimerForLogin.Stop();
+        }
     }
 }

+ 4 - 1
СУБД Техносервис/FormMain.resx

@@ -564,7 +564,7 @@
   <data name="PCapcha.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAAUgAAACJCAIAAADBtTbBAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
-        wgAADsIBFShKgAAAMQZJREFUeF7tnF2WbSuunN0RP1czqx1uiBvjDvjBnSgLPogZCJg/a63MnbtOxmBQ
+        wQAADsEBuJFr7QAAMQZJREFUeF7tnF2WbSuunN0RP1czqx1uiBvjDvjBnSgLPogZCJg/a63MnbtOxmBQ
         oZAQQkwyc59xx/0f//l5+F//5//FgGj+xS9+cR8/6GGfPGA99V/84hd38BN/Y4PfX9e/+MXL+CkPO/1O
         /n3Pv/jFO/hZf4rznucXLsVdv/jFL3b4EQ87nquGFMgvfvGLF/DnH/byMeuRJ7GxX/ziZ+DHfpM/609x
         J26+3L531v7iF38v/vDD5uH524NLlMtjfvGLn4Of+WX++YfdWIUes4+k1MBbeBT8i5v43//3fzb2T0X6
@@ -776,6 +776,9 @@
         3wIK9tlRlPRQ3Qw+e0/iA8n8x+I///n/GBZ3+qkr3zUAAAAASUVORK5CYII=
 </value>
   </data>
+  <metadata name="TimerForLogin.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 41</value>
+  </metadata>
   <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAA

+ 93 - 7
СУБД Техносервис/FormWorkPlace.Designer.cs

@@ -29,11 +29,20 @@
         private void InitializeComponent()
         {
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormWorkPlace));
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
             this.panel1 = new System.Windows.Forms.Panel();
             this.label1 = new System.Windows.Forms.Label();
             this.pictureBox1 = new System.Windows.Forms.PictureBox();
+            this.DgvRequest = new System.Windows.Forms.DataGridView();
+            this.id = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.Photo = new System.Windows.Forms.DataGridViewImageColumn();
+            this.Title = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.FIO = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.panel1.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.DgvRequest)).BeginInit();
             this.SuspendLayout();
             // 
             // panel1
@@ -44,45 +53,117 @@
             this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
             this.panel1.Location = new System.Drawing.Point(0, 0);
             this.panel1.Name = "panel1";
-            this.panel1.Size = new System.Drawing.Size(454, 100);
+            this.panel1.Size = new System.Drawing.Size(492, 100);
             this.panel1.TabIndex = 1;
             // 
             // label1
             // 
             this.label1.AutoSize = true;
             this.label1.Font = new System.Drawing.Font("Arial Narrow", 24F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
-            this.label1.Location = new System.Drawing.Point(35, 31);
+            this.label1.Location = new System.Drawing.Point(56, 31);
             this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(123, 37);
+            this.label1.Size = new System.Drawing.Size(204, 37);
             this.label1.TabIndex = 1;
-            this.label1.Text = "Рабочая";
+            this.label1.Text = "Рабочее место";
             // 
             // pictureBox1
             // 
             this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Right;
             this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
-            this.pictureBox1.Location = new System.Drawing.Point(310, 0);
+            this.pictureBox1.Location = new System.Drawing.Point(348, 0);
             this.pictureBox1.Name = "pictureBox1";
             this.pictureBox1.Size = new System.Drawing.Size(144, 100);
             this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
             this.pictureBox1.TabIndex = 0;
             this.pictureBox1.TabStop = false;
             // 
+            // DgvRequest
+            // 
+            this.DgvRequest.AllowUserToAddRows = false;
+            this.DgvRequest.AllowUserToDeleteRows = false;
+            this.DgvRequest.BackgroundColor = System.Drawing.Color.White;
+            this.DgvRequest.BorderStyle = System.Windows.Forms.BorderStyle.None;
+            this.DgvRequest.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.SingleHorizontal;
+            this.DgvRequest.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.DgvRequest.ColumnHeadersVisible = false;
+            this.DgvRequest.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.id,
+            this.Photo,
+            this.Title,
+            this.FIO});
+            this.DgvRequest.GridColor = System.Drawing.Color.White;
+            this.DgvRequest.Location = new System.Drawing.Point(12, 106);
+            this.DgvRequest.MultiSelect = false;
+            this.DgvRequest.Name = "DgvRequest";
+            this.DgvRequest.ReadOnly = true;
+            this.DgvRequest.RowHeadersVisible = false;
+            this.DgvRequest.RowTemplate.DefaultCellStyle.BackColor = System.Drawing.Color.WhiteSmoke;
+            this.DgvRequest.RowTemplate.DefaultCellStyle.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.DgvRequest.RowTemplate.DividerHeight = 10;
+            this.DgvRequest.RowTemplate.Height = 130;
+            this.DgvRequest.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.DgvRequest.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
+            this.DgvRequest.Size = new System.Drawing.Size(468, 292);
+            this.DgvRequest.TabIndex = 2;
+            // 
+            // id
+            // 
+            dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.id.DefaultCellStyle = dataGridViewCellStyle4;
+            this.id.HeaderText = "ид";
+            this.id.Name = "id";
+            this.id.ReadOnly = true;
+            this.id.Visible = false;
+            // 
+            // Photo
+            // 
+            this.Photo.HeaderText = "Фото";
+            this.Photo.ImageLayout = System.Windows.Forms.DataGridViewImageCellLayout.Zoom;
+            this.Photo.Name = "Photo";
+            this.Photo.ReadOnly = true;
+            this.Photo.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Photo.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+            this.Photo.Width = 130;
+            // 
+            // Title
+            // 
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.TopLeft;
+            this.Title.DefaultCellStyle = dataGridViewCellStyle5;
+            this.Title.HeaderText = "Инфо";
+            this.Title.Name = "Title";
+            this.Title.ReadOnly = true;
+            this.Title.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            this.Title.Width = 200;
+            // 
+            // FIO
+            // 
+            this.FIO.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.TopLeft;
+            this.FIO.DefaultCellStyle = dataGridViewCellStyle6;
+            this.FIO.HeaderText = "ФИО";
+            this.FIO.Name = "FIO";
+            this.FIO.ReadOnly = true;
+            this.FIO.Resizable = System.Windows.Forms.DataGridViewTriState.False;
+            // 
             // FormWorkPlace
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 16F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.BackColor = System.Drawing.Color.White;
-            this.ClientSize = new System.Drawing.Size(454, 350);
+            this.ClientSize = new System.Drawing.Size(492, 428);
+            this.Controls.Add(this.DgvRequest);
             this.Controls.Add(this.panel1);
             this.Font = new System.Drawing.Font("Arial Narrow", 9F);
+            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
             this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
             this.Name = "FormWorkPlace";
-            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
             this.Text = "ООО \"Техносервис\"";
+            this.Load += new System.EventHandler(this.FormWorkPlace_Load);
             this.panel1.ResumeLayout(false);
             this.panel1.PerformLayout();
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.DgvRequest)).EndInit();
             this.ResumeLayout(false);
 
         }
@@ -92,5 +173,10 @@
         private System.Windows.Forms.Panel panel1;
         private System.Windows.Forms.Label label1;
         private System.Windows.Forms.PictureBox pictureBox1;
+        private System.Windows.Forms.DataGridView DgvRequest;
+        private System.Windows.Forms.DataGridViewTextBoxColumn id;
+        private System.Windows.Forms.DataGridViewImageColumn Photo;
+        private System.Windows.Forms.DataGridViewTextBoxColumn Title;
+        private System.Windows.Forms.DataGridViewTextBoxColumn FIO;
     }
 }

+ 48 - 0
СУБД Техносервис/FormWorkPlace.cs

@@ -2,6 +2,7 @@
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Data;
+using System.Data.SqlClient;
 using System.Drawing;
 using System.Linq;
 using System.Text;
@@ -16,5 +17,52 @@ namespace СУБД_Техносервис
         {
             InitializeComponent();
         }
+
+        string TxtCon = "Data Source=213.155.192.79,3002;Initial Catalog=TechServiceBAU;Persist Security Info=True;User ID=u21baranov;Password=au5p";
+
+        /// <summary>
+        /// вывод данных в виде плиточного интерфейса
+        /// </summary>
+        void OutputRequest()
+        {
+            SqlConnection con = new SqlConnection(TxtCon);
+            con.Open();
+            string TxtQuery = @"SELECT        Request.IdRequest, Manager.Photo, (Manager.Surname + ' ' + Manager.Name + ' ' + Manager.Patronymic) as FIOManager, (Client.Surname + ' ' + Client.Name + ' ' + Client.Patronymic) as FIOClient, Request.EquipmentDefect, Request.DateAccepting, TypeDefect.Title as TypeDefect, 
+                         Status.Title AS Statys, (SELECT        String_AGG(Master.Surname + ' ' + Master.Name + ' ' + Master.Patronymic, ', ')
+FROM            Employee AS Master INNER JOIN
+                         ExecutionRequest ON Master.IdEmployee = ExecutionRequest.IdMaster
+where ExecutionRequest.IdRequest = Request.IdRequest) as FIOMasters
+FROM            Client INNER JOIN
+                         Request ON Client.IdClient = Request.IdClient INNER JOIN
+                         Employee AS Manager ON Request.IdManager = Manager.IdEmployee INNER JOIN
+                         TypeDefect ON Request.IdTypeDefect = TypeDefect.IdTypeDefect INNER JOIN
+                         Status ON Request.IdStatus = Status.IdStatus";
+            SqlCommand cmd = new SqlCommand(TxtQuery, con);
+            SqlDataReader Rez = cmd.ExecuteReader();
+            DgvRequest.Rows.Clear();
+            while (Rez.Read())
+            {
+                string TxtInfo = $@"Менеджер: {Rez["FIOManager"]}
+Клиент: {Rez["FIOClient"]}
+Оборудование: {Rez["EquipmentDefect"]}
+Заявка добавлена: {Rez["DateAccepting"]}
+Тип неисправности: {Rez["TypeDefect"]}
+Статус заявки {Rez["Statys"]}";
+                try
+                {
+                    DgvRequest.Rows.Add(Rez["IdRequest"], Image.FromFile(Application.StartupPath + "\\Photo\\" + Rez["Photo"]), TxtInfo, $"Исполнители: {Rez["FIOMasters"]}");
+                }
+                catch
+                {
+                    DgvRequest.Rows.Add(Rez["IdRequest"], Image.FromFile(Application.StartupPath + "\\Photo\\Picture.png"), TxtInfo, $"Исполнители: {Rez["FIOMasters"]}");
+                }
+            }
+            con.Close();
+        }
+
+        private void FormWorkPlace_Load(object sender, EventArgs e)
+        {
+            OutputRequest();
+        }
     }
 }

+ 88 - 0
СУБД Техносервис/FormWorkPlace.resx

@@ -550,6 +550,94 @@
         AoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA
         KACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAC
         gAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA//2Q==
+</value>
+  </data>
+  <metadata name="id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Photo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="Title.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="FIO.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADa2toH6+HUTuzh
+        1ZTr4tTI6+HU6urh1fvq4dX76+HU6uvi1Mjs4dWU6+HUTtra2gcAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADv388Q6+HUg+vh
+        1Ovr4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV6+vh1IPv388QAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6uLUWevi
+        1err4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1erq4tZZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/7+/BOri
+        1Zjr4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/q4tWY//+/BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+/
+        vwTq4dSu6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/q4dSu//+/BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAA6uLVmOvi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/q4tWYAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAOri1Fnr4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/q4tZZAAAAAAAA
+        AAAAAAAAAAAAAAAAAADv388Q6+HV6uvi1f/n3tH/n4x0/4lzWP+Jc1j/iXNY/4lzWP+Jc1j/iXNY/4lz
+        WP+Jc1j/iXNY/4lzWP+Jc1j/iXNY/4lzWP+Jc1j/iXNY/4lzWP+Jc1j/iHNf/52Mef/n3tH/6+LV/+vi
+        1erv388QAAAAAAAAAAAAAAAAAAAAAOvh1IPr4tX/6+LV/9HFtP9/aEv/f2hL/39oS/9/aEv/f2hL/39o
+        S/9/aEv/jnle/6CNdf+gjXX/oI11/6CNdf+OeV7/f2hL/39oS/9/aEv/f2hL/39oS/95aGb/emhi/9HF
+        tP/r4tX/6+LV/+vh1IMAAAAAAAAAAAAAAADa2toH6+HU6+vi1f/r4tX/4NXH/3NhTf9pVkL/aVZC/2lW
+        Qv9pVkL/aVZC/2lWQv91Y1D/fm1c/35tXP9+bVz/fm1c/3VjUP9pVkL/aVZC/2lWQv9pVkL/aVZC/2lW
+        Qv9zYE3/39XH/+vi1f/r4tX/6+LV69ra2gcAAAAAAAAAAOvh1E7r4tX/6+LV/+vi1f/r4tX/wLSl/2NQ
+        Pv9jUD7/Y1A+/2NQPv9jUD7/Y1A+/2NQPv9jUD7/Y1A+/2NQPv9jUD7/Y1A+/2NQPv9jUD7/Y1A+/2NQ
+        Pv9jUD7/Y1A+/8Czpf/r4tX/6+LV/+vi1f/r4tX/6+HUTgAAAAAAAAAA6uHVlOvi1f/r4tX/6+LV/+vi
+        1f/r4tX/rp+M/52MeP+djHj/nYx4/52MeP+djHj/nYx4/52MeP+djHj/nYx4/52MeP+djHj/nYx4/52M
+        eP+djHj/nYx4/52MeP+tnoz/6+LV/+vi1f/r4tX/6+LV/+vi1f/s4dWUAAAAAAAAAADq4dTI6+LV/+vi
+        1f/r4tX/6+LV/+vi1f+ciXD/jXlg/5iFbv+YhW7/mIVu/5iFbv+YhW7/mIVu/5iFbv+YhW7/mIVu/5iF
+        bv+YhW7/mIVu/5iFbv+YhW7/jnlg/5uIb//r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1MgAAAAAAAAAAOvh
+        1Orr4tX/6+LV/+vi1f/r4tX/6+LV/5yJcP/KwbX/////////////////////////////////////////
+        ///////////////////////////////////Lwrb/m4hv/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+HU6gAA
+        AAAAAAAA6uHV++vi1f/r4tX/6+LV/+vi1f/r4tX/nIlw/8rBtf//////////////////////////////
+        /////////////////////////////////////////////8vCtv+biG//6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/q4dX7AAAAAAAAAADq4dX76+LV/+vi1f/r4tX/6+LV/+vi1f+ciXD/ysG1////////////////////
+        ////////////////////////////////////////////////////////y8K2/5uIb//r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+rh1fsAAAAAAAAAAOrh1Orr4tX/6+LV/+vi1f/r4tX/6+LV/5yJcP/KwbX/////////
+        ///////////////////////////////////////////////////////////////////Lwrb/m4hv/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+HU6gAAAAAAAAAA6uHUyOvi1f/r4tX/6+LV/+vi1f/r4tX/nIlw/8rB
+        tf///////////////////////////////////////////////////////////////////////////8vC
+        tv+biG//6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tTIAAAAAAAAAADq4dWU6+LV/+vi1f/r4tX/6+LV/+vi
+        1f+ciXD/ysG1////////////////////////////////////////////////////////////////////
+        ////////y8K2/5uIb//r4tX/6+LV/+vi1f/r4tX/6+LV/+zh1ZQAAAAAAAAAAOjh1E7r4tX/6+LV/+vi
+        1f/r4tX/6+LV/5yJcP/KwbX/////////////////////////////////////////////////////////
+        ///////////////////Lwrb/m4hv/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+HUTgAAAAAAAAAA2traB+vh
+        1Ovr4tX/6+LV/+vi1f/r4tX/nIlw/8rBtf//////////////////////////////////////////////
+        /////////////////////////////8vCtv+biG//6+LV/+vi1f/r4tX/6+LV/+vh1Ova2toHAAAAAAAA
+        AAAAAAAA6eHUg+vi1f/r4tX/6+LV/+vi1f+ciXD/uKyc/+Db1P/g29T/4NvU/+Db1P/g29T/4NvU/+Db
+        1P/g29T/4NvU/+Db1P/g29T/4NvU/+Db1P/g29T/ua2d/5uIb//r4tX/6+LV/+vi1f/r4tX/6+HUgwAA
+        AAAAAAAAAAAAAAAAAADv388Q6+HU6uvi1f/r4tX/6+LV/6ybhP+Jc1j/iXNY/4lzWP+Jc1j/iXNY/4lz
+        WP+Jc1j/iXNY/4lzWP+Jc1j/iXNY/4lzWP+Jc1j/iXNY/4lzWP+Jc1j/q5qE/+vi1f/r4tX/6+LV/+vi
+        1erv388QAAAAAAAAAAAAAAAAAAAAAAAAAADq4tRZ6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6uLUWQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADq4tWY6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+ri1ZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+/vwTq4dSu6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/q4dSu/7+/BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+/
+        vwTq4tWY6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6uLVmP+/vwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAADq4tRZ6+HU6uvi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+HV6uri1FkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADv388Q6eHUg+vh1Ovr4tX/6+LV/+vi1f/r4tX/6+LV/+vi
+        1f/r4tX/6+LV/+vi1f/r4tX/6+HU6+vh1IPv388QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2traB+jh1E7q4dWU6uHUyOrh
+        1Orq4dX76uHV++vh1Orq4dTI6uHVlOvh1E7a2toHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+        AAAAAAAAAAAAAAAAAAAAAAAA///////AA///AAD//gAAf/gAAB/wAAAP8AAAD+AAAAfAAAADwAAAA4AA
+        AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAcAAAAPAAAAD4AAAB/AA
+        AA/wAAAP+AAAH/4AAH//AAD//8AD//////8=
 </value>
   </data>
 </root>