private void AddAuditMessageToPurchaseOrder(Payment payment, IOrderStatus orderStatus)
        {
            var auditMessage = BuildAuditMessageForDeclinedPaymentRequest(orderStatus);

            _orderService.AddAuditTrail(payment.PurchaseOrder, auditMessage);
            payment.PurchaseOrder.Save();
        }
        public static bool SetStatus(string apiUrl, string sessionId, object[] args)
        {
            IOrderStatus prox = (IOrderStatus)XmlRpcProxyGen.Create(typeof(IOrderStatus));

            prox.Url = apiUrl;
            return(prox.SetStatus(sessionId, _sales_order_add_comment, args));
        }
        /// <summary>
        /// Calls Global Collect for a payment status corresponding to values in GlobalCollectPaymentStatus
        /// </summary>
        /// <param name="payment"></param>
        /// <returns></returns>
        private IOrderStatus GetOrderStatusFromPayment(Payment payment)
        {
            long         orderId    = TryGetOrderIdFromPayment(payment);
            IOrderStatus statusData = _globalCollectService.GetOrderStatus(payment.PaymentMethod, orderId);

            return(statusData);
        }
 public IEnumerable <IPurchaseOrder> GetOrdersByStatus(IOrderStatus status, DateTime from, DateTime to)
 {
     return
         (BuildOrdersQuery()
          .Where(o => o.PurchaseDate >= from)
          .Where(o => o.PurchaseDate <= to)
          .Where(o => o.OrderStatusId == status.Id)
          .Execute());
 }
        public OrderBuilderChain(IOrderStatus orderStatus, IInvoice invoice)
        {
            Mandate.ParameterNotNull(orderStatus, "orderStatus");
            Mandate.ParameterNotNull(invoice, "invoice");

            _orderStatus = orderStatus;
            _invoice     = invoice;

            ResolveChain(Constants.TaskChainAlias.OrderPreparationOrderCreate);
        }
Exemple #6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Order"/> class.
        /// </summary>
        /// <param name="orderStatus">
        /// The order status.
        /// </param>
        /// <param name="invoiceKey">
        /// The invoice key.
        /// </param>
        /// <param name="lineItemCollection">
        /// The line item collection.
        /// </param>
        internal Order(IOrderStatus orderStatus, Guid invoiceKey, LineItemCollection lineItemCollection)
        {
            Mandate.ParameterNotNull(orderStatus, "orderStatus");
            Mandate.ParameterCondition(!Guid.Empty.Equals(invoiceKey), "invoiceKey");
            Mandate.ParameterNotNull(lineItemCollection, "lineItemCollection");

            _invoiceKey  = invoiceKey;
            _orderStatus = orderStatus;
            _items       = lineItemCollection;

            _orderDate = DateTime.Now;
        }
Exemple #7
0
        internal Order(IOrderStatus orderStatus, Guid invoiceKey, LineItemCollection lineItemCollection)
        {
            Mandate.ParameterNotNull(orderStatus, "orderStatus");
            Mandate.ParameterCondition(!Guid.Empty.Equals(invoiceKey), "invoiceKey");
            Mandate.ParameterNotNull(lineItemCollection, "lineItemCollection");

            _invoiceKey = invoiceKey;
            _orderStatus = orderStatus;
            _items = lineItemCollection;

            _orderDate = DateTime.Now;
        }
Exemple #8
0
 private static string GetOrderStatusJson(IOrderStatus orderStatus)
 {
     return(JsonConvert.SerializeObject(
                new
     {
         key = orderStatus.Key,
         name = orderStatus.Name,
         alias = orderStatus.Alias,
         reportable = orderStatus.Reportable,
         active = orderStatus.Active,
         sortOrder = orderStatus.SortOrder
     }, Newtonsoft.Json.Formatting.None));
 }
        private string BuildAuditMessageForDeclinedPaymentRequest(IOrderStatus orderStatus)
        {
            string message;
            var    convertedPaymentStatus = PaymentStatusHelper.ConvertPaymentStatusCodeToHumanReadableMessage(orderStatus.StatusId);
            var    error = orderStatus.Errors.FirstOrDefault();

            if (error != null)
            {
                message = string.Format("Payment declined. Status code: {0} - {1}. Error type: {2}. Error code: {3}. Error message: {4}", orderStatus.StatusId,
                                        convertedPaymentStatus, error.Type, error.Code, error.Message);
            }
            else
            {
                message = string.Format("Status code: {0} - {1}.", orderStatus.StatusId, convertedPaymentStatus);
            }
            return(message);
        }
Exemple #10
0
        public static void ChangeStatus(IOrderStatus status, IOrder order)
        {
            if (status.IsCanceled)
            {
                ChangeMarketStatusToCanceled(order);
            }

            if (status.StatusID == YaMarketBuyingSettings.DeliveryStatusId)
            {
                ChangeMarketStatusToDelivery(order);
            }

            if (status.StatusID == YaMarketBuyingSettings.DeliveredStatusId)
            {
                ChangeMarketStatusToDelivered(order);
            }
        }
Exemple #11
0
        public static OrderModel.OrderState ToOrderStatusEnum(this IOrderStatus orderStatus)
        {
            // TODO this is going to need to be refactored once ShipmentStatus is introduced.

            switch (orderStatus.Alias)
            {
            case "notfulfilled":
                return(OrderModel.OrderState.NotFulfilled);

            case "backOrder":
                return(OrderModel.OrderState.BackOrder);

            case "cancelled":
                return(OrderModel.OrderState.Cancelled);

            case "fulfilled":
                return(OrderModel.OrderState.Fulfilled);

            default:
                throw new Exception("Unknown state:" + orderStatus.Alias);
            }
        }
Exemple #12
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Order"/> class.
 /// </summary>
 /// <param name="orderStatus">
 /// The order status.
 /// </param>
 /// <param name="invoiceKey">
 /// The invoice key.
 /// </param>
 internal Order(IOrderStatus orderStatus, Guid invoiceKey)
     : this(orderStatus, invoiceKey, new LineItemCollection())
 {
 }
Exemple #13
0
 public Order()
 {
     this.status   = new InProgressStatus();
     this.itemList = new List <Car>();
     this.counters = new List <IOrderCounter>();
 }
Exemple #14
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Order"/> class.
 /// </summary>
 /// <param name="orderStatus">
 /// The order status.
 /// </param>
 /// <param name="invoiceKey">
 /// The invoice key.
 /// </param>
 internal Order(IOrderStatus orderStatus, Guid invoiceKey)
     : this(orderStatus, invoiceKey, new LineItemCollection())
 {
 }
 public string Translate(IOrderStatus status)
 {
     return(Translate(status.Id));
 }
 public IEnumerable <IPurchaseOrder> GetOrdersByStatus(IOrderStatus status)
 {
     return(GetOrdersByStatus(status, DateTime.Now.AddYears(-50), DateTime.Now.AddDays(1)));
 }
Exemple #17
0
 private static string GetOrderStatusJson(IOrderStatus orderStatus)
 {
     return JsonConvert.SerializeObject(
             new
             {
                 key = orderStatus.Key,
                 name = orderStatus.Name,
                 alias = orderStatus.Alias,
                 reportable = orderStatus.Reportable,
                 active = orderStatus.Active,
                 sortOrder = orderStatus.SortOrder
             }, Newtonsoft.Json.Formatting.None);
 }
Exemple #18
0
 public Memento(IOrderStatus status)
 {
 }