public async Task <ParkingOrderDto> UpdateParkingOrder(string orderNumber, UpdateParkingOrderDto updateParkingOrderDto) { var foundOrderEntity = parkingLotContext.ParkingOrders.FirstOrDefaultAsync(order => order.OrderNumber == orderNumber).Result; if (foundOrderEntity != null) { foundOrderEntity.OrderStatus = updateParkingOrderDto.OrderStatus; foundOrderEntity.CloseTime = updateParkingOrderDto.CloseTime; await parkingLotContext.SaveChangesAsync(); return(new ParkingOrderDto(foundOrderEntity) { OrderNumber = foundOrderEntity.OrderNumber, }); } return(null); }
public async Task Should_update_parkingOrder_when_update_parkingOrder_via_parkingOrderService() { // given var scope = Factory.Services.CreateScope(); var scopedServices = scope.ServiceProvider; ParkingLotContext context = scopedServices.GetRequiredService <ParkingLotContext>(); ParkingOrderService parkingOrderService = new ParkingOrderService(context); var parkingOrderDtoList = GenerateParkingOrderDtoList(); foreach (var parkingOrderDto in parkingOrderDtoList) { await parkingOrderService.AddParkingOrder(parkingOrderDto); } UpdateParkingOrderDto updateParkingOrderDto = new UpdateParkingOrderDto("closed"); // when var changedParkingOrder = await parkingOrderService.UpdateParkingOrder(parkingOrderDtoList[0].OrderNumber, updateParkingOrderDto); // then Assert.Equal(updateParkingOrderDto.CloseTime, changedParkingOrder.CloseTime); Assert.Equal(updateParkingOrderDto.OrderStatus, changedParkingOrder.OrderStatus); }
public async Task <ActionResult <ParkingOrderDto> > UpdateParkingLotCapacity(string parkingOrderNumber, UpdateParkingOrderDto updateParkingOrderDto) { var foundParkingOrder = await parkingOrderService.GetParkingOrderByOrderNumber(parkingOrderNumber); if (foundParkingOrder != null) { var changedParkingOrder = await parkingOrderService.UpdateParkingOrder(parkingOrderNumber, updateParkingOrderDto); return(Ok(changedParkingOrder)); } return(NotFound("parking order not found")); }