use of com.axelor.auth.db.User in project axelor-open-suite by axelor.
the class TimesheetController method allTimesheetLine.
public void allTimesheetLine(ActionRequest request, ActionResponse response) {
User user = AuthUtils.getUser();
Employee employee = user.getEmployee();
ActionViewBuilder actionView = ActionView.define(I18n.get("See timesheet lines")).model(TimesheetLine.class.getName()).add("grid", "timesheet-line-grid").add("form", "timesheet-line-form");
Beans.get(TimesheetService.class).createDomainAllTimesheetLine(user, employee, actionView);
response.setView(actionView.map());
}
use of com.axelor.auth.db.User in project axelor-open-suite by axelor.
the class TimesheetController method validateTimesheetLine.
public void validateTimesheetLine(ActionRequest request, ActionResponse response) {
User user = AuthUtils.getUser();
Employee employee = user.getEmployee();
ActionViewBuilder actionView = ActionView.define(I18n.get("See timesheet lines")).model(TimesheetLine.class.getName()).add("grid", "timesheet-line-grid").add("form", "timesheet-line-form").context("todayDate", Beans.get(AppBaseService.class).getTodayDate(user.getActiveCompany()));
Beans.get(TimesheetService.class).createValidateDomainTimesheetLine(user, employee, actionView);
response.setView(actionView.map());
}
use of com.axelor.auth.db.User in project axelor-open-suite by axelor.
the class ExpenseController method historicExpense.
public void historicExpense(ActionRequest request, ActionResponse response) {
User user = AuthUtils.getUser();
Employee employee = user.getEmployee();
ActionViewBuilder actionView = ActionView.define(I18n.get("Historic colleague Expenses")).model(Expense.class.getName()).add("grid", "expense-grid").add("form", "expense-form").param("search-filters", "expense-filters");
actionView.domain("self.company = :_activeCompany AND (self.statusSelect = 3 OR self.statusSelect = 4)").context("_activeCompany", user.getActiveCompany());
if (employee == null || !employee.getHrManager()) {
actionView.domain(actionView.get().getDomain() + " AND self.user.employee.managerUser = :_user").context("_user", user);
}
response.setView(actionView.map());
}
use of com.axelor.auth.db.User in project axelor-open-suite by axelor.
the class ExpenseController method editExpense.
public void editExpense(ActionRequest request, ActionResponse response) {
User user = AuthUtils.getUser();
Company activeCompany = user.getActiveCompany();
List<Expense> expenseList = Beans.get(ExpenseRepository.class).all().filter("self.user = ?1 AND self.company = ?2 AND self.statusSelect = 1 AND (self.multipleUsers is false OR self.multipleUsers is null)", user, activeCompany).fetch();
if (expenseList.isEmpty()) {
response.setView(ActionView.define(I18n.get("Expense")).model(Expense.class.getName()).add("form", "expense-form").context("_payCompany", Beans.get(UserHrService.class).getPayCompany(user)).map());
} else if (expenseList.size() == 1) {
response.setView(ActionView.define(I18n.get("Expense")).model(Expense.class.getName()).add("form", "expense-form").param("forceEdit", "true").context("_showRecord", String.valueOf(expenseList.get(0).getId())).map());
} else {
response.setView(ActionView.define(I18n.get("Expense")).model(Wizard.class.getName()).add("form", "popup-expense-form").param("forceEdit", "true").param("popup", "true").param("show-toolbar", "false").param("show-confirm", "false").param("forceEdit", "true").param("popup-save", "false").map());
}
}
use of com.axelor.auth.db.User in project axelor-open-suite by axelor.
the class ExtraHoursController method showSubordinateExtraHours.
public void showSubordinateExtraHours(ActionRequest request, ActionResponse response) {
User user = AuthUtils.getUser();
Company activeCompany = user.getActiveCompany();
ActionViewBuilder actionView = ActionView.define(I18n.get("Extra hours to be Validated by your subordinates")).model(ExtraHours.class.getName()).add("grid", "extra-hours-grid").add("form", "extra-hours-form").param("search-filters", "extra-hours-filters");
String domain = "self.user.employee.managerUser.employee.managerUser = :_user AND self.company = :_activeCompany AND self.statusSelect = 2";
long nbExtraHours = Query.of(ExtraHours.class).filter(domain).bind("_user", user).bind("_activeCompany", activeCompany).count();
if (nbExtraHours == 0) {
response.setNotify(I18n.get("No extra hours to be validated by your subordinates"));
} else {
response.setView(actionView.domain(domain).context("_user", user).context("_activeCompany", activeCompany).map());
}
}
Aggregations