using System; using System.Collections.Generic; using System.Data; using System.Drawing; using System.Windows.Forms; namespace DocumentManagement { public partial class frmSelectPersonDoc : Form { /// /// 医生 麻醉医生 麻醉护士 /// public string PersonType = ""; public int SelectPersonData; public frmSelectPersonDoc() { InitializeComponent(); } private void frmSelectPersonDoc_Load(object sender, EventArgs e) { SetDgvAttribute(dgvSelectPerson); dgvSelectPerson.Select(); for (int i = 0; i < dgvSelectPerson.Rows.Count; i++) { if (SelectPersonData == int.Parse(dgvSelectPerson.Rows[i].Cells["IdColumn"].Value.ToString())) { dgvSelectPerson.Rows[i].Cells["CheckBoxColumn"].Value = true; } } txtHelpCode_TextChanged(null, null); } private void btnOk_Click(object sender, EventArgs e) { this.DialogResult = System.Windows.Forms.DialogResult.OK; } private void txtHelpCode_TextChanged(object sender, EventArgs e) { dgvSelectPerson.DataSource = GetPersonDataTableByDepId(txtHelpCode.Text.Trim(), txtHelpCode.Text == "" ? PersonType : ""); } private void dgvSelectPerson_CellClick(object sender, DataGridViewCellEventArgs e) { if (Convert.ToBoolean(dgvSelectPerson.CurrentRow.Cells["CheckBoxColumn"].EditedFormattedValue) == false) { SelectPersonData = int.Parse(dgvSelectPerson.CurrentRow.Cells["IdColumn"].Value.ToString()); dgvSelectPerson.CurrentRow.Cells["CheckBoxColumn"].Value = true; } else { SelectPersonData = -1; dgvSelectPerson.CurrentRow.Cells["CheckBoxColumn"].Value = false; } } public static void SetDgvAttribute(System.Windows.Forms.DataGridView dgv) { dgv.AllowUserToResizeColumns = false; dgv.AllowUserToResizeRows = false; dgv.AllowUserToAddRows = false; dgv.AllowUserToDeleteRows = false; dgv.ReadOnly = true; dgv.BackgroundColor = System.Drawing.Color.Snow; } public static DataTable GetPersonDataTableByDepId(string HelpCode, string PersonType) { string strSql = ""; if (HelpCode == "简拼/汉字/ICD码") { HelpCode = ""; } if (PersonType == "医生") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='医生' AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } else if (PersonType == "麻醉医生") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType in ('麻醉医生','麻醉护士') AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%') order by PersonOrder asc"; } else if (PersonType == "麻醉护士") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='麻醉护士' AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } else if (PersonType == "手术室护士") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType ='手术室护士' AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%') order by PersonOrder asc"; } else if (PersonType == "护士") { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND p.PersonType like '%护士%' AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } else { strSql = "SELECT p.Id,p.Name,p.[No] FROM Person p WHERE p.IsValid=1 AND (p.Name LIKE '%" + HelpCode + "%' OR p.HelpCode LIKE '%" + HelpCode + "%')"; } return HelperDB.DbHelperSQL.GetDataTable(strSql.ToString()); } } }