public void Start(App.BCApplication _bcApp) { bcApp = _bcApp; scApp = bcApp.SCApplication; //宣告Timer //設定呼叫間隔時間為30ms _timer.Interval = TimeSpan.FromMilliseconds(3000); //加入callback function _timer.Tick += _timer_Tick; //開始 _timer.Start(); }
private void btn_all_adress_test_Click(object sender, EventArgs e) { sc.App.SCApplication scApp = mainForm.BCApp.SCApplication; var addresses = scApp.AddressesBLL.cache.GetAddresses(); foreach (var adr1 in addresses) { foreach (var adr2 in addresses) { if (adr1 == adr2) { continue; } List <string> guide_start_to_from_segment_ids = null; List <string> guide_start_to_from_section_ids = null; List <string> guide_start_to_from_address_ids = null; bool isSuccess = false; int total_cost = 0; (isSuccess, guide_start_to_from_segment_ids, guide_start_to_from_section_ids, guide_start_to_from_address_ids, total_cost) = mainForm.BCApp.SCApplication.GuideBLL.getGuideInfo(adr1.ADR_ID, adr2.ADR_ID); if (!isSuccess) { } else { if (adr1.IsControl) { if (!guide_start_to_from_section_ids.Contains(adr1.SEC_ID.Trim())) { } } if (adr2.IsControl) { if (!guide_start_to_from_section_ids.Contains(adr2.SEC_ID.Trim())) { } } Console.WriteLine($"form:{adr1.ADR_ID} to:{adr2.ADR_ID} OK"); } } } MessageBox.Show("OK"); }
private void btn_sendCmd_adrAdrAndAdr_Click(object sender, EventArgs e) { sc.App.SCApplication scApp = mainForm.BCApp.SCApplication; string vh_id = cmb_vhID.Text; if (string.IsNullOrWhiteSpace(vh_id)) { MessageBox.Show("No find vehile."); return; } string cmd_id = scApp.SequenceBLL.getCommandID(sc.App.SCAppConstants.GenOHxCCommandType.Debug); string cst_id = txt_cst_id.Text; string from_adr = cb_startFromTo_From_AdrToAdrToAdr.Text; string to_adr = cb_startFromTo_To_AdrToAdrToAdr.Text; string segment_startFrom = txt_segments_startFrom_adrAdrAndAdr.Text; string sections_startFrom = txt_sections_startFrom_adrAdrAndAdr.Text; string addresses_startFrom = txt_addresses_startFrom_adrAdrAndAdr.Text; string segment_FromTo = txt_segments_fromTo_adrAdrAndAdr.Text; string sections_FromTo = txt_sections_fromTo_adrAdrAndAdr.Text; string addresses_FromTo = txt_addresses_fromTo_adrAdrAndAdr.Text; string[] start_from_segs = sc.Common.SCUtility.isEmpty(segment_startFrom) ? null : segment_startFrom.Split(',').Select(sec => sec.PadLeft(3, '0')).ToArray(); string[] start_from_secs = sc.Common.SCUtility.isEmpty(sections_startFrom) ? null : sections_startFrom.Split(',').Select(sec => sec.PadLeft(4, '0')).ToArray(); string[] start_from_addresses = sc.Common.SCUtility.isEmpty(addresses_startFrom) ? null : addresses_startFrom.Split(',').Select(sec => sec.PadLeft(5, '0')).ToArray(); string[] from_to_segs = sc.Common.SCUtility.isEmpty(segment_FromTo) ? null : segment_FromTo.Split(',').Select(sec => sec.PadLeft(3, '0')).ToArray(); string[] from_to_secs = sc.Common.SCUtility.isEmpty(sections_FromTo) ? null : sections_FromTo.Split(',').Select(sec => sec.PadLeft(4, '0')).ToArray(); string[] from_to_addresses = sc.Common.SCUtility.isEmpty(addresses_FromTo) ? null : addresses_FromTo.Split(',').Select(sec => sec.PadLeft(5, '0')).ToArray(); sc.ProtocolFormat.OHTMessage.ActiveType active_type = sc.ProtocolFormat.OHTMessage.ActiveType.Loadunload; if (raid_cmd_move.Checked) { from_adr = ""; active_type = sc.ProtocolFormat.OHTMessage.ActiveType.Move; } else if (raid_cmd_load.Checked) { to_adr = ""; active_type = sc.ProtocolFormat.OHTMessage.ActiveType.Load; } else if (raid_cmd_unload.Checked) { from_adr = ""; active_type = sc.ProtocolFormat.OHTMessage.ActiveType.Unload; } else if (raid_cmd_loadunload.Checked) { active_type = sc.ProtocolFormat.OHTMessage.ActiveType.Loadunload; } else if (raid_cmd_override.Checked) { var vh = scApp.VehicleBLL.cache.getVehicle(vh_id); if (SCUtility.isEmpty(vh.OHTC_CMD)) { MessageBox.Show("ohtc cmd is empty. can't excute over ride"); return; } var cmd = scApp.CMDBLL.GetCMD_OHTCByID(vh.OHTC_CMD); cmd_id = SCUtility.Trim(vh.OHTC_CMD); cst_id = SCUtility.Trim(cmd.CARRIER_ID); active_type = sc.ProtocolFormat.OHTMessage.ActiveType.Override; from_adr = SCUtility.Trim(cmd.SOURCE); to_adr = SCUtility.Trim(cmd.DESTINATION); switch (cmd.CMD_TPYE) { case sc.E_CMD_TYPE.Move: case sc.E_CMD_TYPE.Unload: from_adr = ""; break; case sc.E_CMD_TYPE.Load: to_adr = ""; break; case sc.E_CMD_TYPE.LoadUnload: if (vh.HAS_CST == 1) { start_from_segs = null; start_from_secs = null; start_from_addresses = null; } break; } } else { return; } Task.Run(() => scApp.VehicleService.TransferRequset (vh_id, cmd_id , active_type, cst_id, start_from_segs, start_from_secs, start_from_addresses, from_to_segs, from_to_secs, from_to_addresses, from_adr, to_adr)); }
private void btn_sendCmd_adrAdrAndAdr_Click(object sender, EventArgs e) { sc.App.SCApplication scApp = mainForm.BCApp.SCApplication; string vh_id = cmb_vhID.Text; if (string.IsNullOrWhiteSpace(vh_id)) { MessageBox.Show("No find vehile."); return; } string cmd_id = scApp.SequenceBLL.getCommandID(sc.App.SCAppConstants.GenOHxCCommandType.Debug); string cst_id = txt_cst_id.Text; string from_adr = cb_startFromTo_From_AdrToAdrToAdr.Text; string to_adr = cb_startFromTo_To_AdrToAdrToAdr.Text; string segment_startFrom = txt_segments_startFrom_adrAdrAndAdr.Text; string sections_startFrom = txt_sections_startFrom_adrAdrAndAdr.Text; string addresses_startFrom = txt_addresses_startFrom_adrAdrAndAdr.Text; string segment_FromTo = txt_segments_fromTo_adrAdrAndAdr.Text; string sections_FromTo = txt_sections_fromTo_adrAdrAndAdr.Text; string addresses_FromTo = txt_addresses_fromTo_adrAdrAndAdr.Text; string[] start_from_segs = sc.Common.SCUtility.isEmpty(segment_startFrom) ? null : segment_startFrom.Split(',').Select(sec => sec.PadLeft(3, '0')).ToArray(); string[] start_from_secs = sc.Common.SCUtility.isEmpty(sections_startFrom) ? null : sections_startFrom.Split(',').Select(sec => sec.PadLeft(4, '0')).ToArray(); string[] start_from_addresses = sc.Common.SCUtility.isEmpty(addresses_startFrom) ? null : addresses_startFrom.Split(',').Select(sec => sec.PadLeft(5, '0')).ToArray(); string[] from_to_segs = sc.Common.SCUtility.isEmpty(segment_FromTo) ? null : segment_FromTo.Split(',').Select(sec => sec.PadLeft(3, '0')).ToArray(); string[] from_to_secs = sc.Common.SCUtility.isEmpty(sections_FromTo) ? null : sections_FromTo.Split(',').Select(sec => sec.PadLeft(4, '0')).ToArray(); string[] from_to_addresses = sc.Common.SCUtility.isEmpty(addresses_FromTo) ? null : addresses_FromTo.Split(',').Select(sec => sec.PadLeft(5, '0')).ToArray(); sc.ProtocolFormat.OHTMessage.CommandActionType active_type = sc.ProtocolFormat.OHTMessage.CommandActionType.Loadunload; if (raid_cmd_move.Checked) { from_adr = ""; active_type = sc.ProtocolFormat.OHTMessage.CommandActionType.Move; } else if (raid_cmd_load.Checked) { to_adr = ""; active_type = sc.ProtocolFormat.OHTMessage.CommandActionType.Load; } else if (raid_cmd_unload.Checked) { from_adr = ""; active_type = sc.ProtocolFormat.OHTMessage.CommandActionType.Unload; } else if (raid_cmd_loadunload.Checked) { active_type = sc.ProtocolFormat.OHTMessage.CommandActionType.Loadunload; } else if (raid_cmd_override.Checked) { } else { return; } //Task.Run(() => // scApp.VehicleService.TransferRequset // (vh_id, cmd_id // , active_type, cst_id, // start_from_segs, start_from_secs, start_from_addresses, // from_to_segs, from_to_secs, from_to_addresses, // from_adr, to_adr)); }