public Task ChangeAsync(string orderId, [FromBody] OrderChangeRequest request) { if (!_ordersCache.TryGetOrderById(orderId, out var order)) { throw new InvalidOperationException("Order not found"); } try { var originator = GetOriginator(request.Originator); var correlationId = string.IsNullOrWhiteSpace(request.CorrelationId) ? _identityGenerator.GenerateGuid() : request.CorrelationId; _tradingEngine.ChangeOrder(order.Id, request.Price, request.Validity, originator, request.AdditionalInfo, correlationId, request.ForceOpen); } catch (ValidateOrderException ex) { throw new InvalidOperationException(ex.Message); } _operationsLogService.AddLog("action order.changeLimits", order.AccountId, new { orderId = orderId, request = request.ToJson() }.ToJson(), ""); return(Task.CompletedTask); }
public ResultJson EnterThing(OrderChangeRequest request) { if (OrderFunc.Instance.EnterThing(request.Id)) { return(new ResultJson { HttpCode = 200, Message = "收货成功!" }); } else { return(new ResultJson { HttpCode = 300, Message = "收货失败!" }); } }
public ResultJson SurePay(OrderChangeRequest request) { if (OrderFunc.Instance.SurePay(request.Id)) { return(new ResultJson { HttpCode = 200, Message = "支付成功!" }); } else { return(new ResultJson { HttpCode = 300, Message = "支付失败!" }); } }
public ResultJson ConvertErp(OrderChangeRequest request) { if (OrderFunc.Instance.ConvertToErp(request.Id)) { return(new ResultJson { HttpCode = 200, Message = "成功转至Erp!" }); } else { return(new ResultJson { HttpCode = 300, Message = "转到Erp失败,请查看是否已转入!" }); } }
public ResultJson ReturnFail(OrderChangeRequest request) { if (OrderFunc.Instance.ReturnFail(request.Id)) { return(new ResultJson { HttpCode = 200, Message = "退货失败!" }); } else { return(new ResultJson { HttpCode = 300 }); } }
public ResultJson UpdateExpress(OrderChangeRequest request) { if (OrderFunc.Instance.UpdateModel(new DbOpertion.Models.Order_Info { Id = request.Id, ExpressCompany = request.ExpressCompany, ExpressNo = request.ExpressNo })) { return(new ResultJson { HttpCode = 200, Message = "更新快递信息成功!" }); } else { return(new ResultJson { HttpCode = 300, Message = "更新快递信息失败!" }); } }
public ResultJson SendThing(OrderChangeRequest request) { var result = OrderFunc.Instance.SendThing2(request.Id); if (result.ToLower() == "true") { return(new ResultJson { HttpCode = 200, Message = "发货成功!" }); } else { return(new ResultJson { HttpCode = 300, Message = result }); } }
public async Task ChangeAsync(string orderId, [FromBody] OrderChangeRequest request) { if (!_ordersCache.TryGetOrderById(orderId, out var order)) { throw new InvalidOperationException("Order not found"); } ValidationHelper.ValidateAccountId(order, request.AccountId); var originator = GetOriginator(request.Originator); await _tradingEngine.ChangeOrderAsync(order.Id, request.Price, originator, request.AdditionalInfo, request.ForceOpen); _operationsLogService.AddLog("action order.changeLimits", order.AccountId, new { orderId = orderId, request = request.ToJson() }.ToJson(), ""); }
public IActionResult EditOrder([FromBody] OrderChangeRequest request) { var parseResult = Enum.TryParse(request.OrderState, true, out OrderStateEnum orderState); if (parseResult == false) { return(BadRequest("Bad OrderState supplied")); } var orderContext = _dbContext.Set <Order>(); var order = orderContext.FirstOrDefault(x => x.Id == Guid.Parse(request.OrderId)); if (order == null) { return(BadRequest("No such order")); } order.State = orderState; order.LastModifiedDate = DateTimeOffset.Now; var user = _dbContext.Set <User>().FirstOrDefault(x => x.Email == User.Claims.FirstOrDefault(y => y.Type == ClaimTypes.Name).Value); order.ModifiedBy = user; order.ModifiedById = user?.Id; if (orderState == OrderStateEnum.Completed || orderState == OrderStateEnum.Rejected) { order.FinishedDate = DateTimeOffset.Now; } var result = _dbContext.SaveChanges(); if (result > 0) { return(Ok()); } return(BadRequest("Nothing changed")); }
protected virtual void OnOrderChangeRequested(OrderChangeEventArgs e) { OrderChangeRequest?.Invoke(this, e); }