Пример #1
0
        /// <summary>
        /// Retrieves the medicines the patient has been prescribed from the database and stores them
        /// in the medicineHistory arraylist
        /// </summary>
        public void retrieveMedicineHistory()
        {
            DataTable       table   = new DataTable();
            string          connStr = "server=csdatabase.eku.edu;user=stu_csc340;database=csc340_db;port=3306;password=Colonels18;SSLMode=None";
            MySqlConnection conn    = new MySqlConnection(connStr);

            try
            {
                Console.WriteLine("Connecting to MySQL...");
                conn.Open();
                string sql = "SELECT m.name, DATE_FORMAT(pr.dateFilled, \"%m-%d-%Y\") AS dateFilled, m.quantity, m.dosage, m.route, " +
                             "m.instructions, m.prescriptionID " +
                             "FROM DixonPatient pa JOIN DixonPrescription pr ON pr.patientID = pa.patientID " +
                             "JOIN DixonMedicine m ON m.prescriptionID = pr.id WHERE pa.patientID = @id;";
                MySqlCommand cmd = new MySqlCommand(sql, conn);
                cmd.Parameters.AddWithValue("@id", Id);
                MySqlDataAdapter myAdapter = new MySqlDataAdapter(cmd);
                myAdapter.Fill(table);
                Console.WriteLine("Table is ready.");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            conn.Close();

            MedicineHistory.Clear();
            foreach (DataRow row in table.Rows)
            {
                Medicine medicine = new Medicine();
                medicine.Name           = row["name"].ToString();
                medicine.Date           = row["dateFilled"].ToString();
                medicine.Quantity       = (int)row["quantity"];
                medicine.Dosage         = row["dosage"].ToString();
                medicine.Route          = row["route"].ToString();
                medicine.Instructions   = row["instructions"].ToString();
                medicine.PrescriptionID = (int)row["prescriptionID"];
                medicineHistory.Add(medicine);
            }
        }
        /// <summary>
        /// Adds list of medicines to the Medicines property of prescription.
        /// </summary>
        public void retrieveMedicines()
        {
            DataTable       table   = new DataTable();
            string          connStr = "server=csdatabase.eku.edu;user=stu_csc340;database=csc340_db;port=3306;password=Colonels18;SSLMode=None";
            MySqlConnection conn    = new MySqlConnection(connStr);

            try
            {
                Console.WriteLine("Connecting to MySQL...");
                conn.Open();
                string sql = "SELECT m.name, m.quantity, m.dosage, m.route, m.instructions " +
                             "FROM DixonPrescription pr JOIN DixonMedicine m ON m.prescriptionID = pr.id " +
                             "WHERE pr.id = @id;";
                MySqlCommand cmd = new MySqlCommand(sql, conn);
                cmd.Parameters.AddWithValue("@id", Id);
                MySqlDataAdapter myAdapter = new MySqlDataAdapter(cmd);
                myAdapter.Fill(table);
                Console.WriteLine("Table is ready.");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            conn.Close();

            ArrayList medicines = new ArrayList();

            foreach (DataRow row in table.Rows)
            {
                Medicine medicine = new Medicine();
                medicine.Name         = row["name"].ToString();
                medicine.Quantity     = (int)row["quantity"];
                medicine.Dosage       = row["dosage"].ToString();
                medicine.Route        = row["route"].ToString();
                medicine.Instructions = row["instructions"].ToString();
                medicines.Add(medicine);
            }
            Medicines = medicines;
        }
        //create the new prescription
        private void addPrescription_Click(object sender, EventArgs e)
        {
            Medicine  medicine1 = new Medicine();
            Medicine  medicine2 = new Medicine();
            Medicine  medicine3 = new Medicine();
            Medicine  medicine4 = new Medicine();
            ArrayList medicines = new ArrayList();

            switch (checkBoxAmnt)
            {
            case 1:
                if (string.IsNullOrEmpty(medName1.Text))
                {
                    new AlertDialog("You're missing some information. Please be sure to fill out all forms throughout.").ShowDialog();
                }
                else
                {
                    medicine1.Name         = medName1.Text;
                    medicine1.Route        = routeText1.Text;
                    medicine1.Quantity     = (int)amntUpDown1.Value;
                    medicine1.Instructions = instructionText1.Text;
                    medicine1.Dosage       = dosageTextbox1.Text;
                    medicines.Add(medicine1);

                    Medicine.createMedicine(medicines, Prescription.createPrescription((int)Doctor.PharmaciesId[pharmacyListBox.SelectedIndex], (int)numericUpDownRefills.Value, selectedPatient.Id));
                    new AlertDialog("Your prescription has been made.").ShowDialog();
                }
                break;

            case 2:
                if (string.IsNullOrEmpty(medName1.Text) || string.IsNullOrEmpty(medName2.Text))
                {
                    new AlertDialog("You're missing some information. Please be sure to fill out all forms throughout.").ShowDialog();
                }
                else
                {
                    medicine1.Name         = medName1.Text;
                    medicine1.Route        = routeText1.Text;
                    medicine1.Quantity     = (int)amntUpDown1.Value;
                    medicine1.Instructions = instructionText1.Text;
                    medicine1.Dosage       = dosageTextbox1.Text;
                    medicine2.Name         = medName2.Text;
                    medicine2.Route        = routeText2.Text;
                    medicine2.Quantity     = (int)amntUpDown2.Value;
                    medicine2.Instructions = instructionText2.Text;
                    medicine2.Dosage       = dosageTextbox2.Text;
                    medicines.Add(medicine1);
                    medicines.Add(medicine2);
                    Medicine.createMedicine(medicines, Prescription.createPrescription((int)Doctor.PharmaciesId[pharmacyListBox.SelectedIndex], (int)numericUpDownRefills.Value, selectedPatient.Id));
                    new AlertDialog("Your prescription has been made.").ShowDialog();
                }
                break;

            case 3:
                if (string.IsNullOrEmpty(medName1.Text) || string.IsNullOrEmpty(medName2.Text) || string.IsNullOrEmpty(medName3.Text))
                {
                    new AlertDialog("You're missing some information. Please be sure to fill out all forms throughout.").ShowDialog();
                }
                else
                {
                    medicine1.Name         = medName1.Text;
                    medicine1.Route        = routeText1.Text;
                    medicine1.Quantity     = (int)amntUpDown1.Value;
                    medicine1.Instructions = instructionText1.Text;
                    medicine1.Dosage       = dosageTextbox1.Text;
                    medicine2.Name         = medName2.Text;
                    medicine2.Route        = routeText2.Text;
                    medicine2.Quantity     = (int)amntUpDown2.Value;
                    medicine2.Instructions = instructionText2.Text;
                    medicine2.Dosage       = dosageTextbox2.Text;
                    medicine3.Name         = medName3.Text;
                    medicine3.Route        = routeText3.Text;
                    medicine3.Quantity     = (int)amntUpDown3.Value;
                    medicine3.Instructions = instructionText3.Text;
                    medicine3.Dosage       = dosageTextbox3.Text;
                    medicines.Add(medicine1);
                    medicines.Add(medicine2);
                    medicines.Add(medicine3);
                    Medicine.createMedicine(medicines, Prescription.createPrescription((int)Doctor.PharmaciesId[pharmacyListBox.SelectedIndex], (int)numericUpDownRefills.Value, selectedPatient.Id));
                    new AlertDialog("Your prescription has been made.").ShowDialog();
                }
                break;

            case 4:
                if (string.IsNullOrEmpty(medName1.Text) || string.IsNullOrEmpty(medName2.Text) || string.IsNullOrEmpty(medName3.Text) || string.IsNullOrEmpty(medName4.Text))
                {
                    new AlertDialog("You're missing some information. Please be sure to fill out all forms throughout.").ShowDialog();
                }
                else
                {
                    medicine1.Name         = medName1.Text;
                    medicine1.Route        = routeText1.Text;
                    medicine1.Quantity     = (int)amntUpDown1.Value;
                    medicine1.Instructions = instructionText1.Text;
                    medicine1.Dosage       = dosageTextbox1.Text;
                    medicine2.Name         = medName2.Text;
                    medicine2.Route        = routeText2.Text;
                    medicine2.Quantity     = (int)amntUpDown2.Value;
                    medicine2.Instructions = instructionText2.Text;
                    medicine2.Dosage       = dosageTextbox2.Text;
                    medicine3.Name         = medName3.Text;
                    medicine3.Route        = routeText3.Text;
                    medicine3.Quantity     = (int)amntUpDown3.Value;
                    medicine3.Instructions = instructionText3.Text;
                    medicine3.Dosage       = dosageTextbox3.Text;
                    medicine4.Name         = medName4.Text;
                    medicine4.Route        = routeText4.Text;
                    medicine4.Quantity     = (int)amntUpDown4.Value;
                    medicine4.Instructions = instructionText4.Text;
                    medicine4.Dosage       = dosageTextBox4.Text;
                    medicines.Add(medicine1);
                    medicines.Add(medicine2);
                    medicines.Add(medicine3);
                    medicines.Add(medicine4);
                    Medicine.createMedicine(medicines, Prescription.createPrescription((int)Doctor.PharmaciesId[pharmacyListBox.SelectedIndex], (int)numericUpDownRefills.Value, selectedPatient.Id));
                    new AlertDialog("Your prescription has been made.").ShowDialog();
                }
                break;

            default:
                new AlertDialog("You must add at least one medicine to create a prescription.").ShowDialog();
                break;
            }
        }