private void OnDisplayKetQuaXetNghiemList()
        {
            Result result = KetQuaXetNghiemTayBus.GetKetQuaXetNghiemList(_fromDate, _toDate, _tenBenhNhan, _isMaBenhNhan);

            if (result.IsOK)
            {
                MethodInvoker method = delegate
                {
                    dgXetNghiem.DataSource = result.QueryResult;
                    SetCurrentXetNghiem(_xetNghiemGUID);
                };

                if (InvokeRequired)
                {
                    BeginInvoke(method);
                }
                else
                {
                    method.Invoke();
                }
            }
            else
            {
                MsgBox.Show(Application.ProductName, result.GetErrorAsString("KetQuaXetNghiemTayBus.GetKetQuaXetNghiemList"), IconType.Error);
                Utility.WriteToTraceLog(result.GetErrorAsString("KetQuaXetNghiemTayBus.GetKetQuaXetNghiemList"));
            }
        }
        private void dlgAddKetQuaXetNghiemTay_Load(object sender, EventArgs e)
        {
            if (!_isNew)
            {
                DisplayInfo();
            }
            else
            {
                if (_patientRow != null)
                {
                    txtBenhNhan.Tag  = _patientRow["PatientGUID"].ToString();
                    txtBenhNhan.Text = _patientRow["FullName"].ToString();
                }

                Result result = KetQuaXetNghiemTayBus.GetChiTietKetQuaXetNghiem(Guid.Empty.ToString());
                if (result.IsOK)
                {
                    dgChiTiet.DataSource = result.QueryResult as DataTable;
                }
                else
                {
                    MsgBox.Show(Application.ProductName, result.GetErrorAsString("KetQuaXetNghiemTayBus.GetChiTietKetQuaXetNghiem"), IconType.Error);
                    Utility.WriteToTraceLog(result.GetErrorAsString("KetQuaXetNghiemTayBus.GetChiTietKetQuaXetNghiem"));
                }

                OnAdd();
            }
        }
Beispiel #3
0
        private void OnSaveInfo()
        {
            try
            {
                _ketQuaXetNghiem.Status = (byte)Status.Actived;

                if (_isNew)
                {
                    _ketQuaXetNghiem.CreatedDate = DateTime.Now;
                    _ketQuaXetNghiem.CreatedBy   = Guid.Parse(Global.UserGUID);
                }
                else
                {
                    _ketQuaXetNghiem.UpdatedDate = DateTime.Now;
                    _ketQuaXetNghiem.UpdatedBy   = Guid.Parse(Global.UserGUID);
                }

                MethodInvoker method = delegate
                {
                    _ketQuaXetNghiem.NgayXN      = DateTime.Now;
                    _ketQuaXetNghiem.PatientGUID = Guid.Parse(txtBenhNhan.Tag.ToString());

                    List <ChiTietKetQuaXetNghiem_Manual> ctkqxns = new List <ChiTietKetQuaXetNghiem_Manual>();
                    foreach (DataGridViewRow row in dgChiTiet.Rows)
                    {
                        DataRow dr = (row.DataBoundItem as DataRowView).Row;
                        ChiTietKetQuaXetNghiem_Manual ct = new ChiTietKetQuaXetNghiem_Manual();
                        ct.XetNghiem_ManualGUID = Guid.Parse(dr["XetNghiem_ManualGUID"].ToString());
                        ct.TestResult           = dr["TestResult"].ToString();
                        ct.LamThem       = Convert.ToBoolean(dr["LamThem"]);
                        ct.HasHutThuoc   = Convert.ToBoolean(dr["HasHutThuoc"]);
                        ct.NgayXetNghiem = Convert.ToDateTime(dr["NgayXetNghiem"]);
                        ctkqxns.Add(ct);
                    }

                    Result result = KetQuaXetNghiemTayBus.InsertKQXN(_ketQuaXetNghiem, ctkqxns, _deletedKeys);
                    if (!result.IsOK)
                    {
                        MsgBox.Show(this.Text, result.GetErrorAsString("XetNghiemTayBus.InsertKQXN"), IconType.Error);
                        Utility.WriteToTraceLog(result.GetErrorAsString("XetNghiemTayBus.InsertKQXN"));
                        this.DialogResult = System.Windows.Forms.DialogResult.Cancel;
                    }
                };

                if (InvokeRequired)
                {
                    BeginInvoke(method);
                }
                else
                {
                    method.Invoke();
                }
            }
            catch (Exception e)
            {
                MsgBox.Show(this.Text, e.Message, IconType.Error);
                Utility.WriteToTraceLog(e.Message);
            }
        }
        private void OnDisplayChiTietKetQuaXetNghiem(string ketQuaXetNghiemGUID)
        {
            Result result = KetQuaXetNghiemTayBus.GetChiTietKetQuaXetNghiem(ketQuaXetNghiemGUID, dtpkTuNgay.Value, dtpkDenNgay.Value);

            if (result.IsOK)
            {
                dgChiTietKQXN.DataSource = result.QueryResult;
                RefreshHighlight();
            }
            else
            {
                MsgBox.Show(Application.ProductName, result.GetErrorAsString("KetQuaXetNghiemTayBus.GetChiTietKetQuaXetNghiem"), IconType.Error);
                Utility.WriteToTraceLog(result.GetErrorAsString("KetQuaXetNghiemTayBus.GetChiTietKetQuaXetNghiem"));
            }
        }
        private bool SaveInfo()
        {
            _chiTietKQXN.NgayXetNghiem = dtpkNgayXetNghiem.Value;
            _chiTietKQXN.TestResult    = txtResult.Text;
            _chiTietKQXN.LamThem       = chkLamThem.Checked;
            _chiTietKQXN.HasHutThuoc   = chkHutThuoc.Checked;

            if (_uNormal_SoiCanLangNuocTieu.Visible)
            {
                _chiTietKQXN.XValue = _uNormal_SoiCanLangNuocTieu.XValue;
                if (_uNormal_SoiCanLangNuocTieu.FromToChecked)
                {
                    _chiTietKQXN.FromValue = _uNormal_SoiCanLangNuocTieu.FromValue;
                    _chiTietKQXN.ToValue   = _uNormal_SoiCanLangNuocTieu.ToValue;
                }
            }
            else if (_uNormal_Chung.Visible)
            {
                _chiTietKQXN.DonVi = _uNormal_Chung.DonVi;
                if (_uNormal_Chung.FromValueChecked)
                {
                    _chiTietKQXN.FromValue    = _uNormal_Chung.FromValue;
                    _chiTietKQXN.FromOperator = _uNormal_Chung.FromOperator;
                }

                if (_uNormal_Chung.ToValueChecked)
                {
                    _chiTietKQXN.ToValue    = _uNormal_Chung.ToValue;
                    _chiTietKQXN.ToOperator = _uNormal_Chung.ToOperator;
                }
            }

            Result result = KetQuaXetNghiemTayBus.UpdateChiTietKQXN(_chiTietKQXN);

            if (!result.IsOK)
            {
                MsgBox.Show(Application.ProductName, result.GetErrorAsString("KetQuaXetNghiemTayBus.UpdateChiTietKQXN"), IconType.Error);
                Utility.WriteToTraceLog(result.GetErrorAsString("KetQuaXetNghiemTayBus.UpdateChiTietKQXN"));
                return(false);
            }

            return(true);
        }
        private void OnDeleteChiTiet()
        {
            List <string>  deletedKQXNList = new List <string>();
            List <DataRow> deletedRows     = new List <DataRow>();
            DataTable      dt = dgChiTietKQXN.DataSource as DataTable;

            foreach (DataRow row in dt.Rows)
            {
                if (Boolean.Parse(row["Checked"].ToString()))
                {
                    deletedKQXNList.Add(row["ChiTietKetQuaXetNghiem_ManualGUID"].ToString());
                    deletedRows.Add(row);
                }
            }

            if (deletedKQXNList.Count > 0)
            {
                if (MsgBox.Question(Application.ProductName, "Bạn có muốn xóa những chi tiết xét nghiệm bạn đã đánh dấu ?") == DialogResult.Yes)
                {
                    Result result = KetQuaXetNghiemTayBus.DeleteChiTietXetNghiem(deletedKQXNList);
                    if (result.IsOK)
                    {
                        foreach (DataRow row in deletedRows)
                        {
                            dt.Rows.Remove(row);
                        }
                    }
                    else
                    {
                        MsgBox.Show(Application.ProductName, result.GetErrorAsString("KetQuaXetNghiemTayBus.DeleteChiTietXetNghiem"), IconType.Error);
                        Utility.WriteToTraceLog(result.GetErrorAsString("KetQuaXetNghiemTayBus.DeleteChiTietXetNghiem"));
                    }
                }
            }
            else
            {
                MsgBox.Show(Application.ProductName, "Vui lòng đánh dấu những chi tiết xét nghiệm cần xóa.", IconType.Information);
            }
        }