Advertisement
AleksaLjujic

Untitled

Nov 18th, 2024
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 11.08 KB | None | 0 0
  1. namespace BrokerBP
  2. {
  3.     public class BrokerBP
  4.     {
  5.         private SqlConnection connection;
  6.  
  7.         public void Connect()
  8.         {
  9.             try
  10.             {
  11.                 connection = new SqlConnection("Data Source=ALEXA;Initial Catalog=0000_ProSoft;Integrated Security=True;Connect Timeout=30;Encrypt=True;Trust Server Certificate=True;Application Intent=ReadWrite;Multi Subnet Failover=False");
  12.                 connection.Open();
  13.             }
  14.             catch (Exception ex)
  15.             {
  16.                 Console.WriteLine("Nije uspostavljena veza");
  17.                 throw;
  18.             }
  19.         }
  20.         public void Disconect()
  21.         {
  22.             connection.Close();
  23.         }
  24.  
  25.         public BindingList<MuzickiInstrument> VratiInstrumente()
  26.         {
  27.             string upit = "SELECT * FROM INSTRUMENT";
  28.             SqlCommand cmd = new SqlCommand(upit, connection);
  29.             SqlDataReader dr = cmd.ExecuteReader();
  30.             BindingList<MuzickiInstrument> instrumenti = new BindingList<MuzickiInstrument>();  
  31.             while (dr.Read())
  32.             {
  33.                 MuzickiInstrument instrument = new MuzickiInstrument();
  34.                 instrument.sifra = (int)dr["id"];
  35.                 instrument.naziv = (string)dr["naziv"];
  36.                 instrumenti.Add(instrument);
  37.             }
  38.             return instrumenti;
  39.         }
  40.  
  41.         public BindingList<Osoba> VratiOsobe()
  42.         {
  43.             string upit = "SELECT * FROM Osoba ORDER BY IME";
  44.             SqlCommand cmd = new SqlCommand(upit, connection);
  45.             SqlDataReader dr = cmd.ExecuteReader();
  46.             BindingList<Osoba> osobe = new BindingList<Osoba>();
  47.             while (dr.Read())
  48.             {
  49.                 Osoba osoba = new Osoba();
  50.                 osoba.jmbg = (string)dr["jmbg"];
  51.                 osoba.ime = (string)dr["ime"];
  52.                 osoba.prezime = (string)dr["prezime"];
  53.                 osobe.Add(osoba);
  54.             }
  55.             return osobe;
  56.         }
  57.  
  58.         public BindingList<Osoba> OsobeKojeSvirajuInstrument(string nazivInstrumenta)
  59.         {
  60.             string upit = "SELECT jmbg, ime, prezime FROM Osoba INNER JOIN OsobaInstrument ON Osoba.jmbg = OsobaInstrument.idOsoba INNER JOIN Instrument ON OsobaInstrument.idIntrument = Instrument.id WHERE INSTRUMENT.NAZIV = @nazivInstrumenta";            
  61.             SqlCommand cmd = new SqlCommand(upit, connection);
  62.             cmd.Parameters.AddWithValue("@nazivInstrumenta", nazivInstrumenta);
  63.             SqlDataReader dr = cmd.ExecuteReader();
  64.             BindingList<Osoba> osobe = new  BindingList<Osoba>();  
  65.             while (dr.Read())
  66.             {
  67.                 Osoba osoba = new Osoba();
  68.                 osoba.jmbg = (string)dr["jmbg"];
  69.                 osoba.ime = (string)dr["ime"];
  70.                 osoba.prezime = (string)dr["prezime"];
  71.                 osobe.Add(osoba);
  72.             }
  73.             return osobe;
  74.         }
  75.  
  76.         public Boolean SviraInstrument(string ime, string instrument)
  77.         {
  78.             string upit = "SELECT jmbg, ime, prezime\r\nFROM Osoba\r\nINNER JOIN OsobaInstrument ON Osoba.jmbg = OsobaInstrument.idOsoba\r\nINNER JOIN Instrument ON OsobaInstrument.idIntrument = Instrument.id\r\nWHERE Instrument.naziv = @instrument AND Osoba.ime = @ime";
  79.             SqlCommand cmd = new SqlCommand(upit, connection);
  80.             cmd.Parameters.AddWithValue("@instrument", instrument);
  81.             cmd.Parameters.AddWithValue("@ime", ime);
  82.             if (cmd.ExecuteScalar() ==null)
  83.                 return false;
  84.             return true;
  85.         }
  86.  
  87.         public BindingList<MuzickiInstrument> vratiInstrumenteKojiSviraOsoba(string osoba)
  88.         {
  89.             string upit = "SELECT Instrument.naziv, Instrument.id\r\nFROM Osoba\r\nINNER JOIN OsobaInstrument ON Osoba.jmbg = OsobaInstrument.idOsoba\r\nINNER JOIN Instrument ON OsobaInstrument.idIntrument = Instrument.id\r\nWHERE Osoba.ime = @ime";
  90.             SqlCommand cmd = new SqlCommand(upit, connection);
  91.             cmd.Parameters.AddWithValue("@ime", osoba);
  92.             SqlDataReader dr = cmd.ExecuteReader();
  93.             BindingList<MuzickiInstrument> isntrumenti = new BindingList<MuzickiInstrument>();
  94.             while (dr.Read())
  95.             {
  96.                 MuzickiInstrument mi = new MuzickiInstrument();
  97.                 mi.sifra = (int)dr["id"];
  98.                 mi.naziv = (string)dr["naziv"];
  99.                 isntrumenti.Add(mi);    
  100.             }
  101.             return isntrumenti;
  102.         }
  103.  
  104.         public void obrisiInstrumentKojiSvira(string instrument,string osoba)
  105.         {
  106.             string upit = "DELETE OsobaInstrument\r\nFROM OsobaInstrument\r\nINNER JOIN Osoba on Osoba.jmbg = OsobaInstrument.idOsoba\r\nINNER JOIN Instrument on Instrument.id = OsobaInstrument.idIntrument\r\nWHERE idOsoba = @jmbg AND idIntrument = @sifra";
  107.             SqlCommand cmd = new SqlCommand(upit, connection);
  108.             cmd.Parameters.AddWithValue("@jmbg", osoba);
  109.             cmd.Parameters.AddWithValue("@sifra", instrument);  
  110.             cmd.ExecuteNonQuery();
  111.         }
  112.  
  113.         public void dodajInstrument(string idOsobe,string idInstrumenta)
  114.         {
  115.             string upit = "insert into OsobaInstrument (idOsoba,idIntrument) values(@jmbg,@sifra)";
  116.             SqlCommand cmd = new SqlCommand(upit, connection);
  117.             cmd.Parameters.AddWithValue("@jmbg", idOsobe);
  118.             cmd.Parameters.AddWithValue("@sifra", idInstrumenta);
  119.             cmd.ExecuteNonQuery();
  120.         }
  121.     }
  122. }
  123.  
  124. namespace PoslovnaLogika
  125. {
  126.     using BrokerBP;
  127.     using Domen;
  128.     using System.ComponentModel;
  129.     using System.Numerics;
  130.  
  131.     public class Kontroler
  132.     {
  133.         BrokerBP broker = new BrokerBP();
  134.  
  135.         public BindingList<MuzickiInstrument> VratiInstrumente()
  136.         {
  137.             try
  138.             {
  139.                 broker.Connect();
  140.                 return broker.VratiInstrumente();
  141.             }
  142.             catch(Exception e)
  143.             {
  144.                 throw;
  145.             }
  146.             finally
  147.             {
  148.                 broker.Disconect();
  149.             }
  150.         }
  151. }
  152.  
  153. namespace VezbaInstrument
  154. {
  155.     public partial class Instrimenti : Form
  156.     {
  157.         BindingList<MuzickiInstrument> instrumenti = new BindingList<MuzickiInstrument>();
  158.         BindingList<MuzickiInstrument> instrumentiSvi = new BindingList<MuzickiInstrument>();
  159.         Kontroler kontroler = new Kontroler();
  160.         Osoba osoba = new Osoba();
  161.         public Instrimenti(Osoba osoba)
  162.         {
  163.             this.osoba = osoba;
  164.             InitializeComponent();
  165.             tbOsoba.Text = osoba.ToString();
  166.             tbOsoba.Enabled = false;
  167.             instrumenti = kontroler.VratiInstrumenteKojeSviraOsoba(osoba.ime);
  168.             instrumentiSvi = kontroler.VratiInstrumente();
  169.             foreach (MuzickiInstrument inst in instrumentiSvi)
  170.             {
  171.                 cbIntrumenti.Items.Add(inst);
  172.             }
  173.             dgv.DataSource = instrumenti;
  174.         }
  175.  
  176.         private void btObrisi_Click(object sender, EventArgs e)
  177.         {
  178.             DialogResult result = MessageBox.Show("Jeste li sigurni da želite da obrišete?",
  179.                                       "Potvrda brisanja",
  180.                                       MessageBoxButtons.YesNo,
  181.                                       MessageBoxIcon.Question);
  182.  
  183.             if (dgv.SelectedRows.Count > 0 && result == DialogResult.Yes)
  184.             {
  185.                 int n = dgv.SelectedRows.Count;
  186.                 for (int i = 0; i < n; i++)
  187.                 {
  188.                     int j = dgv.SelectedRows[0].Index;
  189.                     string idInstrumenta = instrumenti[j].vratiSifru();
  190.                     kontroler.ObrisiInstrument(idInstrumenta, osoba.jmbg);
  191.                     instrumenti.RemoveAt(j);
  192.                 }
  193.             }
  194.         }
  195.  
  196.         private void btDodaj_Click_1(object sender, EventArgs e)
  197.         {
  198.             int index = cbIntrumenti.SelectedIndex + 1;
  199.             string idInstrumenta = index.ToString();
  200.             kontroler.DodajInstrrument(idInstrumenta, osoba.jmbg);
  201.             instrumenti.Add(instrumentiSvi[cbIntrumenti.SelectedIndex]);
  202.         }
  203.  
  204.         private void dgv_CellContentClick(object sender, DataGridViewCellEventArgs e)
  205.         {
  206.  
  207.         }
  208.     }
  209. }
  210.  
  211. namespace VezbaInstrument
  212. {
  213.     public partial class Form1 : Form
  214.     {
  215.         BindingList<MuzickiInstrument> instrumenti = new BindingList<MuzickiInstrument>();
  216.         BindingList<Osoba> osobeInstrument = new BindingList<Osoba>();
  217.         BindingList<Osoba> osobe = new BindingList<Osoba>();
  218.         Kontroler kontroler = new Kontroler();
  219.         public Form1()
  220.         {
  221.             InitializeComponent();
  222.             instrumenti = kontroler.VratiInstrumente();
  223.             foreach (MuzickiInstrument mi in instrumenti)
  224.             {
  225.                 cbInstrumenti.Items.Add(mi.naziv);
  226.             }
  227.             osobe = kontroler.VratiOsobe();
  228.             foreach (Osoba osoba in osobe)
  229.             {
  230.                 cbOsobe.Items.Add(osoba.ime);
  231.             }
  232.         }
  233.  
  234.         private void cbInstrumenti_SelectedIndexChanged(object sender, EventArgs e)
  235.         {
  236.             osobeInstrument = kontroler.VratiOsobeKojeSvirajuInstrument(cbInstrumenti.Text);
  237.             dgv.DataSource = osobeInstrument;
  238.             tbBrojLjudi.Text = osobeInstrument.Count.ToString();
  239.         }
  240.  
  241.         private void cbOsobe_SelectedIndexChanged(object sender, EventArgs e)
  242.         {
  243.             cbxSvira.Checked = false;
  244.             if (kontroler.DaLiSvira(cbOsobe.Text, cbInstrumenti.Text))
  245.             {
  246.                 cbxSvira.Checked = true;
  247.             }
  248.         }
  249.  
  250.         private void btObrisi_Click(object sender, EventArgs e)
  251.         {
  252.             Osoba os = new Osoba();
  253.             foreach (Osoba osoba in osobe)
  254.             {
  255.                 if (osoba.ime == cbOsobe.Text)
  256.                     os = osoba;
  257.             }
  258.             Instrimenti inst = new Instrimenti(os);
  259.             inst.ShowDialog();
  260.         }
  261.  
  262.         private void cbxSvira_CheckedChanged(object sender, EventArgs e)
  263.         {
  264.  
  265.         }
  266.     }
  267. }
  268.  
  269. namespace Forma1.Utills
  270. {
  271.     internal class InzenjerUtil
  272.     {
  273.         public static List<Inzenjer> Iznenjeri { get; set; } = new List<Inzenjer> {
  274.             new Inzenjer
  275.             {
  276.                 ime = "Aleksa",
  277.                 prezime = "Ljujic",
  278.                 korisnickoIme = "aleksa",
  279.                 lozinka = "1234"
  280.             },
  281.             new Inzenjer
  282.             {
  283.                 ime = "Krisitna",
  284.                 prezime = "Ljujic",
  285.                 korisnickoIme = "krisitna",
  286.                 lozinka = "KristinaKrava"
  287.             },
  288.              new Inzenjer
  289.             {
  290.                 ime = "Stipe",
  291.                 prezime = "Miocic",
  292.                 korisnickoIme = "stipee",
  293.                 lozinka = "JonesKurva"
  294.             },
  295.               new Inzenjer
  296.             {
  297.                 ime = "Jon",
  298.                 prezime = "Jones",
  299.                 korisnickoIme = "jonbitch",
  300.                 lozinka = "duckingAspinal"
  301.             }
  302.         };
  303.  
  304.     }
  305. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement