use of com.company.sales.entity.Order in project documentation by cuba-platform.
the class OrderLineChangedListener method beforeCommit.
@EventListener
public void beforeCommit(EntityChangedEvent<OrderLine, UUID> event) {
Order order;
if (event.getType() != EntityChangedEvent.Type.DELETED) {
// <1>
order = // <2>
txDm.load(event.getEntityId()).view(// <3>
"orderLine-with-order").one().getOrder();
} else {
// <5>
Id<Order, UUID> orderId = event.getChanges().getOldReferenceId("order");
order = txDm.load(orderId).one();
}
long count = // <6>
txDm.load(OrderLine.class).query("select o from sales_OrderLine o where o.order = :order").parameter("order", order).view("orderLine-with-product").list().stream().filter(orderLine -> Boolean.TRUE.equals(orderLine.getProduct().getSpecial())).count();
order.setNumberOfSpecialProducts((int) count);
// <7>
txDm.save(order);
}
use of com.company.sales.entity.Order in project documentation by cuba-platform.
the class OrdersHistory method onInit.
@Subscribe
private void onInit(InitEvent event) {
Order initialValue = metadata.create(Order.class);
initialValue.setAmount(new BigDecimal(random.nextInt(1000) + 100));
initialValue.setDate(timeSource.currentTimestamp());
ordersDc.getMutableItems().add(initialValue);
}
use of com.company.sales.entity.Order in project documentation by cuba-platform.
the class OrdersHistory method updateChart.
public void updateChart(Timer source) {
Order orderHistory = metadata.create(Order.class);
orderHistory.setAmount(new BigDecimal(random.nextInt(1000) + 100));
orderHistory.setDate(timeSource.currentTimestamp());
;
ordersDc.getMutableItems().add(orderHistory);
}
Aggregations