private PaymentReceipt DeserializeOrderBlob(PaymentReceipt receipt) { var ser = new DataContractJsonSerializer(typeof (PaymentReceipt)); var ms = new MemoryStream(Encoding.UTF8.GetBytes(receipt.orderblob)); var deserializeReceipt = (PaymentReceipt) ser.ReadObject(ms); return deserializeReceipt; }
public Order(PaymentReceipt receipt, OrderStatus status) { var deserializeReceipt = receipt.DeserializeOrderBlob(); PopulateOrderFromReceipt(deserializeReceipt); Status = status; }
private Order PopulateOrderFromReceipt(PaymentReceipt paymentReceipt) { Id = paymentReceipt.Id; TransactionId = paymentReceipt.transact; Created = DateTimeOffset.Now; Customer = new Customer { Address = paymentReceipt.Customer.Address, Email = paymentReceipt.Customer.Email, Name = paymentReceipt.Customer.Name }; foreach (var orderRow in paymentReceipt.OrderRows) { AddOrderRow(orderRow.NumberOfItems, orderRow.Description, orderRow.Price); } return this; }