package ru.ulstu.paper.controller; import ru.ulstu.core.navigation.Page; import ru.ulstu.core.util.FacesUtil; import ru.ulstu.paper.model.Paper; import ru.ulstu.paper.service.PaperService; import ru.ulstu.user.model.User; import ru.ulstu.user.service.UserService; import javax.annotation.PostConstruct; import javax.faces.context.FacesContext; import javax.faces.view.ViewScoped; import javax.inject.Inject; import javax.inject.Named; import java.io.Serializable; import java.util.Arrays; import java.util.List; import java.util.Map; @Named @ViewScoped public class PaperView implements Serializable { @Inject private PaperService paperService; @Inject private UserService userService; private Paper paper; @PostConstruct public void init() { Map params = FacesContext.getCurrentInstance(). getExternalContext().getRequestParameterMap(); paper = paperService.findPaperById(Integer.valueOf(params.get("id"))); FacesUtil.showInfoMessage("Статья открыта", ""); } public Paper getPaper() { return paper; } public void setPaper(Paper paper) { this.paper = paper; } public List getPaperStatuses() { return Arrays.asList(Paper.PaperStatus.values()); } public List getPaperTypes() { return Arrays.asList(Paper.PaperType.values()); } public List getAuthors() { return userService.findAll(); } public String save() { paperService.save(paper); FacesUtil.showInfoMessage("Статья сохранена", ""); return Page.PAPER_LIST + "?faces-redirect=true"; } }