public OrderItem apply(Map<String, Object> map) { if (map == null) { return null; } OrderItem orderItem = new OrderItem(); orderItem.setId(UUID.fromString((String) map.get("id"))); orderItem.setOrderId(UUID.fromString((String) map.get("order_id"))); if (map.containsKey("purchasable_id") && map.get("purchasable_id") != null) { // There might not be a purchasable id orderItem.setPurchasableId(UUID.fromString((String) map.get("purchasable_id"))); } orderItem.setType((String) map.get("type")); orderItem.setTitle((String) map.get("title")); orderItem.setMerchant((String) map.get("merchant")); orderItem.setQuantity(((Integer) map.get("quantity")).longValue()); orderItem.setUnitPrice(BigDecimal.valueOf((Double) map.get("unit_price"))); orderItem.setItemTotal(BigDecimal.valueOf((Double) map.get("item_total"))); if (map.containsKey("vat_rate") && map.get("vat_rate") != null) { // There might not be a VAT rate orderItem.setVatRate(BigDecimal.valueOf((Double) map.get("vat_rate"))); } if (map.containsKey("data") && map.get("data") != null) { // There might not be data orderItem.addData((Map<String, Object>) map.get("data")); } return orderItem; } }).filter(Predicates.notNull()).toList();
OrderItem orderItem = new OrderItem(); orderItem.setId(UUID.randomUUID()); orderItem.setOrderId(order.getId()); orderItem.setPurchasableId(UUID.fromString((String) item.get("id"))); orderItem.setType((String) item.get("type")); orderItem.setTitle((String) item.get("title")); orderItem.setQuantity(((Integer) item.get("quantity")).longValue()); orderItem.setUnitPrice(BigDecimal.valueOf((Double) item.get("unitPrice"))); orderItem.setItemTotal(BigDecimal.valueOf((Double) item.get("itemTotal"))); if (item.containsKey("vatRate")) { orderItem.setVatRate(BigDecimal.valueOf((Double) item.get("vatRate"))); orderItem.addData("addons", convertAddonsToMap((List<Map<String, Object>>) item.get("addons"))); insertItems.setObject(1, item.getId()); insertItems.setObject(2, item.getOrderId()); insertItems.setObject(3, item.getPurchasableId()); insertItems.setString(4, item.getType()); insertItems.setString(5, item.getTitle()); insertItems.setLong(6, item.getQuantity()); insertItems.setBigDecimal(7, item.getUnitPrice()); insertItems.setBigDecimal(8, item.getItemTotal()); insertItems.setBigDecimal(9, item.getVatRate()); insertItems.setString(10, mapper.writeValueAsString(item.getData())); insertItems.addBatch();
for (OrderItem item : items) { Map<String, Object> orderItem = Maps.newHashMap(); orderItem.put("title", item.getTitle()); orderItem.put("quantity", item.getQuantity()); Double unitPrice = item.getUnitPrice().doubleValue(); Double itemTotal = item.getItemTotal().doubleValue();
@Override public void onEvent(Event event, Object source, Object data) { // Update stocks for bought products Order order = (Order) source; List<OrderItem> items = order.getOrderItems(); for (OrderItem item : items) { UUID itemId = item.getPurchasableId(); if (itemId == null) { return; } Long quantity = item.getQuantity(); try { Product product = productStore.get().findById(itemId); if (product.getStock() != null) { productStore.get().updateStock(itemId, -quantity.intValue()); } else if (product.getParentId() != null) { Product parent = productStore.get().findById(product.getParentId()); productStore.get().updateStock(product.getParentId(), -quantity.intValue()); } } catch (EntityDoesNotExistException e) { // Ignore, there is just no stock to update } } } }
public void addToConveyorBelt( int orderNum ) { OrderItem oi = new OrderItem(orderNum); conveyorBelt.add(oi); // here it fails }
.print(Money.of(currencyUnit, item.getUnitPrice(), RoundingMode.HALF_EVEN))); itemData.put("itemTotal", formatter.withLocale(locale) .print(Money.of(currencyUnit, item.getItemTotal(), RoundingMode.HALF_EVEN))); itemData.put("title", item.getTitle()); itemData.put("quantity", item.getQuantity()); itemData.put("vatRate", item.getVatRate().longValue()); itemsData.add(itemData);
public void addToConveyorBelt(int orderNum) { OrderItem oi = new OrderItem(orderNum); conveyorBelt.add(oi); }
OrderItem orderItem = new OrderItem(); orderItem.setPurchasableId(product.getId()); orderItem.setType("product"); orderItem.setTitle(title); orderItem.setQuantity(cartItem.quantity()); orderItem.setUnitPrice(cartItem.unitPrice().incl()); orderItem.setItemTotal(cartItem.total().incl()); orderItem.setVatRate(vatRate); orderItem.setMerchant(tenant.isPresent() ? tenant.get().getName() : null); orderItem.addData(data); return orderItem;
Orders orders = new Orders(); orders.addItem(new OrderItem()); ... session = getSession(); session.save(object); session.flush()
RendererRegistry registry = new RendererRegistry(); registry.register(OrderItem.class, new DefaultRenderer<OrderItem>(OrderItem.class)); Renderer<Film> filmRenderer = new AgeLimitedRenderer<Film>(Film.class); registry.register(Film.class, filmRenderer); registry.register(AdultFilm.class, filmRenderer); registry.register(Beer.class, new CountableRenderer<Beer>(Beer.class)); System.out.println(registry.renderItem(new OrderItem())); System.out.println(registry.renderItem(new Beer())); System.out.println(registry.renderItem(new Film())); System.out.println(registry.renderItem(new AdultFilm()));