use of com.axelor.rpc.filter.Filter in project axelor-open-suite by axelor.
the class ClientViewServiceImpl method getNextDeliveryIndicator.
protected String getNextDeliveryIndicator(User user) {
List<Filter> filters = getNextDeliveryOfUser(user);
StockMove stockMove = Filter.and(filters).build(StockMove.class).order("estimatedDate").fetchOne();
if (stockMove == null) {
return I18n.get(CLIENT_PORTAL_NO_DATE);
}
return stockMove.getEstimatedDate() != null ? stockMove.getEstimatedDate().format(DATE_FORMATTER) : I18n.get(CLIENT_PORTAL_NO_DATE);
}
use of com.axelor.rpc.filter.Filter in project axelor-open-suite by axelor.
the class ClientViewServiceImpl method getTotalRemainingIndicator.
protected String getTotalRemainingIndicator(User user) {
List<Filter> filters = getTotalRemainingOfUser(user);
List<Invoice> invoiceList = Filter.and(filters).build(Invoice.class).fetch();
if (!invoiceList.isEmpty()) {
BigDecimal total = invoiceList.stream().map(Invoice::getAmountRemaining).reduce((x, y) -> x.add(y)).orElse(BigDecimal.ZERO);
return total.toString() + invoiceList.get(0).getCurrency().getSymbol();
}
return BigDecimal.ZERO.toString();
}
use of com.axelor.rpc.filter.Filter in project axelor-open-suite by axelor.
the class ClientViewServiceImpl method getOrdersInProgressOfUser.
/* SaleOrder Query */
@Override
public List<Filter> getOrdersInProgressOfUser(User user) {
List<Filter> filters = new ArrayList<>();
Filter filterFromPermission = security.getFilter(JpaSecurity.CAN_READ, SaleOrder.class);
Filter filter = new JPQLFilter("self.clientPartner.id = " + user.getPartner().getId() + " AND self.statusSelect = " + SaleOrderRepository.STATUS_ORDER_CONFIRMED);
if (user.getActiveCompany() != null) {
filter = Filter.and(filter, new JPQLFilter(" self.company.id = " + user.getActiveCompany().getId()));
}
filters.add(filter);
addPermissionFilter(filters, filterFromPermission);
return filters;
}
use of com.axelor.rpc.filter.Filter in project axelor-open-suite by axelor.
the class ClientViewServiceImpl method getTotalRemainingOfUser.
@Override
public List<Filter> getTotalRemainingOfUser(User user) {
List<Filter> filters = new ArrayList<>();
Filter filterFromPermission = security.getFilter(JpaSecurity.CAN_READ, Invoice.class);
Filter filter = new JPQLFilter("self.partner.id = " + user.getPartner().getId() + " AND self.amountRemaining != 0 AND self.statusSelect != " + InvoiceRepository.STATUS_DRAFT + " AND self.statusSelect != " + InvoiceRepository.STATUS_CANCELED);
if (user.getActiveCompany() != null) {
filter = Filter.and(filter, new JPQLFilter(" self.company.id = " + user.getActiveCompany().getId()));
}
filters.add(filter);
addPermissionFilter(filters, filterFromPermission);
return filters;
}
use of com.axelor.rpc.filter.Filter in project axelor-open-suite by axelor.
the class ClientViewServiceImpl method getLastDeliveryOfUser.
/* StockMove Query */
@Override
public List<Filter> getLastDeliveryOfUser(User user) {
List<Filter> filters = new ArrayList<>();
Filter filterFromPermission = security.getFilter(JpaSecurity.CAN_READ, StockMove.class);
Filter filter = new JPQLFilter("self.partner.id = " + user.getPartner().getId() + " AND self.typeSelect = " + StockMoveRepository.TYPE_OUTGOING + " AND self.statusSelect = " + StockMoveRepository.STATUS_REALIZED + " AND self.isReversion != true");
if (user.getActiveCompany() != null) {
filter = Filter.and(filter, new JPQLFilter(" self.company.id = " + user.getActiveCompany().getId()));
}
if (filterFromPermission != null) {
filter = Filter.and(filter, filterFromPermission);
}
filters.add(filter);
addPermissionFilter(filters, filterFromPermission);
return filters;
}
Aggregations