public void Composite_foreign_key_value_is_obtained_from_tracked_principal(bool generateTemporary, bool async) { var model = BuildModel(generateTemporary); var contextServices = CreateContextServices(model); var manager = contextServices.GetRequiredService <IStateManager>(); var dependent = new OrderLineDetail(); var principal = new OrderLine { OrderId = 11, ProductId = 21, Detail = dependent }; manager.GetOrCreateEntry(principal).SetEntityState(EntityState.Unchanged); var dependentEntry = manager.GetOrCreateEntry(dependent); var property1 = model.FindEntityType(typeof(OrderLineDetail)).FindProperty("OrderId"); var property2 = model.FindEntityType(typeof(OrderLineDetail)).FindProperty("ProductId"); var keyPropagator = contextServices.GetRequiredService <IKeyPropagator>(); PropagateValue(keyPropagator, dependentEntry, property1, async); PropagateValue(keyPropagator, dependentEntry, property2, async); Assert.Equal(11, dependentEntry[property1]); Assert.False(dependentEntry.HasTemporaryValue(property1)); Assert.Equal(21, dependentEntry[property2]); Assert.False(dependentEntry.HasTemporaryValue(property1)); }
public static CommandDefinition Update(OrderLineDetail record) { return(new CommandDefinition( @"UPDATE [BUSINESS.WMS.ORDER_LINE_DETAIL] SET [ORDER_GUID] = @ORDER_GUID, [ORDER_LINE_GUID] = @ORDER_LINE_GUID, [PRIORITY] = @PRIORITY, [ITEM_GUID] = @ITEM_GUID, [LOCATION_GUID] = @LOCATION_GUID, [UOM_GUID] = @UOM_GUID, [QTY] = @QTY, [BASE_QTY] = @BASE_QTY, [NUMBER] = @NUMBER WHERE GUID_RECORD = @GUID_RECORD", new { GUID_RECORD = record.Id, ORDER_GUID = record.OrderId, ORDER_LINE_GUID = record.OrderLineId, PRIORITY = record.Priority, ITEM_GUID = record.ItemId, LOCATION_GUID = record.LocationId, UOM_GUID = record.UomId, QTY = record.Qty, BASE_QTY = record.BaseQty, NUMBER = record.Number })); }
private EventPlannerOrderLine ToEventPlannerOrderLineDetail(OrderLineDetail orderLineDetail) { var mealList = GetAllMealByMenuId(orderLineDetail.MenuId) .Select(m => new IdNameValue { Id = m.Id, Name = m.MealName }) .ToList(); return(new EventPlannerOrderLine { BrandOrderLineId = orderLineDetail.OrderLineId, OrderLineId = orderLineDetail.Id, MenuId = orderLineDetail.MenuId, MenuName = GetMenuNameById(orderLineDetail.MenuId), BrandId = orderLineDetail.BrandId, BrandName = orderLineDetail.BrandName, Photo = GetMenuPhotoById(orderLineDetail.MenuId), MealList = mealList, Note = orderLineDetail.Note, StatusId = orderLineDetail.StatusId, StatusName = orderLineDetail.StatusName, Price = orderLineDetail.Amount, OtherFee = 0, DidRate = orderLineDetail.DidRate, }); }
public async Task <IHttpActionResult> Put([FromODataUri] System.Guid key, [FromBody] OrderLineDetail entity) { logger.Trace("Call OrderLineDetailController Put"); var record = await orderLineDetailRepository.UpdateAsync(entity); return(Updated(record)); }
public async Task <IHttpActionResult> Post([FromBody] OrderLineDetail entity) { logger.Trace("Call OrderLineDetailController Post"); var record = await orderLineDetailRepository.CreateAsync(entity); return(Created(record)); }
public async Task <OrderLineDetail> UpdateAsync(OrderLineDetail OrderLineDetail) { using (var connection = context.CreateConnection()) { await connection.ExecuteAsync(OrderLineDetailQuery.Update(OrderLineDetail)); return(OrderLineDetail); } }
private BrandOrderLine OrderLineToBrandOrderLineById(OrderLineDetail orderLineDetail) { return(new BrandOrderLine { MenuId = orderLineDetail.MenuId, MenuName = GetMenuNameById(orderLineDetail.MenuId), Note = orderLineDetail.Note, Price = orderLineDetail.Amount }); }
public void Composite_foreign_key_value_is_obtained_from_reference_to_principal() { var model = BuildModel(); var principal = new OrderLine { OrderId = 11, ProductId = 21 }; var dependent = new OrderLineDetail { OrderLine = principal }; var dependentEntry = CreateContextConfiguration(model).StateManager.GetOrCreateEntry(dependent); Assert.Equal(11, CreateValueGenerator().Next(dependentEntry, model.GetEntityType(typeof(OrderLineDetail)).GetProperty("OrderId"))); Assert.Equal(21, CreateValueGenerator().Next(dependentEntry, model.GetEntityType(typeof(OrderLineDetail)).GetProperty("ProductId"))); }
public OrderLineDetail Create(OrderLineDetail OrderLineDetail) { if (OrderLineDetail.Id == Guid.Empty) { OrderLineDetail.Id = Guid.NewGuid(); } using (var connection = context.CreateConnection()) { connection.Execute(OrderLineDetailQuery.Insert(OrderLineDetail)); return(OrderLineDetail); } }
public async Task <OrderLineDetail> CreateAsync(OrderLineDetail OrderLineDetail) { if (OrderLineDetail.Id == Guid.Empty) { OrderLineDetail.Id = Guid.NewGuid(); } using (var connection = context.CreateConnection()) { await connection.ExecuteAsync(OrderLineDetailQuery.Insert(OrderLineDetail)); return(OrderLineDetail); } }
public static CommandDefinition Insert(OrderLineDetail record) { return(new CommandDefinition( @"INSERT INTO [BUSINESS.WMS.ORDER_LINE_DETAIL] ([GUID_RECORD], [ORDER_GUID], [ORDER_LINE_GUID], [PRIORITY], [ITEM_GUID], [LOCATION_GUID], [UOM_GUID], [QTY], [BASE_QTY], [NUMBER], [BATCH_GUID], [HIDDEN], [DELETED]) VALUES (@GUID_RECORD, @ORDER_GUID, @ORDER_LINE_GUID, @PRIORITY, @ITEM_GUID, @LOCATION_GUID, @UOM_GUID, @QTY, @BASE_QTY, @NUMBER, @BATCH_GUID, @HIDDEN, @DELETED)", new { GUID_RECORD = record.Id, ORDER_GUID = record.OrderId, ORDER_LINE_GUID = record.OrderLineId, PRIORITY = record.Priority, ITEM_GUID = record.ItemId, LOCATION_GUID = record.LocationId, UOM_GUID = record.UomId, QTY = record.Qty, BASE_QTY = record.BaseQty, NUMBER = record.Number, BATCH_GUID = (Guid?)null, HIDDEN = 0, DELETED = 0 })); }
public void OrderLineDetailRepositoryCRUDTest() { var context = new NoodleDbContext("NoodleDb"); context.Init(); IOrderLineDetailRepository repository = new OrderLineDetailRepository(context); var id = Guid.NewGuid(); var record = new OrderLineDetail { Id = id, BaseQty = .1f, Priority = 1, Qty = .1f, Number = "SO001" }; repository.Create(record); record.BaseQty = .2f; record.Priority = 2; record.Qty = .2f; record.Number = "SO002"; repository.Update(record); var updatedRecord = repository.GetById(id); Assert.AreEqual(record.Id, updatedRecord.Id); Assert.AreEqual(record.BaseQty, updatedRecord.BaseQty); Assert.AreEqual(record.Priority, updatedRecord.Priority); Assert.AreEqual(record.Qty, updatedRecord.Qty); Assert.AreEqual(record.Number, updatedRecord.Number); repository.Delete(record.Id); var deletedRecord = repository.GetById(id); Assert.IsNull(deletedRecord); }
public void Composite_foreign_key_value_is_obtained_from_tracked_principal() { var model = BuildModel(); var manager = CreateContextServices(model).GetRequiredService <StateManager>(); var dependent = new OrderLineDetail(); var principal = new OrderLine { OrderId = 11, ProductId = 21, Detail = dependent }; manager.StartTracking(manager.GetOrCreateEntry(principal)); var dependentEntry = manager.GetOrCreateEntry(dependent); var property1 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("OrderId"); var property2 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("ProductId"); CreateValueGenerator().PropagateValue(dependentEntry, property1); CreateValueGenerator().PropagateValue(dependentEntry, property2); Assert.Equal(11, dependentEntry[property1]); Assert.Equal(21, dependentEntry[property2]); }
public void Composite_foreign_key_value_is_obtained_from_reference_to_principal() { var model = BuildModel(); var principal = new OrderLine { OrderId = 11, ProductId = 21 }; var dependent = new OrderLineDetail { OrderLine = principal }; var contextServices = CreateContextServices(model); var dependentEntry = contextServices.GetRequiredService <IStateManager>().GetOrCreateEntry(dependent); var property1 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("OrderId"); var property2 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("ProductId"); var keyPropagator = contextServices.GetRequiredService <IKeyPropagator>(); PropagateValue(keyPropagator, dependentEntry, property1); PropagateValue(keyPropagator, dependentEntry, property2); Assert.Equal(11, dependentEntry[property1]); Assert.Equal(21, dependentEntry[property2]); }
public async Task Composite_foreign_key_value_is_obtained_from_tracked_principal(bool async) { var model = BuildModel(); var contextServices = CreateContextServices(model); var manager = contextServices.GetRequiredService <StateManager>(); var dependent = new OrderLineDetail(); var principal = new OrderLine { OrderId = 11, ProductId = 21, Detail = dependent }; manager.StartTracking(manager.GetOrCreateEntry(principal)); var dependentEntry = manager.GetOrCreateEntry(dependent); var property1 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("OrderId"); var property2 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("ProductId"); var valuePropagator = contextServices.GetRequiredService <ForeignKeyValuePropagator>(); await PropagateValue(valuePropagator, dependentEntry, property1, async); await PropagateValue(valuePropagator, dependentEntry, property2, async); Assert.Equal(11, dependentEntry[property1]); Assert.Equal(21, dependentEntry[property2]); }
public void Composite_foreign_key_value_is_obtained_from_tracked_principal() { var model = BuildModel(); var contextServices = CreateContextServices(model); var manager = contextServices.GetRequiredService<IStateManager>(); var dependent = new OrderLineDetail(); var principal = new OrderLine { OrderId = 11, ProductId = 21, Detail = dependent }; manager.StartTracking(manager.GetOrCreateEntry(principal)); var dependentEntry = manager.GetOrCreateEntry(dependent); var property1 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("OrderId"); var property2 = model.GetEntityType(typeof(OrderLineDetail)).GetProperty("ProductId"); var keyPropagator = contextServices.GetRequiredService<IKeyPropagator>(); PropagateValue(keyPropagator, dependentEntry, property1); PropagateValue(keyPropagator, dependentEntry, property2); Assert.Equal(11, dependentEntry[property1]); Assert.Equal(21, dependentEntry[property2]); }
public void OrderLineDetailCrudTest() { var context = new Container(new Uri("http://localhost:5588/odata/")); var item = new Product() { Key = "TestProduct" + Guid.NewGuid(), Name = "TestProduct", Type = "REGULAR" }; context.AddToProducts(item); context.SaveChanges(); var savedItem = context.Products.Where(u => u.Key == item.Key).Single(); var location = new Location { Key = "TestLocation" + Guid.NewGuid(), Name = "TestLocation", Type = "WAREHOUSE", UnitId = Guid.NewGuid() }; context.AddToLocations(location); context.SaveChanges(); var savedLocation = context.Locations.Where(l => l.Key == location.Key).Single(); var orderLine = new OrderLine { Id = Guid.NewGuid(), BasePrice = .1f, BaseQty = .1f, Price = .1f, Priority = 1, Qty = .1f, Amount = 10, BaseAmount = 10 }; context.AddToOrderLines(orderLine); context.SaveChanges(); var savedOrderLine = context.OrderLines.Where(ol => ol.Id == orderLine.Id).Single(); var uom = new Uom { Key = "TestUom" + Guid.NewGuid(), Name = "TestUom" }; context.AddToUoms(uom); context.SaveChanges(); var savedUom = context.Uoms.Where(u => u.Key == uom.Key).Single(); var order = new Order { Id = Guid.NewGuid(), Amount = 10, BaseAmount = 10, CurrencyId = Guid.NewGuid(), CustomerId = Guid.NewGuid(), Date = new DateTime(2000, 1, 1), DestinationId = Guid.NewGuid(), DueDate = new DateTime(2001, 1, 1), LinesCount = 5, Number = "SO001", SourceId = Guid.NewGuid(), Type = "SO" }; context.AddToOrders(order); context.SaveChanges(); var savedOrder = context.Orders.Where(o => o.Id == order.Id).Single(); var orderLineDetail = new OrderLineDetail { BaseQty = .1f, Priority = 1, Qty = .1f, Number = "SO001", ItemId = savedItem.Id, LocationId = savedLocation.Id, OrderLineId = savedOrderLine.Id, UomId = savedUom.Id, OrderId = order.Id }; context.AddToOrderLineDetails(orderLineDetail); var response = context.SaveChanges(); foreach (ChangeOperationResponse change in response) { var descriptor = change.Descriptor as EntityDescriptor; var entity = descriptor.Entity as OrderLineDetail; entity.Number = "SO002"; context.UpdateObject(entity); context.SaveChanges(SaveChangesOptions.ReplaceOnUpdate); var savedEntity = context.OrderLineDetails.Where(r => r.Id == entity.Id).Single(); var referencedItem = context.OrderLineDetails.Where(r => r.Id == entity.Id).Select(r => r.Item).Single(); var referencedLocation = context.OrderLineDetails.Where(r => r.Id == entity.Id).Select(r => r.Location).Single(); var referencedOrderLine = context.OrderLineDetails.Where(r => r.Id == entity.Id).Select(r => r.OrderLine).Single(); var referencedUom = context.OrderLineDetails.Where(r => r.Id == entity.Id).Select(r => r.Uom).Single(); var referencedOrder = context.OrderLineDetails.Where(r => r.Id == entity.Id).Select(r => r.Order).Single(); context.DeleteObject(savedItem); context.DeleteObject(savedLocation); context.DeleteObject(savedOrder); context.DeleteObject(savedOrderLine); context.DeleteObject(savedUom); context.DeleteObject(entity); var deleteResponses = context.SaveChanges(); Assert.IsNotNull(savedEntity); Assert.AreEqual(savedEntity.Number, entity.Number); Assert.AreEqual(referencedItem.Key, item.Key); Assert.AreEqual(referencedLocation.Key, location.Key); Assert.AreEqual(referencedOrderLine.Id, orderLine.Id); Assert.AreEqual(referencedUom.Key, referencedUom.Key); Assert.AreEqual(referencedOrder.Id, order.Id); Assert.IsNotNull(deleteResponses); } Assert.IsNotNull(response); }
public OrderLineDetail Update(OrderLineDetail OrderLineDetail) { return(UpdateAsync(OrderLineDetail).Result); }
public void Composite_foreign_key_value_is_obtained_from_reference_to_principal() { var model = BuildModel(); var principal = new OrderLine { OrderId = 11, ProductId = 21 }; var dependent = new OrderLineDetail { OrderLine = principal }; var contextServices = CreateContextServices(model); var dependentEntry = contextServices.GetRequiredService<IStateManager>().GetOrCreateEntry(dependent); var property1 = model.FindEntityType(typeof(OrderLineDetail)).FindProperty("OrderId"); var property2 = model.FindEntityType(typeof(OrderLineDetail)).FindProperty("ProductId"); var keyPropagator = contextServices.GetRequiredService<IKeyPropagator>(); PropagateValue(keyPropagator, dependentEntry, property1); PropagateValue(keyPropagator, dependentEntry, property2); Assert.Equal(11, dependentEntry[property1]); Assert.Equal(21, dependentEntry[property2]); }