public static Color GetOrderStateColour(eOrderStatus orderStatus, bool flaggedReadyForInvoicing) { switch (orderStatus) { case eOrderStatus.Approved: return(Color.White); case eOrderStatus.Delivered: if (flaggedReadyForInvoicing) { return(Color.Yellow); } else { return(Color.LightBlue); } case eOrderStatus.Invoiced: return(Color.Gold); case eOrderStatus.Cancelled: return(Color.Khaki); default: return(Color.Empty); } }
void grdOrders_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item.ItemType == GridItemType.Item || e.Item.ItemType == GridItemType.AlternatingItem) { if (e.Item.OwnerTableView.Name == grdOrders.MasterTableView.Name) { DataRowView drv = (DataRowView)e.Item.DataItem; eOrderStatus orderStatus = (eOrderStatus)drv["OrderStatusID"]; e.Item.Style["background-color"] = Orchestrator.WebUI.Utilities.GetOrderStateColourForHTML(orderStatus, false); Telerik.Web.UI.RadNumericTextBox rntForiegnRate = e.Item.FindControl("rntForeignRate") as Telerik.Web.UI.RadNumericTextBox; rntForiegnRate.Value = double.Parse(drv["ForeignRate"].ToString()); // Set the rate culture CultureInfo culture = new CultureInfo(this.OrderGroup.LCID); if (_decimalPlaces != 2) { culture.NumberFormat.CurrencyDecimalDigits = _decimalPlaces; } rntForiegnRate.Culture = culture; HtmlAnchor hypRun = e.Item.FindControl("hypRun") as HtmlAnchor; if (hypRun != null) { if (drv["JobId"] != DBNull.Value) { hypRun.HRef = "javascript:ViewJob(" + drv["JobId"].ToString() + ");"; hypRun.InnerHtml = drv["JobId"].ToString(); } } } } }
public void SetOrderStatus(int orderId, eOrderStatus status) { if (Cache.ContainsKey(orderId)) { Cache[orderId].Status = status; if (status == eOrderStatus.DELIVERED) Cache[orderId].DeliveredAt = DateTime.Now; } }
public async Task <ActionResult <OrderResource> > SetStatus(string orderId, eOrderStatus status) { var orderEntity = await Repository.Get(orderId); if (orderEntity == null) { return(NotFound(orderId)); } orderEntity.Status = status; await Repository.Update(orderEntity); return(await Map(orderEntity)); }
public void SetOrderStatus(int orderId, eOrderStatus status) { DataStore.SetOrderStatus(orderId, status); if (Cache.ContainsKey(orderId)) { Cache[orderId].Status = status; if (status == eOrderStatus.DELIVERED) Cache[orderId].DeliveredAt = DateTime.Now; } else { Cache.Add(orderId, DataStore.GetOrderById(orderId)); } }
public void SetOrderStatus(int orderId, eOrderStatus status) { List<Order> orders = AllOrders(); Order o = orders.Where(x => x.OrderID == orderId).FirstOrDefault(); if (o != null) { o.Status = status; if (status == eOrderStatus.DELIVERED) o.DeliveredAt = DateTime.Now; using (FileStream stream = File.Open(FilePath, FileMode.Create)) { Serializer.Serialize(stream, orders); } } }
void IMT4ServerConnectorHost.OnResponse( ReturnCode errorcode, string errormessage, eMT4ServerType serverIndex, MT4REQ reqType, eOrderStatus trans_status, int masterLogin, /*int orderOrLogin,*/ Guid server_trans_id, eAccountType accType, MT4REQMODE reqMode, MT4Request request) { try { OnResponseAsync( errorcode, errormessage, serverIndex, reqType, trans_status, masterLogin, /*orderOrLogin,*/ server_trans_id, accType, reqMode, request, CancellationToken.None).Wait(); } catch (Exception exception) { m_ptrLogger.LogException(exception); } }
void btnConfirmOrders_Click(object sender, EventArgs e) { // If the user can approve orders, automatically mark these orders as approved. bool autoApprove = Security.Authorise.CanAccess(eSystemPortion.ApproveOrder); eOrderStatus newOrderStatus = autoApprove ? eOrderStatus.Approved : eOrderStatus.Awaiting_Approval; List <int> orderIDs = new List <int>(); foreach (GridItem row in gvOrders2.SelectedItems) { int orderID = int.Parse(row.OwnerTableView.DataKeyValues[row.ItemIndex]["OrderID"].ToString()); orderIDs.Add(orderID); } if (orderIDs.Count > 0) { Facade.IOrder facOrder = new Facade.Order(); facOrder.Update(orderIDs, newOrderStatus, ((Entities.CustomPrincipal)Page.User).UserName); } }
public static string GetOrderStateColourForHTML(eOrderStatus orderStatus, bool flaggedReadyForInvoicing) { Color colour = GetOrderStateColour(orderStatus, flaggedReadyForInvoicing); byte zeroValue = 0; if (colour.R == zeroValue && colour.G == zeroValue && colour.B == zeroValue) { if (colour.Name.Length > 0) { return("#" + colour.Name); } else { return("#000000"); } } else { return("#" + ConvertToHexString(colour.R, 2) + ConvertToHexString(colour.G, 2) + ConvertToHexString(colour.B, 2)); } }
ActionOutput <AddUpdateImageEditorModel> IEditorManager.GetPostCardDetailsByID(int PostCardID = 0, int userID = 0) { var result = new ActionOutput <AddUpdateImageEditorModel>(); if (PostCardID > 0) { var postcard = Context.UserPostCards.FirstOrDefault(x => x.ID == PostCardID); if (postcard != null) { if (userID > 0 && postcard.UserID != userID) { return new ActionOutput <AddUpdateImageEditorModel>() { Message = "No acess for this record.", Status = ActionStatus.Error } } ; var model = new AddUpdateImageEditorModel(); model = Mapper.Map <UserPostCard, AddUpdateImageEditorModel>(postcard, model); model.Recipients = Mapper.Map <List <UserPostCardRecipient>, List <UserRecipientModel> >(postcard.UserPostCardRecipients.ToList(), model.Recipients.ToList()); result.Object = model; result.Message = "Post card details"; result.Status = ActionStatus.Successfull; } else { result.Message = "No Record found."; result.Status = ActionStatus.Error; } } return(result); } ActionOutput <AddUpdateImageEditorModel> IEditorManager.GetDemoPostCardListing() { var emailId = Config.DemoPostCardEmail; var result = new ActionOutput <AddUpdateImageEditorModel>(); if (!string.IsNullOrEmpty(emailId)) { var postcard = Context.UserPostCards.Where(x => x.IsDeleted != true && x.User.Email == emailId).OrderByDescending(x => x.ID).Take(8).ToList(); if (postcard.Count > 0) { var model = new List <AddUpdateImageEditorModel>(); model = Mapper.Map <List <UserPostCard>, List <AddUpdateImageEditorModel> >(postcard.ToList(), model); result.List = model.ToList(); } result.Message = string.Empty; result.Status = ActionStatus.Successfull; } return(result); } ActionOutput IEditorManager.DeletePostCardByID(int PostCardID, int userID = 0) { var postcard = Context.UserPostCards.FirstOrDefault(c => c.ID == PostCardID); if (userID > 0 && postcard.UserID != userID) { return new ActionOutput() { Message = "No access for this postcard.", Status = ActionStatus.Error } } ; postcard.IsDeleted = true; postcard.DeletedOn = DateTime.UtcNow; Context.SaveChanges(); return(new ActionOutput() { Message = "Post card deleted successfully", Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.RejectWithReason(RejectWithReasonModel model) { var postcard = Context.UserPostCardRecipients.FirstOrDefault(c => c.ID == model.RecipientCardID); var msg = ""; if (postcard.IsRejected == true) { postcard.CardStatus = PreviousCardStatus(ref postcard); postcard.IsRejected = false; } else { postcard.IsRejected = true; postcard.IsApproved = false; postcard.IsCompleted = false; postcard.IsError = false; postcard.RejectedOn = DateTime.UtcNow; postcard.RejectedReason = model.Reason; postcard.CardStatus = (int)CardStatusTypes.Rejected; msg = "Rejected successfully"; IEmailManager _em = new EmailManager(); if (postcard.UserPostCard.User.OrderStatusNotification != null && postcard.UserPostCard.User.OrderStatusNotification == true) { _em.SendRejectionEmailToUser(postcard.ID, model.Reason); } postcard.UserHistories.Add(new UserHistory() { UserFK = postcard.UserPostCard.UserID, Type = "Order Rejected", TokenChange = "+1", AddedOn = DateTime.UtcNow, TokenAvailable = postcard.UserPostCard.User.CardsCount }); if (postcard.IsError == false || postcard.IsError == null) { postcard.UserPostCard.User.CardsCount += 1; } } Context.SaveChanges(); return(new ActionOutput() { Message = msg, Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.ApprovePostCardByID(int PostCardID) { IEmailManager _emailManager = new EmailManager(); var status = ""; var message = ""; var postcard = Context.UserPostCards.FirstOrDefault(c => c.ID == PostCardID); if (postcard.IsApproved == true) { postcard.IsApproved = false; postcard.ApprovedOn = null; status = "disapproved"; message = "Post card disapproved successfully"; } else { postcard.IsApproved = true; postcard.ApprovedOn = DateTime.UtcNow; status = "approved"; message = "Post card approved successfully"; } Context.SaveChanges(); if (postcard.User.OrderPlacedNotification == true && postcard.User.OrderPlacedNotification != null) { _emailManager.SendOrderStatusChangeMailForUser(postcard.User, status); } return(new ActionOutput() { Message = message, Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.RejectPostCardByID(int PostCardID) { IEmailManager _emailManager = new EmailManager(); var status = ""; var message = ""; var postcard = Context.UserPostCards.FirstOrDefault(c => c.ID == PostCardID); if (postcard.IsRejected == true) { postcard.IsRejected = false; postcard.RejectedOn = null; message = "Rejection removed successfully"; } else { postcard.IsRejected = true; postcard.RejectedOn = DateTime.UtcNow; message = "Post card rejected successfully"; status = "Rejected"; } if (postcard.User.OrderPlacedNotification == true && postcard.User.OrderPlacedNotification != null) { _emailManager.SendOrderStatusChangeMailForUser(postcard.User, status); } Context.SaveChanges(); return(new ActionOutput() { Message = message, Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.UpdateOrderStatus(int orderID, short Status) { IEmailManager _emailManager = new EmailManager(); eOrderStatus status = (eOrderStatus)Status; var result = new ActionOutput(); var order = Context.UserOrders.FirstOrDefault(c => c.ID == orderID); if (order != null) { order.OrderStatus = Status; Context.SaveChanges(); result.Message = "Order status updated successfully"; result.Status = ActionStatus.Successfull; } else { result.Message = "No record found"; result.Status = ActionStatus.Error; } if (order.UserPostCard.User.OrderPlacedNotification == true && order.UserPostCard.User.OrderPlacedNotification != null) { _emailManager.SendOrderStatusChangeMailForUser(order.UserPostCard.User, status.ToString()); } return(result); } ActionOutput IEditorManager.CancelPostCardByID(int PostCardID) { IEmailManager _emailManager = new EmailManager(); ActionOutput result = new ActionOutput(); result.Message = "Post card request cancelled successfully"; var postcard = Context.UserPostCards.FirstOrDefault(c => c.ID == PostCardID); if (postcard != null) { if (postcard.IsApproved == true) { result.Message = "Card already approved by the admin."; result.Status = ActionStatus.Failed; } if (postcard.IsCancel == true) { result.Message = "Card already cancelled by you."; result.Status = ActionStatus.Failed; } if (postcard.IsCompleted == true) { result.Message = "Card already completed by the admin."; result.Status = ActionStatus.Failed; } if (postcard.IsDeleted == true) { result.Message = "You can not cancel the deleted card."; result.Status = ActionStatus.Failed; } if (postcard.IsRejected == true) { result.Message = "Card already rejected by the admin."; result.Status = ActionStatus.Failed; } if (postcard.AddedOn.Value.AddMinutes(15) >= DateTime.UtcNow) { postcard.IsCancel = true; postcard.CancelledOn = DateTime.UtcNow; foreach (var item in postcard.UserPostCardRecipients) { item.IsCancelled = true; item.CancelledOn = DateTime.UtcNow; item.CardStatus = (int)CardStatusTypes.Cancelled; postcard.User.CardsCount += 1; } Context.SaveChanges(); //if (postcard.User.OrderPlacedNotification == true && postcard.User.OrderPlacedNotification != null) // _emailManager.SendOrderStatusChangeMailForUser(postcard.User, "Cancelled"); _emailManager.SendOrderStatusToAdmin("Cancelled", postcard.User); result.Status = ActionStatus.Successfull; } else { result.Message = "Time expired and now your order is placed."; result.Status = ActionStatus.Failed; } } else { result.Message = "No record found."; result.Status = ActionStatus.Failed; } return(result); } ActionOutput IEditorManager.ApproveReceiptent(int ReceiptentID) { IEmailManager _emailManager = new EmailManager(); var message = ""; var postcard = Context.UserPostCardRecipients.FirstOrDefault(c => c.ID == ReceiptentID); if (postcard.IsApproved == false || postcard.IsApproved == null) { postcard.IsApproved = true; postcard.IsCompleted = false; postcard.IsError = false; postcard.IsRejected = false; postcard.CardStatus = (int)CardStatusTypes.Approved; message = "Post card recipient approved successfully"; //if (postcard.UserPostCard.User.OrderPlacedNotification == true && postcard.UserPostCard.User.OrderPlacedNotification != null) // _emailManager.SendOrderStatusChangeMailForUser(postcard.UserPostCard.User, "recipient approved"); postcard.UserHistories.Add(new UserHistory() { UserFK = postcard.UserPostCard.UserID, Type = "Order", Status = "Order Approved", TokenChange = "", AddedOn = DateTime.UtcNow, TokenAvailable = postcard.UserPostCard.User.CardsCount }); } else { if (postcard.IsApproved == true) { postcard.CardStatus = PreviousCardStatus(ref postcard); postcard.IsApproved = false; postcard.IsError = false; postcard.IsRejected = false; message = "Post card recipients disapproved successfully"; } //if (postcard.UserPostCard.User.OrderPlacedNotification == true && postcard.UserPostCard.User.OrderPlacedNotification != null) // _emailManager.SendOrderStatusChangeMailForUser(postcard.UserPostCard.User, "recipient disapproved"); } Context.SaveChanges(); return(new ActionOutput() { Message = message, Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.CompletePostCard(int postcardID) { IEmailManager _emailManager = new EmailManager(); var message = ""; ActionStatus status; var postcard = Context.UserPostCards.FirstOrDefault(c => c.ID == postcardID); if (postcard != null) { postcard.IsCompleted = true; postcard.CompletedOn = DateTime.UtcNow; message = "Post card completed successfully"; status = ActionStatus.Successfull; Context.SaveChanges(); if (postcard.User.OrderStatusNotification == true && postcard.User.OrderStatusNotification != null) { _emailManager.SendOrderStatusChangeMailForUser(postcard.User, "completed"); } } else { message = "No record found."; status = ActionStatus.Error; } return(new ActionOutput() { Message = message, Status = status }); } ActionOutput IEditorManager.CompleteRecipientPostCard(int ReceiptentID) { IEmailManager _emailManager = new EmailManager(); var message = ""; ActionStatus status; var postcard = Context.UserPostCardRecipients.FirstOrDefault(c => c.ID == ReceiptentID); if (postcard != null) { postcard.IsCompleted = true; postcard.IsApproved = true; postcard.IsRejected = false; postcard.IsError = false; postcard.ApprovedOn = DateTime.UtcNow; postcard.CompletedOn = DateTime.UtcNow; postcard.CardStatus = (int)CardStatusTypes.Completed; message = "Post card completed successfully"; status = ActionStatus.Successfull; Context.SaveChanges(); if (postcard.UserPostCard.User.OrderStatusNotification == true && postcard.UserPostCard.User.OrderStatusNotification != null) { _emailManager.SendCardWasMailedEmail(postcard.UserPostCard.User); _emailManager.SendOrderStatusChangeMailForUser(postcard.UserPostCard.User, "completed"); } postcard.UserHistories.Add(new UserHistory() { UserFK = postcard.UserPostCard.UserID, Type = "Order", Status = "Order Completed", TokenChange = "", AddedOn = DateTime.UtcNow, TokenAvailable = postcard.UserPostCard.User.CardsCount }); } else { message = "No record found."; status = ActionStatus.Error; } return(new ActionOutput() { Message = message, Status = status }); } ActionOutput IEditorManager.DispproveReceiptent(int ReceiptentID) { var message = ""; var postcard = Context.UserPostCardRecipients.FirstOrDefault(c => c.ID == ReceiptentID); if (postcard.IsApproved == true) { postcard.CardStatus = PreviousCardStatus(ref postcard); postcard.IsApproved = false; postcard.IsRejected = false; postcard.IsError = false; message = "Post card recipient disapproved successfully"; Context.SaveChanges(); } else { message = "Post card recipients is already in disapproved state"; } return(new ActionOutput() { Message = message, Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.SentToError(int ReceiptentID) { var message = ""; var postcard = Context.UserPostCardRecipients.FirstOrDefault(c => c.ID == ReceiptentID); if (postcard.IsError == true) { postcard.CardStatus = PreviousCardStatus(ref postcard); postcard.IsError = false; postcard.IsRejected = false; message = "remove from errors successfully"; if (postcard.IsRejected == false || postcard.IsRejected == null) { postcard.UserPostCard.User.CardsCount -= 1; } } else { postcard.IsError = true; postcard.IsRejected = false; postcard.CardStatus = (int)CardStatusTypes.Error; message = "Sent to errors successfully"; if (postcard.IsRejected == false || postcard.IsRejected == null) { postcard.UserPostCard.User.CardsCount += 1; } } Context.SaveChanges(); return(new ActionOutput() { Message = message, Status = ActionStatus.Successfull }); } ActionOutput IEditorManager.GetPostCardBackSideJsonResult(int ReceiptentID) { List <string> result = new List <string>(); var message = ""; var postcard = Context.UserPostCardRecipients.FirstOrDefault(c => c.ID == ReceiptentID); if (postcard != null) { if (postcard.UserPostCard.CardBackJsonWithIFrame != null) { result.Add(postcard.UserPostCard.CardBackJsonWithIFrame); } else { result.Add(postcard.UserPostCard.CardBackJson); } message = "remove from errors successfully"; } else { postcard.IsError = true; message = "Sent to errors successfully"; } return(new ActionOutput() { Message = message, Results = result, Status = ActionStatus.Successfull }); }
/// <summary> /// WitFXMT4ServerBL.onMT4Response /// </summary> private async Task OnResponseAsync( ReturnCode errorcode, string errormessage, eMT4ServerType serverIndex, MT4REQ reqType, eOrderStatus trans_status, int masterLogin, /*int orderOrLogin,*/ Guid server_trans_id, eAccountType accType, MT4REQMODE reqMode, MT4Request request, CancellationToken cancellationToken) { Debug.Assert(masterLogin > 0); //m_ptrMySqlWrapper.insertLog(Utilities.LOG_INFO,masterLogin,orderOrLogin,"X",) if (reqType == MT4REQ.MT4REQ_NEW_ACCOUNT) { var mt4Login = request.User?.login ?? 0; if (trans_status == eOrderStatus.ORD_STAT_EXECUTED) { Debug.Assert(mt4Login > 0); m_ptrLogger.LogInfo($"EXECUTED : MT4 Account {mt4Login}, master Login {masterLogin}, AccountType: {accType}"); MT4Account acc = new MT4Account(); //memset(&acc, 0, sizeof(MT4Account)); acc._accountType = accType; acc._masterLogin = masterLogin; acc._mt4Login = mt4Login; acc._mt4ServerIndex = serverIndex; //if (serverIndex == SRV_TYPE_DEMO) //{ // Demo.insertMT4Account(orderOrLogin); //} //else //{ // Live.insertMT4Account(orderOrLogin); //} lock (_mt4LoginsByServerIndex) AddMt4LoginNoLock(serverIndex, mt4Login); await _mt4AccountService.InsertMT4Account(acc, cancellationToken); //if (!) //{ // m_ptrLogger.LogError("Unable to insert MT4 account for masterlogin: %d MT4 Login: %d in database", masterLogin, orderOrLogin); //} //else //{ #region Rebate //TODO: Claudia: rebate //if (accType == ACC_TYPE_REBATE) //{ // Dictionary<int, int>.iterator it2; // //lock (m_SyncMapMt4Master) // //{ // it2 = m_mapMasterRebateAcc.find(masterLogin); // if (it2 == m_mapMasterRebateAcc.end()) // { // m_mapMasterRebateAcc.insert(new ValueTuple<int, int>(masterLogin, orderOrLogin)); // } // //} //} #endregion ////else //if (accType != ACC_TYPE_REBATE) ////{ //Dictionary<bool, Dictionary<int, int>>.iterator it1; ////Dictionary<int, int>.iterator it2; ////lock (m_SyncMapMt4Master) ////{ //bool isDemoServer = serverIndex == SRV_TYPE_DEMO ? true : false; //it1 = m_mapMT4MasterLogin.find(isDemoServer); //if (it1 == m_mapMT4MasterLogin.end()) //{ // Dictionary<int, int> mp2 = new Dictionary<int, int>(); // m_mapMT4MasterLogin.insert(new ValueTuple<bool, Dictionary<int, int>>(isDemoServer, mp2)); // it1 = m_mapMT4MasterLogin.find(isDemoServer); //} //it1.second.insert(new ValueTuple<int, int>(orderOrLogin, masterLogin)); ////} ////} ////} if (accType == eAccountType.ACC_TYPE_SSP) { await _signalService.UpdateSignalMT4Login(server_trans_id, mt4Login, cancellationToken); await _signalService.UpdateSSPSignalMT4Login(server_trans_id, mt4Login, cancellationToken); //fetchAllSignal(); //fetchAllSSPSignal(); //fetchAllSMSignal(); //insertDBTransmitData(masterLogin, FDMT_Signal_ID); //insertDBTransmitData(masterLogin, FDMT_SSPSignal_ID); } else if (accType == eAccountType.ACC_TYPE_SM) { await _signalService.UpdateSignalMT4Login(server_trans_id, mt4Login, cancellationToken); await _signalService.UpdateSMSignalMT4Login(server_trans_id, mt4Login, cancellationToken); //fetchAllSignal(); //fetchAllSSPSignal(); //fetchAllSMSignal(); //insertDBTransmitData(masterLogin, FDMT_Signal_ID); //insertDBTransmitData(masterLogin, FDMT_SMSignal_ID); } var m_masterUserSetting = await _masterSettingsService.GetCachedMasterSettingsAsync(cancellationToken); if (accType == eAccountType.ACC_TYPE_FOLLOWER_DEMO || accType == eAccountType.ACC_TYPE_SSP || accType == eAccountType.ACC_TYPE_SM) { MT4Request ptrMT4Req4 = (MT4Request) new MT4Request(); //memset(ptrMT4Req4, 0, sizeof(MT4Request)); //ptrMT4Req4.newLoginOrOrderID = orderOrLogin; // Alexey ptrMT4Req4.masterLogin = masterLogin; ptrMT4Req4.reqType = MT4REQ.MT4REQ_BALANCE; //ptrMT4Req4.socketID = socketID; ptrMT4Req4.status = eOrderStatus.ORD_STAT_RECVD; ptrMT4Req4.serverTransID = TransactionService.NewTransactionId(); ptrMT4Req4.ptrData = new MT4OrderInfo(); //memset(ptrMT4Req4.ptrData, 0, sizeof(MT4OrderInfo)); MT4OrderInfo ptrOrd = (MT4OrderInfo)ptrMT4Req4.ptrData; ptrOrd._accountType = accType; ptrOrd._masterLogin = masterLogin; ptrOrd._mt4Login = mt4Login; ptrOrd._mt4ServerIndex = serverIndex; ptrOrd._orderTransMode = eMT4OrderTransMode.ORD_TRANS_CLOSE; ptrOrd._orderType = eMT4OrderType.ORD_TYPE_BALANCE; ptrOrd._price = request.deposit; if (ptrOrd._price == 0) { if (accType == eAccountType.ACC_TYPE_FOLLOWER_DEMO) { ptrOrd._price = m_masterUserSetting._deposit_followerDemo; } else if (accType == eAccountType.ACC_TYPE_SSP) { ptrOrd._price = m_masterUserSetting._deposit_SSP; } else if (accType == eAccountType.ACC_TYPE_SM) { ptrOrd._price = m_masterUserSetting._deposit_SM; } } Demo.insertMT4Request(ptrMT4Req4); } else if (accType == eAccountType.ACC_TYPE_FOLLOWER_LIVE) { MT4Request ptrMT4Req4 = (MT4Request) new MT4Request(); //memset(ptrMT4Req4, 0, sizeof(MT4Request)); //ptrMT4Req4.newLoginOrOrderID = orderOrLogin; // Alexey ptrMT4Req4.masterLogin = masterLogin; ptrMT4Req4.reqType = MT4REQ.MT4REQ_BALANCE; //ptrMT4Req4.socketID = socketID; ptrMT4Req4.status = eOrderStatus.ORD_STAT_RECVD; ptrMT4Req4.serverTransID = TransactionService.NewTransactionId(); ptrMT4Req4.ptrData = new MT4OrderInfo(); //memset(ptrMT4Req4.ptrData, 0, sizeof(MT4OrderInfo)); MT4OrderInfo ptrOrd = (MT4OrderInfo)ptrMT4Req4.ptrData; ptrOrd._accountType = accType; ptrOrd._masterLogin = masterLogin; ptrOrd._mt4Login = mt4Login; ptrOrd._mt4ServerIndex = serverIndex; ptrOrd._orderTransMode = eMT4OrderTransMode.ORD_TRANS_CLOSE; ptrOrd._orderType = eMT4OrderType.ORD_TYPE_BALANCE; ptrOrd._price = request.deposit; if (ptrOrd._price == 0) { ptrOrd._price = m_masterUserSetting._deposit_followerLive; } Live.insertMT4Request(ptrMT4Req4); } var ptrResp = new MT4AccountResponse(); //MT_MT4AccountResponse_ID CppHelper.memcpy(ref ptrResp._account, acc); _connectionMgr.SentDataUsingLoginID(ptrResp, MessageTypeID.MT_MT4AccountResponse_ID, masterLogin); } else if (trans_status == eOrderStatus.ORD_STAT_PROCESSING) { // Claudia: it's normal that orderOrLogin parameter is 0, because MT4 is still processing the request Debug.Assert(masterLogin > 0); m_ptrLogger.LogInfo("PROCESSING : MT4 Account %d master Login %d AccountType: %d", mt4Login, masterLogin, accType); var ptrResp = new SocialOrderResponse(); //MT_SocialOrderResponse_ID ptrResp._serverTransID = server_trans_id; ptrResp._requestMode = reqMode; ptrResp._retCode = (eReturnCode)trans_status; //SentDataUsingSocketID(ptrResp, MT_SocialOrderResponse_ID, socketID); _connectionMgr.SentDataUsingLoginID(ptrResp, MessageTypeID.MT_SocialOrderResponse_ID, masterLogin); } else if (trans_status == eOrderStatus.ORD_STAT_REJECTED) { // Claudia: it's normal that orderOrLogin parameter is 0, because MT4 is still processing the request Debug.Assert(masterLogin > 0); m_ptrLogger.LogInfo("REJECTED : MT4 Account %d master Login %d AccountType: %d", mt4Login, masterLogin, accType); if (accType == eAccountType.ACC_TYPE_SSP) { await _signalService.UpdateSignalMT4Login(server_trans_id, mt4Login, cancellationToken, isRemove : true); await _signalService.UpdateSSPSignalMT4Login(server_trans_id, mt4Login, cancellationToken, isRemove : true); } if (accType == eAccountType.ACC_TYPE_SM) { await _signalService.UpdateSignalMT4Login(server_trans_id, mt4Login, cancellationToken, isRemove : true); await _signalService.UpdateSMSignalMT4Login(server_trans_id, mt4Login, cancellationToken, isRemove : true); } var ptrResp = new SocialOrderResponse(); //MT_SocialOrderResponse_ID ptrResp._serverTransID = server_trans_id; ptrResp._requestMode = reqMode; ptrResp._retCode = (eReturnCode)trans_status; ptrResp._mt4errorcode = errorcode; CppHelper.strcpy(out ptrResp._mt4errormessage, errormessage); //SentDataUsingSocketID(ptrResp, MT_SocialOrderResponse_ID, socketID); _connectionMgr.SentDataUsingLoginID(ptrResp, MessageTypeID.MT_SocialOrderResponse_ID, masterLogin); } //insertDBTransmitData(masterLogin, FDMT_MasterUser_ID); //insertDBTransmitData(masterLogin, FDMT_MT4Account_ID); //insertDBTransmitData(masterLogin, FDMT_SSPSignal_ID); //insertDBTransmitData(masterLogin, FDMT_SSPSignal_ID); } else { var orderId = request.OrderInfo?._orderID ?? 0; if (trans_status == eOrderStatus.ORD_STAT_PROCESSING) { // Alexey: it's normal that orderOrLogin parameter is 0, because MT4 is still processing the request Debug.Assert(masterLogin > 0 && server_trans_id != Guid.Empty); m_ptrLogger.LogInfo($"PROCESSING : Order {orderId}, master Login {masterLogin}, UID: {server_trans_id}"); var ptrResp = new SocialOrderResponse(); //MT_SocialOrderResponse_ID ptrResp._serverTransID = server_trans_id; ptrResp._requestMode = reqMode; ptrResp._retCode = (eReturnCode)trans_status; //SentDataUsingSocketID(ptrResp, MT_SocialOrderResponse_ID, socketID); _connectionMgr.SentDataUsingLoginID(ptrResp, MessageTypeID.MT_SocialOrderResponse_ID, masterLogin); } else if (trans_status == eOrderStatus.ORD_STAT_REJECTED) { // Alexey: it's normal that orderOrLogin parameter is 0, because MT4 is still processing the request Debug.Assert(masterLogin > 0 && server_trans_id != Guid.Empty); m_ptrLogger.LogInfo($"REJECTED : Order {orderId}, master Login {masterLogin}, UID: {server_trans_id}"); var ptrResp = new SocialOrderResponse(); //MT_SocialOrderResponse_ID ptrResp._serverTransID = server_trans_id; ptrResp._requestMode = reqMode; ptrResp._retCode = (eReturnCode)trans_status; ptrResp._mt4errorcode = errorcode; CppHelper.strcpy(out ptrResp._mt4errormessage, errormessage); //SentDataUsingSocketID(ptrResp, MT_SocialOrderResponse_ID, socketID); _connectionMgr.SentDataUsingLoginID(ptrResp, MessageTypeID.MT_SocialOrderResponse_ID, masterLogin); } else if (trans_status == eOrderStatus.ORD_STAT_EXECUTED) { if (reqMode == MT4REQMODE.OPEN_TRADE) { Debug.Assert(server_trans_id != Guid.Empty && orderId > 0 && request.Order != null && request.Order.OrderId == 0); request.Order.OrderId = orderId; await _orderService.InsertAsync(request.Order, cancellationToken); // updateTransLinking(server_trans_id, orderOrLogin); } //if (reqMode == MT4REQMODE.CLOSE_TRADE || reqMode == MT4REQMODE.DELETE_TRADE) //{ // removeTransLinking(server_trans_id); //} Debug.Assert(masterLogin > 0 && server_trans_id != Guid.Empty); m_ptrLogger.LogInfo($"EXECUTED : Order {orderId}, master Login {masterLogin}, UID: {server_trans_id}"); var ptrResp = new SocialOrderResponse(); //MT_SocialOrderResponse_ID ptrResp._serverTransID = server_trans_id; ptrResp._requestMode = reqMode; ptrResp._retCode = (eReturnCode)trans_status; //SentDataUsingSocketID(ptrResp, MT_SocialOrderResponse_ID, socketID); _connectionMgr.SentDataUsingLoginID(ptrResp, MessageTypeID.MT_SocialOrderResponse_ID, masterLogin); } } }
public BoolResult ChangeOrderStatus(string orderId, eOrderStatus staus) { return(Update(orderId, GetUpdateStatusDefinition(staus))); }
protected UpdateDefinition <Order> GetUpdateStatusDefinition(eOrderStatus staus) { var update = Builders <Order> .Update; return(update.Set(x => x.OrderStatus, staus)); }
public void SetOrderStatus(int orderId, eOrderStatus status) { using (MySqlOrdersDb Db = new MySqlOrdersDb(ConnectionString)) { var ord = GetOrderById(orderId); if (ord != null) { Db.Orders.Attach(ord); ord.Status = status; if (status == eOrderStatus.DELIVERED) { ord.DeliveredAt = DateTime.Now; Db.Entry(ord).Property("DeliveredAt").IsModified = true; } Db.Entry(ord).Property("Status").IsModified = true; Db.SaveChanges(); } } }
public async Task <List <OrderEntity> > GetAllByStats(eOrderStatus status) { var filter = Builders <OrderEntity> .Filter.Eq(x => x.Status, status); return(await Entities.Find(filter).ToListAsync()); }
public int GetOrderCount(eOrderStatus Status = eOrderStatus.any, eFulfillmentStatus FulfillmentStatus = eFulfillmentStatus.any, eOrderFinancialStatus FinancialStatus = eOrderFinancialStatus.any) { int count = 0; _endPointURI = "admin/orders/count.json"; RestClient c = new RestClient(_baseAddress); c.Authenticator = new HttpBasicAuthenticator(_apikey, _password); RestRequest req = new RestRequest(_endPointURI); if (Status != eOrderStatus.any) req.AddQueryParameter("status", Status.ToString()); if (FulfillmentStatus != eFulfillmentStatus.any) req.AddQueryParameter("fulfillment_status", FulfillmentStatus.ToString()); if (FinancialStatus != eOrderFinancialStatus.any) req.AddQueryParameter("financial_status", FinancialStatus.ToString()); IRestResponse response = c.Execute(req); RawData += response.Content; if (response.StatusCode != HttpStatusCode.OK) { SetHTTPErrMsg(response); } else { JsonObject json = (JsonObject)SimpleJson.DeserializeObject(response.Content); count = Convert.ToInt32(json["count"]); } return count; }
public async Task <ActionResult <IEnumerable <OrderResource> > > GetAllByStats(eOrderStatus ordered) { var entities = await(Repository as IOrdersRepository).GetAllByStats(ordered); return(MapMany(entities)); }
void cboOrderStatus_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e) { // filter the list of orders by status this._orderStatus = (eOrderStatus)Enum.Parse(typeof(eOrderStatus), e.Text); this.grdOrders.Rebind(); }
private void grdOrders_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e) { this.grdOrders.DataSource = null; Facade.IOrder facOrder = new Facade.Order(); DateTime dateFrom = dteOrderFilterDateFrom.SelectedDate.Value; DateTime dateTo = dteOrderFilterDateTo.SelectedDate.Value; this._orderStatus = (eOrderStatus)Enum.Parse(typeof(eOrderStatus), cboOrderStatus.SelectedValue); bool IsCollectionDate = rbCollection.Checked; dateFrom = dateFrom.AddHours(-dateFrom.Hour).AddMinutes(-dateFrom.Minute).AddSeconds(-dateFrom.Second); dateTo = dateTo.AddHours(-dateTo.Hour).AddMinutes(-dateTo.Minute).AddSeconds(-dateTo.Second); DataSet orderData = facOrder.GetOrdersForClientAndStatusByDates(_clientIdentityId, _orderStatus, IsCollectionDate, dateFrom, dateTo); orderData.Tables[0].Columns.Add(new DataColumn("DisplayRate")); GridColumn deliveringResourceColumn = this.grdOrders.Columns.FindByUniqueName("DeliveringResource"); Facade.IAllocation facAllocation = new Facade.Allocation(); if (facAllocation.IsAllocationEnabled) { if (deliveringResourceColumn != null) { deliveringResourceColumn.Visible = true; } } else if (deliveringResourceColumn != null) { deliveringResourceColumn.Visible = false; } // Iterate over the dataset to set the rates, specifically for grouped orders. DataRow previousRow = null; string previousOrderGroupId = string.Empty; foreach (DataRow row in orderData.Tables[0].Rows) { string orderGroupId = string.Empty; if (previousRow != null) { if (row["OrderGroupId"].ToString() != "") { orderGroupId = row["OrderGroupId"].ToString(); // If the group is the same as the previous, blank the rate if (previousOrderGroupId == orderGroupId) { row["DisplayRate"] = ""; } else { // otherwise, show the group rate row["DisplayRate"] = row["OrderGroupForeignRate"]; } // Set the previous order group id for the next iteration previousOrderGroupId = orderGroupId; } else { previousOrderGroupId = string.Empty; row["DisplayRate"] = row["ForeignRate"]; } } else { row["DisplayRate"] = row["ForeignRate"]; if (row["OrderGroupId"].ToString() != "") { previousOrderGroupId = row["OrderGroupId"].ToString(); } else { previousOrderGroupId = string.Empty; } } previousRow = row; } this.grdOrders.DataSource = orderData; }
void grdOrders_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item.ItemType == GridItemType.AlternatingItem || e.Item.ItemType == GridItemType.Item) { Telerik.Web.UI.GridItem item = e.Item as Telerik.Web.UI.GridItem; int invoiceId = Convert.ToInt32(((System.Data.DataRowView)e.Item.DataItem)["InvoiceId"].ToString()); string invoicePdfLocation = ((System.Data.DataRowView)e.Item.DataItem)["InvoicePdfLocation"].ToString(); int orderId = Convert.ToInt32(((System.Data.DataRowView)e.Item.DataItem)["OrderId"].ToString()); bool isPalletNetwork = (bool)(((System.Data.DataRowView)e.Item.DataItem)["IsPalletNetwork"]); bool isExported = !string.IsNullOrEmpty((((System.Data.DataRowView)e.Item.DataItem)["IntegrationReference"]).ToString()); eOrderStatus orderStatus = (eOrderStatus)(Convert.ToInt32(((System.Data.DataRowView)e.Item.DataItem)["OrderStatusId"].ToString())); string collectionPointDescription = ((System.Data.DataRowView)e.Item.DataItem)["CollectionPointDescription"].ToString(); string deliveryPointDescription = ((System.Data.DataRowView)e.Item.DataItem)["DeliveryPointDescription"].ToString(); Label lblCollectFromPoint = (Label)item.FindControl("lblCollectFromPoint"); lblCollectFromPoint.Text = collectionPointDescription; Label lblDeliverToPoint = (Label)item.FindControl("lblDeliverToPoint"); lblDeliverToPoint.Text = deliveryPointDescription; int orderLcid = Convert.ToInt32(((System.Data.DataRowView)e.Item.DataItem)["OrderLcid"].ToString()); int orderGroupLcid = 0; if (((System.Data.DataRowView)e.Item.DataItem)["OrderGroupLcid"].ToString() != string.Empty) { orderGroupLcid = Convert.ToInt32(((System.Data.DataRowView)e.Item.DataItem)["OrderGroupLcid"].ToString()); } System.Globalization.CultureInfo culture = null; if (orderGroupLcid > 0) { culture = new CultureInfo(orderGroupLcid); } else { culture = new CultureInfo(orderLcid); } // Rate:: formatted for current order culture. Label lblRate = (Label)item.FindControl("lblRate"); if (((System.Data.DataRowView)e.Item.DataItem)["DisplayRate"].ToString() != string.Empty) { lblRate.Text = Convert.ToDecimal(((System.Data.DataRowView)e.Item.DataItem)["DisplayRate"]).ToString("C", culture); } else { lblRate.Text = " "; } // Pod link Facade.POD facPod = new Orchestrator.Facade.POD(); Orchestrator.Entities.POD scannedPOD = facPod.GetForOrderID(orderId); HyperLink hypPod = (HyperLink)item.FindControl("hypPod"); if (scannedPOD != null) { hypPod.Visible = true; hypPod.Text = string.Format("POD:{0}", scannedPOD.PODId); hypPod.NavigateUrl = scannedPOD.ScannedFormPDF.Trim(); hypPod.Target = "_blank"; } else if (scannedPOD == null && (orderStatus == eOrderStatus.Delivered || orderStatus == eOrderStatus.Invoiced)) { hypPod.Visible = false; hypPod.Text = ""; hypPod.NavigateUrl = ""; } // Invoice link HyperLink hypInvoice = (HyperLink)e.Item.FindControl("hypInvoice"); if (invoiceId <= 0) { hypInvoice.Text = ""; hypInvoice.NavigateUrl = ""; } else { hypInvoice.NavigateUrl = Orchestrator.Globals.Configuration.WebServer + invoicePdfLocation; hypInvoice.Text = string.Format("Invoice:{0}", invoiceId); hypInvoice.Target = "_blank"; } // order id link HyperLink hypOrderId = (HyperLink)e.Item.FindControl("hypOrderId"); hypOrderId.Text = orderId.ToString(); // If the order is unapproved, take the client to the update order page // otherwise take the user to the client order profile screen. if (orderStatus == eOrderStatus.Pending || orderStatus == eOrderStatus.Awaiting_Approval) { hypOrderId.NavigateUrl = string.Format("ClientManageOrder.aspx?Oid={0}", orderId); } else { // show the order profile link. hypOrderId.NavigateUrl = string.Format("javascript:openResizableDialogWithScrollbars('ClientOrderProfile.aspx?wiz=true&Oid={0}',560,700);", orderId); hypOrderId.Target = ""; } //Order status Label lblOrderStatus = (Label)e.Item.FindControl("lblOrderStatus"); string orderStatusText = string.Empty; switch (orderStatus) { case eOrderStatus.Pending: orderStatusText = "Pending"; break; case eOrderStatus.Awaiting_Approval: orderStatusText = "Unapproved"; break; case eOrderStatus.Approved: orderStatusText = "Approved"; break; case eOrderStatus.Delivered: orderStatusText = "Delivered"; break; case eOrderStatus.Invoiced: orderStatusText = "Invoiced"; break; case eOrderStatus.Cancelled: orderStatusText = "Cancelled"; break; case eOrderStatus.Rejected: orderStatusText = "Rejected"; break; default: break; } lblOrderStatus.Text = orderStatusText; if (Orchestrator.Globals.Configuration.PalletNetworkLabelID == eReportType.PalletNetworkLabel) { if (isExported) { e.Item.BackColor = System.Drawing.Color.LightGreen; } } } }
/// <summary> /// Get all orders /// </summary> /// <returns></returns> public List<SIOrder> GetOrders(eOrderStatus Status = eOrderStatus.any, eFulfillmentStatus FulfillmentStatus = eFulfillmentStatus.any, eOrderFinancialStatus FinancialStatus = eOrderFinancialStatus.any, int Page = 1) { List<SIOrder> allOrders = new List<SIOrder>(); _endPointURI = "admin/orders.json"; RestClient c = new RestClient(_baseAddress); c.Authenticator = new HttpBasicAuthenticator(_apikey, _password); RestRequest req = new RestRequest(_endPointURI); req.AddParameter("limit", 250); if (Page != 1) req.AddParameter("page", Page); if (Status != eOrderStatus.any) req.AddQueryParameter("status", Status.ToString()); if (FulfillmentStatus != eFulfillmentStatus.any) req.AddQueryParameter("fulfillment_status", FulfillmentStatus.ToString()); if (FinancialStatus != eOrderFinancialStatus.any) req.AddQueryParameter("financial_status", FinancialStatus.ToString()); IRestResponse response = c.Execute(req); RawData += response.Content; if (response.StatusCode != HttpStatusCode.OK) { SetHTTPErrMsg(response); } else { JsonObject json = (JsonObject)SimpleJson.DeserializeObject(response.Content); JsonArray orders = (JsonArray)json["orders"]; //allOrders = SimpleJson.DeserializeObject<List<SIOrder>>(orders.ToString()); foreach (JsonObject jo in orders) { SIOrder o = SimpleJson.DeserializeObject<SIOrder>(jo.ToString()); allOrders.Add(o); } } return allOrders; }