package com.ese.beans; import com.ese.service.security.UserDetail; import com.ese.service.*; import com.ese.utils.*; import lombok.Getter; import lombok.Setter; import org.slf4j.Logger; import org.springframework.security.core.context.SecurityContextHolder; import javax.faces.bean.ManagedProperty; import javax.faces.context.FacesContext; import java.io.Serializable; import java.util.List; import java.util.Map; @Getter @Setter public abstract class Bean implements Serializable { @ManagedProperty("#{indexService}") protected IndexService indexService; @ManagedProperty("#{log}") protected Logger log; @ManagedProperty("#{moLogger}") protected Logger moLogger; @ManagedProperty("#{mtLogger}") protected Logger mtLogger; private String messageHeader; private String message; private UserDetail userDetail; protected void showDialogError(String message){ showDialog(MessageDialog.ERROR.getMessageHeader(), message); } protected void showDialogWarning(String message){ showDialog(MessageDialog.WARNING.getMessageHeader(), message); } protected void showDialogUpdated(){ showDialog(MessageDialog.UPDATE.getMessageHeader(), MessageDialog.UPDATE.getMessage()); } protected void showDialogSaved(){ showDialog(MessageDialog.SAVE.getMessageHeader(), MessageDialog.SAVE.getMessage()); } protected void showDialogEdited(){ showDialog(MessageDialog.EDIT.getMessageHeader(), MessageDialog.EDIT.getMessage()); } protected void showDialogCreated(){ showDialog(MessageDialog.CREATE.getMessageHeader(), MessageDialog.CREATE.getMessage()); } protected void showDialogClosed(){ showDialog(MessageDialog.POST.getMessageHeader(), MessageDialog.POST.getMessage()); } protected void showDialogDeleted(){ showDialog(MessageDialog.DELETE.getMessageHeader(), MessageDialog.DELETE.getMessage()); } protected void showDialog(String messageHeader, String message){ setMessageHeader(messageHeader); setMessage(message); FacesUtil.showDialog(NamesUtil.DIALOG_NAME.getName()); } protected void showDialog(String messageHeader, String message, String dialogName){ setMessageHeader(messageHeader); setMessage(message); FacesUtil.showDialog(dialogName); } protected void showDialog(String dialogName){ FacesUtil.showDialog(dialogName); } protected boolean preLoad(){ boolean result = true; try{ UserDetail userDetail = (UserDetail) FacesUtil.getSession(false).getAttribute(AttributeName.USER_DETAIL.getName()); if(Utils.isNull(userDetail)){ FacesUtil.redirect(NamesUtil.LOGIN_PAGE.getName()); result = false; } setUserDetail(userDetail); return result; } catch (Exception e) { FacesUtil.redirect(NamesUtil.LOGIN_PAGE.getName()); return false; } } protected boolean isAuthorize(String key){ boolean result = true; try { Map<String,String> map = (Map<String, String>) FacesUtil.getSession(false).getAttribute(AttributeName.AUTHORIZE.getName()); if(!map.containsKey(key)){ FacesUtil.redirect(NamesUtil.MAIN_PAGE.getName()); result = false; } return result; } catch (Exception e) { FacesUtil.redirect(NamesUtil.LOGIN_PAGE.getName()); return false; } } protected UserDetail getUser(){ if(!Utils.isNull(this.userDetail)){ return userDetail; } else { return (UserDetail)FacesUtil.getSession(false).getAttribute(AttributeName.USER_DETAIL.getName()); } } }