· 8 years ago · Nov 26, 2017, 09:46 PM
1//VytvoÅ™ily, Dmitrij Ryabovol a Michal StuchlÃk, V4, 7 Úloha, PÅ™Ãstupový systém
2using System;
3using System.Collections.Generic;
4using System.ComponentModel;
5using System.Data;
6using System.Drawing;
7using System.Linq;
8using System.Text;
9using System.Threading.Tasks;
10using System.Windows.Forms;
11using System.Data.SQLite;//Potřebná kniha SQLite spojená v referncàs projektem
12using System.IO.Ports; //Knihovna pro port
13using System.Collections;
14
15namespace PÅ™Ãstupový_systém
16{
17 public partial class Access_Form : Form
18 {
19 public Access_Form() //NaÄtenà Formu Access_Form
20 {
21 InitializeComponent(); //Inicializovánà všech komponent ve formu
22 }
23 SerialPort com = new SerialPort(); //Definovánà portu jako com
24 SQLiteConnection db_Connection = new SQLiteConnection("Data source = databaze.db");//Připojenà databáze do source "databaze.db"
25 private void novýToolStripMenuItem_Click(object sender, EventArgs e) //Vytvořenà nového formu Uziv_novy_Form
26 {
27 com.Close(); //UzavÅ™enà komunikace, kvůli vytvoÅ™enà nevého formu s pÅ™edem aktivnÃm portem
28 Uziv_novy_Form Uziv_novy_show = new Uziv_novy_Form(); //Vytvořenà proměnné pro vytvořenà daného formu
29 Uziv_novy_show.Show(); //Vytvořenà daného formu
30
31 }
32
33 private void editToolStripMenuItem_Click(object sender, EventArgs e) //Vytvořenà nového formu Uziv_edit_Form
34 {
35 com.Close(); //UzavÅ™enà komunikace, kvůli vytvoÅ™enà nevého formu s pÅ™edem aktivnÃm portem
36 Uziv_edit_Form Uziv_edit_show = new Uziv_edit_Form(); //Vytvořenà proměnné pro vytvořenà daného formu
37 Uziv_edit_show.Show(); //Vytvořenà daného formu
38 }
39 private void přiřaditSkupinyToolStripMenuItem_Click(object sender, EventArgs e) //Vytvořenà nového formu Uziv_pridat_skupiny_Form
40 {
41 com.Close(); //UzavÅ™enà komunikace, kvůli vytvoÅ™enà nevého formu s pÅ™edem aktivnÃm portem
42 Uziv_pridat_skupiny_Form Uziv_priradit_show = new Uziv_pridat_skupiny_Form(); //Vytvořenà proměnné pro vytvořenà daného formu
43 Uziv_priradit_show.Show(); //Vytvořenà daného formu
44 }
45 private void nováToolStripMenuItem_Click(object sender, EventArgs e) //Vytvořenà nového formu Skupina_novy_Form
46 {
47 com.Close(); //UzavÅ™enà komunikace, kvůli vytvoÅ™enà nevého formu s pÅ™edem aktivnÃm portem
48 Skupina_novy_Form Skupina_novy_show = new Skupina_novy_Form(); //Vytvořenà proměnné pro vytvořenà daného formu
49 Skupina_novy_show.Show(); //Vytvořenà daného formu
50 }
51
52 private void editovánÃToolStripMenuItem_Click(object sender, EventArgs e) //Editovánà skupiny
53 {
54 com.Close(); //UzavÅ™enà komunikace, kvůli vytvoÅ™enà nevého formu s pÅ™edem aktivnÃm portem
55 Skupina_edit_Form Skupina_edit_show = new Skupina_edit_Form(); //Vytvořenà proměnné pro vytvořenà daného formu
56 Skupina_edit_show.Show(); //Vytvořenà daného formu
57 }
58
59 private void Access_Form_Load(object sender, EventArgs e) //NaÄtenà formu
60 {
61 com.PortName = "COM5";//Nastavenà portu pro ÄtenÃ
62 com.DtrEnable = true;
63 com.BaudRate = 19200;
64 com.DataBits = 8;
65 com.Parity = Parity.None;
66 com.StopBits = StopBits.One;
67 //com.DataReceived += new SerialDataReceivedEventHandler(comPort_DataReceived); // funkce při obdrženà dat --> Neakivnà kvůli chybě
68 com.Open(); //Otevřenà komunikace
69 //Přidánà tabulek, pokud nejsou
70 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection); //PÅ™Ãkazy pro SQLite
71 db_Connection.Open(); //Otevřenà připojenàs databázà SQLite
72 /*Vymazánà všech tabulek pokud je potřeba změna v tabulkách
73 dbCommand.CommandText = "DROP TABLE uzivatele";
74 dbCommand.ExecuteNonQuery();
75 dbCommand.CommandText = "DROP TABLE skupiny";
76 dbCommand.ExecuteNonQuery();
77 dbCommand.CommandText = "DROP TABLE logy";
78 dbCommand.ExecuteNonQuery();*/
79 //Vytvořenà databázà pokud nejsou
80 dbCommand.CommandText = "CREATE TABLE IF NOT EXISTS uzivatele(rf VARCHAR(15) PRIMARY KEY, jmeno VARCHAR(20), prijmeni VARCHAR(20), index_skupiny INTEGER(10), FOREIGN KEY (index_skupiny) REFERENCES skupiny(id));";
81 dbCommand.ExecuteNonQuery();
82 dbCommand.CommandText = "CREATE TABLE IF NOT EXISTS skupiny (id INTEGER PRIMARY KEY AUTOINCREMENT, jmeno VARCHAR(20), cas_od INTEGER(10),cas_do INTEGER(10));";
83 dbCommand.ExecuteNonQuery();
84 dbCommand.CommandText = "CREATE TABLE IF NOT EXISTS logy (id INTEGER PRIMARY KEY AUTOINCREMENT, jmeno VARCHAR(20), prijmeni VARCHAR(20), rf_kod VARCHAR(20), datum VARCHAR(20), cas VARCHAR(20), vysledek VARCHAR(20));";
85 dbCommand.ExecuteNonQuery();
86 //VytvoÅ™enà ZákladnÃch prvků
87 /*dbCommand.CommandText = "INSERT INTO skupiny (id, jmeno, cas_od, cas_do) VALUES ('0', 'Nepovolený', '0', '0');";
88 dbCommand.ExecuteNonQuery();
89 dbCommand.CommandText = "INSERT INTO skupiny (id, jmeno, cas_od, cas_do) VALUES ('1', 'Povolený', '0', '0');";
90 dbCommand.ExecuteNonQuery();
91 dbCommand.CommandText = "INSERT INTO uzivatele (rf, jmeno, prijmeni, index_skupiny) VALUES ('57192BFA', 'Anežka', 'Blazskowicz', '0');";
92 dbCommand.ExecuteNonQuery();
93 dbCommand.CommandText = "INSERT INTO uzivatele (rf, jmeno, prijmeni, index_skupiny) VALUES ('0585DF14', 'Admin', 'Admin', '1');";
94 dbCommand.ExecuteNonQuery();*/
95 db_Connection.Close(); //Uavřenà komunikace
96 }
97 /*private void comPort_DataReceived(object sender, SerialDataReceivedEventArgs e) //PÅ™ijetà dat ÄteÄkou
98 {
99 string message = com.ReadLine();
100 Simulation_Textbox.Text = Convert.ToString(Filtrace(message));
101 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
102 db_Connection.Open();
103 dbCommand.CommandText = "SELECT * FROM uzivatele WHERE rf='" + Simulation_Textbox.Text + "';";
104 dbCommand.ExecuteNonQuery();
105 SQLiteDataReader dbDataReader = dbCommand.ExecuteReader();
106 if (dbDataReader.HasRows)
107 {
108 while (dbDataReader.Read())
109 {
110 Logs_Textbox.Text += dbDataReader[1] + " ";
111 Logs_Textbox.Text += dbDataReader[2] + " ";
112 Logs_Textbox.Text += dbDataReader[0] + " ";
113 Logs_Textbox.Text += DateTime.Today.ToString("dd/MM/yyyy") + " ";
114 Logs_Textbox.Text += DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + " ";
115 SQLiteCommand dbCommand2 = new SQLiteCommand(db_Connection);
116 dbCommand2.CommandText = "SELECT * FROM skupiny WHERE id = '" + dbDataReader[3] + "';";
117 dbCommand2.ExecuteNonQuery();
118 SQLiteDataReader dbDataReader2 = dbCommand2.ExecuteReader();
119 if (dbDataReader2.HasRows)
120 {
121 while (dbDataReader2.Read())
122 {
123 string max_value = Convert.ToString(dbDataReader2[3]);
124 textBox1.Text = max_value.ToString();
125 int max_value_number = int.Parse(max_value);
126 int result = max_value_number - DateTime.Now.Hour;
127 textBox2.Text = DateTime.Now.Hour.ToString();
128 if (result > 0)
129 {
130 Logs_Textbox.Text += "PÅ™Ãstup povolen";
131 }
132 else
133 {
134 Logs_Textbox.Text += "PÅ™Ãstup zakázán";
135 }
136 textBox3.Text = result.ToString();
137 }
138 }
139 Logs_Textbox.Text += "\r\n";
140 }
141 }
142 db_Connection.Close();
143 }*/
144 public static string Filtrace(string message)//Filtrace znaků, pouze ÄÃsla a velká pÃsmena
145 {
146 StringBuilder sb = new StringBuilder();
147 foreach (char c in message)
148 {
149 if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z'))
150 sb.Append(c);
151 }
152 return sb.ToString();
153 }
154
155 private void informaceToolStripMenuItem_Click(object sender, EventArgs e)//Informace napsané do MessageBoxu
156 {
157 MessageBox.Show("Verze 1.0");
158 }
159
160 private void vypnoutToolStripMenuItem_Click(object sender, EventArgs e)//Vypnutà celé aplikace
161 {
162 Close();
163 }
164
165 private void Simulation_Textbox_TextChanged(object sender, EventArgs e)//Simulace Filtrace --> Vstup ÄteÄky
166 {
167 string message = Simulation_Textbox.Text;
168 Simulation_Textbox.Text =Convert.ToString(Filtrace(message));
169 }
170
171 private void RF_Simulation_Click(object sender, EventArgs e) //Vyhodnocenà RFID kódu v textboxu Simulation_Textbox
172 {
173 //Nastavenà pÅ™Ãkazu a otevÅ™enà komunikace
174 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
175 db_Connection.Open();
176 //PÅ™Ãkaz do SQLite databáze a jeho provedenÃ
177 dbCommand.CommandText = "SELECT * FROM uzivatele WHERE rf='" + Simulation_Textbox.Text + "';";
178 dbCommand.ExecuteNonQuery();
179 //Čtenà dat z SQLite tabulky v řádkách, pokud jsou
180 SQLiteDataReader dbDataReader = dbCommand.ExecuteReader();
181 if (dbDataReader.HasRows)
182 {
183 while (dbDataReader.Read())
184 {
185 //Vypsánà dat do logů a zapsánà dat do proměnných pro zapsánà do tabulky logy
186 Logs_Textbox.Text += dbDataReader[1] + " ";
187 string data_1 = Convert.ToString(dbDataReader[1]);
188 Logs_Textbox.Text += dbDataReader[2] + " ";
189 string data_2 = Convert.ToString(dbDataReader[2]);
190 Logs_Textbox.Text += dbDataReader[0] + " ";
191 string data_3 = Convert.ToString(dbDataReader[0]);
192 Logs_Textbox.Text += DateTime.Today.ToString("dd/MM/yyyy")+" ";
193 string data_4 = Convert.ToString(DateTime.Today);
194 Logs_Textbox.Text += DateTime.Now.Hour.ToString()+":"+ DateTime.Now.Minute.ToString()+" ";
195 string data_5 = Convert.ToString(DateTime.Now.Hour);
196 //Dalšà pÅ™Ãkaz pro pÅ™eÄtenà vÅ¡ech dat z tabulky skupiny kde id_skupiny ÄlovÄ›ka odpovÃdá id skupiny
197 SQLiteCommand dbCommand2 = new SQLiteCommand(db_Connection);
198 dbCommand2.CommandText = "SELECT * FROM skupiny WHERE id = '" + dbDataReader[3] + "';";
199 dbCommand2.ExecuteNonQuery();
200 SQLiteDataReader dbDataReader2 = dbCommand2.ExecuteReader();
201 if (dbDataReader2.HasRows)
202 {
203 while (dbDataReader2.Read())
204 {
205 //Vezmutà hodnot z tabulky skupiny, pro zjištěnà v jakou hodinu má daná skupina právo vstoupit
206 string max_value = Convert.ToString(dbDataReader2[3]);
207 textBox1.Text = max_value.ToString();
208 int max_value_number = int.Parse(max_value);
209 int result = max_value_number - DateTime.Now.Hour;
210 textBox2.Text = DateTime.Now.Hour.ToString();
211 //Vyhodnocenà a vypsánà vyhodnocenà do textboxu Logs_Textbox a tabulky logy
212 if (result > 0)
213 {
214 Logs_Textbox.Text += "PÅ™Ãstup povolen";
215 string data_6 = "PÅ™Ãstup povolen";
216 SQLiteCommand dbCommand3 = new SQLiteCommand(db_Connection);
217 dbCommand3.CommandText = "INSERT INTO logy (jmeno, prijmeni, rf_kod, datum, cas, vysledek) VALUES ('"+data_1+"', '"+data_2+"', '"+data_3+"', '"+data_4+ "', '" + data_5 + "', '" + data_6 + "');";
218 dbCommand3.ExecuteNonQuery();
219 }
220 else
221 {
222 Logs_Textbox.Text += "PÅ™Ãstup zakázán";
223 string data_6 = "PÅ™Ãstup zakázán";
224 SQLiteCommand dbCommand4 = new SQLiteCommand(db_Connection);
225 dbCommand4.CommandText = "INSERT INTO logy (jmeno, prijmeni, rf_kod, datum, cas, vysledek) VALUES ('" + data_1 + "', '" + data_2 + "', '" + data_3 + "', '" + data_4 + "', '" + data_5 + "', '" + data_6 + "');";
226 dbCommand4.ExecuteNonQuery();
227 }
228 textBox3.Text = result.ToString();
229 }
230 }
231 Logs_Textbox.Text += "\r\n";
232 }
233 }
234 //UzavÅ™enà pÅ™ipojenÃ
235 db_Connection.Close();
236 }
237
238 private void Uziv_button_Click(object sender, EventArgs e) //Staršà metoda pro vypsánà uživatelů z tabulky uzivatele --> Vyměnil timer1
239 {
240 /*Uziv_Textbox.Clear();
241 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
242 db_Connection.Open();
243 dbCommand.CommandText = "SELECT * FROM uzivatele";
244 SQLiteDataReader dbDataReader = dbCommand.ExecuteReader();
245 if (dbDataReader.HasRows)
246 {
247 while (dbDataReader.Read())
248 {
249 Uziv_Textbox.Text += dbDataReader[1] + " ";
250 Uziv_Textbox.Text += dbDataReader[2] + " ";
251 Uziv_Textbox.Text += dbDataReader[0] + " ";
252 Uziv_Textbox.Text += dbDataReader[3] + " \r\n";
253 }
254 }
255 db_Connection.Close();*/
256 }
257
258 private void Skupiny_button_Click(object sender, EventArgs e) //Staršà metoda pro vypsánà skupin z tabulky skupiny --> Vyměnil timer1
259 {
260 /*Skupiny_Textbox.Clear();
261 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
262 db_Connection.Open();
263 dbCommand.CommandText = "SELECT * FROM skupiny";
264 SQLiteDataReader dbDataReader = dbCommand.ExecuteReader();
265 if (dbDataReader.HasRows)
266 {
267 while (dbDataReader.Read())
268 {
269 Skupiny_Textbox.Text += dbDataReader[0] + " ";
270 Skupiny_Textbox.Text += dbDataReader[1] + " ";
271 Skupiny_Textbox.Text += dbDataReader[2] + " [hh] ";
272 Skupiny_Textbox.Text += dbDataReader[3] + " [hh] \r\n";
273 }
274 }
275 db_Connection.Close();*/
276 }
277
278 private void timer1_Tick(object sender, EventArgs e)//Obnovovánà dat v Access_Form_Tab při 100ms
279 {
280 // Obnovovánà vypsánà dat z tabulky skupib
281 Skupiny_Textbox.Clear();
282 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
283 db_Connection.Open();
284 dbCommand.CommandText = "SELECT * FROM skupiny";
285 SQLiteDataReader dbDataReader = dbCommand.ExecuteReader();
286 if (dbDataReader.HasRows)
287 {
288 while (dbDataReader.Read())
289 {
290 Skupiny_Textbox.Text += dbDataReader[0] + " ";
291 Skupiny_Textbox.Text += dbDataReader[1] + " ";
292 Skupiny_Textbox.Text += dbDataReader[2] + " [hh] ";
293 Skupiny_Textbox.Text += dbDataReader[3] + " [hh] \r\n";
294 }
295 }
296 db_Connection.Close();
297 //Obnovovánà vypsánà dat z tabulky uzivatele
298 Uziv_Textbox.Clear();
299 SQLiteCommand dbCommand2 = new SQLiteCommand(db_Connection);
300 db_Connection.Open();
301 dbCommand2.CommandText = "SELECT * FROM uzivatele";
302 SQLiteDataReader dbDataReader2 = dbCommand2.ExecuteReader();
303 if (dbDataReader2.HasRows)
304 {
305 while (dbDataReader2.Read())
306 {
307 Uziv_Textbox.Text += dbDataReader2[1] + " ";
308 Uziv_Textbox.Text += dbDataReader2[2] + " ";
309 Uziv_Textbox.Text += dbDataReader2[0] + " ";
310 Uziv_Textbox.Text += dbDataReader2[3] + " \r\n";
311 }
312 }
313 db_Connection.Close();
314 //Obnovovánà vypsánà dat z tabulky logy
315 Logs_Textbox.Clear();
316 SQLiteCommand dbCommand3 = new SQLiteCommand(db_Connection);
317 db_Connection.Open();
318 dbCommand3.CommandText = "SELECT * FROM logy";
319 SQLiteDataReader dbDataReader3 = dbCommand3.ExecuteReader();
320 if (dbDataReader3.HasRows)
321 {
322 while (dbDataReader3.Read())
323 {
324 Logs_Textbox.Text += dbDataReader3[1] + " ";
325 Logs_Textbox.Text += dbDataReader3[2] + " ";
326 Logs_Textbox.Text += dbDataReader3[3] + " ";
327 Logs_Textbox.Text += dbDataReader3[4] + " ";
328 Logs_Textbox.Text += dbDataReader3[5] + " ";
329 Logs_Textbox.Text += dbDataReader3[6] + " \r\n";
330 }
331 }
332 db_Connection.Close();
333 }
334
335 private void Logs_button_Click(object sender, EventArgs e) //Staršà metoda pro vypsánà skupin z tabulky logy, neimplementovaný kód --> Vyměnil timer1
336 {
337
338 }
339
340 private void button1_Click(object sender, EventArgs e)//PÅ™i kliknutà na button se vyfiltruje a vypÃÅ¡e "Text" poslaný pÅ™es zaÅ™ÃzenÃ
341 {
342 Simulation_Textbox.Text = Convert.ToString(Filtrace(com.ReadLine()));
343 }
344 }
345}
346
347//VytvoÅ™ily, Dmitrij Ryabovol a Michal StuchlÃk, V4, 7 Úloha, PÅ™Ãstupový systém
348using System;
349using System.Collections.Generic;
350using System.ComponentModel;
351using System.Data;
352using System.Drawing;
353using System.Linq;
354using System.Text;
355using System.Threading.Tasks;
356using System.Windows.Forms;
357using System.Data.SQLite; //Potřebná kniha SQLite spojená v referncàs projektem
358
359namespace PÅ™Ãstupový_systém
360{
361 public partial class Skupina_edit_Form : Form
362 {
363 public Skupina_edit_Form() //NaÄtenà Formu Skupina_edit_Form
364 {
365 InitializeComponent(); //Inicializovánà všech komponent ve formu
366 }
367 SQLiteConnection db_Connection = new SQLiteConnection("Data source = databaze.db");//Připojenà databáze do source "databaze.db"
368 private void Skupina_Edit_Upravit_button_Click(object sender, EventArgs e)//Při kliknutà na úpravu skupin
369 {
370 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection); //PÅ™Ãkazy pro SQLite
371 db_Connection.Open();
372 //Aktualizujà skupinu kde je id stejné jako v daném textboxu
373 dbCommand.CommandText = "UPDATE skupiny SET jmeno='"+Skupina_Edit_jmeno_textbox.Text+"', cas_od ='" + Skupina_Edit_cas_od_textbox.Text + "', cas_do='"+Skupina_Edit_cas_do_textbox.Text+"' WHERE id='" + Skupina_Edit_id_textbox.Text + "';";
374 dbCommand.ExecuteNonQuery();
375 db_Connection.Close();
376 }
377
378 private void Skupina_Edit_zavrit_button_Click(object sender, EventArgs e) //Uzavřenà formu Skupina_edit_Form
379 {
380 this.Close();
381 }
382
383 private void Skupina_Edit_cas_od_textbox_TextChanged(object sender, EventArgs e)//Metoda, která se aktivuje při změně textu v Skupina_Edit_cas_od_textbox
384 {
385 try
386 {
387 int oprava = int.Parse(Skupina_Edit_cas_od_textbox.Text);
388 //PodmÃnka pro to aby ÄÃslo bylo pouze celé a mezi hodnotami 0-24
389 if (oprava < 25)
390 {
391 if (oprava > -1)
392 Skupina_Edit_cas_od_textbox.Text = oprava.ToString();
393 else
394 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
395 }
396 else
397 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
398 }
399 catch (Exception e1)
400 {
401 Skupina_Edit_cas_od_textbox.Text = Convert.ToString(Filtrace(Skupina_Edit_cas_od_textbox.Text));//Pokud bude hodnota jiná než celé ÄÃslo tak se filtracà ani nezapÃÅ¡e
402 }
403 }
404
405 private void Skupina_Edit_cas_do_textbox_TextChanged(object sender, EventArgs e)//Metoda, která se aktivuje při změně textu v Skupina_Edit_cas_do_textbox
406 {
407 try
408 {
409 int oprava = int.Parse(Skupina_Edit_cas_do_textbox.Text);
410 //PodmÃnka pro to aby ÄÃslo bylo pouze celé a mezi hodnotami 0-24
411 if (oprava < 25)
412 {
413 if (oprava > -1)
414 Skupina_Edit_cas_do_textbox.Text = oprava.ToString();
415 else
416 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
417 }
418 else
419 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
420 }
421 catch (Exception e1)
422 {
423 Skupina_Edit_cas_do_textbox.Text = Convert.ToString(Filtrace(Skupina_Edit_cas_do_textbox.Text));//Pokud bude hodnota jiná než celé ÄÃslo tak se filtracà ani nezapÃÅ¡e
424 }
425 }
426 public static string Filtrace(string message)//Filtrace znaků, pouze ÄÃsla
427 {
428 StringBuilder sb = new StringBuilder();
429 foreach (char c in message)
430 {
431 if (c >= '0' && c <= '9')
432 sb.Append(c);
433 }
434 return sb.ToString();
435 }
436 }
437}
438//VytvoÅ™ily, Dmitrij Ryabovol a Michal StuchlÃk, V4, 7 Úloha, PÅ™Ãstupový systém
439using System;
440using System.Collections.Generic;
441using System.ComponentModel;
442using System.Data;
443using System.Drawing;
444using System.Linq;
445using System.Text;
446using System.Threading.Tasks;
447using System.Windows.Forms;
448using System.Data.SQLite; //Potřebná kniha SQLite spojená v referncàs projektem
449
450namespace PÅ™Ãstupový_systém
451{
452 public partial class Skupina_novy_Form : Form
453 {
454 public Skupina_novy_Form() //NaÄtenà Formu Skupina_novy_Form
455 {
456 InitializeComponent(); //Inicializovánà všech komponent ve formu
457 }
458 SQLiteConnection db_Connection = new SQLiteConnection("Data source = databaze.db"); //Připojenà databáze do source "databaze.db"
459 private void Skupina_Novy_vytvorit_button_Click(object sender, EventArgs e)
460 {
461 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection); //PÅ™Ãkazy pro SQLite
462 db_Connection.Open();
463 //Zapiš daného hodnoty do tabulky skupiny
464 dbCommand.CommandText = "INSERT INTO skupiny (jmeno, cas_od, cas_do)VALUES('" + Skupina_Novy_nazev_textbox.Text+ "','" + Skupina_Novy_cas_od_textbox.Text + "','" + Skupina_Novy_cas_do_textbox.Text + "');";
465 dbCommand.ExecuteNonQuery();
466 db_Connection.Close();
467 }
468
469 private void Skupina_Novy_zavrit_button_Click(object sender, EventArgs e) //Uzavřenà formu Skupina_novy_Form
470 {
471 this.Close();
472 }
473
474 private void Skupina_Novy_cas_od_textbox_TextChanged(object sender, EventArgs e)//Metoda, která se aktivuje při změně textu v Skupina_Edit_cas_od_textbox
475 {
476 try
477 {
478 int oprava = int.Parse(Skupina_Novy_cas_od_textbox.Text);
479 //PodmÃnka pro to aby ÄÃslo bylo pouze celé a mezi hodnotami 0-24
480 if (oprava < 25)
481 {
482 if (oprava > -1)
483 Skupina_Novy_cas_od_textbox.Text = oprava.ToString();
484 else
485 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
486 }
487 else
488 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
489 }
490 catch (Exception e1)
491 {
492 Skupina_Novy_cas_od_textbox.Text = Convert.ToString(Filtrace(Skupina_Novy_cas_od_textbox.Text));//Pokud bude hodnota jiná než celé ÄÃslo tak se filtracà ani nezapÃÅ¡e
493 }
494 }
495
496 private void Skupina_Novy_cas_do_textbox_TextChanged(object sender, EventArgs e)//Metoda, která se aktivuje při změně textu v Skupina_Edit_cas_od_textbox
497 {
498 try
499 {
500 int oprava = int.Parse(Skupina_Novy_cas_do_textbox.Text);
501 //PodmÃnka pro to aby ÄÃslo bylo pouze celé a mezi hodnotami 0-24
502 if (oprava < 25)
503 {
504 if (oprava > -1)
505 Skupina_Novy_cas_do_textbox.Text = oprava.ToString();
506 else
507 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
508 }
509 else
510 MessageBox.Show("Zadejte hodnotu mezi 0-24.");
511 }
512 catch (Exception e1)
513 {
514 Skupina_Novy_cas_do_textbox.Text = Convert.ToString(Filtrace(Skupina_Novy_cas_do_textbox.Text));//Pokud bude hodnota jiná než celé ÄÃslo tak se filtracà ani nezapÃÅ¡e
515 }
516 }
517 public static string Filtrace(string message)//Filtrace znaků, pouze ÄÃsla
518 {
519 StringBuilder sb = new StringBuilder();
520 foreach (char c in message)
521 {
522 if (c >= '0' && c <= '9')
523 sb.Append(c);
524 }
525 return sb.ToString();
526 }
527 }
528}
529
530//VytvoÅ™ily, Dmitrij Ryabovol a Michal StuchlÃk, V4, 7 Úloha, PÅ™Ãstupový systém
531using System;
532using System.Collections.Generic;
533using System.ComponentModel;
534using System.Data;
535using System.Drawing;
536using System.Linq;
537using System.Text;
538using System.Threading.Tasks;
539using System.Windows.Forms;
540using System.Data.SQLite; //Potřebná kniha SQLite spojená v referncàs projektem
541using System.IO.Ports; //Knihovna pro port
542
543namespace PÅ™Ãstupový_systém
544{
545 public partial class Uziv_edit_Form : Form
546 {
547 public Uziv_edit_Form() //NaÄtenà Formu Uziv_edit_Form
548 {
549 InitializeComponent(); //Inicializovánà všech komponent ve formu
550 }
551 SerialPort com = new SerialPort(); //Definovánà portu jako com
552 SQLiteConnection db_Connection = new SQLiteConnection("Data source = databaze.db"); //Připojenà databáze do source "databaze.db"
553 private void Uziv_Edit_editovat_button_Click(object sender, EventArgs e) //Metoda, která se aktivuje při kliknutà na Uziv_Edit_editovat_button
554 {
555 String check = Uziv_Edit_pr_textbox.Text;
556
557 Uziv_Edit_pr_textbox.Text = Convert.ToString(Filtrace_pr(check));
558 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection); //PÅ™Ãkazy pro SQLite
559 db_Connection.Open();
560 //Aktualizovanà uživatele tam kde se jeho RFID rovná rf v tabulce uzivatele
561 dbCommand.CommandText = "UPDATE uzivatele SET jmeno ='" + Uziv_Edit_jm_textbox.Text + "', prijmeni ='" + Uziv_Edit_pr_textbox.Text + "'WHERE rf='" + Uziv_Edit_rf_textbox.Text + "';";
562 dbCommand.ExecuteNonQuery();
563 db_Connection.Close();
564 }
565
566 private void Uziv_Edit_zavrit_textbox_Click(object sender, EventArgs e) //Uzavřenà formu Uziv_edit_Form
567 {
568 this.Close();
569 }
570
571 private void Uziv_edit_Form_Load(object sender, EventArgs e) //Nastavenà portu komunikace pÅ™i naÄtenà formu
572 {
573 com.PortName = "COM5";
574 com.DtrEnable = true;
575 com.BaudRate = 19200;
576 com.DataBits = 8;
577 com.Parity = Parity.None;
578 com.StopBits = StopBits.One;
579 }
580 public static string Filtrace(string message) //Filtrace znaků, pouze ÄÃsla a velká pÃsmena
581 {
582 StringBuilder sb = new StringBuilder();
583 foreach (char c in message)
584 {
585 if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z'))
586 sb.Append(c);
587 }
588 return sb.ToString();
589 }
590
591 private void Uziv_Edit_rf_textbox_TextChanged(object sender, EventArgs e) //Kontrola RFID při změně textu v textboxu Uziv_Edit_rf_textbox
592 {
593 string message = Uziv_Edit_rf_textbox.Text;
594 //Filtrace znaků v textboxu Uziv_Edit_rf_textbox
595 Uziv_Edit_rf_textbox.Text = Convert.ToString(Filtrace(message));
596 }
597
598 private void Uziv_Edit_smazat_button_Click(object sender, EventArgs e) //Metoda při kliknutà na Uziv_Edit_smazat_button
599 {
600 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection); //PÅ™Ãkazy pro SQLite
601 db_Connection.Open();
602 //Pokud nenà textbox s RFID prázdný tak vymaže uživatele s danám RFIDem s ochranou
603 if (Uziv_Edit_rf_textbox.Text != "")
604 {
605 try
606 {
607 dbCommand.CommandText = "DELETE from uzivatele WHERE rf='" + Uziv_Edit_rf_textbox.Text + "';";
608 dbCommand.ExecuteNonQuery();
609 }
610 catch
611 {
612 MessageBox.Show("Chybně zadáno");
613 }
614 }
615 db_Connection.Close();
616 }
617 public static string Filtrace_pr(string message)//Filtrace znaků, pouze ÄÃsla, velká pÃsmena a malá pÃsmena
618 {
619 StringBuilder sb = new StringBuilder();
620 foreach (char c in message)
621 {
622 if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'))
623 sb.Append(c);
624 }
625 return sb.ToString();
626 }
627 }
628}
629
630//VytvoÅ™ily, Dmitrij Ryabovol a Michal StuchlÃk, V4, 7 Úloha, PÅ™Ãstupový systém
631using System;
632using System.Collections.Generic;
633using System.ComponentModel;
634using System.Data;
635using System.Drawing;
636using System.Linq;
637using System.Text;
638using System.Threading.Tasks;
639using System.Windows.Forms;
640using System.Data.SQLite; //Potřebná kniha SQLite spojená v referncàs projektem
641using System.IO.Ports; //Knihovna pro port
642
643namespace PÅ™Ãstupový_systém
644{
645 public partial class Uziv_novy_Form : Form
646 {
647 public Uziv_novy_Form() //NaÄtenà Formu Uziv_novy_Form
648 {
649 InitializeComponent(); //Inicializovánà všech komponent ve formu
650 }
651 SerialPort com = new SerialPort(); //Definovánà portu jako com
652 SQLiteConnection db_Connection = new SQLiteConnection("Data source = databaze.db"); //Připojenà databáze do source "databaze.db"
653 private void Uziv_Novy_pridat_button_Click(object sender, EventArgs e) //Metoda, která se aktivuje při kliknutà na Uziv_Novy_pridat_button
654 {
655 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
656 db_Connection.Open();
657 //Přidá uživatele do tabulky uzivatele s danýma parametrama
658 dbCommand.CommandText = "INSERT INTO uzivatele (rf, jmeno, prijmeni, index_skupiny) VALUES ('" + Uziv_Novy_rf_textbox.Text + "', '" + Uziv_Novy_jm_textbox.Text + "', '" + Uziv_Novy_pr_textbox.Text + "', '" + Uziv_Novy_ID_Textbox.Text + "');";
659 dbCommand.ExecuteNonQuery();
660 db_Connection.Close();
661 }
662
663 private void Uziv_Novy_zavrit_textbox_Click(object sender, EventArgs e) //Uzavřenà formu Uziv_novy_Form
664 {
665 this.Close();
666 }
667
668 private void Uziv_novy_Form_Load(object sender, EventArgs e) //Nastavenà portu komunikace pÅ™i naÄtenà formu
669 {
670 com.PortName = "COM5";
671 com.DtrEnable = true;
672 com.BaudRate = 19200;
673 com.DataBits = 8;
674 com.Parity = Parity.None;
675 com.StopBits = StopBits.One;
676 com.Open();
677 }
678 public static string Filtrace(string message) //Filtrace znaků, pouze ÄÃsla a velká pÃsmena
679 {
680 StringBuilder sb = new StringBuilder();
681 foreach (char c in message)
682 {
683 if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z'))
684 sb.Append(c);
685 }
686 return sb.ToString();
687 }
688
689 private void Uziv_Novy_rf_textbox_TextChanged(object sender, EventArgs e) //Kontrola RFID při změně textu v textboxu Uziv_Novy_rf_textbox
690 {
691 string message = Uziv_Novy_rf_textbox.Text;
692 //Filtrace znaků v textboxu Uziv_Edit_rf_textbox
693 Uziv_Novy_rf_textbox.Text = Convert.ToString(Filtrace(message));
694 }
695
696 private void button1_Click(object sender, EventArgs e) //PÅ™i kliknutà na button se vyfiltruje a vypÃÅ¡e "Text" poslaný pÅ™es zaÅ™ÃzenÃ
697 {
698 Uziv_Novy_rf_textbox.Text = Convert.ToString(Filtrace(com.ReadLine()));
699
700 }
701 }
702}
703//VytvoÅ™ily, Dmitrij Ryabovol a Michal StuchlÃk, V4, 7 Úloha, PÅ™Ãstupový systém
704using System;
705using System.Collections.Generic;
706using System.ComponentModel;
707using System.Data;
708using System.Drawing;
709using System.Linq;
710using System.Text;
711using System.Threading.Tasks;
712using System.Windows.Forms;
713using System.Data.SQLite; //Potřebná kniha SQLite spojená v referncàs projektem
714using System.IO.Ports; //Knihovna pro port
715
716namespace PÅ™Ãstupový_systém
717{
718 public partial class Uziv_pridat_skupiny_Form : Form
719 {
720 public Uziv_pridat_skupiny_Form() //NaÄtenà Formu Uziv_pridat_skupiny_Form
721 {
722 InitializeComponent(); //Inicializovánà všech komponent ve formu
723 }
724 SerialPort com = new SerialPort(); //Definovánà portu jako com
725 SQLiteConnection db_Connection = new SQLiteConnection("Data source = databaze.db"); //Připojenà databáze do source "databaze.db"
726 private void Uziv_pridat_button_Click(object sender, EventArgs e) //Metoda, která se aktivuje při kliknutà na Uziv_pridat_button
727 {
728 SQLiteCommand dbCommand = new SQLiteCommand(db_Connection);
729 db_Connection.Open();
730 //Přidánà skupiny pro uživatele s daným RFID
731 dbCommand.CommandText = "UPDATE uzivatele SET index_skupiny ='"+Uziv_pridat_skupiny_index_textbox.Text+"' WHERE rf='"+Uziv_pridat_skupiny_Rf_textbox.Text+"';";
732 dbCommand.ExecuteNonQuery();
733 db_Connection.Close();
734 }
735
736 private void Uziv_Novy_zavrit_textbox_Click(object sender, EventArgs e) //Uzavřenà formu Uziv_pridat_skupiny_Form
737 {
738 this.Close();
739 }
740
741 private void Uziv_pridat_skupiny_Form_Load(object sender, EventArgs e) //Nastavenà portu komunikace pÅ™i naÄtenà formu
742 {
743 com.PortName = "COM5";
744 com.DtrEnable = true;
745 com.BaudRate = 19200;
746 com.DataBits = 8;
747 com.Parity = Parity.None;
748 com.StopBits = StopBits.One;
749 }
750 public static string Filtrace(string message) //Filtrace znaků, pouze ÄÃsla a velká pÃsmena
751 {
752 StringBuilder sb = new StringBuilder();
753 foreach (char c in message)
754 {
755 if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z'))
756 sb.Append(c);
757 }
758 return sb.ToString();
759 }
760
761 private void Uziv_pridat_skupiny_Rf_textbox_TextChanged(object sender, EventArgs e) //Kontrola RFID při změně textu v textboxu Uziv_pridat_skupiny_Rf_textbox
762 {
763 string message = Uziv_pridat_skupiny_Rf_textbox.Text;
764 //Filtrace znaků v textboxu Uziv_Edit_rf_textbox
765 Uziv_pridat_skupiny_Rf_textbox.Text = Convert.ToString(Filtrace(message));
766 }
767 }
768}