private void CpwContext_OnTradeExecuted(CoverPositionWindowViewModel context) { context.View.Close(); if (context.IsCancel) { return; } var position = context.CoverPosition; if (null == position) { position = new CoverPosition(); } position.Amount = context.LotSize; position.Coveraccount_id = context.SelectedCoveringAccount; position.OrderType = context.SelectedOrderType; position.OpenPrice = context.OpenPrice; //position.Opentime = DateTime.Now; //do not set position.OpenedBy = username; position.Commodity = context.SelectedCommodity; //position.Internalid = Guid.NewGuid(); //will be regenerated at server end.. position.Remoteid = context.Orderid; DealerService.GetInstance().saveUpdateCloseCoverPosition(position, "createUpdateCoverPosition"); }
public void saveUpdateCloseCoverPosition(CoverPosition position, string command) { GenericRequestResponseDictionary request = new GenericRequestResponseDictionary(); request["position"] = JsonConvert.SerializeObject(position); request["command"] = command; sendCommand(request, "office"); }
private void OnTriggerEnter(Collider other) { CoverPosition coverPos = other.GetComponent <CoverPosition>(); if (coverPos != null) { if (!m_coverPositionScripts.Contains(coverPos)) { m_coverPositionScripts.Add(coverPos); } } }
private void OnTriggerExit(Collider other) { CoverPosition coverPos = other.GetComponent <CoverPosition>(); if (coverPos != null) { m_coverPositionScripts.Remove(coverPos); } else { //Debug.Log(other.name); } }
private void ExecuteCloseSelectedCoverPositionCommand() { if (null == OpenCoverTradesCollectionView.CurrentItem) { return; } CoverPosition position = OpenCoverTradesCollectionView.CurrentItem as CoverPosition; position.ClosedBy = username; DealerService.GetInstance().saveUpdateCloseCoverPosition(position, "closeCoverPosition"); }
static void CreateCoverPositionWizardMenu() { GameObject gm = new GameObject(); gm.name = "CoverPosition"; gm.AddComponent <BoxCollider>(); CoverPosition co = gm.AddComponent <CoverPosition>(); co.m_LayerMask = 1 << 8; if (Selection.activeTransform) { gm.transform.SetParent(Selection.activeTransform); } gm.transform.localPosition = Vector3.zero; gm.transform.localRotation = Quaternion.identity; }
public bool CanFindBestCoverPosition(ref CoverPosition coverPositionScript) { if (m_coverFinder == null || m_coverFinder.m_coverPositionScripts.Count < 1 || m_nearestOpponentVisibleCharacter.characterGameObject == null) { coverPositionScript = null; return(false); } bool canFindCover = false; Vector3 opponentPosition = m_nearestOpponentVisibleCharacter.characterGameObject.transform.position; float shortestSqrDistToCoverPos = float.MaxValue; foreach (CoverPosition item in m_coverFinder.m_coverPositionScripts) { if (item.m_isOccupied) { continue; } Vector3 dirToOpponent = opponentPosition - item.transform.position; Debug.DrawRay(item.transform.position, dirToOpponent, Color.white, 10f); RaycastHit hitInfo; if (Physics.Raycast(item.transform.position + Vector3.up * 0.5f, dirToOpponent, out hitInfo, 3f, m_EnvironmentLayerForCover, QueryTriggerInteraction.Ignore)) { if (hitInfo.collider.gameObject.isStatic) { float sqrDist = Vector3.SqrMagnitude(transform.position - item.transform.position); float sqrDistFromPointToOpponent = dirToOpponent.sqrMagnitude; if (sqrDist < shortestSqrDistToCoverPos && sqrDistFromPointToOpponent <= m_AIField.ViewRange * m_AIField.ViewRange) { shortestSqrDistToCoverPos = sqrDist; coverPositionScript = item; canFindCover = true; } } } } if (canFindCover == false) { coverPositionScript = null; } return(canFindCover); }
private Dictionary <string, CoverPosition> CalculateCoverFloatingStatus(List <CoverPosition> receivedPositions) { Dictionary <string, CoverPosition> ret = new Dictionary <string, CoverPosition>(); string key = string.Empty; foreach (var p in receivedPositions) { key = p.Commodity; if (!ret.ContainsKey(key)) { ret[key] = new CoverPosition() { Commodity = p.Commodity }; } } foreach (var p in receivedPositions) { key = p.Commodity; if (p.OrderType.Equals(TradePosition.ORDER_TYPE_BUY)) { ret[key].SumBuyAmt += p.Amount; ret[key].SumPlBuy += p.CurrentPL; ret[key].SumBuyPrice += p.OpenPrice; ret[key].BuysIn++; } else { ret[key].SumSellAmt += p.Amount; ret[key].SumPlSell += p.CurrentPL; ret[key].SumSellPrice += p.OpenPrice; ret[key].SellsIn++; } } return(ret); }