//将下单InputOrder结构转换成xml字符串 public void Transfer(InputOrder inputOrder, ref string strXml) { int OrderRef = Int32.Parse(RunSingleStrategy.StrategyInfo.OrderRef); //生成xml字符串流: XmlDocument xmldoc = new XmlDocument(); XmlElement xmlelem; xmlelem = xmldoc.CreateElement("", "OrderInput", ""); xmlelem.SetAttribute("DealerID", RunSingleStrategy.StrategyInfo.TraderName); xmlelem.SetAttribute("BrokerID", "8090"); xmlelem.SetAttribute("InstrumentID", inputOrder.InstrumentID); xmlelem.SetAttribute("Direction", inputOrder.Direction.ToString()); xmlelem.SetAttribute("OpenClose", inputOrder.OpenClose.ToString()); xmlelem.SetAttribute("Hedge", inputOrder.Hedge.ToString()); xmlelem.SetAttribute("Price", inputOrder.Price.ToString()); xmlelem.SetAttribute("IsMarket", inputOrder.IsMarket.ToString()); xmlelem.SetAttribute("Qty", inputOrder.Qty.ToString()); xmlelem.SetAttribute("SessionID", RunSingleStrategy.StrategyInfo.SessionID.ToString()); xmlelem.SetAttribute("FrontID", RunSingleStrategy.StrategyInfo.FrontID.ToString()); xmlelem.SetAttribute("OrderRef", (OrderRef++).ToString()); RunSingleStrategy.StrategyInfo.OrderRef = OrderRef.ToString(); xmldoc.AppendChild(xmlelem); strXml = xmldoc.InnerXml; }
public void InsertOrder(InputOrder order) { LogCenter.Log("下单:" + order.ToString()); var field = new ThostFtdcInputOrderField { BrokerID = order.BrokerID, InvestorID = order.InvestorID, Direction = (EnumDirectionType)order.Direction, CombOffsetFlag_0 = (EnumOffsetFlagType)order.OffsetFlag, InstrumentID = order.InstrumentID, LimitPrice = order.Price, VolumeTotalOriginal = order.Volume, UserID = order.GroupID, CombHedgeFlag_0 = EnumHedgeFlagType.Speculation, ForceCloseReason = EnumForceCloseReasonType.NotForceClose, ContingentCondition = EnumContingentConditionType.Immediately, TimeCondition = EnumTimeConditionType.GFD, VolumeCondition = EnumVolumeConditionType.AV, OrderPriceType = EnumOrderPriceTypeType.LimitPrice, MinVolume = 1, IsAutoSuspend = 1, }; int i = this.ReqOrderInsert(field, 0); if (i != 0) { LogCenter.Error("输入报单错误:" + CTPErrorHelper.GetError(i)); } }
public void InitializeCharacter(CharacterIdentity ci) { characterIdentity = ci; trans = model.GetComponent <Transform>(); rigid = GetComponent <Rigid>(); mState = new IdleState(); mDelayState = new IdleDelayState(); gameSystemState = SystemOrder.NOTHING; inputOrder = InputOrder.stand; attackOrder = -1; walkDirection = new Vector3(0, 0, 0); sightRotation = new Vector3(0, 0, 0); posture = new Posture(this); walkPhase = 0; attackPhase = 0; holdingItemIndex = -1; if (characterIdentity.isPlayer) { GetComponent <Basic>().mManager.allManager.SetCamera(gameObject); posture.BecomeInvisible(); targetCharacter = null; } else { targetCharacter = GetComponent <Basic>().mManager.allManager.player; } }
public override CharacterState UpdataState(Character character, InputOrder input) { CharacterState tempState = this; if (character.OnGround()) { //Debug.Log("On Ground Now."); switch (input) { case InputOrder.stand: tempState = new IdleState(); break; case InputOrder.walk: tempState = new WalkState(); break; case InputOrder.squat: tempState = new SquatState(); break; default: tempState = new IdleState(); break; } } return(tempState); }
// 成交通知 public override bool OnTrade(TradeInfo trade) { QryTradingAccount qryTA = new QryTradingAccount(); TradingAccount taRet = new TradingAccount(); GetTradingAccount(qryTA, ref taRet); QryPosition qryPiso = new QryPosition(); List <PositionInfo> lstPosi = new List <PositionInfo>(); GetPositions(qryPiso, ref lstPosi); InputOrder req = new InputOrder(); req.InstrumentID = trade.InstrumentID; req.Qty = trade.Volume; req.Price = trade.Price + (trade.Direction == '0' ? -1.0 : 1.0); req.Hedge = '1'; req.IsMarket = false; req.Direction = trade.Direction == '0' ? '1' : '0'; req.OpenClose = '1'; ReqOrderInsert(req); return(true); }
public void MergeFrom(RspOrderInsertMsg other) { if (other == null) { return; } if (other.inputOrder_ != null) { if (inputOrder_ == null) { InputOrder = new global::Evelynn.Base.Request.InputOrderField(); } InputOrder.MergeFrom(other.InputOrder); } if (other.error_ != null) { if (error_ == null) { Error = new global::Evelynn.Base.Response.ErrorField(); } Error.MergeFrom(other.Error); } if (other.RequestId != 0) { RequestId = other.RequestId; } if (other.IsLast != false) { IsLast = other.IsLast; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
public void GetOrder() { //process system order first SystemOrder systemOder = characterIdentity.GetSystemOrder(); gameSystemState ^= systemOder; if (systemOder != SystemOrder.NOTHING) { GetComponent <Basic>().mManager.allManager.uiManager.ProcessSystemOrder(gameSystemState); } //process gameplay order if (gameSystemState == SystemOrder.NOTHING) { GameObject target = FindTarget(); //woud be better put in lateupdate (after fixing physics) inputOrder = characterIdentity.GetInputOrder(); walkDirection = characterIdentity.GetWalkingDirection(); sightRotation = characterIdentity.GetSightRotation(gameObject, target); attackOrder = characterIdentity.GetAttackOrder(); if (characterIdentity.GetThrowOrder()) { ThrowHoldingItem(); } } else { inputOrder = InputOrder.stand; walkDirection = Vector3.zero; sightRotation = Vector3.zero; attackOrder = -1; } }
public override int GetHashCode() { int hash = 1; if (inputOrder_ != null) { hash ^= InputOrder.GetHashCode(); } if (error_ != null) { hash ^= Error.GetHashCode(); } if (RequestId != 0) { hash ^= RequestId.GetHashCode(); } if (IsLast != false) { hash ^= IsLast.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public override CharacterState UpdataState(Character character, InputOrder input) { CharacterState tempState = this; if (!character.OnGround()) { tempState = new JumpState(); } else { switch (input) { case InputOrder.stand: tempState = new IdleState(); break; case InputOrder.jump: character.DoJump(); tempState = new JumpState(); break; case InputOrder.squat: tempState = new SquatState(); break; } } return(tempState); }
public void ShouldNotAllowOrderToAddWhenThereIsOverlapDateTime() { var gasStation = _orderData.GasStations.First(); var inputOrder = new InputOrder { CarrierId = Guid.NewGuid(), Comments = "Manual Order", OrderType = SharedKernel.Enums.OrderType.Manual, GasStationId = gasStation.Id, FromTime = new DateTime(2020, 11, 8, 7, 0, 0), ToTime = new DateTime(2020, 11, 8, 10, 0, 0), LineItems = gasStation.Tanks.Select( x => new InputOrderProduct { TankId = x.Id, Quantity = x.Measurement.Quantity }) }; Order?entity = Order.Create(inputOrder, gasStation) !.Entity; var manageOrder = new ManageOrder(_orderData.Orders); Assert.True(manageOrder.Add(entity !).IsConflicting); Assert.True(manageOrder.Orders.Count(x => x.GasStationId == entity !.GasStationId) == 3); }
private void AddProductInputsFromJson(long inputOrderID, JObject json) { InputOrder inputOrder = ClarityDB.Instance.InputOrders.FirstOrDefault(x => x.ID == inputOrderID); var productInputsJsons = json.Value <JArray>("productInputs"); if (productInputsJsons != null) { foreach (JObject productInputsJson in productInputsJsons) { string productName = productInputsJson.Value <string>("productName"); Product product = getProductByName(productName); if (product != null) { CreateProductInputForInputOrder(productInputsJson, inputOrder, product.ID); } else { JObject productJson = new JObject(); productJson["name"] = productName; ProductService productSevice = new ProductService(); productSevice.Create(productJson); Product productAfterCreating = getProductByName(productName); CreateProductInputForInputOrder(productInputsJson, inputOrder, productAfterCreating.ID); } } ClarityDB.Instance.SaveChanges(); } }
public async Task <IActionResult> Add([FromBody] InputOrder input) { var currentCustomer = await _currentUser.GetCurrentUser(); if (currentCustomer == null) { return(Unauthorized()); } var package = await _context.Packages.FindAsync(input.PackageId); if (package == null) { return(NotFound()); } if (!IsValidQuantity(input.ImageQuantity, package)) { return(BadRequest("Invalid quantity")); } var price = CalculatePrice(package, input.ImageQuantity); Order order = input.ToModel(currentCustomer, package, price); await _context.Orders.AddAsync(order); await _context.SaveChangesAsync(); return(Ok(await _handler.OutputFor(order))); }
//Clickable clicked = rayHit.transform.GetComponent<Clickable>() as Clickable; void Start() { inputOrder = new InputOrder(); startMouse = new Vector2(100, 100); currentMouse = new Vector2(200, 200); clickStart = false; dragStart = false; }
// 请求下单 public int ReqOrderInsert(InputOrder inputOrder) { DebugOut("Call CStrategy Function ReqOrderInsert from MainForm Successfully"); if (this.orderServer == null) { return(999); } return(this.orderServer.ReqOrderInsert(inputOrder)); }
public override void OnMouseClick(int mouseButton, InputOrder inOrder) { if (inOrder.order.actors.Count != 0 || inOrder.order.subject != null) { inOrder.AddAsObject(this); inOrder.PerformOrder(); inOrder.Clear(); } }
public void GetInputOrder_CreateInputCreateOrderFromArrayOfString_returnTrue() { string[] input = new string[] { "create", "machine2", "IDX147852" }; OrderManager ordM = new OrderManager(); InputOrder inputOrder = ordM.GetInputOrder(input); Assert.IsTrue(inputOrder.Command == "create"); Assert.IsTrue(inputOrder.Param1 == "machine2"); Assert.IsTrue(inputOrder.Param2 == "IDX147852"); }
public void GetInputOrder_AddInputOrderFromArrayOfString_returnTrue() { string[] input = new string[] { "add", "IDX147852", "25" }; OrderManager ordM = new OrderManager(); InputOrder inputOrder = ordM.GetInputOrder(input); Assert.IsTrue(inputOrder.Command == "add"); Assert.IsTrue(inputOrder.Param1 == "IDX147852"); Assert.IsTrue(inputOrder.Param2 == "25"); }
public void GetInputOrder_TemperatureInputOrderFromArrayOfString_returnTrue() { string[] input = new string[] { "temperature", "IDX147852", "120" }; OrderManager ordM = new OrderManager(); InputOrder inputOrder = ordM.GetInputOrder(input); Assert.IsTrue(inputOrder.Command == "temperature"); Assert.IsTrue(inputOrder.Param1 == "IDX147852"); Assert.IsTrue(inputOrder.Param2 == "120"); }
private void CreateProductInputForInputOrder(JObject json, InputOrder inputOrder, long productId) { ProductInput productInput = ProductInput.FromJson(json); productInput.ProductID = productId; productInput.CreatedDate = DateTime.Now; productInput.InputOrderID = inputOrder.ID; inputOrder.ProductInputs.Add(productInput); //Increase quantity in Inventory updateInventory(productInput); }
private void updateInventoryAfterDeleteInputOrder(long inputOrderID) { InputOrder inputOrder = ClarityDB.Instance.InputOrders.FirstOrDefault(x => x.ID == inputOrderID); if (inputOrder != null && inputOrder.ProductInputs != null && inputOrder.ProductInputs.Count > 0) { foreach (ProductInput productInput in inputOrder.ProductInputs) { Inventory inventory = ClarityDB.Instance.Inventories.FirstOrDefault(x => x.ProductID == productInput.ProductID); inventory.Quantity -= productInput.Quantity; } } }
public static void WriteInputOrder(InputOrder inputOrder) { var orderJson = JsonConvert.SerializeObject(inputOrder, Formatting.Indented); Console.WriteLine(); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine(@"Input JSON was:"); Console.WriteLine(); Console.ForegroundColor = ConsoleColor.DarkCyan; Console.WriteLine(orderJson); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine(); }
public List <FlatOutput> Convert(InputOrder source, List <FlatOutput> destination, ResolutionContext context) { List <FlatOutput> result = new List <FlatOutput>(source.Items.Count); source.Items.ForEach(i => { //result.Add(context.Mapper.Map<FlatOutput>(i)); FlatOutput item = context.Mapper.Map <FlatOutput>(i); item.OrderId = source.OrderID; result.Add(item); }); return(result); }
public RestApiResult GetInputOrderByID(long id) { InputOrder inputOrder = ClarityDB.Instance.InputOrders.FirstOrDefault(x => x.ID == id); if (inputOrder == null) { return(new RestApiResult { StatusCode = HttpStatusCode.NotFound }); } return(new RestApiResult { StatusCode = HttpStatusCode.OK, Json = inputOrder.ToJson() }); }
/// <summary> /// 添加新行情。 /// </summary> /// <param name="bCalcImmediately" default=false>是否立即进行指标计算</param> /// <returns> /// true: 成功 /// false: 失败,原因指标对象可能未初始化 /// </returns> public override bool AppendMD(MarketDetph md, bool bCalcImmediately) { // 预处理深度行情,并缓存到未算深度行情队列中。 base.AppendMD(md, bCalcImmediately); // 请在这里填写实现代码。 ma.AppendMD(md, bCalcImmediately); macd.AppendMD(md, bCalcImmediately); string[] timesplit = md.updateTime.Split(':'); if (Int32.Parse(timesplit[2]) < 1) { InputOrder req = new InputOrder(); req.InstrumentID = md.instrumentId; req.Qty = 1; req.Price = md.latestPrice; req.Hedge = '0'; req.IsMarket = false; if (Int32.Parse(timesplit[1]) > 30) { req.Direction = '0'; req.OpenClose = '0'; } else { req.Direction = '1'; req.OpenClose = '1'; } ReqOrderInsert(req); } // 是否需要立即进行指标计算。 if (bCalcImmediately) { return(CalculateMDIndicator()); } else { return(true); } }
public RestApiResult Update(long id, JObject json) { InputOrder inputOrder = ClarityDB.Instance.InputOrders.FirstOrDefault(x => x.ID == id); if (inputOrder == null) { return(new RestApiResult { StatusCode = HttpStatusCode.NotFound }); } inputOrder.ApplyJson(json); UpdateProductInputsFromJson(id, json); ClarityDB.Instance.SaveChanges(); return(new RestApiResult { StatusCode = HttpStatusCode.OK, Json = json }); }
private void AddProductInputsFromJson(long inputOrderID, JObject json) { InputOrder inputOrder = ClarityDB.Instance.InputOrders.FirstOrDefault(x => x.ID == inputOrderID); var productInputsJsons = json.Value <JArray>("productInputs"); if (productInputsJsons != null) { foreach (JObject productInputsJson in productInputsJsons) { ProductInput productInput = ProductInput.FromJson(productInputsJson); productInput.CreatedDate = DateTime.Now; productInput.InputOrderID = inputOrderID; inputOrder.ProductInputs.Add(productInput); //Increase quantity in Inventory updateInventory(productInput); } ClarityDB.Instance.SaveChanges(); } }
public RestApiResult Delete(long id) { InputOrder inputOrder = ClarityDB.Instance.InputOrders.FirstOrDefault(x => x.ID == id); if (inputOrder == null) { return(new RestApiResult { StatusCode = HttpStatusCode.NotFound }); } //Decrease quantity in Inventory when delete InputOrder updateInventoryAfterDeleteInputOrder(id); ClarityDB.Instance.InputOrders.Remove(inputOrder); ClarityDB.Instance.SaveChanges(); return(new RestApiResult { StatusCode = HttpStatusCode.OK, Json = inputOrder.ToJson() }); }
public void MergeFrom(ReqOrderInsertMsg other) { if (other == null) { return; } if (other.inputOrder_ != null) { if (inputOrder_ == null) { InputOrder = new global::Evelynn.Base.Request.InputOrderField(); } InputOrder.MergeFrom(other.InputOrder); } if (other.RequestId != 0) { RequestId = other.RequestId; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
public void TreatInputOrder_SetMachineTemperature_returnTrue() { InputOrder io = new InputOrder() { Command = "temperature", Param1 = "IDX123456", Param2 = "120" }; //Machine maskin = new Machine() //{ // MachineId = "IDX123456", // MachineName = "Maskina" //}; var mockMgr = new Mock <IMachineManager>(MockBehavior.Strict); //mockMgr.Setup(x => x.CreateMachine(It.IsAny<Machine>())).Returns(()=>true); mockMgr.Setup(x => x.SetTemperature(120, "IDX123456")).Returns(true); var ordM = new OrderManager(mockMgr.Object); Assert.AreEqual(ordM.TreatInputOrder(io), "success"); }
public void TreatInputOrder_CreateMachineFromStringInput_returnTrue() { InputOrder io = new InputOrder() { Command = "create", Param1 = "MACHINE1", Param2 = "IDX123456" }; Machine maskin = new Machine() { MachineId = "IDX123456", MachineName = "MACHINE1" }; var mockMgr = new Mock <IMachineManager>(); //mockMgr.Setup(x => x.CreateMachine(maskin)).Returns(true); mockMgr.Setup(x => x.CreateMachine(It.IsAny <Machine>())).Returns(() => true); OrderManager ordM = new OrderManager(mockMgr.Object); Assert.AreEqual(ordM.TreatInputOrder(io), "success"); }
public override void OnMouseClick(int mouseButton, InputOrder inOrder) { inOrder.AddAsActor(this); Debug.Log("BITCH DON'T CLICK ME"); }
public override void OnMouseClick(int mouseButton, InputOrder inOrder) { inOrder.AddAsSubject(this); }
/* When the person is clicked, it must respond. How? Dunno. * @param mouseButton 0 = left click, 1 = right click */ public virtual void OnMouseClick(int mouseButton, InputOrder queue) { Debug.Log("OnMouseClick() is not overriden in subclass: " + this.ToString()); }