/* * * Copyright (c) 2013 - 2014 INT - National Institute of Technology & COPPE - Alberto Luiz Coimbra Institute - Graduate School and Research in Engineering. * See the file license.txt for copyright permission. * */ package carga; import java.util.GregorianCalendar; import java.util.Calendar; import modelo.PerioPM; import service.PerioPAPAppService; import service.PerioPMAppService; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import service.controleTransacao.FabricaDeAppService; import service.exception.AplicacaoException; import util.JPAUtil; /** * * Sobre a Carga: * � uma Carga do sistema, portanto deve herdar de CargaBase e * implementar o m�todo executar(). * Nesse m�todo executar � que � chamado os outros m�todos que s�o * as et�pas dessa carga. * Portanto se � necessario rodar um m�todo depois do outro, eles devem ser chamados * na ordem correta. Ex: * incluiHP() vem antes de inicializaHP(), portanto no m�todo executar() eles devem ser chamados nessa ordem. * * Terminado de executar todas as etapas � preciso retornar true. * Se houver algum problema(exce��o) na execu��o de um das etapas, essa exce��o deve ser lancada * * Essa Carga: * Exclui o primeiro periodo, e depois inclui o ultimo. * Esse ultimo periodo � incluido com 10 dias uteis na matriz * e 12.5 dias uteis na u2 * do dia 01/12/2011 - 15/12/2011 * * @author felipe.arruda e bruno.oliveira * */ public class CargaEstudoDefasaPeriodo extends CargaBase{ private static PerioPMAppService perioPMService; private static PerioPAPAppService perioPAPService; private static int OPCAO_EXCLUIR_PRIMEIRO=0; private PerioPM perioPM = new PerioPM(); public CargaEstudoDefasaPeriodo(){ try { perioPMService = FabricaDeAppService.getAppService(PerioPMAppService.class); perioPAPService = FabricaDeAppService.getAppService(PerioPAPAppService.class); } catch (Exception e) { e.printStackTrace(); } } /** * Executa a exclus�o do primeiro periodo e depois a inclusao * do ultimo. */ @Override public boolean executar() throws AplicacaoException { this.excluiPrimeiroPeriodo(); this.incluiUltimoPeriodo(); return true; } /** * exclui o primeiro periodo */ public void excluiPrimeiroPeriodo(){ if (perioPMService.recuperaListaDePerioPMs().isEmpty()){ System.out.println("ERRO: N�o existem planos cadastrados."); } try { perioPMService.excluirPrimeiroUltimoOuTodos(OPCAO_EXCLUIR_PRIMEIRO); } catch (AplicacaoException e) { e.printStackTrace(); } } /** * * Esse ultimo periodo � incluido com 10 dias uteis na matriz * e 12.5 dias uteis na u2 * do dia 01/12/2011 - 15/12/2011 */ public void incluiUltimoPeriodo() throws AplicacaoException{ Calendar dataInicial = new GregorianCalendar(2011,Calendar.DECEMBER,01); Calendar dataFinal = new GregorianCalendar(2011,Calendar.DECEMBER,15); perioPM.setPeriodoPM(10); perioPM.setDataInicial(dataInicial); perioPM.setDataFinal(dataFinal); perioPM.setNumDiasUteisMatriz(10); perioPM.setNumDiasUteisU2(10.5); perioPAPService.incluiComPerioPM(perioPM); } }