public Wizyta(DateTime data, int godzOd, int minOd, int godzDo, int minDo, string _opis, double _cena, Pacjent p) { pacj = p; dataWizytyOd = new DateTime(data.Year, data.Month, data.Day, godzOd, minOd, 0); dataWizytyDo = new DateTime(data.Year, data.Month, data.Day, godzDo, minDo, 0); if (DateTime.Compare(dataWizytyDo, dataWizytyOd) <= 0) { throw new Exception("konstruktor wizyta, godzina od wieksza lub rowna godzinie do"); } opis = _opis; cena = _cena; p.dodajDoListyWizyt(new KluczWizyty(this)); }
internal FormZapis(Form1 form1, Wizyta w, bool editMode) { this.editMode = editMode; InitializeComponent(); this.mainForm = form1; this.mainForm.Enabled = false; form1.TopMost = false; this.Show(); this.TopMost = true; //konstruktor przygotowujący formularz do oglądania wizyty textBoxImie.Enabled = false; textBoxNazwisko.Enabled = false; buttonZapisz.Enabled = false; comboBoxId.Enabled = false; textBoxImie.Visible = false; textBoxNazwisko.Visible = false; comboBoxId.Visible = false; buttonZapisz.Visible = false; labelImie.Visible = false; labelNazwisko.Visible = false; label4.Visible = false; form1.TopMost = false; this.TopMost = true; Pacjent pacpac = w.Pacj; kopiaZebowWybranego = pacpac.diagramZebowy.DeepCopy(); string[] pola = Pacjent.pobierzNazwydanych(); string[] dane = pacpac.pobierzDane(); wybrany = pacpac; dataGridView1.Rows.Clear(); for (int i = 0; i < pola.Length; i++) { dataGridView1.Rows.Add(pola[i], dane[i]); } textBoxOpis.Text = w.opis; textBoxCena.Text = Convert.ToString(w.cena); this.Text = "wizyta " + String.Format("{0:yyyy/MM/dd HH:mm}", w.DataWizytyOd) + "-" + String.Format("{0:HH:mm}", w.DataWizytyDo); dataGridView1.AllowUserToDeleteRows = false; dataGridView1.AllowUserToOrderColumns = false; dataGridView1.AllowUserToAddRows = false; }
private void buttonKartUsun_Click(object sender, EventArgs e) { if (dataGridViewKartLista.SelectedCells.Count == 0) { return; } int id_row_idx = dataGridViewKartLista.CurrentCell.RowIndex; int id = Convert.ToInt32(dataGridViewKartLista.Rows[id_row_idx].Cells[0].Value.ToString()); bool znalezionoPacjenta = false; Pacjent pacpac = null; foreach (Pacjent p in pacjenci) { if (p.Id == id) { pacpac = p; znalezionoPacjenta = true; break; } } if (!znalezionoPacjenta) { foreach (Pacjent p in pacjenciUsunieci) { if (p.Id == id) { pacpac = p; znalezionoPacjenta = true; break; } } } if (!znalezionoPacjenta) { MessageBox.Show("Brak pacjenta o takim id w bazie", "Niepoprawne dane", MessageBoxButtons.OK); return; } this.UsunPacjenta(pacpac); odswiez(); }
private void buttonKartPrzywroc_Click(object sender, EventArgs e) { if (dataGridViewKartLista.SelectedCells.Count == 0) { return; } int id_row_idx = dataGridViewKartLista.CurrentCell.RowIndex; int id = Convert.ToInt32(dataGridViewKartLista.Rows[id_row_idx].Cells[0].Value.ToString()); Pacjent pacjPrzywracany = null; foreach (Pacjent p in pacjenciUsunieci) { if (p.Id == id) { pacjPrzywracany = p; pacjenciUsunieci.Remove(p); break; } } if (pacjPrzywracany == null) { MessageBox.Show("Nie znaleziono usuniętego pacjenta o podanym id", "Niewłaściwe id", MessageBoxButtons.OK); return; } pacjenci.Add(pacjPrzywracany); odswiezKartoteke(); pacjPrzywracany.setTouched(); if (Directory.Exists(KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacjPrzywracany.Id))) { if (!Directory.Exists(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacjPrzywracany.Id))) { Directory.Move(KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacjPrzywracany.Id), KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacjPrzywracany.Id)); } } if (Directory.Exists(KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacjPrzywracany.Id))) { Directory.Delete(KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacjPrzywracany.Id), true); } }
private void buttonKartPokaz_Click(object sender, EventArgs e) { if (dataGridViewKartLista.SelectedCells.Count == 0) { return; } int id_row_idx = dataGridViewKartLista.CurrentCell.RowIndex; int id = Convert.ToInt32(dataGridViewKartLista.Rows[id_row_idx].Cells[0].Value.ToString()); bool znalezionoPacjenta = false; Pacjent pacpac = null; foreach (Pacjent p in pacjenci) { if (p.Id == id) { pacpac = p; znalezionoPacjenta = true; break; } } if (!znalezionoPacjenta) { foreach (Pacjent p in pacjenciUsunieci) { if (p.Id == id) { pacpac = p; znalezionoPacjenta = true; break; } } } if (!znalezionoPacjenta) { MessageBox.Show("Nie ma w bazie pacjenta o podanym id", "Błąd wyszukiwania", MessageBoxButtons.OK); return; } FormPacjentEditShow fPES = new FormPacjentEditShow(pacpac, this, 1); }
internal FormDiagram(Pacjent pacjentDoPokazania, Form1 mf, FormPacjentEditShow fPES, bool editMode) { InitializeComponent(); ze = pacjentDoPokazania.diagramZebowy; przekazanyPacjent = pacjentDoPokazania; canvas.BackColor = Color.DeepSkyBlue; if (!editMode) { ZebyPrzycisk.Visible = false; } mainForm = mf; formPacj = null; formZapisUsuwanie = null; formEditShow = fPES; fPES.TopMost = false; fPES.Enabled = false; this.TopMost = true; this.Show(); this.BringToFront(); }
internal FormDiagram(Pacjent nowyPacjent, Form1 mf, FormPacjent fp, bool editMode) { InitializeComponent(); przekazanyPacjent = nowyPacjent; ze = nowyPacjent.diagramZebowy; canvas.BackColor = Color.DeepSkyBlue; if (!editMode) { ZebyPrzycisk.Visible = false; } mainForm = mf; formPacj = fp; formEditShow = null; formZapisUsuwanie = null; formPacj.TopMost = false; formPacj.Enabled = false; this.TopMost = true; this.Show(); this.BringToFront(); }
internal static Wizyta CzytajZPliku(BinaryReader br, List <Pacjent> pacjenci, List <Pacjent> pacjenciUsunieci) { Wizyta wczytywanaWizyta = new Wizyta(); int idPacjenta = br.ReadInt32(); Pacjent pacpac = null; foreach (Pacjent p in pacjenci) {//odnajdź pacjenta o danym id w pacjentach lub w pacjentach usuniętych if (p.Id == idPacjenta) { pacpac = p; break; } } if (pacpac == null) { foreach (Pacjent p in pacjenciUsunieci) { if (p.Id == idPacjenta) { pacpac = p; break; } } } wczytywanaWizyta.pacj = pacpac; //wczytaj resztę danych int[] daneCzasowe = Wizyta.WczytajDaneCzasowe(br); wczytywanaWizyta.dataWizytyOd = new DateTime(daneCzasowe[0], daneCzasowe[1], daneCzasowe[2], daneCzasowe[3], daneCzasowe[4], 0); wczytywanaWizyta.dataWizytyDo = new DateTime(daneCzasowe[0], daneCzasowe[1], daneCzasowe[2], daneCzasowe[5], daneCzasowe[6], 0); wczytywanaWizyta.opis = Cipher.ReadString(br); wczytywanaWizyta.cena = br.ReadDouble(); return(wczytywanaWizyta); }
private void wyszukajPoImieniuINazwisku(string imie, string nazwisko) { dataGridView1.Rows.Clear(); WyszukaniPacjenci.Clear(); comboBoxId.Items.Clear(); if (imie == "" && nazwisko == "") { return; } //nowe wyszukiwanie List <Pacjent> wyszukaniPoNazwisku = new List <Pacjent>(); List <Pacjent> wyszukaniPoImieniu = new List <Pacjent>(); if (nazwisko != "") { foreach (Pacjent p in pacjenci) { if (p.Nazwisko.Length < nazwisko.Length) { continue; } if (p.Nazwisko.ToLower().Substring(0, nazwisko.Length) == nazwisko.ToLower()) { wyszukaniPoNazwisku.Add(p); } } } if (imie != "") { foreach (Pacjent p in pacjenci) { if (p.Imie.Length < imie.Length) { continue; } if (p.Imie.ToLower().Substring(0, imie.Length) == imie.ToLower()) { wyszukaniPoImieniu.Add(p); } } } if (nazwisko != "" && imie != "") { foreach (Pacjent p in pacjenci) { if (wyszukaniPoImieniu.Contains(p) && wyszukaniPoNazwisku.Contains(p)) { WyszukaniPacjenci.Add(p); } } } else if (nazwisko == "" && imie != "") { foreach (Pacjent p in pacjenci) { if (wyszukaniPoImieniu.Contains(p)) { WyszukaniPacjenci.Add(p); } } } else if (imie == "" && nazwisko != "") { foreach (Pacjent p in pacjenci) { if (wyszukaniPoNazwisku.Contains(p)) { WyszukaniPacjenci.Add(p); } } } //t foreach (Pacjent p in WyszukaniPacjenci) { comboBoxId.Items.Add(Convert.ToString(p.Id)); } if (WyszukaniPacjenci.Count > 0) { wybrany = WyszukaniPacjenci.First(); comboBoxId.SelectedIndex = 0; } }
private void UsunPacjenta(Pacjent pacpac) { List <KluczWizyty> wizytyPacjentaUsuwanego = pacpac.getKluczeWizyt(); if (wizytyPacjentaUsuwanego.Count == 0) { //pacjent nie ma żadnych wizyt - usuń permanentie if (Directory.Exists(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacpac.Id))) { Directory.Delete(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacpac.Id), true); } else if (Directory.Exists(KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacpac.Id))) { Directory.Delete(KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacpac.Id), true); } foreach (Pacjent p in pacjenci) { if (pacpac.Id == p.Id) { pacjenci.Remove(p); return; } } foreach (Pacjent p in pacjenciUsunieci) { if (pacpac.Id == p.Id) { pacjenciUsunieci.Remove(p); return; } } } else { //pacjent ma jakieś wizyty - przenieś go pacjentów usuniętych bool pacZnaleziony = false; foreach (Pacjent p in pacjenci) { if (pacpac.Id == p.Id) { pacjenci.Remove(p); pacZnaleziony = true; break; } } if (!pacZnaleziony) { MessageBox.Show("Brak pacjenta o podannym id w bazie", "Niewłaściwe id", MessageBoxButtons.OK); return; } pacjenciUsunieci.Add(pacpac); pacpac.setTouched(); //przenieś pliki usuwanego pacjenta do pacjentów usuniętych if (Directory.Exists(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacpac.Id))) { Directory.Move(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacpac.Id), KatalogGlowny + @"\pacjenciUsunieci\" + Convert.ToString(pacpac.Id)); } if (Directory.Exists(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacpac.Id))) { Directory.Delete(KatalogGlowny + @"\pacjenci\" + Convert.ToString(pacpac.Id), true); } } }
public Form1() { InitializeComponent(); groupBoxPacjenci.Controls.Add(radioButtonPacj); groupBoxPacjenci.Controls.Add(radioButtonPacjUs); //etap 1 - dodanie do list kartoteki i terminarza ich obiektów panelTerminarza = new List <Control>(); panelKartoteki = new List <Control>(); panelTerminarza.Add(dataGridViewGrafik); panelTerminarza.Add(dateTimePicker1); panelTerminarza.Add(buttonDzienWcz); panelTerminarza.Add(buttonDzienPoz); panelTerminarza.Add(dateTimePicker2); panelTerminarza.Add(comboBoxGodzOd); panelTerminarza.Add(comboBoxMinOd); panelTerminarza.Add(comboBoxGodzDo); panelTerminarza.Add(comboBoxMinDo); panelTerminarza.Add(buttonZapisz); panelTerminarza.Add(buttonPokaz); panelTerminarza.Add(buttonUsun); panelTerminarza.Add(labelGodzRoz); panelTerminarza.Add(labelGodzZak); staraLokPanelKonfOdswiez = panelKonfigOdswiez.Location; panelKartoteki.Add(dataGridViewKartLista); panelKartoteki.Add(buttonKartEdytuj); panelKartoteki.Add(buttonKartNowy); panelKartoteki.Add(buttonKartPokaz); panelKartoteki.Add(buttonKartUsun); panelKartoteki.Add(groupBoxPacjenci); panelKartoteki.Add(radioButtonPacj); panelKartoteki.Add(radioButtonPacjUs); panelKartoteki.Add(buttonKartPrzywroc); panelKartoteki.Add(buttonNastepny); panelKartoteki.Add(textBoxWyszukaj); panelKartoteki.Add(labelWyszukaj); panelKartoteki.Add(flowLayoutPanel1); foreach (Control elementKartoteki in panelKartoteki) { elementKartoteki.Visible = false; } kolumna_wyszukiwania_DGVKartoteka = 2; //etap 2 - inicjalizacja list pacjentów pacjenci = new List <Pacjent>(); pacjenciUsunieci = new List <Pacjent>(); //etap 3 - jeśli pierwszy raz uruchamiamy program, to tworzymy strukturę plików if (!Directory.Exists(KatalogGlowny)) { zbudujStrukturePlikow(KatalogGlowny); } //etap 4 - wczytanie danych do deszyfracji plików byte[] aesKey = null; byte[] aesIV = null; BinaryReader aesBR = new BinaryReader(File.Open(KatalogGlowny + @"\plikiKonfiguracyjne\bit", FileMode.Open)); int keyLength = aesBR.ReadInt32(); aesKey = aesBR.ReadBytes(keyLength); int vectLength = aesBR.ReadInt32(); aesIV = aesBR.ReadBytes(vectLength); Cipher.Key = aesKey; Cipher.Iv = aesIV; aesBR.Close(); //etap 5 - wczytanie hasła - jeśli hasło to abcdef, to znaczy, że ono hasło jeszcze nie zostało ustawione BinaryReader brHaslo = new BinaryReader(File.Open(KatalogGlowny + @"\plikiKonfiguracyjne\i", FileMode.Open)); string hasloZPliku = Cipher.ReadString(brHaslo); brHaslo.Close(); string hasloZPlikuOdszyfrowane = hasloZPliku; haslo = hasloZPlikuOdszyfrowane; if (hasloZPlikuOdszyfrowane == "abcdef") { pierwszeUruchomienie = true; } //etap 6 - wczytanie pacjentów Pacjent.wczytajLicznik(KatalogGlowny + @"\plikiKonfiguracyjne\licznikPacjenta"); string[] listaKatalogowPacjentow = Directory.GetDirectories(KatalogGlowny + @"\pacjenci"); foreach (string katPacjenta in listaKatalogowPacjentow) { Pacjent pacpac = new Pacjent(katPacjenta); pacjenci.Add(pacpac); } string[] listaKatalogowPacjentowUsunietych = Directory.GetDirectories(KatalogGlowny + @"\pacjenciUsunieci"); foreach (string katPacjenta in listaKatalogowPacjentowUsunietych) { Pacjent pacpac = new Pacjent(katPacjenta); pacjenciUsunieci.Add(pacpac); } //etap 7 - wczytanie danych do utworzenia bufora zmian i utworzenie obkietu tej klasy List <int> daneKonfiguracyjneBufora = BuforZmian.WczytajGodzinyPracyIIlociDni(KatalogGlowny + @"\plikiKonfiguracyjne\buforZmian"); DateTime godzOtw = new DateTime(2000, 1, 1, daneKonfiguracyjneBufora.ElementAt(0), daneKonfiguracyjneBufora.ElementAt(1), 0); DateTime godzZam = new DateTime(2000, 1, 1, daneKonfiguracyjneBufora.ElementAt(2), daneKonfiguracyjneBufora.ElementAt(3), 0); bufor = new BuforZmian(pacjenci, pacjenciUsunieci, daneKonfiguracyjneBufora.ElementAt(4), daneKonfiguracyjneBufora.ElementAt(5), godzOtw, godzZam, 15); DateTime teraz = DateTime.Now; DateTime Dzis = teraz.Date; //etap 8 - wyłączenie niektórych funkcjonalności obiektów DataGridView tworzących terminarz i okno kartoteki pacjentów dataGridViewKartLista.AllowUserToAddRows = false; dataGridViewKartLista.AllowUserToDeleteRows = false; dataGridViewKartLista.AllowUserToOrderColumns = false; dataGridViewGrafik.MultiSelect = false; dataGridViewKartLista.MultiSelect = false; dataGridViewKartLista.AllowUserToResizeRows = false; dataGridViewGrafik.AllowUserToAddRows = false; dataGridViewGrafik.AllowUserToDeleteRows = false; dataGridViewGrafik.AllowUserToOrderColumns = false; dataGridViewGrafik.AllowUserToResizeRows = false; dataGridViewGrafik.AllowDrop = false; szerPolDGVGraf = dataGridViewGrafik.Columns[1].Width; //etap 9 - utworzenie obiektu zapełniaczDGV grafik = new ZapelniaczDGV(Dzis, bufor, dataGridViewGrafik); //etap 10 - przygotowanie pozostałych obiektów interfejsu do pracy for (int i = 0; i < 24; i++) { string godzinaNapis = Convert.ToString(i); if (godzinaNapis.Length == 1) { godzinaNapis = "0" + godzinaNapis; } comboBoxGodzOd.Items.Add(godzinaNapis); comboBoxGodzDo.Items.Add(godzinaNapis); } comboBoxMinOd.Items.Add("00"); comboBoxMinOd.Items.Add("15"); comboBoxMinOd.Items.Add("30"); comboBoxMinOd.Items.Add("45"); comboBoxMinDo.Items.Add("00"); comboBoxMinDo.Items.Add("15"); comboBoxMinDo.Items.Add("30"); comboBoxMinDo.Items.Add("45"); comboBoxGodzOd.SelectedIndex = 0; comboBoxMinOd.SelectedIndex = 0; comboBoxGodzDo.SelectedIndex = 0; comboBoxMinDo.SelectedIndex = 0; comboBoxGodzOd.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; comboBoxMinOd.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; comboBoxGodzDo.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; comboBoxMinDo.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; radioButtonPacj.Checked = true; }
internal void pobierzPacjenta(Pacjent pacpac) { //funkcja wywoływana w formularzu FormPacjent - przy tworzeniu nowego pacjenta pacjenci.Add(pacpac); odswiezKartoteke(); }