private static LineTemplateDetail ParseOrderLineString(string orderString) { var fields = orderString.Split(','); var orderLineType = fields[0]; // should be LTD; if (!orderLineType.Equals(OrderLineItemLineType)) { throw new Exception("That is not an order line string!"); } var result = new LineTemplateDetail(); if (!fields.Any()) { return(result); } if (fields.Length > 1) { result.SKU = fields[1]; } if (fields.Length > 2) { var vars = fields.ToList(); vars.RemoveAt(0); result.Variables = vars.ToArray(); } return(result); }
public static FlexOrder.OrderLineMarkingDetail ToFlexOrder(this LineTemplateDetail detail) { var i = 2; return(new FlexOrder.OrderLineMarkingDetail { Variables = detail.Variables.Select(v => new FlexOrder.Variable { Name = $"Variable{i++}", Value = v }).ToList() }); }