Search in sources :

Example 1 with ProjectTemplate

use of com.axelor.apps.project.db.ProjectTemplate in project axelor-open-suite by axelor.

the class ProjectTemplateController method createProjectFromTemplate.

public void createProjectFromTemplate(ActionRequest request, ActionResponse response) {
    ProjectTemplate projectTemplate = request.getContext().asType(ProjectTemplate.class);
    AppProject appProject = Beans.get(AppProjectService.class).getAppProject();
    if (appProject.getGenerateProjectSequence() && !projectTemplate.getIsBusinessProject()) {
        Project project;
        try {
            project = Beans.get(ProjectService.class).createProjectFromTemplate(projectTemplate, null, null);
            response.setView(ActionView.define(I18n.get("Project")).model(Project.class.getName()).add("form", "project-form").add("grid", "project-grid").param("search-filters", "project-filters").context("_showRecord", project.getId()).map());
        } catch (AxelorException e) {
            TraceBackService.trace(response, e);
        }
    } else {
        response.setView(ActionView.define(I18n.get("Create project from this template")).model(Wizard.class.getName()).add("form", "project-template-wizard-form").param("popup", "reload").param("show-toolbar", "false").param("show-confirm", "false").param("width", "large").param("popup-save", "false").context("_projectTemplate", projectTemplate).context("_businessProject", projectTemplate.getIsBusinessProject()).map());
    }
}
Also used : AppProject(com.axelor.apps.base.db.AppProject) Project(com.axelor.apps.project.db.Project) AxelorException(com.axelor.exception.AxelorException) AppProject(com.axelor.apps.base.db.AppProject) AppProjectService(com.axelor.apps.project.service.app.AppProjectService) Wizard(com.axelor.apps.base.db.Wizard) ProjectTemplate(com.axelor.apps.project.db.ProjectTemplate)

Example 2 with ProjectTemplate

use of com.axelor.apps.project.db.ProjectTemplate in project axelor-open-suite by axelor.

the class ProjectTemplateController method createProjectFromWizard.

@SuppressWarnings("unchecked")
public void createProjectFromWizard(ActionRequest request, ActionResponse response) {
    Context context = request.getContext();
    String projectTemplateId = ((LinkedHashMap<String, Object>) context.get("_projectTemplate")).get("id").toString();
    ProjectTemplate projectTemplate = Beans.get(ProjectTemplateRepository.class).find(Long.parseLong(projectTemplateId));
    String projectCode = (String) context.get("code");
    Object clientPartnerContext = context.get("clientPartner");
    Partner clientPartner = null;
    if (clientPartnerContext != null) {
        String clientPartnerId = ((LinkedHashMap<String, Object>) clientPartnerContext).get("id").toString();
        clientPartner = Beans.get(PartnerRepository.class).find(Long.parseLong(clientPartnerId));
    }
    Project project;
    try {
        project = Beans.get(ProjectService.class).createProjectFromTemplate(projectTemplate, projectCode, clientPartner);
        response.setCanClose(true);
        response.setView(ActionView.define(I18n.get("Project")).model(Project.class.getName()).add("form", "project-form").add("grid", "project-grid").param("search-filters", "project-filters").context("_showRecord", project.getId()).map());
    } catch (AxelorException e) {
        TraceBackService.trace(response, e);
    }
}
Also used : Context(com.axelor.rpc.Context) AppProject(com.axelor.apps.base.db.AppProject) Project(com.axelor.apps.project.db.Project) AxelorException(com.axelor.exception.AxelorException) Partner(com.axelor.apps.base.db.Partner) ProjectTemplate(com.axelor.apps.project.db.ProjectTemplate) ProjectTemplateRepository(com.axelor.apps.project.db.repo.ProjectTemplateRepository)

Example 3 with ProjectTemplate

use of com.axelor.apps.project.db.ProjectTemplate in project axelor-open-suite by axelor.

the class ProjectTemplateController method addParentTaskTemplate.

public void addParentTaskTemplate(ActionRequest request, ActionResponse response) {
    ProjectTemplate projectTemplate = request.getContext().asType(ProjectTemplate.class);
    projectTemplate = Beans.get(ProjectTemplateService.class).addParentTaskTemplate(projectTemplate);
    response.setValue("taskTemplateSet", projectTemplate.getTaskTemplateSet());
}
Also used : ProjectTemplate(com.axelor.apps.project.db.ProjectTemplate)

Aggregations

ProjectTemplate (com.axelor.apps.project.db.ProjectTemplate)3 AppProject (com.axelor.apps.base.db.AppProject)2 Project (com.axelor.apps.project.db.Project)2 AxelorException (com.axelor.exception.AxelorException)2 Partner (com.axelor.apps.base.db.Partner)1 Wizard (com.axelor.apps.base.db.Wizard)1 ProjectTemplateRepository (com.axelor.apps.project.db.repo.ProjectTemplateRepository)1 AppProjectService (com.axelor.apps.project.service.app.AppProjectService)1 Context (com.axelor.rpc.Context)1