class MbcAgendasRN extends BaseBusiness {

	public void verificarDatasCirurgiaEletiva(AghUnidadesFuncionais unidadeFuncional,
			Date dtAgenda, Boolean indGeradoSistema) throws ApplicationBusinessException {
		if(!indGeradoSistema) {
			if(DateUtil.truncaData(dtAgenda).compareTo(DateUtil.truncaData(new Date())) < 0) {
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00777);
			}
			Calendar dataAgenda = Calendar.getInstance();
			dataAgenda.setTime(dtAgenda);
			if(dataAgenda.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00778);
			}
			if(getMbcControleEscalaCirurgicaDAO().obterControleEscalaCirgPorUnidadeDataAgendaTruncadaTipoEscala(
					unidadeFuncional.getSeq(), dtAgenda, DominioTipoEscala.D) != null) {
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00845);
			}
			if(getAghuFacade().obterFeriadoSemTurnoDataTruncada(dtAgenda) != null) {
				throw new ApplicationBusinessException(MbcAgendasRNExceptionCode.MBC_00779);
			}
		}
	}

}