Beispiel #1
0
        private void accessCell(DTO.HoSoBenhAnDTO hoso)
        {
            var ketquaxetnghiem = this.bus.getKetQuaXetNghiem(hoso.MaHoSo);

            if (ketquaxetnghiem == null)
            {
                MessageBox.Show("Không thể lấy kết quả xét nghiệm!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            var formContainer = new Form()
            {
                AutoSize      = true,
                AutoSizeMode  = AutoSizeMode.GrowAndShrink,
                StartPosition = FormStartPosition.CenterParent
            };

            var detailControl = new SubForms.AnalysisDetail(hoso, ketquaxetnghiem)
            {
                Left   = Top = 0,
                Anchor = AnchorStyles.Left | AnchorStyles.Top
            };

            detailControl.WillConfirm += (childForm, ketQuaXetNghiem) =>
            {
                var toDay = DateTime.Now;

                ketQuaXetNghiem.NgayXetNghiem = toDay.ToString("yyyyMMdd");
                this.bus.xetNghiemProcessing(ketQuaXetNghiem, result =>
                {
                    if (result.Equals(COM.Constant.RES_SUC))
                    {
                        MessageBox.Show("Ghi kết quả xét nghiệm thành công!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        //Show final result screen.
                        var finalControl = new SubForms.AnalysisConfirm(hoso, ketQuaXetNghiem.KetQua, false)
                        {
                            Left   = Top = 0,
                            Anchor = AnchorStyles.Left | AnchorStyles.Top
                        };

                        finalControl.WillConfirm += (obj, er) =>
                        {
                            formContainer.Close();
                            this.fetchData(null);
                        };

                        formContainer.Controls.Clear();
                        formContainer.Controls.Add(finalControl);
                    }
                    else
                    {
                        MessageBox.Show("Ghi kết quả xét nghiệm thất bại", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                });
            };

            formContainer.Controls.Add(detailControl);
            formContainer.ShowDialog();
        }
Beispiel #2
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            this.ketQuaXetNghiem.KetQua = this.txtKetQua.getText;

            this.bus.checkInput(this.ketQuaXetNghiem, (listMessageError, result) =>
            {
                if (result.Equals(COM.Constant.RES_SUC))
                {
                    Form formContainer = (Form)this.Parent;
                    var confirmControl = new SubForms.AnalysisConfirm(this.hoso, this.txtKetQua.Text)
                    {
                        Left = Top = 0,
                        Dock = DockStyle.Fill
                    };

                    confirmControl.WillConfirm += (obj, ea) =>
                    {
                        this.WillConfirm?.Invoke(this, this.ketQuaXetNghiem);
                    };

                    confirmControl.WillBack += (obj, ea) =>
                    {
                        this.BringToFront();
                    };

                    formContainer.Controls.Add(confirmControl);
                    confirmControl.BringToFront();
                }
                else
                {
                    string messageError = "";
                    listMessageError.ForEach(msg => messageError += msg + "\n");
                    MessageBox.Show(messageError, "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            });
        }