示例#1
0
        public async Task <IActionResult> OnGetAsync(string id)
        {
            Booking = new InactiveBookingViewModel();
            Booking = await _inactiveBookingDataService.GetInactiveBookingById(Guid.Parse(id));

            return(Page());
        }
示例#2
0
        public async Task <IActionResult> OnPostCreate(InactiveBookingViewModel Booking)
        {
            var booking = new BookingViewModel
            {
                BookingTime         = Booking.BookingTime.Value,
                TotalPallets        = Booking.TotalPallets,
                Port                = Booking.Port,
                ExternalId          = Booking.ExternalId,
                InternalId          = Booking.InternalId,
                OrdersListViewModel = new List <OrderViewModel>()
            };

            foreach (var inactiveOrder in Booking.InactiveOrders)
            {
                booking.OrdersListViewModel.Add(new OrderViewModel
                {
                    BookingId     = booking.InternalId,
                    BottomPallets = inactiveOrder.BottomPallets,
                    Comment       = inactiveOrder.Comment,
                    ExternalId    = inactiveOrder.ExternalId,
                    InOut         = inactiveOrder.InOut,
                    OrderNumber   = inactiveOrder.OrderNumber,
                    TotalPallets  = inactiveOrder.TotalPallets,
                    WareNumber    = inactiveOrder.WareNumber
                });
            }

            var id = User.Claims.FirstOrDefault(x => x.Type == "sub").Value;

            TempData.Set(id, booking);
            return(new RedirectToPageResult("Client/Bookings/select_time"));
        }
示例#3
0
        public async Task <IActionResult> OnPostUpdate(InactiveBookingViewModel Booking)
        {
            var inactiveBooking = await _inactiveBookingDataService.GetInactiveBookingById(Booking.InternalId);

            inactiveBooking.Port = Booking.Port; //No check as i think the port can be 0 in reality
            if (Booking.BookingTime != default(DateTime) && Booking.BookingTime != null)
            {
                inactiveBooking.BookingTime = Booking.BookingTime;
            }
            if (Booking.TotalPallets != 0)
            {
                inactiveBooking.TotalPallets = Booking.TotalPallets;
            }
            if (Booking.ExternalId != 0)
            {
                inactiveBooking.ExternalId = Booking.ExternalId;
            }

            for (int i = 0; i < inactiveBooking.InactiveOrders.Count; i++)
            {
                if (!string.IsNullOrWhiteSpace(Booking.InactiveOrders[i].ExternalId))
                {
                    inactiveBooking.InactiveOrders[i].ExternalId = Booking.InactiveOrders[i].ExternalId;
                }
                inactiveBooking.InactiveOrders[i].Comment = Booking.InactiveOrders[i].Comment; //No check: Comment should be able to be left blank i think
                if (Booking.InactiveOrders[i].BottomPallets != 0)
                {
                    inactiveBooking.InactiveOrders[i].BottomPallets = Booking.InactiveOrders[i].BottomPallets;
                }
                if (!string.IsNullOrWhiteSpace(Booking.InactiveOrders[i].InOut))
                {
                    inactiveBooking.InactiveOrders[i].InOut = Booking.InactiveOrders[i].InOut;
                }
                if (!string.IsNullOrWhiteSpace(Booking.InactiveOrders[i].OrderNumber))
                {
                    inactiveBooking.InactiveOrders[i].OrderNumber = Booking.InactiveOrders[i].OrderNumber;
                }
                if (Booking.InactiveOrders[i].TotalPallets != 0)
                {
                    inactiveBooking.InactiveOrders[i].TotalPallets = Booking.InactiveOrders[i].TotalPallets;
                }
                if (Booking.InactiveOrders[i].WareNumber != 0)
                {
                    inactiveBooking.InactiveOrders[i].WareNumber = Booking.InactiveOrders[i].WareNumber;
                }
            }

            var result = _inactiveBookingDataService.UpdateInactiveBookingWithOrders(UpdateInactiveBookingWithOrdersCommand.GenerateCommand(inactiveBooking));

            return(new RedirectToPageResult("InactiveBookingOverview"));
        }
        public static UpdateInactiveBookingCommand GenerateCommand(InactiveBookingViewModel model)
        {
            var cmd = new UpdateInactiveBookingCommand
            {
                BookingTime    = model.BookingTime,
                InternalId     = model.InternalId,
                ExternalId     = model.ExternalId,
                InactiveOrders = model.InactiveOrders,
                Port           = model.Port,
                TotalPallets   = model.TotalPallets
            };

            return(cmd);
        }
示例#5
0
 public InactiveBookingSingleModel(IInactiveBookingDataService _bookingDataService)
 {
     _inactiveBookingDataService = _bookingDataService;
     Booking = new InactiveBookingViewModel();
 }