Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using iTextSharp.text;
- using iTextSharp.text.pdf;
- using System.IO;
- namespace LicnaKartaWindowsForms
- {
- public partial class Form1 : Form
- {
- private List<string>[] listUsers;
- public Form1()
- {
- InitializeComponent();
- }
- protected override void OnLoad(EventArgs e)
- {
- LoadUsers();
- CountUsers();
- }
- private void btnDodadiNovoLice_Click(object sender, EventArgs e)
- {
- DBConnect konekcija = new DBConnect();
- Dodadi_novo_Lice novoLice = new Dodadi_novo_Lice();
- if (novoLice.ShowDialog() == System.Windows.Forms.DialogResult.OK)
- {
- konekcija.Insert(novoLice.User1);
- listLicniKarti.Items.Clear();
- // DBConnect konekcija = new DBConnect();
- listUsers = konekcija.Select();
- listLicniKarti.BeginUpdate();
- for (int i = 0; i < listUsers[0].Count; i++)
- {
- User user = new User();
- user.Id_br_karta = listUsers[0][i];
- user.Ime = listUsers[1][i];
- user.Prezime = listUsers[2][i];
- user.EMBG = listUsers[3][i];
- user.Drzavjanstvo = listUsers[4][i];
- user.Pol = listUsers[5][i];
- user.Datum_na_raganje = listUsers[6][i];
- user.Datum_na_izdavanje = listUsers[7][i];
- user.Datum_na_vaznost = listUsers[8][i];
- user.Mesto_na_raganje = listUsers[9][i];
- user.Adresa = listUsers[10][i];
- user.Izdavac = listUsers[11][i];
- listLicniKarti.Items.Add(user);
- }
- listLicniKarti.EndUpdate();
- CountUsers();
- }
- }
- public void LoadUsers()
- {
- listLicniKarti.Items.Clear();
- DBConnect konekcija = new DBConnect();
- listUsers = konekcija.Select();
- for (int i = 0; i < listUsers[0].Count; i++)
- {
- User user = new User();
- user.Id_br_karta = listUsers[0][i];
- user.Ime = listUsers[1][i];
- user.Prezime = listUsers[2][i];
- user.EMBG = listUsers[3][i];
- user.Drzavjanstvo = listUsers[4][i];
- user.Pol = listUsers[5][i];
- user.Datum_na_raganje = listUsers[6][i];
- user.Datum_na_izdavanje = listUsers[7][i];
- user.Datum_na_vaznost = listUsers[8][i];
- user.Mesto_na_raganje = listUsers[9][i];
- user.Adresa = listUsers[10][i];
- user.Izdavac = listUsers[11][i];
- listLicniKarti.Items.Add(user);
- }
- }
- public void CountUsers()
- {
- DBConnect konekcija = new DBConnect();
- tbVkupenBrLica.Text = string.Format("{0}",konekcija.Count());
- }
- private void listLicniKarti_SelectedIndexChanged(object sender, EventArgs e)
- {
- if(listLicniKarti.SelectedIndex >= 0)
- {
- User user = listLicniKarti.SelectedItem as User;
- tbAdresa.Text = user.Adresa;
- tbDatumNaIzdavanje.Text = user.Datum_na_izdavanje;
- tbDatumNaRaganje.Text = user.Datum_na_raganje;
- tbDatumNaVazenje.Text = user.Datum_na_vaznost;
- tbDrzavjanstvo.Text = user.Drzavjanstvo;
- tbID.Text = user.Id_br_karta;
- tbIme.Text = user.Ime;
- tbMaticen.Text = user.EMBG;
- tbMestoNaRaganje.Text = user.Mesto_na_raganje;
- tbPol.Text = user.Pol;
- tbPrezime.Text = user.Prezime;
- btnPromenaLice.Enabled = true;
- btnIzbrisiLice.Enabled = true;
- }
- }
- private void cbFilter_SelectedIndexChanged(object sender, EventArgs e)
- {
- funkcija();
- }
- public void funkcija()
- {
- if (cbFilter.SelectedIndex != -1)
- {
- List<User> lista = new List<User>();
- foreach (Object o in listLicniKarti.Items)
- {
- lista.Add(o as User);
- }
- if (cbFilter.SelectedIndex == 0) // licna karta
- {
- lista = lista.OrderBy(x => x.Id_br_karta).ToList();
- listLicniKarti.Items.Clear();
- for (int i = 0; i < lista.Count; i++)
- {
- listLicniKarti.Items.Add(lista[i]);
- }
- }
- if (cbFilter.SelectedIndex == 1) // ime
- {
- lista = lista.OrderBy(x => x.Ime).ToList();
- listLicniKarti.Items.Clear();
- for (int i = 0; i < lista.Count; i++)
- {
- listLicniKarti.Items.Add(lista[i]);
- }
- }
- if (cbFilter.SelectedIndex == 2) // prezime
- {
- lista = lista.OrderBy(x => x.Prezime).ToList();
- listLicniKarti.Items.Clear();
- for (int i = 0; i < lista.Count; i++)
- {
- listLicniKarti.Items.Add(lista[i]);
- }
- }
- }
- }
- private void btnIzbrisiLice_Click(object sender, EventArgs e)
- {
- User user = listLicniKarti.SelectedItem as User;
- DialogResult res = MessageBox.Show(String.Format("Дали сте сигурни дека сакате да го избришете корисникот {0}",user) ,"Бришење на корисник",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
- if (listLicniKarti.SelectedItem != null && res == System.Windows.Forms.DialogResult.Yes)
- {
- DBConnect konekcija = new DBConnect();
- string id = user.Id_br_karta;
- listLicniKarti.Items.Remove(listLicniKarti.SelectedItem);
- MessageBox.Show("Лицето со бој на лична карта " + id + " Име: " + user.Ime + " Презиме: " + user.Prezime + " е успешно избришано!!");
- listLicniKarti.Refresh();
- konekcija.Delete(id);
- CountUsers();
- ClearText();
- }
- }
- private void ClearText()
- {
- tbAdresa.Clear();
- tbBrPominatRok.Clear();
- tbDatumNaIzdavanje.Clear();
- tbDatumNaRaganje.Clear();
- tbDatumNaVazenje.Clear();
- tbDrzavjanstvo.Clear();
- tbID.Clear();
- tbIme.Clear();
- tbMaticen.Clear();
- tbMestoNaRaganje.Clear();
- tbPol.Clear();
- tbPrezime.Clear();
- }
- private void btnPromenaLice_Click(object sender, EventArgs e)
- {
- if(listLicniKarti.SelectedIndex != -1)
- changeEnabled();
- smeniDatumi();
- //Dokolku liceto e pomalo od 30 godini negovata licna karta ke vazi 5 godini
- //dokolku liceto e pogolemo od 30 negovata licna karta ke vazi 10 godini
- // dokolku liceto e pogolemo od 60 god negovata licna karta ke vazi do krajot na negoviot zivot
- //treba da vidime koj polinja treba da gi napravime da mozat da se azuriraat odnodno Enable=false
- // i tie funkciite so ti se so datata da gi napravime sami da se povikuvaat spored godinata nesto taka ke izmislime
- }
- private void changeEnabled()
- {
- User user = listLicniKarti.SelectedItem as User;
- if(user.Pol.Equals("Ж"))
- tbPrezime.ReadOnly = false;
- tbAdresa.ReadOnly = false;
- tbDrzavjanstvo.ReadOnly = false;
- btnZacuvaj.Visible = true;
- btnDodadiNovoLice.Enabled = false;
- listLicniKarti.Enabled = false;
- btnIzbrisiLice.Enabled = false;
- btnIzvestaj.Enabled = false;
- btnPromenaLice.Enabled = false;
- cbFilter.Enabled = false;
- }
- private void smeniDatumi()
- {
- int segasnaGodina = 0;
- int godina = 0;
- int.TryParse(tbDatumNaRaganje.Text.Substring(6, 4), out godina);
- int.TryParse(DateTime.Now.ToString().Substring(5, 4), out segasnaGodina);
- if (segasnaGodina - godina <= 27)
- {
- DateTime dt = DateTime.Now;
- string sega = String.Format("{0:MM/dd/yyyy}", dt);
- tbDatumNaIzdavanje.Text = sega;
- godina = dt.Year + 5;
- string smeneta = sega.Substring(0, 6) + godina.ToString();
- tbDatumNaVazenje.Text = smeneta;
- }
- else
- {
- DateTime dt = DateTime.Now;
- string sega = String.Format("{0:MM/dd/yyyy}", dt);
- tbDatumNaIzdavanje.Text = sega;
- godina = dt.Year + 10;
- string smeneta = sega.Substring(0, 6) + godina.ToString();
- tbDatumNaVazenje.Text = smeneta;
- }
- }
- private void btnIzvestaj_Click(object sender, EventArgs e)
- {
- //ili ke napravime nova forma ili messagebox za licata koj sto imaat zakasnati licni karti
- //treba da ima plus funkcionalnost dokolku mozime da napravime da moze da se siminja seto kako pdf od tie lica
- Document document = new Document();
- string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
- PdfWriter.GetInstance(document, new FileStream(path+"/Izvestaj.pdf", FileMode.Create));
- document.Open();
- StringBuilder sb = new StringBuilder();
- sb.Append("МВР ИЗВЕШТАЈ НА РЕПУБЛИКА МАКЕДОНИЈА \n Лични карти со поминат рок на траење.");
- sb.AppendLine();
- sb.Append("А1234 - Zvko stojanov");
- sb.AppendLine();
- sb.Append("B1234 - Jordan Arsov \n");
- sb.AppendLine();
- string text = sb.ToString();
- byte[] utf8Bytes = Encoding.UTF8.GetBytes(text);
- String str2 = Encoding.UTF8.GetString(utf8Bytes);
- sb.Clear();
- sb.Append(text);
- MessageBox.Show(sb.ToString());
- Paragraph p = new Paragraph(sb.ToString());
- document.Add(p);
- document.Close();
- MessageBox.Show("Извештајот ви е автоматски симнат и тој се наоѓа на десктоп!!");
- }
- private void btnZacuvaj_Click(object sender, EventArgs e)
- {
- User user = listLicniKarti.SelectedItem as User;
- user.Adresa = tbAdresa.Text;
- user.Datum_na_izdavanje = tbDatumNaIzdavanje.Text;
- user.Datum_na_vaznost = tbDatumNaVazenje.Text;
- user.Prezime = tbPrezime.Text;
- MessageBox.Show("Промените се успешно направени!");
- if (user.Pol.Equals("Ж"))
- tbPrezime.ReadOnly = true;
- tbAdresa.ReadOnly = true;
- tbDrzavjanstvo.ReadOnly = true;
- btnZacuvaj.Visible = false;
- btnDodadiNovoLice.Enabled = true;
- listLicniKarti.Enabled = true;
- btnIzbrisiLice.Enabled = true;
- btnIzvestaj.Enabled = true;
- btnPromenaLice.Enabled = true;
- cbFilter.Enabled = true;
- }
- private void cbFilter_Click(object sender, EventArgs e)
- {
- cbFilter.SelectedIndex = 0;
- funkcija();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement