private void ProcessOk() { if (IsProcess) { var frm = new DevExpress.Utils.WaitDialogForm("Vui lòng chờ giây lát.", "Hệ thống đang Xử lý...."); while (IsProcess) { frm.Refresh(); Thread.Sleep(100); } frm.Close(); } if (_gMapMarkerA == null || _gMapMarkerB == null) { new MessageBox.MessageBoxBA().Show("Bạn chưa chọn điểm đón hoặc điểm trả"); return; } IsOk = true; this.Invoke((MethodInvoker)this.Close); }
private void btnLuu_Click(object sender, System.EventArgs e) { if (DoVaidate()) // kiểm tra dữ liệu/ { DoParse(); if (IsProcess) // nếu đang xử lý thì sẽ hiển thị process. { Action a = () => { var frm = new DevExpress.Utils.WaitDialogForm("Vui lòng chờ giây lát.", "Hệ thống đang Xử lý...."); while (IsProcess) { frm.Refresh(); Thread.Sleep(100); } frm.Close(); DoSave(); }; new Thread(() => a()).Start(); return; } DoSave(); } }
public void RouteThread() { IsProcess = true; new Thread(p => { if (IsProcess) { var frm = new DevExpress.Utils.WaitDialogForm("Vui lòng chờ giây lát.", "Hệ thống đang Xử lý...."); while (IsProcess) { frm.Refresh(); Thread.Sleep(100); } frm.Close(); } }).Start(); try { string khoangcach; string thoigian; string addressA = string.Empty; string addressB = string.Empty; string address = string.Empty; MapRoute route = null; InsertDataControl(string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, null); // if (_gMapMarkerA == null || _gMapMarkerB == null) { if (_gMapMarkerA != null) { addressA = Service_Common.GetAddressByGeoBA((float)_gMapMarkerA.Position.Lat, (float)_gMapMarkerA.Position.Lng).RemoveRoutePr(); } if (_gMapMarkerB != null) { addressB = Service_Common.GetAddressByGeoBA((float)_gMapMarkerB.Position.Lat, (float)_gMapMarkerB.Position.Lng).RemoveRoutePr(); } } // else { if (!(LoTrinh.Distance > 0 && !processFisrt)) { this.LoTrinh = Taxi.Controls.FastTaxis.TaxiChieuVe.TaxiReturn_Process.LayLoTrinh(_gMapMarkerA.Position, _gMapMarkerB.Position); } processFisrt = true; if (!string.IsNullOrEmpty(LoTrinh.LoTrinh_DiaChi)) { this.Distance = (int)LoTrinh.Distance; khoangcach = (this.Distance).ToString("#,##0.##") + " km"; TinhTienTheoKm objTinhTien = new TinhTienTheoKm(this.LoaiXeId, Distance); TienDuKien = objTinhTien.TongTien1Chieu; time = (float)((float)this.Distance / 40); if (time < 1) { thoigian = ((int)(time * 60)).ToString() + " phút"; } else { thoigian = ((int)time).ToString() + " giờ " + ((int)(((time - ((int)time))) * 60)).ToString() + " phút"; } address = this.LoTrinh.LoTrinh_DiaChi.Replace("=>", "<br/>=>"); route = new MapRoute(this.LoTrinh.ListPoint, "Lộ trình"); } else { khoangcach = "-1"; thoigian = "Không tồn tại đường"; } } InsertDataControl(khoangcach, thoigian, addressA, addressB, address, route); } catch (Exception ex) { new Log().WriteLog(ThongTinDangNhap.USER_ID, "frmUpdateTrip_Map\\RouteThread", DateTime.Now, string.Format("Số lần {0}:{1}", countRouteThread, ex.Message)); if (countRouteThread < 5) { countRouteThread++; RouteThread(); } else { countRouteThread = 0; } } countRouteThread = 0; IsProcess = false; }