@Override public void shipConsignment(final ConsignmentModel consignment) { if (consignment == null) { LOG.error("No consignment to ship"); } else { if (consignment.getDeliveryMode() instanceof PickUpDeliveryModeModel) { consignment.setStatus(ConsignmentStatus.READY_FOR_PICKUP); } else { consignment.setStatus(ConsignmentStatus.SHIPPED); } consignment.setShippingDate(getTimeService().getCurrentTime()); for (final ConsignmentEntryModel entry : consignment.getConsignmentEntries()) { entry.setShippedQuantity(entry.getOrderEntry().getQuantity()); getModelService().save(entry); } getModelService().save(consignment); if (LOG.isInfoEnabled()) { LOG.info("Consignment [" + consignment.getCode() + "] shipped"); } } }