コード例 #1
0
ファイル: PatientDB.cs プロジェクト: on1dds/Patientenbeheer
        public static int Add(Patient patient)
        {
            SqlConnection connection = DB.GetConnection();
            string insertstring =
                "INSERT INTO Patient (Voornaam, Achternaam, Straat, Huisnummer, PostcodeID, Telefoonnummer, Geboortedatum, Opmerking)" +
                "VALUES (@Voornaam, @Achternaam, @Straat, @Huisnummer, @PostcodeID, @Telefoonnummer, @Geboortedatum, @Opmerking)";

            SqlCommand insertcmd = new SqlCommand(insertstring, connection);

            insertcmd.Parameters.AddWithValue("Voornaam",patient.Voornaam);
            insertcmd.Parameters.AddWithValue("Achternaam",patient.Achternaam);
            insertcmd.Parameters.AddWithValue("Straat",patient.Straat);
            insertcmd.Parameters.AddWithValue("Huisnummer",patient.Huisnummer);
            insertcmd.Parameters.AddWithValue("PostcodeID",patient.PostcodeID);
            insertcmd.Parameters.AddWithValue("Telefoonnummer",patient.Telefoonnummer);
            insertcmd.Parameters.AddWithValue("Geboortedatum",patient.Geboortedatum);
            insertcmd.Parameters.AddWithValue("Opmerking", "Test");

            connection.Open();
            insertcmd.ExecuteNonQuery();
            string selectStatement = "SELECT IDENT_CURRENT('Patient') FROM Patient";
            SqlCommand selectCommand = new SqlCommand(selectStatement, connection);
            int patientnr = Convert.ToInt32(selectCommand.ExecuteScalar());
            return patientnr;
        }
コード例 #2
0
ファイル: PatientDB.cs プロジェクト: on1dds/Patientenbeheer
        public static Patient Get(int patientnr)
        {
            Patient patient = new Patient();

            SqlConnection connection = DB.GetConnection();
            SqlCommand selectCommand = new SqlCommand("SELECT * FROM Patient WHERE Patientnr= @patientnr", connection);
            selectCommand.Parameters.AddWithValue("@patientnr", patientnr);

            try
            {
                connection.Open();
                SqlDataReader reader = selectCommand.ExecuteReader();
                if(reader.Read())
                {
                    patient.Patientnr = (int)reader["Patientnr"];
                    patient.Voornaam = reader["Voornaam"].ToString();
                    patient.Achternaam = reader["Achternaam"].ToString();
                    patient.Straat = reader["Straat"].ToString();
                    patient.Huisnummer = reader["Huisnummer"].ToString();
                    patient.PostcodeID = (int)reader["PostcodeID"];
                    patient.Telefoonnummer = reader["Telefoonnummer"].ToString();
                    patient.Geboortedatum = (DateTime)reader["Geboortedatum"];
                }
                reader.Close();
            }
            catch (SqlException ex) { throw ex; }
            finally { connection.Close(); }

            return patient;
        }
コード例 #3
0
        public static Opname MaakOpname(Patient patient)
        {
            Opname opname = new Opname();
            List<Opname> opnames = OpnameDB.GetList(patient);

            Afdeling afdeling = new Afdeling();
            TimeSpan leeftijd = new TimeSpan();
            leeftijd = DateTime.Now - patient.Geboortedatum;

            // genereer opnamedatum
            double dagen = (double)rnd.Next(0, leeftijd.Days);         // moet in zijn leven vallen
            opname.Opnamedatum = patient.Geboortedatum.AddDays(dagen);
            opname.Ontslagdatum = opname.Opnamedatum;
            opname.Opnamedatum = opname.Opnamedatum.AddHours(7 + rnd.NextDouble() * 9);

            // genereer ontslagdatum
            int r = rnd.Next(0, 11);
            if (r < 4)                      // dag verblijf
                dagen = 1;
            else if (r < 7)                 // kort verblijf
                dagen = rnd.Next(1, 5);
            else if (r < 9)                 // tamelijk lang verblijf
                dagen = rnd.Next(1, 14);
            else
                dagen = rnd.Next(1, 50);    // lang verblijf

            if (opname.Opnamedatum.AddDays(dagen) > DateTime.Now)
                opname.Ontslagdatum = DateTime.Now;
            else
            {
                opname.Ontslagdatum = opname.Ontslagdatum.AddDays(dagen);
                opname.Ontslagdatum = opname.Ontslagdatum.AddHours(14 + rnd.NextDouble() * 2);
            }
            opname.Patientnr = patient.Patientnr;
            opname.AfdelingID = rnd.Next(1, afdelingen.Count);

            return opname;
        }
コード例 #4
0
ファイル: PatientDB.cs プロジェクト: on1dds/Patientenbeheer
        public static List<Patient> GetList()
        {
            List<Patient> patienten = new List<Patient>();
            patienten.Clear();

            SqlConnection connection = DB.GetConnection();
            SqlCommand selectCommand = new SqlCommand("SELECT * FROM Patient", connection);

            try
            {
                connection.Open();
                SqlDataReader reader = selectCommand.ExecuteReader();
                while (reader.Read())
                {
                    Patient p = new Patient();
                    p.Patientnr = (int)reader["Patientnr"];
                    p.Voornaam = reader["Voornaam"].ToString();
                    p.Achternaam = reader["Achternaam"].ToString();
                    p.Straat = reader["Straat"].ToString();
                    p.Huisnummer = reader["Huisnummer"].ToString();
                    p.PostcodeID = (int)reader["PostcodeID"];
                    p.Telefoonnummer = reader["Telefoonnummer"].ToString();
                    p.Geboortedatum = (DateTime)reader["Geboortedatum"];
                    patienten.Add(p);
                }
                reader.Close();
            }
            catch (SqlException ex) { throw ex; }
            finally { connection.Close(); }
            return patienten;
        }
コード例 #5
0
ファイル: PatientDB.cs プロジェクト: on1dds/Patientenbeheer
        public static bool Update(Patient oldpatient, Patient newpatient)
        {
            SqlConnection connection = DB.GetConnection();
            string updatestring =
                "UPDATE Patient SET " +
                    "Voornaam = @Voornaam, " +
                    "Achternaam = @Achternaam, " +
                    "Straat = @Straat, " +
                    "Huisnummer = @Huisnummer, " +
                    "PostcodeID = @PostcodeID, " +
                    "Telefoonnummer = @Telefoonnummer, " +
                    "Geboortedatum = @Geboortedatum " +
                "WHERE Patientnr = @OldPatientnr";

            SqlCommand updateCommand = new SqlCommand(updatestring, connection);

            updateCommand.Parameters.AddWithValue("@Voornaam", newpatient.Voornaam);
            updateCommand.Parameters.AddWithValue("@Achternaam", newpatient.Achternaam);
            updateCommand.Parameters.AddWithValue("@NStraat", newpatient.Straat);
            updateCommand.Parameters.AddWithValue("@NHuisnummer", newpatient.Huisnummer);
            updateCommand.Parameters.AddWithValue("@NPostcodeID", newpatient.PostcodeID);
            updateCommand.Parameters.AddWithValue("@Telefoonnummer", newpatient.Telefoonnummer);
            updateCommand.Parameters.AddWithValue("@Geboortedatum", newpatient.Geboortedatum);

            updateCommand.Parameters.AddWithValue("@OldPatientnr", oldpatient.Patientnr);

            try
            {

                int count = updateCommand.ExecuteNonQuery();
                if (count > 0)
                    return true;
                else
                    return false;
            }
            catch (SqlException ex)
            {
                throw ex;
            }
        }
コード例 #6
0
        public static Patient MaakPatient()
        {
            Patient p = new Patient();

            //genereer naam en voornaam
            p.Achternaam = achternamen[rnd.Next(0, achternamen.Count - 1)];
            p.Voornaam = voornamen[rnd.Next(0, voornamen.Count - 1)].Voornaam;
            // a.Geslacht = Voornaam[r].Geslacht;

            // adres
            int r = rnd.Next(0, Straatnaam.Count - 1);
            p.Straat = Straatnaam[r].Naam;
            p.Huisnummer = rnd.Next(1, 150).ToString();

            string pc = Straatnaam[r].Postcode;
            foreach (Postcode gem in gemeentes)
                if (gem.Code == pc)
                    p.PostcodeID = gem.PostcodeID;

            // telefoonnummer
            if (rnd.Next(0, 100) != 1)
            {
                p.Telefoonnummer = "0";
                if (rnd.Next(0, 3) == 0)
                {
                    for (int j = 1; j < 9; j++)
                        p.Telefoonnummer += rnd.Next(0, 9).ToString();
                }
                else
                {
                    p.Telefoonnummer += "49";
                    for (int j = 1; j < 8; j++)
                        p.Telefoonnummer += rnd.Next(0, 9).ToString();
                }
            }

            // bereken geboortedatum (meer oude dan jonge mensen)
            double l = rnd.NextDouble();
            double m = rnd.NextDouble() * 20;
            if (l < 0.10) { }
            else if (l < 0.20) { m += 20; }
            else if (l < 0.35) { m += 40; }
            else if (l < 0.60) { m += 60; }
            else if (l < 0.99) { m += 80; }
            else if (l <= 1) { m = 100 + m / 3; }

            p.Geboortedatum = DateTime.Now.Subtract(TimeSpan.FromDays(m * 365));

            return p;
        }
コード例 #7
0
 private void btnNieuwePatient_Click(object sender, EventArgs e)
 {
     frmNieuwePatient np = new frmNieuwePatient();
     this.Hide();
     np.ShowDialog();
     if (np.DialogResult == DialogResult.OK)
     {
         int i = PatientDB.Add(np.patient);
         all_patients = PatientDB.GetList();
         foreach (Patient p in all_patients)
             if (i == p.Patientnr)
                 selectedpatient = p;
         RefreshPatientenLijst();
         txtPatientDetail.Text = selectedpatient.ToString();
     }
     this.Show();
 }
コード例 #8
0
 // events
 private void lvLijstPatienten_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (lvLijstPatienten.SelectedItems.Count > 0)
     {
         int i = lvLijstPatienten.SelectedItems[0].Index;
         selectedpatient = filtered_patients[i];
         selectedopname = null;
         patient_opnames.Clear();
         RefreshPatientDetails();
         btnGenereerOpname.Enabled = true;
     }
     if (patient_opnames != null && patient_opnames.Count > 0)
         selectedopname = patient_opnames.Last();
 }
コード例 #9
0
 private void btnVerwijderPatient_Click(object sender, EventArgs e)
 {
     if (lvLijstPatienten.SelectedItems.Count > 0)
     {
         int i = lvLijstPatienten.SelectedItems[0].Index;
         selectedpatient = filtered_patients[i];
         PatientDB.Delete(selectedpatient.Patientnr);
         selectedpatient = null;
         RefreshPatientenLijst();
     }
 }
コード例 #10
0
ファイル: OpnameDB.cs プロジェクト: on1dds/Patientenbeheer
        public static List<Opname> GetList(Patient patient)
        {
            List<Opname> Opnames = new List<Opname>();
            Opnames = OpnameDB.GetList();

            // toon enkel opnames van de geselecteerde patient
            Opnames =
            (
                from opname in Opnames
                where opname.Patientnr == patient.Patientnr
                orderby opname.Opnamedatum descending
                select opname
            ).ToList();

            return Opnames;
        }