package mecasoft; import static aplicacao.helper.MessageHelper.openQuestion; import static aplicacao.helper.MessageHelper.openWarning; import java.util.Calendar; import org.apache.log4j.Logger; import org.eclipse.swt.graphics.Point; import org.eclipse.ui.application.ActionBarAdvisor; import org.eclipse.ui.application.IActionBarConfigurer; import org.eclipse.ui.application.IWorkbenchWindowConfigurer; import org.eclipse.ui.application.WorkbenchWindowAdvisor; import org.eclipse.ui.handlers.IHandlerService; import aplicacao.helper.FormatterHelper; import aplicacao.helper.UsuarioHelper; import aplicacao.service.CaixaService; public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor { private CaixaService caixaService = new CaixaService(); private Logger log = Logger.getLogger(getClass()); public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) { super(configurer); } public ActionBarAdvisor createActionBarAdvisor( IActionBarConfigurer configurer) { return new ApplicationActionBarAdvisor(configurer); } public void preWindowOpen() { IWorkbenchWindowConfigurer configurer = getWindowConfigurer(); configurer.setInitialSize(new Point(1000, 800)); configurer.setShowCoolBar(false); configurer.setShowProgressIndicator(true); configurer.setShowStatusLine(true); configurer.setTitle("MECASOFT"); } private void verificacaoMenus() { // Chamada ao command que vai habilitar os menus IHandlerService handlerService = (IHandlerService) Activator.getDefault().getWorkbench().getService(IHandlerService.class); try { handlerService.executeCommand("mecasoft.permissaoUsuarioCommand", null); } catch (Exception e) { log.error(e); } } @Override public boolean preWindowShellClose() { return openQuestion("Tem certeza que deseja finalizar o sistema?"); } public void verificacaoCaixa(){ UsuarioHelper.setCaixa(caixaService.findCaixaAtual()); if(UsuarioHelper.getCaixa() != null){ Calendar dtOpenCaixa = Calendar.getInstance(); dtOpenCaixa.setTime(UsuarioHelper.getCaixa().getDataAbertura()); Calendar dtAtual = Calendar.getInstance(); //verifica se o caixa foi aberto hoje boolean isAbertoHoje = false; if(dtOpenCaixa.get(Calendar.YEAR) == dtAtual.get(Calendar.YEAR)) if(dtOpenCaixa.get(Calendar.MONTH) == dtAtual.get(Calendar.MONTH)) if(dtOpenCaixa.get(Calendar.DAY_OF_MONTH) == dtAtual.get(Calendar.DAY_OF_MONTH)) isAbertoHoje = true; if(!isAbertoHoje) openWarning("O caixa encontra-se aberto desde o dia " + FormatterHelper.getDateFormatData().format(dtOpenCaixa.getTime())); } } @Override public void postWindowOpen() { verificacaoMenus(); verificacaoCaixa(); } }