class CedenciaSalasEntreEquipeON extends BaseBusiness {

	public void validarDatas(CedenciaSalasEntreEquipesEquipeVO cedenciaSalasEntreEquipesEquipeVO, MbcCaractSalaEsp mbcCaractSalaEsp) throws ApplicationBusinessException {
		MbcCaracteristicaSalaCirg salaCir = (mbcCaractSalaEsp.getMbcCaracteristicaSalaCirg().getSeq() != null) ? this.mbcCaracteristicaSalaCirgDAO.obterPorChavePrimaria(mbcCaractSalaEsp.getMbcCaracteristicaSalaCirg().getSeq()): null;
		
		
		if (DateUtil.validaDataTruncadaMaior(new Date(), cedenciaSalasEntreEquipesEquipeVO.getData())) {
			throw new ApplicationBusinessException(CedenciaSalasEntreEquipeONExceptionCode.DATA_INFERIOR_ATUAL);
		}		
		if (DateUtil.truncaData(new Date()).equals(DateUtil.truncaData(cedenciaSalasEntreEquipesEquipeVO.getData()))) {			
			MbcHorarioTurnoCirg horTurnoCir = (salaCir != null) ? this.mbcHorarioTurnoCirg.obterPorChavePrimaria(salaCir.getMbcHorarioTurnoCirg().getId()): null;			
			if (horTurnoCir != null && DateUtil.validaHoraMaior(new Date(), horTurnoCir.getHorarioInicial())) {
				throw new ApplicationBusinessException(CedenciaSalasEntreEquipeONExceptionCode.HORA_ATUAL_SUPERIOR_PERIODO);
			}
		}
		if(cedenciaSalasEntreEquipesEquipeVO.getRecorrencia()){
			if(DateUtil.validaDataMaior(cedenciaSalasEntreEquipesEquipeVO.getData(), cedenciaSalasEntreEquipesEquipeVO.getDataFim())){
				throw new ApplicationBusinessException(CedenciaSalasEntreEquipeONExceptionCode.MBC_01112);
			}
			if(cedenciaSalasEntreEquipesEquipeVO.getIntervalo() < 1 || cedenciaSalasEntreEquipesEquipeVO.getIntervalo() > 52 ){
				throw new ApplicationBusinessException(CedenciaSalasEntreEquipeONExceptionCode.MBC_01113);
			}
		}
		if(salaCir != null && ! AghuEnumUtils.retornaDiaSemanaAghu(cedenciaSalasEntreEquipesEquipeVO.getData()).equals(salaCir.getDiaSemana()) ){
			throw new ApplicationBusinessException(CedenciaSalasEntreEquipeONExceptionCode.MBC_01117);
		}
	}

}