public bool getAnswer(out byte opcode, out byte[] msg, out int length) { if (RequestState == eRequestState.eNEW_ANSWER) { opcode = ReceivedMessage.Opcode; length = ReceivedMessage.Length; if (ReceivedMessage.Length > 0) { msg = new byte[ReceivedMessage.Length]; Buffer.BlockCopy(ReceivedMessage.Msg, 0, msg, 0, ReceivedMessage.Length); } else { msg = null; } RequestState = eRequestState.eSTANDBY; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); return(true); } opcode = 0; msg = null; length = 0; return(false); }
public cTexNET() { MessageState = eMessageState.eSTX; RequestState = eRequestState.eSTANDBY; MessageTimer = new Stopwatch(); RequestTimer = new Stopwatch(); MessageTimer.Start(); RequestTimer.Start(); }
public void dataSent() { if (RequestState == eRequestState.eNAK_SENT) { RequestState = RequestStateBeforeNAK; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } else if (RequestState == eRequestState.eANSWER_SENT) { RequestState = eRequestState.eSTANDBY; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } else if (RequestState == eRequestState.eREQUEST_SENT) { RequestState = eRequestState.eWAITTING_ANSWER; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } }
//----------------------------------------------------------------------------------------------------------- protected void grdOrders_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridDataItem) { DataRowView row = (DataRowView)e.Item.DataItem; int orderId = int.Parse(row["OrderID"].ToString()); string runId = row["JobId"].ToString(); using (CheckBox chk = (CheckBox)e.Item.FindControl("chkSelectOrder")) { chk.Attributes.Add("onClick", string.Format("javascript:HandleSelection(this, {0});", e.Item.ItemIndex)); chk.Attributes.Add("OrderId", orderId.ToString()); } orderCount++; totalPalletCount += (int)row["NoPallets"]; totalPalletSpaces += Convert.ToDouble(row["PalletSpaces"]); totalWeight += Convert.ToDouble(row["Weight"]); QtrPalletsTotal += Convert.ToDouble(row["QtrPallets"]); HalfPalletsTotal += Convert.ToDouble(row["HalfPallets"]); FullPalletsTotal += Convert.ToDouble(row["FullPallets"]); OverPalletsTotal += Convert.ToDouble(row["OverPallets"]); OrderRateTotal += (row["ForeignRate"] != DBNull.Value) ? Convert.ToDouble(row["ForeignRate"]) : 0.00; SubContractCostTotal += (row["SubContractRate"] != DBNull.Value) ? Convert.ToDouble(row["SubContractRate"]) : 0.00; HubChargeTotal += (row["SubContractRate"] != DBNull.Value) ? Convert.ToDouble(row["HubCharge"]) : 0.00; // Delivery At column Label lblDeliverAt = (Label)e.Item.FindControl("lblDeliverAt"); DateTime delFrom = Convert.ToDateTime(row["DeliveryFromDateTime"].ToString()); DateTime delBy = Convert.ToDateTime(row["DeliveryDateTime"].ToString()); if (lblDeliverAt != null) { if (delFrom == delBy) { // Timed booking... only show a single date. lblDeliverAt.Text = GetDate(Convert.ToDateTime(row["DeliveryDateTime"].ToString()), false); } else { // If the times span from mignight to 23:59 on the same day then // it's an 'anytime' window. if (delFrom.Date == delBy.Date && delFrom.Hour == 0 && delFrom.Minute == 0 && delBy.Hour == 23 && delBy.Minute == 59) { // It's anytime lblDeliverAt.Text = GetDate(Convert.ToDateTime(row["DeliveryDateTime"].ToString()), true); } else { // It's a booking window lblDeliverAt.Text = GetDate(Convert.ToDateTime(row["DeliveryFromDateTime"].ToString()), false) + " to " + GetDate(Convert.ToDateTime(row["DeliveryDateTime"].ToString()), false); } } } //if (row["IsTariffOverride"] != DBNull.Value && Convert.ToBoolean(row["IsTariffOverride"])) // e.Item.Cells[grdOrders.Columns.FindByUniqueName("Rate").OrderIndex].BackColor = System.Drawing.Color.Yellow; if (row["MessageStateId"] != DBNull.Value) { eMessageState messageState = (eMessageState)row["MessageStateId"]; switch (messageState) { case eMessageState.Unprocessed: e.Item.BackColor = System.Drawing.Color.Pink; break; case eMessageState.Processed: case eMessageState.NotProcessed: e.Item.BackColor = System.Drawing.Color.Violet; break; case eMessageState.Error: e.Item.BackColor = System.Drawing.Color.Red; break; } } CheckBoxList cblsurcharges = e.Item.FindControl("cblSurcharges") as CheckBoxList; EF.VigoOrder vigoOrder = EF.DataContext.Current.VigoOrderSet.Include("VigoOrderExtras.ExtraType").FirstOrDefault(v => v.OrderId == orderId); Orchestrator.Facade.ExtraType facExtraType = new Orchestrator.Facade.ExtraType(); List <Entities.ExtraType> extraTypes = facExtraType.GetForIsDisplayedOnAddUpdateOrder(); cblsurcharges.DataSource = extraTypes.OrderBy(et => et.ShortDescription); cblsurcharges.DataTextField = "ShortDescription"; cblsurcharges.DataValueField = "ExtraTypeId"; cblsurcharges.DataBind(); //Tick the PalletForce Surcharge checkboxes for each VigoOrderExtra foreach (var extra in vigoOrder.VigoOrderExtras) { ListItem item = cblsurcharges.Items.FindByValue(extra.ExtraType.ExtraTypeId.ToString()); if (item != null) { item.Selected = true; } } } else if (e.Item is GridEditableItem) { DataRowView row = (DataRowView)e.Item.DataItem; RadNumericTextBox txtRate = e.Item.FindControl("txtRate") as RadNumericTextBox; if (txtRate != null) { CultureInfo culture = new CultureInfo(int.Parse(row["LCID"].ToString())); txtRate.Culture = culture; //if (row["TariffRateId"] == null) //{ // txtRate.BackColor = System.Drawing.Color.Yellow; //} } } }
public void process() { if (MessageState == eMessageState.eNAK_TO_SEND) { if ((RequestState == eRequestState.eSTANDBY) || (RequestState == eRequestState.eWAITTING_ANSWER)) { RequestStateBeforeNAK = RequestState; RequestState = eRequestState.eSENDING_NAK; RequestTimer.Start(); RequestTimer.Restart(); } } switch (RequestState) { case eRequestState.eSTANDBY: { if (MessageState == eMessageState.eNEW_MSG) { RequestState = eRequestState.eNEW_REQUEST; RequestTimer.Restart(); } else if (MessageState == eMessageState.eNAK_RECEIVED) { if (retry > 0) { RequestState = eRequestState.eSENDING_ANSWER; RequestTimer.Restart(); retry--; } else { MessageState = eMessageState.eSTX; MessageTimer.Restart(); } } break; } case eRequestState.eNEW_REQUEST: { if (RequestTimer.ElapsedMilliseconds > Timeout) { RequestState = eRequestState.eSTANDBY; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } break; } case eRequestState.eSENDING_ANSWER: case eRequestState.eANSWER_SENT: { if (RequestTimer.ElapsedMilliseconds > Timeout) { RequestState = eRequestState.eSTANDBY; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } break; } case eRequestState.eSENDING_NAK: case eRequestState.eNAK_SENT: { if (RequestTimer.ElapsedMilliseconds > Timeout) { RequestState = RequestStateBeforeNAK; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } break; } case eRequestState.eWAITTING_ANSWER: { if (MessageState == eMessageState.eNEW_MSG) { RequestTimer.Start(); RequestTimer.Restart(); RequestState = eRequestState.eNEW_ANSWER; } else { if (RequestTimer.ElapsedMilliseconds > Timeout) { if (retry > 0) { RequestState = eRequestState.eSENDING_REQUEST; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); retry--; } else { RequestState = eRequestState.eSTANDBY; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } } } break; } case eRequestState.eNEW_ANSWER: { if (RequestTimer.ElapsedMilliseconds > Timeout) { RequestState = eRequestState.eSTANDBY; MessageState = eMessageState.eSTX; RequestTimer.Restart(); MessageTimer.Restart(); } break; } } }
public void messagePoll(int data) { switch (MessageState) { default: case eMessageState.eSTX: { if (data >= 0) { if ((byte)data == STX) { MessageState = eMessageState.eOPCODE; MessageTimer.Restart(); } else if ((byte)data == NAK) { MessageState = eMessageState.eNAK_RECEIVED; MessageTimer.Restart(); } } break; } case eMessageState.eOPCODE: { if (data >= 0) { ReceivedMessage.Opcode = (byte)data; MessageTimer.Restart(); MessageState = eMessageState.eLENGTH; } else if (MessageTimer.ElapsedMilliseconds > Timeout) { MessageState = eMessageState.eSTX; } break; } case eMessageState.eLENGTH: { if (data >= 0) { ReceivedMessage.Length = (byte)data; MessageTimer.Restart(); if (ReceivedMessage.Length > 0) { MessageReceivedBytes = 0; MessageState = eMessageState.eMSG; } else { MessageState = eMessageState.eCHKS; } } else if (MessageTimer.ElapsedMilliseconds > Timeout) { MessageState = eMessageState.eSTX; } break; } case eMessageState.eMSG: { if (data >= 0) { ReceivedMessage.Msg[MessageReceivedBytes] = (byte)data; MessageReceivedBytes++; MessageTimer.Restart(); if (MessageReceivedBytes == ReceivedMessage.Length) { MessageState = eMessageState.eCHKS; } else if (MessageReceivedBytes > ReceivedMessage.Length) { MessageState = eMessageState.eSTX; } } else if (MessageTimer.ElapsedMilliseconds > Timeout) { MessageState = eMessageState.eSTX; } break; } case eMessageState.eCHKS: { if (data >= 0) { MessageTimer.Restart(); if ((byte)data == ReceivedMessage.chks()) { MessageState = eMessageState.eNEW_MSG; } else { MessageState = eMessageState.eNAK_TO_SEND; } } else if (MessageTimer.ElapsedMilliseconds > Timeout) { MessageState = eMessageState.eSTX; } break; } case eMessageState.eNEW_MSG: case eMessageState.eNAK_RECEIVED: case eMessageState.eNAK_TO_SEND: { break; } } }
//----------------------------------------------------------------------------------------------------------- protected void grdOrders_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridDataItem) { DataRowView row = (DataRowView)e.Item.DataItem; string orderId = row["OrderID"].ToString(); string runId = row["JobId"].ToString(); using (CheckBox chk = (CheckBox)e.Item.FindControl("chkSelectOrder")) { chk.Attributes.Add("onClick", string.Format("javascript:HandleSelection(this, {0});", e.Item.ItemIndex)); chk.Attributes.Add("OrderId", orderId); } HyperLink hypUpdateOrder = e.Item.FindControl("hypUpdateOrder") as HyperLink; hypUpdateOrder.NavigateUrl = string.Format("javascript:ViewOrderProfile({0});", orderId); hypUpdateOrder.Text = orderId; HyperLink hypRun = e.Item.FindControl("hypRun") as HyperLink; hypRun.NavigateUrl = string.Format("javascript:ViewRun({0});", runId); hypRun.Text = runId; CultureInfo CurrentCulture = new CultureInfo(int.Parse(row["LCID"].ToString())); Label lblRate = e.Item.FindControl("lblRate") as Label; if (lblRate != null && row["ForeignRate"] != DBNull.Value) { lblRate.Text = ((decimal)row["ForeignRate"]).ToString("C", CurrentCulture); } Label lblSubContractRate = e.Item.FindControl("lblSubContractCost") as Label; Label lblHubCharge = e.Item.FindControl("lblHubCharge") as Label; if (row["SubContractLCID"] != DBNull.Value) { CultureInfo subContractCulture = new CultureInfo(int.Parse(row["SubContractLCID"].ToString())); if (lblSubContractRate != null && row["SubContractRate"] != DBNull.Value) { lblSubContractRate.Text = ((decimal)row["SubContractRate"]).ToString("C", subContractCulture); } if (lblHubCharge != null && row["HubCharge"] != DBNull.Value) { lblHubCharge.Text = ((decimal)row["HubCharge"]).ToString("C", subContractCulture); } } else { lblSubContractRate.Text = decimal.Zero.ToString("C", CurrentCulture); lblHubCharge.Text = decimal.Zero.ToString("C", CurrentCulture); } //if (row["IsTariffOverride"] != DBNull.Value && Convert.ToBoolean(row["IsTariffOverride"])) // e.Item.Cells[grdOrders.Columns.FindByUniqueName("Rate").OrderIndex].BackColor = System.Drawing.Color.Yellow; if (row["MessageStateId"] != DBNull.Value) { eMessageState messageState = (eMessageState)row["MessageStateId"]; switch (messageState) { case eMessageState.Unprocessed: e.Item.BackColor = System.Drawing.Color.Pink; break; case eMessageState.Processed: case eMessageState.NotProcessed: e.Item.BackColor = System.Drawing.Color.Violet; break; case eMessageState.Error: e.Item.BackColor = System.Drawing.Color.Red; break; } } } else if (e.Item is GridEditableItem) { DataRowView row = (DataRowView)e.Item.DataItem; RadNumericTextBox txtRate = e.Item.FindControl("txtRate") as RadNumericTextBox; if (txtRate != null) { CultureInfo culture = new CultureInfo(int.Parse(row["LCID"].ToString())); txtRate.Culture = culture; //if (row["TariffRateId"] == null) //{ // txtRate.BackColor = System.Drawing.Color.Yellow; //} } } }