Exemplo n.º 1
0
 public void AddFailedLabel(long shipmentId, long orderId, string amazonIdentifier, string message)
 {
     FailedIds.Add(new LabelPrintResult()
     {
         ShipmentId       = shipmentId,
         OrderId          = orderId,
         AmazonIdentifier = amazonIdentifier,
         Message          = message
     });
 }
Exemplo n.º 2
0
        public string GetConcatFailedOrdersString()
        {
            var message = String.Join("<br/>", FailedIds
                                      .Select(f => string.Format("Unable to print order <a target='_blank' href='/Mailing/Index?orderId=" + HttpUtility.UrlEncode(f.AmazonIdentifier) + "'>{0}</a>. Reason: {1}",
                                                                 f.AmazonIdentifier,
                                                                 f.Message))
                                      .ToList());

            return(message);
        }
Exemplo n.º 3
0
        public ActionTaskResult GetMergedResult()
        {
            var dict   = new Dictionary <string, ActionTaskResultMessage>();
            var result = new ActionTaskResult()
            {
                IsSuccess = IsSuccess, FailedIds = FailedIds.ToArray()
            };

            foreach (var message in Messages)
            {
                if (message.ResourceName != null || message.Message != null)
                {
                    var key = message.ResourceName ?? message.Message;
                    if (message.Parameters != null && message.Parameters.Any())
                    {
                        key += "=" + string.Join(",", message.Parameters);
                    }

                    if (!string.IsNullOrEmpty(message.Extra) && dict.TryGetValue(key, out var value))
                    {
                        value.Extra += ", " + message.Extra;
                    }
                    else
                    {
                        dict.Add(key, message);
                    }
                }
                else
                {
                    result.Messages.Add(message);
                }
            }

            result.Messages.AddRange(dict.Values);

            return(result);
        }