示例#1
0
        private bool CheckInfo()
        {
            if (txtMaPhieuThu.Text.Trim() == string.Empty)
            {
                MsgBox.Show(this.Text, "Vui lòng nhập mã phiếu thu.", IconType.Information);
                txtMaPhieuThu.Focus();
                return(false);
            }

            if (txtTenBenhNhan.Text.Trim() == string.Empty)
            {
                MsgBox.Show(this.Text, "Vui lòng chọn tên bệnh nhân.", IconType.Information);
                txtTenBenhNhan.Focus();
                return(false);
            }

            //string phieuThuThuocGUID = _isNew ? string.Empty : _phieuThuThuoc.PhieuThuThuocGUID.ToString();
            //Result result = PhieuThuThuocBus.CheckPhieuThuThuocExistCode(phieuThuThuocGUID, txtMaPhieuThu.Text);

            //if (result.Error.Code == ErrorCode.EXIST || result.Error.Code == ErrorCode.NOT_EXIST)
            //{
            //    if (result.Error.Code == ErrorCode.EXIST)
            //    {
            //        MsgBox.Show(this.Text, "Mã phiếu thu này đã tồn tại rồi. Vui lòng nhập mã khác.", IconType.Information);
            //        txtMaPhieuThu.Focus();
            //        return false;
            //    }
            //}
            //else
            //{
            //    MsgBox.Show(this.Text, result.GetErrorAsString("PhieuThuThuocBus.CheckPhieuThuThuocExistCode"), IconType.Error);
            //    return false;
            //}

            gridViewPTT.UpdateCurrentRow();
            DataTable dt = (gridViewPTT.DataSource as DataView).Table;

            if (dt.Rows.Count > 0)
            {
                foreach (DataRow row in dt.Rows)
                {
                    if (row["ThuocGUID"] == null || row["ThuocGUID"] == DBNull.Value)
                    {
                        MsgBox.Show(this.Text, "Vui lòng chọn thuốc để xuất phiếu thu.", IconType.Information);
                        return(false);
                    }

                    string thuocGUID = row["ThuocGUID"].ToString();
                    string tenThuoc  = GetTenThuoc(thuocGUID);

                    if (row["DonGia"] == null || row["DonGia"] == DBNull.Value || Convert.ToDouble(row["DonGia"]) == 0)
                    {
                        MsgBox.Show(this.Text, string.Format("Thuốc '{0}' chưa có nhập giá bán. Vui lòng chọn thuốc khác.", tenThuoc), IconType.Information);
                        return(false);
                    }

                    int soLuong = 1;
                    if (row["SoLuong"] != null && row["SoLuong"] != DBNull.Value)
                    {
                        soLuong = Convert.ToInt32(row["SoLuong"]);
                    }

                    Result r = LoThuocBus.CheckThuocTonKho(thuocGUID, soLuong);
                    if (r.IsOK)
                    {
                        if (!Convert.ToBoolean(r.QueryResult))
                        {
                            MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã hết hoặc không đủ số lượng để bán. Vui lòng chọn thuốc khác.", tenThuoc), IconType.Information);
                            return(false);
                        }
                    }
                    else
                    {
                        MsgBox.Show(this.Text, r.GetErrorAsString("LoThuocBus.CheckThuocTonKho"), IconType.Error);
                        Utility.WriteToTraceLog(r.GetErrorAsString("LoThuocBus.CheckThuocTonKho"));
                        return(false);
                    }

                    r = LoThuocBus.CheckThuocHetHan(thuocGUID);
                    if (r.IsOK)
                    {
                        if (Convert.ToBoolean(r.QueryResult))
                        {
                            MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã hết hạn sử dụng. Vui lòng chọn thuốc khác.", tenThuoc), IconType.Information);
                            return(false);
                        }
                    }
                    else
                    {
                        MsgBox.Show(this.Text, r.GetErrorAsString("LoThuocBus.CheckThuocHetHan"), IconType.Error);
                        Utility.WriteToTraceLog(r.GetErrorAsString("LoThuocBus.CheckThuocHetHan"));
                        return(false);
                    }
                }
            }
            else
            {
                MsgBox.Show(this.Text, "Vui lòng chọn ít nhất 1 thuốc.", IconType.Information);
                return(false);
            }

            if (dt.Rows.Count > 1)
            {
                for (int i = 0; i < dt.Rows.Count - 1; i++)
                {
                    DataRow row1 = dt.Rows[i];
                    for (int j = i + 1; j < dt.Rows.Count; j++)
                    {
                        DataRow row2 = dt.Rows[j];
                        if (row1["ThuocGUID"].ToString() == row2["ThuocGUID"].ToString())
                        {
                            string tenThuoc = GetTenThuoc(row1["ThuocGUID"].ToString());
                            MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã tồn tại rồi. Vui lòng chọn thuốc khác", tenThuoc), IconType.Information);
                            return(false);
                        }
                    }
                }
            }

            return(true);
        }
示例#2
0
        private bool CheckInfo()
        {
            if (cboThuoc.Text.Trim() == string.Empty)
            {
                MsgBox.Show(this.Text, "Vui lòng chọn 1 thuốc.", IconType.Information);
                cboThuoc.Focus();
                return(false);
            }

            if (_dataSource != null && _dataSource.Rows.Count > 0)
            {
                foreach (DataRow row in _dataSource.Rows)
                {
                    string tenThuoc = row["TenThuoc"].ToString();

                    if (_isNew)
                    {
                        if (tenThuoc.Trim().ToLower() == cboThuoc.Text.Trim().ToLower())
                        {
                            MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã được kê toa rồi. Vui lòng chọn thuốc khác.", cboThuoc.Text), IconType.Information);
                            cboThuoc.Focus();
                            return(false);
                        }
                    }
                    else
                    {
                        string chiTietToaThuocGUID = string.Empty;
                        if (row["ChiTietToaThuocGUID"] != null && row["ChiTietToaThuocGUID"] != DBNull.Value)
                        {
                            chiTietToaThuocGUID = row["ChiTietToaThuocGUID"].ToString();
                        }

                        if (tenThuoc.Trim().ToLower() == cboThuoc.Text.Trim().ToLower() &&
                            _chiTietToaThuoc.ChiTietToaThuocGUID.ToString() != chiTietToaThuocGUID)
                        {
                            MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã được kê toa rồi. Vui lòng chọn thuốc khác.", cboThuoc.Text), IconType.Information);
                            cboThuoc.Focus();
                            return(false);
                        }
                    }
                }
            }

            if (cboThuoc.SelectedValue != null && cboThuoc.Text.Trim() != string.Empty && cboThuoc.SelectedValue.ToString() != Guid.Empty.ToString())
            {
                string maThuocGUID = cboThuoc.SelectedValue.ToString();
                int    soLuong     = (int)numSoLuong.Value;
                Result result      = LoThuocBus.CheckThuocTonKho(maThuocGUID, soLuong);
                if (result.IsOK)
                {
                    if (!Convert.ToBoolean(result.QueryResult))
                    {
                        MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã hết hoặc không đủ số lượng để bán. Vui lòng chọn thuốc khác.", cboThuoc.Text), IconType.Information);
                        return(false);
                    }
                }
                else
                {
                    MsgBox.Show(this.Text, result.GetErrorAsString("LoThuocBus.CheckThuocTonKho"), IconType.Error);
                    Utility.WriteToTraceLog(result.GetErrorAsString("LoThuocBus.CheckThuocTonKho"));
                    return(false);
                }

                result = LoThuocBus.CheckThuocHetHan(maThuocGUID);
                if (result.IsOK)
                {
                    if (Convert.ToBoolean(result.QueryResult))
                    {
                        MsgBox.Show(this.Text, string.Format("Thuốc '{0}' đã hết hạn sử dụng. Vui lòng chọn thuốc khác.", cboThuoc.Text), IconType.Information);
                        return(false);
                    }
                }
                else
                {
                    MsgBox.Show(this.Text, result.GetErrorAsString("LoThuocBus.CheckThuocHetHan"), IconType.Error);
                    Utility.WriteToTraceLog(result.GetErrorAsString("LoThuocBus.CheckThuocHetHan"));
                    return(false);
                }
            }

            return(true);
        }