CNSA-212-FP/Louis'-Pharmacy_CNSA212-FP/frmInfo.cs

479 lines
15 KiB
C#

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;
namespace Louis__Pharmacy_CNSA212_FP
{
public partial class frmInfo : Form
{
private ErrorProvider ep1 = new ErrorProvider();
public DataSet ds = new DataSet();
public frmInfo()
{
InitializeComponent();
dgvPatient.DoubleClick += cmuPatientEdit_Click;
dgvPhysician.DoubleClick += cmuPhysicianEdit_Click;
tbcInfo.SelectedIndexChanged += frmInfoTabChange;
}
private void frmInfo_Load(object sender, EventArgs e)
{
KeyPreview = true;
KeyDown += frmInfo_KeyDown;
cmuPatientEdit.Enabled = false;
cmuPatientDelete.Enabled = false;
txtPatientFirst.Focus();
patientIsActive = true;
}
private bool physicianIsActive = false;
private bool patientIsActive = false;
private void frmInfoTabChange(object sender, EventArgs e)
{
Console.WriteLine(tbcInfo.SelectedIndex);
patientIsActive = false;
physicianIsActive = false;
if (tbcInfo.SelectedIndex == 0)
{
patientIsActive = true;
}else if (tbcInfo.SelectedIndex == 2)
{
physicianIsActive = true;
}
}
private void frmInfo_KeyDown(object sender, KeyEventArgs e)
{
// if data grid view is not focused, run the search function
if (e.KeyCode == Keys.Escape)
{this.Close();
}
if (e.KeyCode == Keys.Enter && physicianIsActive && !dgvPhysician.Focused){
btnPhysicianSearch_Click(sender, e);
}
// if data grid view is focused, run the edit function
else if (e.KeyCode == Keys.Enter && physicianIsActive && dgvPhysician.Focused)
{
cmuPhysicianEdit_Click(sender, e);
}
// if data grid view is not focused, run the search function
if (e.KeyCode == Keys.Enter && patientIsActive && !dgvPatient.Focused)
{
btnPatientSearch_Click(sender,e);
}
// if data grid view is focused, run the edit function
else if (e.KeyCode == Keys.Enter && patientIsActive && dgvPatient.Focused)
{
cmuPatientEdit_Click(sender,e);
}
}
private void addUpdatePatientAndPhysicianToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void pATIENTBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
}
public void btnPatientSearch_Click(object sender, EventArgs e)
{
string fname = "";
string lname = "";
string id = "";
if (txtPatientFirst.Text.Length + txtPatientLast.Text.Length + txtPatientID.Text.Length > 0)
{
try
{
fname = txtPatientFirst.Text;
try
{
lname = txtPatientLast.Text;
try
{
id = txtPatientID.Text;
try
{
ds = PharmacyDataTier.PatientInfoSearch(id,lname,fname);
if (ds.Tables[0].Rows.Count > 0) // There is a record.
{
dgvPatient.Visible = true;
// Get data source.
dgvPatient.DataSource = ds.Tables[0];
dgvPatient.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGreen;
// Set the row and column header styles.
dgvPatient.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
dgvPatient.ColumnHeadersDefaultCellStyle.BackColor = Color.Green;
}
else
{
dgvPatient.Visible = false; // Hide the DataGridView if no results are found.
MessageBox.Show("No records found.");
}
}
catch (Exception exception)
{
ep1.SetError(btnPatientSearch, "Error Searching");
}
}
catch (Exception exception)
{
ep1.SetError(txtPatientID, "Invalid Value");
}
}
catch (Exception exception)
{
ep1.SetError(txtPatientLast, "Invalid Value");
}
}
catch (Exception exception)
{
ep1.SetError(txtPatientFirst, "Invalid Value");
}
}
cmuPatientEdit.Enabled = dgvPatient.Rows.Count > 0;
cmuPatientDelete.Enabled = dgvPatient.Rows.Count > 0;
dgvPatient.Focus();
}
private void btnPrescriptionSearch_Click(object sender, EventArgs e)
{
string rxID = "";
string patientID = "";
if (txtPrescriptionPatID.Text.Length+txtRxNumber.Text.Length > 0)
{
try
{
patientID = txtPrescriptionPatID.Text;
try
{
rxID = txtRxNumber.Text;
try
{
ds = PharmacyDataTier.PrescriptionInfoSearch(rxID, patientID);
if (ds.Tables[0].Rows.Count > 0) // There is a record.
{
dgvPrescription.Visible = true;
// Get data source.
dgvPrescription.DataSource = ds.Tables[0];
dgvPrescription.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGreen;
// Set the row and column header styles.
dgvPrescription.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
dgvPrescription.ColumnHeadersDefaultCellStyle.BackColor = Color.Green;
}
else
{
dgvPatient.Visible = false; // Hide the DataGridView if no results are found.
MessageBox.Show("No records found.");
}
}
catch (Exception exception)
{
ep1.SetError(btnPrescriptionSearch, "Error Searching");
}
}
catch (Exception exception)
{
ep1.SetError(txtRxNumber, "Invalid Value");
}
}
catch (Exception exception)
{
ep1.SetError(txtPrescriptionPatID, "Invalid Value");
}
}
}
public void btnPhysicianSearch_Click(object sender, EventArgs e)
{
string fname = "";
string lname = "";
string phyID = "";;
if (txtPhysicianFirst.Text.Length+txtPhysicianLast.Text.Length+txtPhysicianID.Text.Length > 0)
{
try
{
fname = txtPhysicianFirst.Text;
try
{
lname = txtPhysicianLast.Text;
try
{
phyID = txtPhysicianID.Text;
try
{
ds = PharmacyDataTier.PhysicianInfoSearch(fname, lname, phyID);
if (ds.Tables[0].Rows.Count > 0) // There is a record.
{
dgvPhysician.Visible = true;
// Get data source.
dgvPhysician.DataSource = ds.Tables[0];
dgvPhysician.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGreen;
// Set the row and column header styles.
dgvPhysician.ColumnHeadersDefaultCellStyle.ForeColor = Color.White;
dgvPhysician.ColumnHeadersDefaultCellStyle.BackColor = Color.Green;
}
else
{
dgvPatient.Visible = false; // Hide the DataGridView if no results are found.
MessageBox.Show("No records found.");
}
}
catch (Exception exception)
{
ep1.SetError(btnPhysicianSearch, "Error Searching");
}
}
catch (Exception exception)
{
ep1.SetError(txtPhysicianID, "Invalid Value");
}
}
catch (Exception exception)
{
ep1.SetError(txtPhysicianLast, "Invalid Value");
}
}
catch (Exception exception)
{
ep1.SetError(txtPhysicianFirst, "Invalid Value");
}
}
dgvPhysician.Focus();
}
private void cmuPatientNew_Click(object sender, EventArgs e)
{
frmPatient PatientAdd = new frmPatient(this, true);
PatientAdd.MdiParent = MdiParent;
PatientAdd.StartPosition = FormStartPosition.CenterScreen;
PatientAdd.Show();
PatientAdd.Focus();
}
private void cmuPatientEdit_Click(object sender, EventArgs e)
{
if (dgvPatient.Rows.Count > 0)
{
dgvPatient.DataSource = ds.Tables[0];
// Console.WriteLine( dgvPatient.SelectedRows.Count);
DataGridViewRow row = new DataGridViewRow();
row = dgvPatient.SelectedRows[0];
string patid = "";
patid = (row.Cells[3].Value).ToString();
frmPatient PatientAdd = new frmPatient(this, false);
PatientAdd.MdiParent = MdiParent;
PatientAdd.StartPosition = FormStartPosition.CenterScreen;
PatientAdd.Show();
PatientAdd.Focus();
PatientAdd.FillPatient(patid);
}
}
private void dgvPatient_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
cmuPatientEdit_Click(sender, e);
}
private void Panel1_Paint(object sender, PaintEventArgs e)
{
}
private void cmuPatientDelete_Click(object sender, EventArgs e)
{
if (dgvPatient.Rows.Count > 0)
{
dgvPatient.DataSource = ds.Tables[0];
DataGridViewRow row = new DataGridViewRow();
row = dgvPatient.SelectedRows[0];
string patid = "";
patid = (row.Cells[4].Value).ToString();
PharmacyDataTier.DeletePatient(patid);
btnPatientSearch_Click(sender, e);
}
}
private void cmuPhysicianNew_Click(object sender, EventArgs e)
{
frmPhysician physicianAdd = new frmPhysician(this, true);
physicianAdd.MdiParent = MdiParent;
physicianAdd.StartPosition = FormStartPosition.CenterScreen;
physicianAdd.Show();
physicianAdd.Focus();
}
private void cmuPhysicianEdit_Click(object sender, EventArgs e)
{
if (dgvPhysician.Rows.Count > 0)
{
dgvPhysician.DataSource = ds.Tables[0];
DataGridViewRow row = new DataGridViewRow();
row = dgvPhysician.SelectedRows[0];
string phyID = "";
phyID = (row.Cells[0].Value).ToString();
frmPhysician PhysicianAdd = new frmPhysician(this, false);
PhysicianAdd.MdiParent = MdiParent;
PhysicianAdd.StartPosition = FormStartPosition.CenterScreen;
PhysicianAdd.Show();
PhysicianAdd.Focus();
PhysicianAdd.FillPhysician(phyID);
}
}
private void cmuPhysicianDelete_Click(object sender, EventArgs e)
{
if (dgvPhysician.Rows.Count > 0)
{
dgvPhysician.DataSource = ds.Tables[0];
DataGridViewRow row = new DataGridViewRow();
row = dgvPhysician.SelectedRows[0];
string phyID = "";
phyID = (row.Cells[1].Value).ToString();
PharmacyDataTier.DeletePhysician(phyID);
btnPhysicianSearch_Click(sender, e);
}
}
private void dgvPhysician_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
private void dgvPhysician_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
{
}
}
}