private void dgvHistoryExam_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex < 0) { return; } string docno = dgvHistoryExam.Rows[e.RowIndex].Cells["docno"].Value.ToString(); //show thông tin khám hồ sơ cũ List <Fee> lstDrug = new List <Fee>(); var dt = new DrugOrderLine().Select(long.Parse(docno)); foreach (DataRow r in dt.Rows) { lstDrug.Add(new Fee() { name = r["name"].ToString(), unit = r["unit"].ToString(), price = int.Parse(r["price"].ToString()), quantity = int.Parse(r["quantity"].ToString()), usage = r["usage"].ToString() }); } DataRow doc = new Docs().Select(long.Parse(docno)); frmDrugReport frm = new frmDrugReport(); frm.PrintOrder(s.SelectValue("clinic_name"), s.SelectValue("clinic_phone"), s.SelectValue("clinic_address"), txtPatientno.Text, docno, doc["examdate"].ToString(), txtFullname.Text, mtbBirthdate.Text, cbbGender.Text, actAddress.Text, txtPhone.Text, actSymptom.Text, doc["diagnostic"].ToString(), doc["advice"].ToString(), doc["doctor"].ToString(), lstDrug); frm.ShowInTaskbar = false; frm.ShowDialog(); //-----kết thúc show thông tin khám hồ sơ cũ }
private void btnFinishDoc_Click(object sender, EventArgs e) { try { //cap nhat lai thong tin ho so kham if (cbbDoctor.SelectedIndex == -1) { Common.WarningMessageBox("Vui lòng chọn bác sỹ khám"); xtcExam.SelectedTabPageIndex = 0; cbbDoctor.Focus(); return; } string doctor = cbbDoctor.SelectedValue.ToString(); try { var date = DateTime.ParseExact(mtbExamDate.Text, "dd/MM/yyyy HH:mm", System.Globalization.CultureInfo.InvariantCulture); } catch { Common.ErrorMessageBox("Vui lòng nhập định dạng ngày khám dd/mm/yyyy HH:mm"); xtcExam.SelectedTabPageIndex = 0; mtbExamDate.Focus(); return; } string examdate = mtbExamDate.Text; string diagnostic = actDiagnostic.Text; if (string.IsNullOrEmpty(diagnostic)) { Common.ErrorMessageBox("Vui lòng nhập chẩn đoán"); xtcExam.SelectedTabPageIndex = 0; actDiagnostic.Focus(); return; } string patientno = txtPatientno.Text; try { docno = long.Parse(txtDocno.Text); } catch { Common.ErrorMessageBox("Số hồ sơ không hợp lệ"); } string symptom = actSymptom.Text; string advice = actAdvice.Text; if (new Docs().Confirm(docno, patientno, symptom, diagnostic, advice, examdate, doctor) != 1) { Common.ErrorMessageBox("Lỗi tạo hồ sơ khám"); return; } //----> ket thuc phan cap nhat ho so kham //xu ly don thuoc if ((lstFee == null || lstFee.Where(x => x.type == "D").ToList().Count == 0) && DialogResult.No == Common.ConfirmMessage("Chưa kê thuốc", "Bạn vẫn muốn tiếp tục?")) { xtcExam.SelectedTabPageIndex = 2; return; } if (lstFee != null && lstFee.Where(x => x.type == "D").ToList().Count > 0) { long id = new DrugOrder().Insert(docno, doctor, examdate, examdate); if (id > 0) { var chk = true; foreach (var t in lstFee.Where(x => x.type == "D").ToList()) { var rs = new DrugOrderLine().Insert(id, t.id, t.price, t.quantity, t.usage); if (rs == 0) { chk = false; Common.ErrorMessageBox("Số lượng thuốc không đủ"); break; } if (rs == -1) { chk = false; break; } } if (!chk) { return; } } else { Common.WarningMessageBox("Thêm đơn thuốc thất bại"); return; } } // ket thuc xu ly don thuoc //xu ly cls if (lstFee != null && lstFee.Where(x => x.type == "S").ToList().Count > 0) { long orderid = new FeeOrder().Insert(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), docno, "admin"); if (orderid > 0) { var chk = true; foreach (var item in lstFee.Where(x => x.type == "S").ToList()) { if (new FeeOrderLine().Insert(orderid, item.id, item.quantity, item.price) <= 0) { chk = false; break; } } if (!chk) { Common.ErrorMessageBox("Thêm phí dịch vụ thất bại"); return; } } else { return; } } //---> ket thuc xu ly cls //in đơn thuốc if (ckbDrugPrint.Checked) { frmDrugReport f = new frmDrugReport(); f.PrintOrder(s.SelectValue("clinic_name"), s.SelectValue("clinic_phone"), s.SelectValue("clinic_address"), txtPatientno.Text, txtDocno.Text, DateTime.Now.ToString("dd/MM/yyyy HH:mm"), txtFullname.Text, mtbBirthdate.Text, cbbGender.Text, actAddress.Text, txtPhone.Text, actSymptom.Text, actDiagnostic.Text, actAdvice.Text, cbbDoctor.Text, lstFee.Where(x => x.type == "D").ToList()); f.ShowInTaskbar = false; f.ShowDialog(); } //--->kết thúc in đơn thuốc // in hóa đơn if (ckbPrint.Checked) { frmInvoiceReport frm = new frmInvoiceReport(); frm.Invoice(s.SelectValue("clinic_name"), s.SelectValue("clinic_phone"), s.SelectValue("clinic_address"), txtPatientno.Text, txtDocno.Text, DateTime.Now.ToString("dd/MM/yyyy HH:mm"), txtFullname.Text, mtbBirthdate.Text, cbbGender.Text, actAddress.Text, txtPhone.Text, actSymptom.Text, actDiagnostic.Text, actAdvice.Text, cbbDoctor.Text, lstFee); frm.ShowInTaskbar = false; frm.ShowDialog(); } //----->kết thúc in hóa đơn lstFee = null; dgvFeeList.DataSource = null; dgvFees.DataSource = null; dgvPharmacy.DataSource = null; btnSearch.PerformClick(); SetEnableComponents(false); ResetComponents(); } catch (Exception ex) { Common.ErrorMessageBox("Lỗi kết thúc hồ sơ: " + ex.Message); } }