class MbcAgendasParte1RN extends BaseBusiness {

	public void verificarQuantidadeProcedimento(
			MbcEspecialidadeProcCirgs espProcCirgs, Short qtdeProc,
			Date tempoSala, Boolean indGeradoSistema) throws ApplicationBusinessException {
		if(indGeradoSistema){
			return;
		}

		if(espProcCirgs.getMbcProcedimentoCirurgicos() == null){
			throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00971);
		}else{
			MbcProcedimentoCirurgicos procedCirurgico = espProcCirgs.getMbcProcedimentoCirurgicos();
			Integer tempoMinimoMinutos = getMbcAgendasRN().gerarTempoMinimoMinutos(espProcCirgs.getMbcProcedimentoCirurgicos());
			String tempoMinimoEditado = getMbcAgendasRN().gerarTempoMinimoEditado(tempoMinimoMinutos);
			
			if(qtdeProc != null && qtdeProc > 1 && !procedCirurgico.getIndProcMultiplo()){
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00972);
			} else if(qtdeProc != null && qtdeProc == 0){
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00973);
			}
			
			if(tempoMinimoMinutos != null && (
					(tempoSala.getHours()*60 + tempoSala.getMinutes()) < tempoMinimoMinutos)){ 
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_01070,tempoMinimoEditado+" h do outro procedimento "+procedCirurgico.getDescricao());
			}
			
		}
			
		
	}

}