public async Task <OrderEntity> SaveOrder(OrderEntity order) { var orderFromDb = await Query.Where(e => e.Id == order.Id).FirstOrDefaultAsync(); if (orderFromDb == null) { return((await SaveEntity(order.ToOrder(null))).ToOrderEntity()); } else { return((await SaveEntity(order.ToOrder(orderFromDb))).ToOrderEntity()); } }
public async Task <OrderEntity> SaveOrderWithList(OrderEntity entity) { var _products = entity.ClientProductList; var _purchase = entity.ToOrder(); List <ClientProductEntity> productItems = new List <ClientProductEntity>(); productItems.AddRange(_products); _purchase.ClientProductList.Clear(); //var removedItem = await _cpa.RemoveItemsById(_purchase.Id); var tmp = await SaveEntity(_purchase); for (int i = 0; i <= productItems.Count - 1; i++) { productItems[i].OrderId = tmp.Id; var res = (await _cpa.SaveProduct(productItems[i])); } var _purchaseById = await GetOrder(tmp.Id); return(_purchaseById); }