Search in sources :

Example 51 with User

use of com.axelor.auth.db.User in project axelor-open-suite by axelor.

the class PartnerController method printContactPhonebook.

/**
 * Fonction appeler par le bouton imprimer
 *
 * @param request
 * @param response
 * @return
 * @throws BirtException
 * @throws IOException
 */
public void printContactPhonebook(ActionRequest request, ActionResponse response) throws AxelorException {
    User user = AuthUtils.getUser();
    String name = I18n.get("Phone Book");
    String fileLink = ReportFactory.createReport(IReport.PHONE_BOOK, name + "-${date}").addParam("Locale", ReportSettings.getPrintingLocale(null)).addParam("Timezone", getTimezone(user)).addParam("UserId", user.getId()).generate().getFileLink();
    LOG.debug("Printing " + name);
    response.setView(ActionView.define(name).add("html", fileLink).map());
}
Also used : User(com.axelor.auth.db.User)

Example 52 with User

use of com.axelor.auth.db.User in project axelor-open-suite by axelor.

the class PartnerController method printCompanyPhonebook.

/**
 * Fonction appeler par le bouton imprimer
 *
 * @param request
 * @param response
 * @return
 * @throws BirtException
 * @throws IOException
 */
public void printCompanyPhonebook(ActionRequest request, ActionResponse response) throws AxelorException {
    User user = AuthUtils.getUser();
    String name = I18n.get("Company PhoneBook");
    String fileLink = ReportFactory.createReport(IReport.COMPANY_PHONE_BOOK, name + "-${date}").addParam("Locale", ReportSettings.getPrintingLocale(null)).addParam("Timezone", getTimezone(user)).addParam("UserId", user.getId()).generate().getFileLink();
    LOG.debug("Printing " + name);
    response.setView(ActionView.define(name).add("html", fileLink).map());
}
Also used : User(com.axelor.auth.db.User)

Example 53 with User

use of com.axelor.auth.db.User in project axelor-open-suite by axelor.

the class ProductController method printProductSheet.

public void printProductSheet(ActionRequest request, ActionResponse response) throws AxelorException {
    try {
        Product product = request.getContext().asType(Product.class);
        User user = Beans.get(UserService.class).getUser();
        String name = I18n.get("Product") + " " + product.getCode();
        if (user.getActiveCompany() == null) {
            throw new AxelorException(TraceBackRepository.CATEGORY_CONFIGURATION_ERROR, I18n.get(IExceptionMessage.PRODUCT_NO_ACTIVE_COMPANY));
        }
        String fileLink = ReportFactory.createReport(IReport.PRODUCT_SHEET, name + "-${date}").addParam("ProductId", product.getId()).addParam("CompanyId", user.getActiveCompany().getId()).addParam("Locale", ReportSettings.getPrintingLocale(null)).addParam("Timezone", user.getActiveCompany() != null ? user.getActiveCompany().getTimezone() : null).generate().getFileLink();
        logger.debug("Printing " + name);
        response.setView(ActionView.define(name).add("html", fileLink).map());
    } catch (Exception e) {
        TraceBackService.trace(response, e);
    }
}
Also used : AxelorException(com.axelor.exception.AxelorException) User(com.axelor.auth.db.User) UserService(com.axelor.apps.base.service.user.UserService) Product(com.axelor.apps.base.db.Product) AxelorException(com.axelor.exception.AxelorException)

Example 54 with User

use of com.axelor.auth.db.User 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();
}
Also used : ProjectTask(com.axelor.apps.project.db.ProjectTask) Filter(com.axelor.rpc.filter.Filter) Ticket(com.axelor.apps.helpdesk.db.Ticket) UserService(com.axelor.apps.base.service.user.UserService) TicketRepository(com.axelor.apps.helpdesk.db.repo.TicketRepository) Inject(com.google.inject.Inject) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) BigDecimal(java.math.BigDecimal) SaleOrderRepository(com.axelor.apps.sale.db.repo.SaleOrderRepository) ProjectRepository(com.axelor.apps.project.db.repo.ProjectRepository) ProjectTaskRepository(com.axelor.apps.project.db.repo.ProjectTaskRepository) Map(java.util.Map) I18n(com.axelor.i18n.I18n) Project(com.axelor.apps.project.db.Project) SaleOrder(com.axelor.apps.sale.db.SaleOrder) JpaSecurity(com.axelor.db.JpaSecurity) StockMove(com.axelor.apps.stock.db.StockMove) StockMoveRepository(com.axelor.apps.stock.db.repo.StockMoveRepository) Invoice(com.axelor.apps.account.db.Invoice) List(java.util.List) JPQLFilter(com.axelor.rpc.filter.JPQLFilter) InvoiceRepository(com.axelor.apps.account.db.repo.InvoiceRepository) Beans(com.axelor.inject.Beans) DateTimeFormatter(java.time.format.DateTimeFormatter) User(com.axelor.auth.db.User) Invoice(com.axelor.apps.account.db.Invoice) Filter(com.axelor.rpc.filter.Filter) JPQLFilter(com.axelor.rpc.filter.JPQLFilter) BigDecimal(java.math.BigDecimal)

Example 55 with User

use of com.axelor.auth.db.User in project axelor-open-suite by axelor.

the class ClientViewController method showClientMyQuotation.

public void showClientMyQuotation(ActionRequest request, ActionResponse response) {
    try {
        ClientViewService clientViewService = Beans.get(ClientViewService.class);
        User clientUser = clientViewService.getClientUser();
        if (clientUser.getPartner() == null) {
            response.setError(I18n.get(ITranslation.CLIENT_PORTAL_NO_PARTNER));
        } else {
            Filter filter = clientViewService.getQuotationsOfUser(clientUser).get(0);
            if (filter != null) {
                response.setView(ActionView.define(I18n.get("My quotations")).model(SaleOrder.class.getName()).add("grid", "sale-order-grid").add("form", "sale-order-form").param("search-filters", "sale-order-filters").domain(filter.getQuery()).map());
            }
        }
    } catch (Exception e) {
        TraceBackService.trace(response, e);
    }
}
Also used : ClientViewService(com.axelor.apps.portal.service.ClientViewService) User(com.axelor.auth.db.User) Filter(com.axelor.rpc.filter.Filter) SaleOrder(com.axelor.apps.sale.db.SaleOrder)

Aggregations

User (com.axelor.auth.db.User)157 AxelorException (com.axelor.exception.AxelorException)35 Employee (com.axelor.apps.hr.db.Employee)28 ArrayList (java.util.ArrayList)25 HashMap (java.util.HashMap)25 Transactional (com.google.inject.persist.Transactional)24 LocalDate (java.time.LocalDate)23 Filter (com.axelor.rpc.filter.Filter)22 BigDecimal (java.math.BigDecimal)22 ClientViewService (com.axelor.apps.portal.service.ClientViewService)20 ActionViewBuilder (com.axelor.meta.schema.actions.ActionView.ActionViewBuilder)17 List (java.util.List)17 Map (java.util.Map)16 TimesheetLine (com.axelor.apps.hr.db.TimesheetLine)12 LocalDateTime (java.time.LocalDateTime)12 Company (com.axelor.apps.base.db.Company)11 Partner (com.axelor.apps.base.db.Partner)11 Beans (com.axelor.inject.Beans)11 Inject (com.google.inject.Inject)11 Product (com.axelor.apps.base.db.Product)9