public static Stock MapStock(XpoStock xpoStock) { var stock = new Stock(xpoStock.Name) { id = xpoStock.Oid, Wilaya = MapWilaya(xpoStock.Wilaya), Commune = MapCommune(xpoStock.Commune), Adress = xpoStock.Adress, ProductLines = MapProdcutLine(xpoStock.ProductLines), }; return(stock); }
public static XpoStock MapStock(Stock stock, UnitOfWork uow) { XpoStock xpoStock; if (stock.newObject) { xpoStock = new XpoStock(uow) { Oid = stock.id }; } else { xpoStock = uow.GetObjectByKey <XpoStock>(stock.id); } xpoStock.Name = stock.Name; xpoStock.Wilaya = MapWilaya(stock.Wilaya, uow); xpoStock.Commune = MapCommune(stock.Commune, uow); xpoStock.Adress = stock.Adress; if (stock.ProductLines == null) { return(xpoStock); } foreach (var pl in stock.ProductLines) { var crierion = new Criterion(propertyName: "Name", value: pl.Product.Name, criteriaOperator: CriteriaOperator.Equal); XpoProductLine productLineReturned; if (pl.newObject) { productLineReturned = new XpoProductLine(uow) { Oid = pl.id }; } else { productLineReturned = uow.GetObjectByKey <XpoProductLine>(pl.id); } productLineReturned.Quantity = pl.Quantity; productLineReturned.Product = uow.GetObjectByKey <XpoProduct>(pl.Product.id); productLineReturned.Stock = xpoStock; } return(xpoStock); }