public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue<Ticket>("Ticket"); if (ticket != null) { var menuItemName = actionData.GetAsString("MenuItemName"); var menuItem = _cacheService.GetMenuItem(y => y.Name == menuItemName); var portionName = actionData.GetAsString("PortionName"); var quantity = actionData.GetAsDecimal("Quantity"); var tag = actionData.GetAsString("Tag"); var orderStateName = actionData.GetAsString("OrderStateName"); var orderState = actionData.GetAsString("OrderState"); var osv = orderState.Contains("=") ? orderState : orderStateName + "=" + orderState; var order = _ticketService.AddOrder(ticket, menuItem.Id, quantity, portionName, osv); if (!string.IsNullOrEmpty(actionData.GetAsString("Price"))) order.UpdatePrice(actionData.GetAsDecimal("Price"), ""); if (!string.IsNullOrEmpty(actionData.GetAsString("IncreaseInventory"))) order.IncreaseInventory = actionData.GetAsBoolean("IncreaseInventory"); if (!string.IsNullOrEmpty(actionData.GetAsString("DecreaseInventory"))) order.DecreaseInventory = actionData.GetAsBoolean("DecreaseInventory"); if (!string.IsNullOrEmpty(actionData.GetAsString("Locked"))) order.Locked = actionData.GetAsBoolean("Locked"); if (!string.IsNullOrEmpty(actionData.GetAsString("CalculatePrice"))) order.CalculatePrice = actionData.GetAsBoolean("CalculatePrice"); if (order != null) order.Tag = tag; actionData.DataObject.Order = order; order.PublishEvent(EventTopicNames.OrderAdded); } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue<Ticket>("Ticket"); var orders = Helper.GetOrders(actionData, ticket); if (orders.Any()) { foreach (var order in orders) { if (!string.IsNullOrEmpty(actionData.GetAsString("Quantity"))) order.Quantity = actionData.GetAsDecimal("Quantity"); if (!string.IsNullOrEmpty(actionData.GetAsString("Price"))) order.UpdatePrice(actionData.GetAsDecimal("Price"), ""); if (!string.IsNullOrEmpty(actionData.GetAsString("IncreaseInventory"))) order.IncreaseInventory = actionData.GetAsBoolean("IncreaseInventory"); if (!string.IsNullOrEmpty(actionData.GetAsString("DecreaseInventory"))) order.DecreaseInventory = actionData.GetAsBoolean("DecreaseInventory"); if (!string.IsNullOrEmpty(actionData.GetAsString("Locked"))) order.Locked = actionData.GetAsBoolean("Locked"); if (!string.IsNullOrEmpty(actionData.GetAsString("CalculatePrice"))) order.CalculatePrice = actionData.GetAsBoolean("CalculatePrice"); if (!string.IsNullOrEmpty(actionData.GetAsString("AccountTransactionType"))) _ticketService.ChangeOrdersAccountTransactionTypeId(ticket, new List<Order> { order }, _cacheService.GetAccountTransactionTypeIdByName (actionData.GetAsString("AccountTransactionType"))); if (!string.IsNullOrEmpty(actionData.GetAsString("PortionName")) || !string.IsNullOrEmpty(actionData.GetAsString("PriceTag"))) { var portionName = actionData.GetAsString("PortionName"); var priceTag = actionData.GetAsString("PriceTag"); _ticketService.UpdateOrderPrice(order, portionName, priceTag); } } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); var orders = Helper.GetOrders(actionData, ticket); if (orders.Any()) { foreach (var order in orders) { if (!string.IsNullOrEmpty(actionData.GetAsString("Quantity"))) { order.Quantity = actionData.GetAsDecimal("Quantity"); order.ResetSelectedQuantity(); } if (!string.IsNullOrEmpty(actionData.GetAsString("Price"))) { order.UpdatePrice(actionData.GetAsDecimal("Price"), ""); } if (!string.IsNullOrEmpty(actionData.GetAsString("IncreaseInventory"))) { order.IncreaseInventory = actionData.GetAsBoolean("IncreaseInventory"); } if (!string.IsNullOrEmpty(actionData.GetAsString("DecreaseInventory"))) { order.DecreaseInventory = actionData.GetAsBoolean("DecreaseInventory"); } if (!string.IsNullOrEmpty(actionData.GetAsString("Locked"))) { order.Locked = actionData.GetAsBoolean("Locked"); } if (!string.IsNullOrEmpty(actionData.GetAsString("CalculatePrice"))) { order.CalculatePrice = actionData.GetAsBoolean("CalculatePrice"); } if (!string.IsNullOrEmpty(actionData.GetAsString("AccountTransactionType"))) { _ticketService.ChangeOrdersAccountTransactionTypeId(ticket, new List <Order> { order }, _cacheService.GetAccountTransactionTypeIdByName (actionData.GetAsString("AccountTransactionType"))); } if (!string.IsNullOrEmpty(actionData.GetAsString("PortionName")) || !string.IsNullOrEmpty(actionData.GetAsString("PriceTag"))) { var portionName = actionData.GetAsString("PortionName"); var priceTag = actionData.GetAsString("PriceTag"); _ticketService.UpdateOrderPrice(order, portionName, priceTag); } } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); if (ticket != null) { var menuItemName = actionData.GetAsString("MenuItemName"); var menuItem = GetMenuItem(menuItemName); if (menuItem == null) { return; } var portionName = actionData.GetAsString("PortionName"); var quantity = actionData.GetAsDecimal("Quantity"); var tag = actionData.GetAsString("Tag"); var orderStateName = actionData.GetAsString("OrderStateName"); var orderState = actionData.GetAsString("OrderState"); var osv = orderState.Contains("=") ? orderState : orderStateName + "=" + orderState; var order = _ticketService.AddOrder(ticket, menuItem.Id, quantity, portionName, osv); if (!string.IsNullOrEmpty(actionData.GetAsString("Price"))) { order.UpdatePrice(actionData.GetAsDecimal("Price"), ""); } if (!string.IsNullOrEmpty(actionData.GetAsString("IncreaseInventory"))) { order.IncreaseInventory = actionData.GetAsBoolean("IncreaseInventory"); } if (!string.IsNullOrEmpty(actionData.GetAsString("DecreaseInventory"))) { order.DecreaseInventory = actionData.GetAsBoolean("DecreaseInventory"); } if (!string.IsNullOrEmpty(actionData.GetAsString("Locked"))) { order.Locked = actionData.GetAsBoolean("Locked"); } if (!string.IsNullOrEmpty(actionData.GetAsString("CalculatePrice"))) { order.CalculatePrice = actionData.GetAsBoolean("CalculatePrice"); } if (order != null) { order.Tag = tag; } actionData.DataObject.Order = order; order.PublishEvent(EventTopicNames.OrderAdded); } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue<Ticket>("Ticket"); var orders = Helper.GetOrders(actionData, ticket); if (orders.Any()) { var tagName = actionData.GetAsString("OrderTagName"); var orderTag = _cacheService.GetOrderTagGroupByName(tagName); if (orderTag != null) { var tagValue = actionData.GetAsString("OrderTagValue"); var oldTagValue = actionData.GetAsString("OldOrderTagValue"); var tagNote = actionData.GetAsString("OrderTagNote"); var orderTagValue = orderTag.OrderTags.SingleOrDefault(y => y.Name == tagValue); if (orderTagValue != null) { if (!string.IsNullOrEmpty(actionData.GetAsString("OrderTagPrice"))) { var price = actionData.GetAsDecimal("OrderTagPrice"); orderTagValue.Price = price; } if (!string.IsNullOrEmpty(oldTagValue)) orders = orders.Where(o => o.OrderTagExists(y => y.OrderTagGroupId == orderTag.Id && y.TagValue == oldTagValue)).ToList(); if (actionData.Action.ActionType == ActionNames.TagOrder) _ticketService.TagOrders(ticket, orders, orderTag, orderTagValue, tagNote); if (actionData.Action.ActionType == ActionNames.UntagOrder) _ticketService.UntagOrders(ticket, orders, orderTag, orderTagValue); } } } }
public override void Process(ActionData actionData) { var documentName = actionData.GetAsString("AccountTransactionDocumentName"); var documentType = _cacheService.GetAccountTransactionDocumentTypeByName(documentName); var accountName = actionData.GetAsString("AccountName"); var description = actionData.GetAsString("Description"); var amount = actionData.GetAsDecimal("Amount"); if (amount > 0) { var account = _accountService.GetAccountByName(accountName); var document = _accountService.CreateTransactionDocument(account, documentType, description, amount, null); actionData.DataObject.DocumentId = document.Id; } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue<Ticket>("Ticket"); if (ticket != null) { var calculationTypeName = actionData.GetAsString("CalculationType"); var calculationType = _cacheService.GetCalculationTypeByName(calculationTypeName); if (calculationType != null) { var amount = actionData.GetAsDecimal("Amount"); ticket.AddCalculation(calculationType, amount); _ticketService.RecalculateTicket(ticket); EventServiceFactory.EventService.PublishEvent(EventTopicNames.RegenerateSelectedTicket); } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue<Ticket>("Ticket"); if (ticket != null) { var menuItemName = actionData.GetAsString("MenuItemName"); var menuItem = _cacheService.GetMenuItem(y => y.Name == menuItemName); var portionName = actionData.GetAsString("PortionName"); var quantity = actionData.GetAsDecimal("Quantity"); var tag = actionData.GetAsString("Tag"); var order = _ticketService.AddOrder(ticket, menuItem.Id, quantity, portionName); if (order != null) order.Tag = tag; order.PublishEvent(EventTopicNames.OrderAdded); } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); if (ticket != null) { var calculationTypeName = actionData.GetAsString("CalculationType"); var calculationType = _cacheService.GetCalculationTypeByName(calculationTypeName); if (calculationType != null) { var amount = actionData.GetAsDecimal("Amount"); ticket.AddCalculation(calculationType, amount); _ticketService.RecalculateTicket(ticket); EventServiceFactory.EventService.PublishEvent(EventTopicNames.RegenerateSelectedTicket); } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); if (ticket != null) { var menuItemName = actionData.GetAsString("MenuItemName"); var menuItem = _cacheService.GetMenuItem(y => y.Name == menuItemName); var portionName = actionData.GetAsString("PortionName"); var quantity = actionData.GetAsDecimal("Quantity"); var tag = actionData.GetAsString("Tag"); var order = _ticketService.AddOrder(ticket, menuItem.Id, quantity, portionName); if (order != null) { order.Tag = tag; } order.PublishEvent(EventTopicNames.OrderAdded); } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); var orders = Helper.GetOrders(actionData, ticket); if (orders.Any()) { var tagName = actionData.GetAsString("OrderTagName"); var orderTag = _cacheService.GetOrderTagGroupByName(tagName); if (orderTag != null) { var tagValue = actionData.GetAsString("OrderTagValue"); var oldTagValue = actionData.GetAsString("OldOrderTagValue"); var tagNote = actionData.GetAsString("OrderTagNote"); var orderTagValue = orderTag.OrderTags.SingleOrDefault(y => y.Name == tagValue); if (orderTagValue != null) { if (!string.IsNullOrEmpty(actionData.GetAsString("OrderTagPrice"))) { var price = actionData.GetAsDecimal("OrderTagPrice"); orderTagValue.Price = price; } if (!string.IsNullOrEmpty(oldTagValue)) { orders = orders.Where(o => o.OrderTagExists(y => y.OrderTagGroupId == orderTag.Id && y.TagValue == oldTagValue)).ToList(); } if (actionData.Action.ActionType == ActionNames.TagOrder) { _ticketService.TagOrders(ticket, orders, orderTag, orderTagValue, tagNote); } if (actionData.Action.ActionType == ActionNames.UntagOrder) { _ticketService.UntagOrders(ticket, orders, orderTag, orderTagValue); } } } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue<Ticket>("Ticket"); if (ticket != null) { var amount = actionData.GetAsDecimal("Amount"); var transactionName = actionData.GetAsString("AccountTransactionTypeName"); if (!string.IsNullOrEmpty(transactionName)) { var accountTransactionType = _cacheService.GetAccountTransactionTypeByName(transactionName); if (accountTransactionType != null) { var ts = ticket.TicketEntities.FirstOrDefault(x => _ticketService.CanMakeAccountTransaction(x, accountTransactionType, 0)); if (ts != null) { ticket.TransactionDocument.AddNewTransaction(accountTransactionType, ticket.GetTicketAccounts(), amount, 1); } } } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); if (ticket != null) { var amount = actionData.GetAsDecimal("Amount"); var transactionName = actionData.GetAsString("AccountTransactionTypeName"); if (!string.IsNullOrEmpty(transactionName)) { var accountTransactionType = _cacheService.GetAccountTransactionTypeByName(transactionName); if (accountTransactionType != null) { var ts = ticket.TicketEntities.FirstOrDefault(x => _ticketService.CanMakeAccountTransaction(x, accountTransactionType, 0)); if (ts != null) { ticket.TransactionDocument.AddNewTransaction(accountTransactionType, ticket.GetTicketAccounts(), amount, 1); } } } } }
public override void Process(ActionData actionData) { var ticket = actionData.GetDataValue <Ticket>("Ticket"); if (ticket != null) { var menuItemName = actionData.GetAsString("MenuItemName"); var menuItem = _cacheService.GetMenuItem(y => y.Name == menuItemName); var portionName = actionData.GetAsString("PortionName"); var quantity = actionData.GetAsDecimal("Quantity"); var tag = actionData.GetAsString("Tag"); var orderStateName = actionData.GetAsString("OrderStateName"); var orderState = actionData.GetAsString("OrderState"); var osv = orderState.Contains("=") ? orderState : orderStateName + "=" + orderState; var order = _ticketService.AddOrder(ticket, menuItem.Id, quantity, portionName, osv); if (order != null) { order.Tag = tag; } actionData.DataObject.Order = order; order.PublishEvent(EventTopicNames.OrderAdded); } }