private void txtInputGrid_KeyDown(object sender, KeyEventArgs e)
        {
            try
            {
                if (e.KeyData == Keys.Enter)
                {
                    g_CloseForm       = true;
                    this.DialogResult = DialogResult.OK;
                    MessageBox.MessageBoxBA msgBox = new Taxi.MessageBox.MessageBoxBA();
                    string s = StringTools.TrimSpace(txtInputGrid.Text);

                    #region KENH
                    //if (s.Length > 0)
                    //{

                    if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapChuyenKenh)
                    {
                        if (s.Length <= 0)
                        {
                            this.DialogResult = DialogResult.Cancel;
                            return;
                        }
                        g_Return = s;
                        int kenhVung = 0;
                        try
                        {
                            kenhVung = Convert.ToInt32(s);
                            if (!CheckVungNamTrongVungCauHinh(kenhVung))
                            {
                                kenhVung = -1;
                            }
                        }
                        catch (Exception ex)
                        {
                            kenhVung = 0;
                        }
                        if (kenhVung <= 0)
                        {
                            msgBox.Show(this, "Vùng phải lớn hơn 0 và nằm trong vùng được cấp phép.", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Question);
                            this.DialogResult = DialogResult.Cancel;
                            g_CloseForm       = false;
                            return;
                        }
                        g_CuocGoi.Vung          = kenhVung;
                        g_CuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.TongGuiSangMoiKhach;
                        if (CuocGoi.TONGDAI_UpdateChuyenVung(g_CuocGoi.IDCuocGoi, ThongTinDangNhap.USER_ID, g_CuocGoi.Vung, ""))
                        {
                            this.DialogResult = DialogResult.OK;
                            g_CloseForm       = true;
                        }
                    }
                    #endregion KENH

                    #region XENHAN
                    else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeNhan)
                    {
                        string xeNhan = StringTools.ConvertToChuoiXeNhanChuan(s);
                        if (!KiemTraXeNhan(xeNhan) && (!KiemTraTrungLapXeChay(xeNhan)))
                        {
                            msgBox.Show(this, "Vui lòng nhập chính xác xe đón.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Question);
                            g_CloseForm       = false;
                            this.DialogResult = DialogResult.Cancel;
                            return;
                        }
                        // Check xe nhận
                        g_Return = xeNhan;
                        //  ValidateXeNhan(xeNhan, g_CuocGoi.XeDon);
                    }
                    #endregion XENHAN

                    #region XEDON
                    else if (s.Length > 0 && g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeDon)
                    {
                        // Kiểm tra xe đó có nằm trong xe nhận
                        string xeDon = StringTools.ConvertToChuoiXeNhanChuan(s);
                        g_Return = xeDon;
                        if (xeDon != null && xeDon.Length > 0)
                        {
                            if (xeDon == "000")
                            {
                                xeDon       = "000";
                                g_IsKetThuc = true;
                            }
                            else
                            {
                                if (!KiemTraXeNhan(xeDon) && (!KiemTraTrungLapXeChay(xeDon)))
                                {
                                    msgBox.Show(this, "Vui lòng nhập chính xác xe đón.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Question);
                                    g_CloseForm       = false;
                                    this.DialogResult = DialogResult.Cancel;
                                    return;
                                }
                                if (Config_Common.TongDai_HienThiCanhBao_XeDonTrungXeNhan > 0 && !KiemTraXeDonThuocXeNhan(xeDon, g_CuocGoi.XeNhan))
                                {
                                    msgBox.Show(this, "Xe đón không thuộc xe nhận", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Question);
                                    //g_CloseForm = false;
                                    //this.DialogResult = DialogResult.Cancel;
                                    //return;
                                }
                                string KenhVung_Trung = string.Empty;
                                string xeDangCoKhach  = new CuocGoi().TONGDAI_UPDATE_XEDON_CHECKVALID(xeDon, g_CuocGoi.ThoiDiemGoi, out KenhVung_Trung);
                                if (xeDangCoKhach != "")
                                {
                                    string message = String.Format("Xe {0} đã đón khách ở vùng {1} khoảng 5 phút gần đây", xeDangCoKhach, KenhVung_Trung);
                                    using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.TrungXeDon, message))
                                    {
                                        confirmXeDon.ShowDialog();
                                        if (confirmXeDon.DialogResult == DialogResult.OK)
                                        {
                                            if (confirmXeDon.Result == 1)
                                            {
                                                if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, Taxi.Utils.KieuCanhBaoKhiNhapThongTin.TrungXeDon))
                                                {
                                                    new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                                                    return;
                                                }
                                                g_IsKetThuc = true;
                                            }
                                            else
                                            {
                                                g_IsKetThuc = false;
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            g_IsKetThuc = false;
                                            return;
                                        }
                                    }
                                }
                                if (G_XeDonLength < g_CuocGoi.SoLuong)
                                {
                                    const string message = "Chưa đủ xe số lượng xe yêu cầu";
                                    using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon, message))
                                    {
                                        confirmXeDon.ShowDialog();
                                        if (confirmXeDon.DialogResult == DialogResult.OK)
                                        {
                                            if (confirmXeDon.Result == 2)
                                            {
                                                if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon))
                                                {
                                                    new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                                                    return;
                                                }
                                                g_IsKetThuc = true;
                                            }
                                            else
                                            {
                                                g_IsKetThuc = false;
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            g_IsKetThuc = false;
                                            return;
                                        }
                                    }
                                }
                                else
                                {
                                    g_IsKetThuc = true;
                                }
                                string XeNhan = g_CuocGoi.XeNhan;
                                //if (g_CuocGoi.KieuKhachHangGoiDen == KieuKhachHangGoiDen.KhachHangMoiGioi)
                                //{
                                //if (!KiemTraXeDonThuocXeNhan(xeDon, XeNhan))
                                //{
                                //    string message = string.Format("Xe {0} đón nhưng không thuộc Xe Nhận", xeDon);
                                //    using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan, message,xeDon))
                                //    {
                                //        confirmXeDon.ShowDialog();
                                //        if (confirmXeDon.DialogResult == DialogResult.OK)
                                //        {
                                //            xeDon = confirmXeDon.XeDonResult;
                                //            if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan))
                                //            {
                                //                new MessageBox.MessageBox().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtons.OK, Taxi.MessageBox.MessageBoxIcon.Error);
                                //                return;
                                //            }
                                //        }
                                //        else
                                //        {
                                //            g_IsKetThuc = false;
                                //            return;
                                //        }
                                //    }
                                //}
                            }
                        }
                        g_Return = xeDon;
                    }
                    #endregion

                    #region XENHANDENDIEM
                    else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeNhanDenDiem)
                    {
                        // Check xe nhận
                        //string xeNhanDenDiem = StringTools.ConvertToChuoiXeNhanChuan(s);
                        g_Return = s;
                        //ValidateXeNhan(xeNhanDenDiem, g_CuocGoi.XeDon);
                    }
                    #endregion XENHAN

                    //g_CloseForm = true;
                    //this.DialogResult = DialogResult.OK;
                    if (g_CloseForm)
                    {
                        this.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                LogError.WriteLogError(g_KieuNhap.ToString(), ex);
                throw ex;
            }
        }
        private string CheckXeNhanQuaXa(string xeNhan, double KD, double VD)
        {
            if (KD <= 0)
            {
                return(xeNhan.TrimEnd('.').TrimStart('.'));
            }

            string XeNhan     = string.Empty;
            double KhoangCach = 0;

            string[] arrXeNhan = xeNhan.Split('.');
            if (arrXeNhan.Length > 0)
            {
                for (int i = 0; i < arrXeNhan.Length; i++)
                {
                    try
                    {
                        KhoangCach = new SyncServiceOnlineClient().GetKCXeNhan_DiemDonKhach(KD, VD, ThongTinCauHinh.GPS_MaCungXN, arrXeNhan[i]);
                    }
                    catch (Exception ex)
                    {
                        return(xeNhan);
                    }

                    if (KhoangCach > ThongTinCauHinh.GPS_BKXeNhan)
                    {
                        string message = string.Format("Xe {0} cách điểm đón khách {1}(km).Đã phát đàm và vẫn cho nhận?", arrXeNhan[i], Math.Round(KhoangCach / 1000, 1));
                        using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeNhanQuaXa, message))
                        {
                            confirmXeDon.ShowDialog();
                            if (confirmXeDon.DialogResult == DialogResult.OK)
                            {
                                if (confirmXeDon.Result == 1)
                                {
                                    if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.XeNhanQuaXa))
                                    {
                                        new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                                    }
                                }
                                else
                                {
                                    XeNhan += arrXeNhan[i] + ".";
                                }
                            }
                            else
                            {
                                XeNhan = xeNhan;
                            }
                        }
                    }
                    else if (KhoangCach == -1)
                    {
                        new MessageBox.MessageBoxBA().Show(string.Format("Xe {0} đang mất tín hiệu", arrXeNhan[i]), "Xe nhận mất tín hiệu", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Warning);
                        //XeNhan += arrXeNhan[i] + ".";
                    }
                    else if (KhoangCach == -2)
                    {
                        new MessageBox.MessageBoxBA().Show(string.Format("Lỗi, không tìm được xe {0}", arrXeNhan[i]), "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Warning);
                        //XeNhan += arrXeNhan[i] + ".";
                    }
                }
            }
            return(XeNhan.TrimEnd('.'));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Nhap thong tin va thiet lap trang thai cuoc goi
        /// trang thai lenh
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnOK_Click(object sender, EventArgs e)
        {
            mCuocGoi.MOIKHACH_KhieuNai_ThongTinThem = txt_GhiChuMoiKhach.Text.Trim();
            if (!txtDiaChiDon.ReadOnly)
            {
                if (mCuocGoi.DiaChiDonKhach != txtDiaChiDon.Text.Trim())
                {
                    mCuocGoi.DiaChiDonKhach = txtDiaChiDon.Text.Trim();
                    g_CoThayDoiDuLieu       = true;
                }
            }
            string xeDon  = StringTools.TrimSpace(maskXeDon.TextBox.Text);
            string xeNhan = mCuocGoi.XeNhan;

            #region XeDon
            if (xeDon != null && xeDon.Length > 0 && xeDon != mCuocGoi.XeDon)
            {
                if (!KiemTraXeNhan(xeDon, g_ListSoHieuXe))
                {
                    new MessageBox.MessageBoxBA().Show(this, "Vui lòng nhập chính xác xe đón.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                    g_CloseForm  = false;
                    DialogResult = DialogResult.Cancel;
                    return;
                }

                if (G_XeDonLength < mCuocGoi.SoLuong)
                {
                    string message = "Chưa đủ xe số lượng xe yêu cầu";
                    using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon, message))
                    {
                        confirmXeDon.ShowDialog();
                        if (confirmXeDon.DialogResult == DialogResult.OK)
                        {
                            if (confirmXeDon.Result == 2)
                            {
                                if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(mCuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon))
                                {
                                    new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                                    return;
                                }
                                g_IsKetThuc = true;
                            }
                            else
                            {
                                g_IsKetThuc = false;
                                return;
                            }
                        }
                        else
                        {
                            g_IsKetThuc = false;
                            return;
                        }
                    }
                }
                else
                {
                    g_IsKetThuc = true;
                }
                if (!KiemTraXeDonThuocXeNhan(xeDon, xeNhan))
                {
                    string message = string.Format("Xe {0} đón nhưng không thuộc Xe Nhận", xeDon);
                    using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan, message, xeDon))
                    {
                        confirmXeDon.ShowDialog();
                        if (confirmXeDon.DialogResult == DialogResult.OK)
                        {
                            xeDon = confirmXeDon.XeDonResult;
                            if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(mCuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon))
                            {
                                new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                                return;
                            }
                            g_IsKetThuc = true;
                        }
                        else
                        {
                            g_IsKetThuc = false;
                            return;
                        }
                    }
                }


                if (g_IsKetThuc)
                {
                    mCuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.KetThuc;
                    mCuocGoi.XeDon         = xeDon;
                }
            }
            #endregion

            if (!FormValidate(mlenhTongDai))
            {
                MessageBox.MessageBoxBA msg = new Taxi.MessageBox.MessageBoxBA();
                msg.Show(this, "Bạn phải chọn một phần thực hiện để lưu.", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Information);
                return;
            }

            if (g_IsKetThuc == false)
            {
                #region MOIKHACH
                if (mlenhTongDai == LENHCUATONGDAI_MOIKHACH.LENHMOIKHACH)
                {
                    if (chkMKCho.Checked)
                    {
                        if (txtMKPhut.Text == "0")
                        {
                            mCuocGoi.MOIKHACH_LenhMoiKhach = MOIKHACH_KHACHDANGRA;
                        }
                        else if (txtMKPhut.Text == "1")
                        {
                            mCuocGoi.MOIKHACH_LenhMoiKhach = MOIKHACH_DAMOI;
                        }
                        else if (txtMKPhut.Text.Length > 0)
                        {
                            try
                            {
                                int i = Convert.ToInt32(txtMKPhut.Text);
                                mCuocGoi.MOIKHACH_LenhMoiKhach = string.Format(MOIKHACH_DOIKHACH, i);
                            }
                            catch (Exception ex)
                            {
                                mCuocGoi.MOIKHACH_LenhMoiKhach = txtMKPhut.Text;
                            }
                        }
                    }
                    else if (chkMKHoan.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = "khách hoãn";
                    }
                    else if (chkMKTruot.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = "trượt";
                    }
                    else if (chkMKKhac.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = txtMKKhac.Text;
                    }
                    mCuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.MoiKhachGui;
                }
                #endregion MOIKHACH

                #region GIUKHACH
                else if (mlenhTongDai == LENHCUATONGDAI_MOIKHACH.LENHGIUKHACH)
                {
                    if (chkMKCho.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = "đã giữ";
                    }
                    else if (chkMKHoan.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = "khách hoãn";
                    }
                    else if (chkMKTruot.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = "trượt";
                    }
                    else if (chkMKKhac.Checked)
                    {
                        mCuocGoi.MOIKHACH_LenhMoiKhach = txtMKKhac.Text;
                    }
                    mCuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.MoiKhachGui;
                }

                #endregion GIUKHACH

                #region KHONG XE XIN LOI KHACH

                else if (mlenhTongDai == LENHCUATONGDAI_MOIKHACH.LENHKHONGXEXINLOI)
                {
                    mCuocGoi.MOIKHACH_LenhMoiKhach    = "đã xin lỗi";
                    mCuocGoi.MOIKHACH_XinLoi_DaXinLoi = true;
                    mCuocGoi.TrangThaiLenh            = TrangThaiLenhTaxi.KetThuc;
                }

                #endregion KHONG XE XIN LOI KHACH
            }
            if (g_CoThayDoiDuLieu)
            {
                this.DialogResult = DialogResult.OK;
            }

            this.Close();
        }
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            g_CloseForm = true;
            string s = StringTools.TrimSpace(txtNhapXe.Text);

            #region XENHAN
            if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeNhan)
            {
                // Check xe nhận
                string xeNhan = StringTools.ConvertToChuoiXeNhanChuan(s);
                g_Return = xeNhan;
                ValidateXeNhan(xeNhan, g_CuocGoi.XeDon);
            }
            #endregion XENHAN

            #region XEDON
            else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeDon)
            {
                // Kiểm tra xe đó có nằm trong xe nhận
                string xeDon = StringTools.ConvertToChuoiXeNhanChuan(s);
                g_Return      = xeDon;
                g_Return_Chon = GetXeChon();

                if (xeDon != null && xeDon.Length > 0)
                {
                    if (xeDon == "000")
                    {
                        xeDon       = "000";
                        g_IsKetThuc = true;
                    }
                    else
                    {
                        G_XeDonLength = xeDon.Split('.').Length;
                        if (!StringTools.KiemTraXeNamTrongHeThong(xeDon, g_listSoHieuXe) && (!StringTools.KiemTraTrungLapXeChay(xeDon)))
                        {
                            new MessageBox.MessageBoxBA().Show(this, "Vui lòng nhập chính xác xe đón.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Question);
                            g_CloseForm  = false;
                            DialogResult = DialogResult.Cancel;
                            return;
                        }
                        string KenhVung_Trung = string.Empty;
                        string xeDangCoKhach  = new CuocGoi().TONGDAI_UPDATE_XEDON_CHECKVALID(xeDon, g_CuocGoi.ThoiDiemGoi, out KenhVung_Trung);
                        if (xeDangCoKhach != "")
                        {
                            string message = String.Format("Xe {0} đã đón khách ở vùng {1} khoảng 5 phút gần đây", xeDangCoKhach, KenhVung_Trung);
                            using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.TrungXeDon, message))
                            {
                                confirmXeDon.ShowDialog();
                                if (confirmXeDon.DialogResult == DialogResult.OK)
                                {
                                    if (confirmXeDon.Result == 1)
                                    {
                                        if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, Taxi.Utils.KieuCanhBaoKhiNhapThongTin.TrungXeDon))
                                        {
                                            new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Error);
                                            return;
                                        }
                                        g_IsKetThuc = true;
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                                else
                                {
                                    g_IsKetThuc = false;
                                    return;
                                }
                            }
                        }

                        if (G_XeDonLength < g_CuocGoi.SoLuong)
                        {
                            const string message = "Chưa đủ xe số lượng xe yêu cầu";
                            using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon, message))
                            {
                                confirmXeDon.ShowDialog();
                                if (confirmXeDon.DialogResult == DialogResult.OK)
                                {
                                    if (confirmXeDon.Result == 2)
                                    {
                                        if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon))
                                        {
                                            new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Error);
                                            return;
                                        }
                                        g_IsKetThuc = true;
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                                else
                                {
                                    g_IsKetThuc = false;
                                    return;
                                }
                            }
                        }
                        else
                        {
                            g_IsKetThuc = true;
                        }
                        //string XeNhan = g_CuocGoi.XeNhan;
                        //if (g_CuocGoi.KieuKhachHangGoiDen == KieuKhachHangGoiDen.KhachHangMoiGioi)
                        //{
                        //if (!KiemTraXeDonThuocXeNhan(xeDon, XeNhan))
                        //{
                        //    string message = string.Format("Xe {0} đón nhưng không thuộc Xe Nhận", xeDon);
                        //    using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan, message,xeDon))
                        //    {
                        //        confirmXeDon.ShowDialog();
                        //        if (confirmXeDon.DialogResult == DialogResult.OK)
                        //        {
                        //            xeDon = confirmXeDon.XeDonResult;
                        //            if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan))
                        //            {
                        //                new MessageBox.MessageBox().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtons.OK, Taxi.MessageBox.MessageBoxIcon.Error);
                        //                return;
                        //            }
                        //        }
                        //        else
                        //        {
                        //            g_IsKetThuc = false;
                        //            return;
                        //        }
                        //    }
                        //}
                    }
                }
                else
                {
                    g_IsKetThuc = true;
                }
                g_Return = xeDon;
            }
            #endregion

            #region XENHANDENDIEM
            else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeNhanDenDiem)
            {
                g_Return      = s;
                g_Return_Chon = GetXeChon();
            }
            #endregion XENHAN

            g_CloseForm  = true;
            DialogResult = DialogResult.OK;

            Close();
        }
Ejemplo n.º 5
0
        //private void ValidateXeDon(string XeNhan, string XeDon, string XeDenDiem)
        //{
        //    MessageBox.MessageBox msgBox = new Taxi.MessageBox.MessageBox();
        //    string XeNhanCu = string.Empty;
        //    string XeNhanMoiNhap = XeNhan;
        //    if (!string.IsNullOrEmpty(g_CuocGoi.XeNhan))
        //    {
        //        XeNhanMoiNhap = XeNhan.Replace(g_CuocGoi.XeNhan, "").TrimStart('.').TrimEnd('.');
        //        XeNhanCu = g_CuocGoi.XeNhan + ".";
        //    }
        //    Ktra xe đón có tồn tại hay không.
        //    if (!KiemTraXeNhan(XeDon))
        //    {
        //        msgBox.Show(this, "Vui lòng nhập chính xác xe đón.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", Taxi.MessageBox.MessageBoxButtons.OK, Taxi.MessageBox.MessageBoxIcon.Error);
        //        g_CloseForm = false;
        //        this.DialogResult = DialogResult.Cancel;
        //        return;
        //    }
        //    Ktra xe đón có nhập trùng hay không.
        //    else if (KiemTraTrungLapXeChay(XeDon))
        //    {
        //        msgBox.Show(this, "Nhập trùng xe đón", "Thông báo", Taxi.MessageBox.MessageBoxButtons.OK, Taxi.MessageBox.MessageBoxIcon.Error);
        //        g_CloseForm = false;
        //        this.DialogResult = DialogResult.Cancel;
        //        return;
        //    }
        //    Ktra đã đủ số xe đón chưa
        //    if (G_XeDonLength < g_CuocGoi.SoLuong)
        //    {
        //        string confirm = msgBox.Show("Chưa đủ xe số lượng xe yêu cầu. Tiếp tục điều xe đón ?", "Chưa đủ số lượng xe yêu cầu", Taxi.MessageBox.MessageBoxButtons.YesNo, Taxi.MessageBox.MessageBoxIcon.Question);
        //        if (confirm == DialogResult.Yes.ToString())
        //        {
        //            if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN_DUXEDON(g_CuocGoi.IDCuocGoi, false,false))
        //            {
        //                new MessageBox.MessageBox().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtons.OK, Taxi.MessageBox.MessageBoxIcon.Error);
        //                return;
        //            }
        //        }
        //        else
        //        {
        //            g_Return = XeDon;
        //            return;
        //        }
        //    }
        //    if (!KiemTraXeDonThuocXeNhan2(XeDon, XeDenDiem) || !KiemTraXeDonThuocXeNhan2(XeDon, XeNhan))
        //    {
        //        using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon())
        //        {
        //            confirmXeDon.ShowDialog();
        //            if (confirmXeDon.DialogResult == DialogResult.OK)
        //            {
        //                if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN_XEDON(g_CuocGoi.IDCuocGoi, confirmXeDon.Result, false))
        //                {
        //                    new MessageBox.MessageBox().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtons.OK, Taxi.MessageBox.MessageBoxIcon.Error);
        //                    return;
        //                }
        //            }
        //            else
        //            {
        //                return;
        //            }
        //        }
        //    }
        //    g_Return = XeDon;
        //}

        private bool ValidateXeNhan(string XeNhan, string XeDon)
        {
            if (string.IsNullOrEmpty(XeNhan))
            {
                return(true);
            }
            if (g_CuocGoi.XeNhan == XeNhan.TrimEnd('.'))
            {
                return(true);
            }

            MessageBox.MessageBoxBA msgBox = new Taxi.MessageBox.MessageBoxBA();
            string xeNhanCu      = g_CuocGoi.XeNhan;
            string xeNhan_Filter = string.Empty;


            if (Config_Common.TongDai_HienThiCanhBao_NhapTrungXeNhan > 0)
            {
                string strDSXeNhanDaNhanDiem = KiemTraXeNhanDaNhanCuoc(g_CuocGoi.IDCuocGoi, XeNhan);
                if (strDSXeNhanDaNhanDiem.Length > 0)
                {
                    MessageBox.MessageBoxBA msgDialog = new Taxi.MessageBox.MessageBoxBA();
                    if (msgDialog.Show(this, "Xe " + strDSXeNhanDaNhanDiem + " đang nhận điểm cần kiểm tra lại. Bạn có cho nhận điểm không?", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OKCancel, Taxi.MessageBox.MessageBoxIconBA.Question).ToString()
                        == DialogResult.Cancel.ToString())
                    {
                        g_CloseForm  = false;
                        DialogResult = DialogResult.Cancel;
                        return(false);
                    }
                    else
                    {
                        return(Config_Common.TongDai_HienThiCanhBao_NhapTrungXeNhan == 2);
                    }
                }
            }

            //if (!string.IsNullOrEmpty(xeNhanCu) && g_CuocGoi.GPS_KinhDo > 0 && g_CuocGoi.GPS_ViDo > 0)
            //{
            //    xeNhan_Filter = StringTools.GetXeNhanMoi(xeNhanCu, XeNhan);
            //    if (!string.IsNullOrEmpty(xeNhan_Filter))
            //    {
            //        if (g_CuocGoi.DanhSachXeDeCu != "")
            //        {
            //            try
            //            {
            //                //--------Luu log xe nhan khong thuoc xe de cu
            //                bw.RunWorkerAsync(xeNhan_Filter);
            //            }
            //            catch (Exception)
            //            {
            //            }
            //        }
            //        string xeNhan_QuaXa = string.Empty;
            //        xeNhan_QuaXa = CheckXeNhanQuaXa(xeNhan_Filter, g_CuocGoi.GPS_KinhDo, g_CuocGoi.GPS_ViDo);
            //        if (!string.IsNullOrEmpty(xeNhan_QuaXa))
            //        {
            //            g_Return = StringTools.ConvertToChuoiXeNhanChuan(XeNhan.Replace(xeNhan_QuaXa, ""));
            //        }
            //    }
            //}
            //Ktra xe nhận có tồn tại hay không.
            if (!KiemTraXeNhan(XeNhan))
            {
                msgBox.Show(this, "Vui lòng nhập chính xác xe nhận.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                g_CloseForm       = false;
                this.DialogResult = DialogResult.Cancel;
                return(false);
            }
            //Ktra xe nhận có nhập trùng hay không.

            if (StringTools.KiemTraTrungLapXeChay(XeNhan))
            {
                msgBox.Show(this, "Nhập trùng xe nhận", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);

                return(false);
            }
            //Ktra xe nhận đã báo đón hay chưa(nếu đã báo thì ko cho phép nhập).
            else if (Config_Common.TongDai_HienThiCanhBao_XeDonTrungXeNhan > 0 && !StringTools.KiemTraXeDonThuocXeNhan(xeNhan_Filter, XeDon))
            {
                string message = string.Format("Xe {0} đón nhưng không thuộc Xe Nhận", XeDon);
                using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan, message, XeDon))
                {
                    confirmXeDon.ShowDialog();
                    if (confirmXeDon.DialogResult == DialogResult.OK)
                    {
                        XeDon = confirmXeDon.XeDonResult;
                        if (!new Taxi.Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, Taxi.Utils.KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan))
                        {
                            new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", Taxi.MessageBox.MessageBoxButtonsBA.OK, Taxi.MessageBox.MessageBoxIconBA.Error);
                            return(false);
                        }
                    }
                    else
                    {
                        g_IsKetThuc = false;
                        return(false);
                    }
                }
                return(false);
            }
            else if (Config_Common.TongDai_HienThiCanhBao_NhapTrungXeNhan > 0 && KiemTraXeCoTrongCuocKhachHienTai(XeNhan))
            {
                return(Config_Common.TongDai_HienThiCanhBao_NhapTrungXeNhan == 2);
            }
            return(true);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Nhap thong tin va thiet lap trang thai cuoc goi trang thai lenh
        /// </summary>
        private void btnOK_Click(object sender, EventArgs e)
        {
            BangMaValidate maValidate = ValidateFormNhap();

            if (maValidate == BangMaValidate.ValidateSuccess)
            {
                string xeDon     = StringTools.ConvertToChuoiXeNhanChuan(maskXeDon.Text).Trim('.');
                string xeNhan    = StringTools.ConvertToChuoiXeNhanChuan(maskXeNhan.Text).Trim('.');
                string xeDenDiem = StringTools.ConvertToChuoiXeNhanChuan(g_cuocGoi.XeDenDiem).Trim('.');
                string xeMK      = StringTools.ConvertToChuoiXeNhanChuan(maskXeMK.Text).Trim('.');

                #region  Xe vi phạm
                if (Config_Common.TongDai_CheckXeViPham)
                {
                    string xeViPham = LoiViPham.Inst.GetXeViPham(xeNhan + "." + xeDon + "." + xeDenDiem, DateTime.Now);
                    if (!string.IsNullOrEmpty(xeViPham))
                    {
                        new MessageBox.MessageBox().Show(this, string.Format("Xe {0} đang vi phạm lỗi", xeViPham), "Thông báo");
                        g_CloseForm = false; // chưa đóng form
                        return;
                    }
                }

                #endregion

                #region XeDon
                if (xeDon.Length > 0 && xeDon != g_cuocGoi.XeDon)
                {
                    //Nếu là cuộc gọi FastTaxi và khách hàng chưa xác nhận đã gặp xe thì cảnh báo
                    if (g_cuocGoi.FT_IsFT && g_cuocGoi.FT_Status != Enum_FastTaxi_Status.NhapXeDon)
                    {
                        if (new MessageBox.MessageBox().Show("Khách hàng chưa xác nhận đã gặp xe. Bạn có muốn tiếp tục nhập xe đón không ?", "Thông báo", MessageBox.MessageBoxButtons.YesNo, MessageBox.MessageBoxIcon.Question).ToLower().Equals("no"))
                        {
                            return;
                        }
                    }
                    if (xeDon == XeDaDon)
                    {
                        if (xeNhan.Length <= 0)
                        {
                            xeNhan = XeDaDon;
                        }
                        g_IsKetThuc = true;
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(xeDon))
                        {
                            G_XeDonLength = xeDon.Split('.').Length;
                            if (G_XeDonLength < g_cuocGoi.SoLuong)
                            {
                                string message = "Chưa đủ xe số lượng xe yêu cầu";
                                using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon, message, xeDon))
                                {
                                    confirmXeDon.ShowDialog();
                                    if (confirmXeDon.DialogResult == DialogResult.OK)
                                    {
                                        if (confirmXeDon.Result == 2)
                                        {
                                            if (!new Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_cuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon))
                                            {
                                                new MessageBox.MessageBox().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtons.OK, MessageBox.MessageBoxIcon.Error);
                                                return;
                                            }
                                            g_IsKetThuc = true;
                                        }
                                        else
                                        {
                                            g_IsKetThuc = false;
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                            }
                            else if (G_XeDonLength > g_cuocGoi.SoLuong)
                            {
                                new MessageBox.MessageBox().Show("Xe đón vượt số lượng yêu cầu. Vui lòng kiểm tra lại");
                                g_IsKetThuc = false;
                                return;
                            }
                            else
                            {
                                g_IsKetThuc = true;
                            }
                            if (Config_Common.TongDai_HienThiCanhBao_XeDonTrungXeNhan > 0 && !StringTools.KiemTraXeDonThuocXeNhan(xeDon, xeNhan))
                            {
                                string message = string.Format("Xe {0} đón nhưng không thuộc Xe Nhận", xeDon);
                                using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan, message, xeDon))
                                {
                                    confirmXeDon.ShowDialog();
                                    if (confirmXeDon.DialogResult == DialogResult.OK)
                                    {
                                        xeDon = confirmXeDon.XeDonResult;
                                        if (!new Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_cuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan))
                                        {
                                            new MessageBox.MessageBox().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtons.OK, MessageBox.MessageBoxIcon.Error);
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                            }
                        }
                    }
                }
                #endregion

                #region XeNhan

                string xeNhanCu = g_cuocGoi.XeNhan;

                if (xeNhan != "" && xeNhan != xeNhanCu)
                {
                    if (!string.IsNullOrEmpty(xeNhanCu))
                    {
                        StringTools.GetXeNhanMoi(xeNhanCu, xeNhan);
                    }
                }
                #endregion

                #region XeMK

                string xeMKCu = g_cuocGoi.BTBG_NoiDungXuLy;

                if (xeMK != "" && xeMK != xeMKCu)
                {
                    if (!string.IsNullOrEmpty(xeMKCu))
                    {
                        StringTools.GetXeNhanMoi(xeMKCu, xeMK);
                    }

                    if (Config_Common.CanhBaoKhiNhapXe == 0 && !ValidateXeMK(xeMK, xeNhan))
                    {
                        g_CloseForm  = false;
                        DialogResult = DialogResult.Cancel;
                        return;
                    }
                }
                #endregion

                #region chuyen vung
                int vungCu = g_cuocGoi.Vung;

                if (txtVung.Text.Trim() != "") // chuyen vung , dung DialogResult.Ignore
                {
                    try
                    {
                        int kenhVung = Convert.ToInt32(txtVung.Text.Trim());
                        if (vungCu == kenhVung)
                        {
                            g_cuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.TongGuiSangMoiKhach;
                            this.DialogResult       = DialogResult.OK;
                            return;
                        }
                        if (!CheckVungNamTrongVungCauHinh(kenhVung))
                        {
                            MessageBox.MessageBox msg = new MessageBox.MessageBox();
                            msg.Show("Vùng chuyển phải nằm trong các vùng bộ đàm đã cấu hình.");
                            this.DialogResult = DialogResult.Cancel;
                            g_CloseForm       = false;
                            return;
                        }
                        if (g_isCuocGoiKetThuc)
                        {
                            this.DialogResult = DialogResult.OK;
                        }
                        else
                        {
                            GetDuLieuTuForm(ref g_cuocGoi, xeNhan, xeDon, xeMK, !xeMK.Equals(g_cuocGoi.BTBG_NoiDungXuLy));
                            if (CuocGoi.TONGDAI_UpdateChuyenVung(g_cuocGoi.IDCuocGoi, ThongTinDangNhap.USER_ID, g_cuocGoi.Vung, g_cuocGoi.LenhTongDai))
                            {
                                this.DialogResult = DialogResult.Ignore;
                                g_CloseForm       = true;
                            }
                        }
                    }
                    catch
                    {
                    }
                }
                else
                {
                    GetDuLieuTuForm(ref g_cuocGoi, xeNhan, xeDon, xeMK, !xeMK.Equals(g_cuocGoi.BTBG_NoiDungXuLy));
                    this.DialogResult = DialogResult.OK;
                }
                #endregion

                g_CloseForm = true;
                this.Close();
            }
            else
            {
                HienThiThongBao(maValidate);
                g_CloseForm = false; // chưa đóng form
            }
        }
        private void txtInputGrid_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyData == Keys.Enter)
            {
                g_CloseForm = true;
                MessageBox.MessageBoxBA msgBox = new MessageBox.MessageBoxBA();
                string s = StringTools.TrimSpace(txtInputGrid.Text);


                #region KENH
                if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapChuyenKenh)
                {
                    if (s.Length <= 0)
                    {
                        this.DialogResult = DialogResult.Cancel;
                        return;
                    }
                    g_Return = s;
                    int kenhVung;
                    try
                    {
                        kenhVung = Convert.ToInt32(s);
                        if (!CheckVungNamTrongVungCauHinh(kenhVung))
                        {
                            kenhVung = -1;
                        }
                    }
                    catch
                    {
                        kenhVung = 0;
                    }
                    if (kenhVung <= 0)
                    {
                        msgBox.Show(this, "Vùng phải lớn hơn 0 và nằm trong vùng được cấp phép.", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Question);
                        this.DialogResult = DialogResult.Cancel;
                        g_CloseForm       = false;
                        return;
                    }
                    g_CuocGoi.Vung          = kenhVung;
                    g_CuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.TongGuiSangMoiKhach;
                    if (CuocGoi.TONGDAI_UpdateChuyenVung(g_CuocGoi.IDCuocGoi, ThongTinDangNhap.USER_ID, g_CuocGoi.Vung, ""))
                    {
                        this.DialogResult = DialogResult.OK;
                        g_CloseForm       = true;
                    }
                }
                #endregion KENH

                #region XENHAN
                else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeNhan)
                {
                    // Check xe nhận
                    string xeNhan = StringTools.ConvertToChuoiXeNhanChuan(s);
                    g_Return = xeNhan;
                    if (Config_Common.CanhBaoKhiNhapXe == 0 && !ValidateXeNhan(xeNhan, g_CuocGoi.XeDon))
                    {
                        g_CloseForm       = false;
                        this.DialogResult = DialogResult.Cancel;
                        return;
                    }
                    if (Config_Common.TDV_VALIDATE_XENHAN_APP)
                    {
                        string xeNhanMoi = StringTools.GetXeNhanMoi(g_CuocGoi.XeNhan, xeNhan);
                        List <T_TaxiOperation> lstItem = T_TaxiOperation.Inst.GetList_XeDangNhanApp(g_CuocGoi.IDCuocGoi, xeNhanMoi);
                        if (lstItem != null && lstItem.Count > 0)
                        {
                            T_TaxiOperation item         = lstItem[0];
                            frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.TrungXeNhanApp, item.MessageAlert, item.Id);
                            {
                                confirmXeDon.ShowDialog();
                                if (confirmXeDon.DialogResult == DialogResult.OK && confirmXeDon.Result == 1)
                                {
                                    this.DialogResult = DialogResult.OK;
                                }
                                else
                                {
                                    g_CloseForm       = false;
                                    this.DialogResult = DialogResult.Cancel;
                                    return;
                                }
                            }
                        }
                    }
                    else if (Config_Common.TDV_XENHAN_RADIO_TO_APP)
                    {
                        string xeNhanMoi = StringTools.GetXeNhanMoi(g_CuocGoi.XeNhan, xeNhan);
                        if (CommonBL.DictApp_Current != null && CommonBL.DictApp_Current.Count > 0)
                        {
                            if (CommonBL.DictApp_Current.ContainsKey(xeNhanMoi))
                            {
                                string info = string.Format("Cuốc khách gối : {0} - {1}", g_CuocGoi.PhoneNumber, g_CuocGoi.DiaChiDonKhach);
                                Taxi.Services.WCFServicesApp.SendText(CommonBL.ConvertSangBienSo(xeNhanMoi), info, CommonBL.DictApp_Current[xeNhanMoi]);
                                g_CuocGoi.LenhTongDai = "Đã gửi cuốc gối cho lx";
                            }
                        }
                    }
                }
                #endregion XENHAN

                #region Xe MK
                else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeMK)
                {
                    // Check xe nhận
                    string xeNhan = StringTools.ConvertToChuoiXeNhanChuan(s);
                    g_Return = xeNhan;
                    if (Config_Common.CanhBaoKhiNhapXe == 0 && !ValidateXeMK(xeNhan, g_CuocGoi.XeNhan))
                    {
                        g_CloseForm       = false;
                        this.DialogResult = DialogResult.Cancel;
                        return;
                    }
                }
                #endregion XENHAN

                #region XEDON
                else if (s.Length > 0 && g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeDon)
                {
                    // Kiểm tra xe đó có nằm trong xe nhận
                    string xeDon = StringTools.ConvertToChuoiXeNhanChuan(s);
                    g_Return = xeDon;

                    if (!string.IsNullOrEmpty(xeDon))
                    {
                        if (xeDon == "000")
                        {
                            xeDon       = "000";
                            g_IsKetThuc = true;
                        }
                        else
                        {
                            G_XeDonLength = xeDon.Split('.').Length;
                            if (Config_Common.CanhBaoKhiNhapXe == 0 && !KiemTraXeNhan(xeDon) && (!StringTools.KiemTraTrungLapXeChay(xeDon)))
                            {
                                msgBox.Show(this, "Vui lòng nhập chính xác xe đón.Báo quản trị bổ sung xe nếu thiếu", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Question);
                                g_CloseForm       = false;
                                this.DialogResult = DialogResult.Cancel;
                                return;
                            }
                            string KenhVung_Trung;
                            string xeDangCoKhach = new CuocGoi().TONGDAI_UPDATE_XEDON_CHECKVALID(xeDon, g_CuocGoi.ThoiDiemGoi, out KenhVung_Trung);
                            if (xeDangCoKhach != "")
                            {
                                string message = String.Format("Xe {0} đã đón khách ở vùng {1} khoảng 5 phút gần đây", xeDangCoKhach, KenhVung_Trung);
                                using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.TrungXeDon, message, g_CuocGoi.IDCuocGoi))
                                {
                                    confirmXeDon.ShowDialog();
                                    if (confirmXeDon.DialogResult == DialogResult.OK)
                                    {
                                        if (confirmXeDon.Result == 1)
                                        {
                                            if (!new Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.TrungXeDon))
                                            {
                                                new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Error);
                                                return;
                                            }
                                            g_IsKetThuc = true;
                                        }
                                        else
                                        {
                                            g_IsKetThuc = false;
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                            }
                            if (Config_Common.CanhBaoKhiNhapXe == 0 && G_XeDonLength < g_CuocGoi.SoLuong)
                            {
                                const string message = "Chưa đủ xe số lượng xe yêu cầu";
                                using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon, message, g_CuocGoi.IDCuocGoi))
                                {
                                    confirmXeDon.ShowDialog();
                                    if (confirmXeDon.DialogResult == DialogResult.OK)
                                    {
                                        if (confirmXeDon.Result == 2)
                                        {
                                            if (!new Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.ChuaDuSoLuongXeDon))
                                            {
                                                new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Error);
                                                return;
                                            }
                                            g_IsKetThuc = true;
                                        }
                                        else
                                        {
                                            g_IsKetThuc = false;
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                            }
                            else if (Config_Common.CanhBaoKhiNhapXe == 0 && G_XeDonLength > g_CuocGoi.SoLuong)
                            {
                                new MessageBox.MessageBoxBA().Show("Xe đón vượt số lượng yêu cầu. Vui lòng kiểm tra lại");
                                g_IsKetThuc = false;
                                return;
                            }
                            else
                            {
                                g_IsKetThuc = true;
                            }
                            string XeNhan = g_CuocGoi.XeNhan;
                            if (Config_Common.CanhBaoKhiNhapXe == 0 && Config_Common.TongDai_HienThiCanhBao_XeDonTrungXeNhan > 0 && !StringTools.KiemTraXeDonThuocXeNhan(xeDon, XeNhan))
                            {
                                string message = string.Format("Xe {0} đón nhưng không thuộc Xe Nhận", xeDon);
                                using (frmConfirmXeDon confirmXeDon = new frmConfirmXeDon(KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan, message, xeDon))
                                {
                                    confirmXeDon.ShowDialog();
                                    if (confirmXeDon.DialogResult == DialogResult.OK)
                                    {
                                        xeDon = confirmXeDon.XeDonResult;
                                        if (!new Data.CuocGoi().TONGDAI_UPDATE_XACNHAN(g_CuocGoi.IDCuocGoi, message, confirmXeDon.Result, ThongTinDangNhap.USER_ID, KieuCanhBaoKhiNhapThongTin.XeDonKhongThuocXeNhan))
                                        {
                                            new MessageBox.MessageBoxBA().Show("Cập nhật lỗi", "Thông báo", MessageBox.MessageBoxButtonsBA.OK, MessageBox.MessageBoxIconBA.Error);
                                            return;
                                        }
                                    }
                                    else
                                    {
                                        g_IsKetThuc = false;
                                        return;
                                    }
                                }
                            }
                        }
                    }
                    g_Return = xeDon;
                }
                #endregion

                #region XENHANDENDIEM
                else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeNhanDenDiem)
                {
                    // Check xe nhận
                    string xeNhanDenDiem = StringTools.ConvertToChuoiXeNhanChuan(s);
                    g_Return = s;
                    if (Config_Common.CanhBaoKhiNhapXe == 0 && !ValidateXeNhan(xeNhanDenDiem, g_CuocGoi.XeDon))
                    {
                        return;
                    }
                }
                #endregion XENHAN

                #region GHI CHU
                if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapGhiChuTongDai)
                {
                    if (s.Length <= 0 && s.Equals(g_CuocGoi.GhiChuTongDai))
                    {
                        this.DialogResult = DialogResult.Cancel;
                        return;
                    }
                    g_Return = s;
                    g_CuocGoi.GhiChuTongDai = g_Return;
                    g_CuocGoi.TrangThaiLenh = TrangThaiLenhTaxi.TongGuiSangMoiKhach;
                    if (CuocGoi.TONGDAI_UpdateGhiChuTongDai(g_CuocGoi.IDCuocGoi, g_CuocGoi.GhiChuTongDai))
                    {
                        this.DialogResult = DialogResult.OK;
                        g_CloseForm       = true;
                    }
                }
                #endregion GHI CHU

                #region Tìm kiếm Xe
                if (g_KieuNhap == KieuNhapTrenGridTongDai.TimKiemXe)
                {
                    g_Return          = s;
                    this.DialogResult = DialogResult.OK;
                    g_CloseForm       = true;
                }
                #endregion

                #region Nhập địa chỉ trả
                if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapDiaChiTra)
                {
                    g_Return          = s;
                    this.DialogResult = DialogResult.OK;
                    g_CloseForm       = true;
                }
                #endregion

                #region Số phút báo khách chờ
                else if (g_KieuNhap == KieuNhapTrenGridTongDai.NhapPhutKhachCho)
                {
                    g_Return          = s;
                    this.DialogResult = DialogResult.OK;
                    g_CloseForm       = true;
                }
                #endregion

                else if (s.Length > 0 && g_KieuNhap == KieuNhapTrenGridTongDai.NhapXeDungDiem)
                {
                    string xeDungDiem = StringTools.ConvertToChuoiXeNhanChuan(s);
                    g_Return = xeDungDiem;
                }
                g_CloseForm       = true;
                this.DialogResult = DialogResult.OK;

                this.Close();
            }
        }