class MbcHorarioTurnoCirgRN extends BaseBusiness {

	protected void verificarHorarioEquipe(MbcHorarioTurnoCirg mbcHorarioTurnoCirg) throws ApplicationBusinessException {
		Calendar calHrIni = DateUtil.getCalendarBy(mbcHorarioTurnoCirg.getHorarioInicial());
		Calendar calHrFim = DateUtil.getCalendarBy(mbcHorarioTurnoCirg.getHorarioFinal());
		final int novoHrIni = calHrIni.get(Calendar.HOUR_OF_DAY) * 60 + calHrIni.get(Calendar.MINUTE);
		final int novoHrFim = calHrFim.get(Calendar.HOUR_OF_DAY) * 60 + calHrFim.get(Calendar.MINUTE);
		// FIXME: alterado pela criação da tabela MBC_TURNOS 
		final List<MbcCaractSalaEsp> salaEsps = this.getMbcCaractSalaEspDAO().pesquisarCaractSalaEspPorHorarioTurnoCirg(
				mbcHorarioTurnoCirg.getAghUnidadesFuncionais().getSeq(), mbcHorarioTurnoCirg.getMbcTurnos());//);
		for (final MbcCaractSalaEsp mbcCaractSalaEsp : salaEsps) {
			calHrIni = DateUtil.getCalendarBy(mbcCaractSalaEsp.getHoraInicioEquipe());
			calHrFim = DateUtil.getCalendarBy(mbcCaractSalaEsp.getHoraFimEquipe());
			final int hrIniEquipe = calHrIni.get(Calendar.HOUR_OF_DAY) * 60 + calHrIni.get(Calendar.MINUTE);
			final int hrFimEquipe = calHrFim.get(Calendar.HOUR_OF_DAY) * 60 + calHrFim.get(Calendar.MINUTE);
			final int hora_fim_cse;
			final int hora_fim_param;
			if (hrFimEquipe == 0 && novoHrFim != 0) {
				throw new ApplicationBusinessException(MbcHorarioTurnoCirgRNExceptionCode.MBC_01141);
			}
			if (hrFimEquipe == 0) {
				hora_fim_cse = HORA_MIN_FINAL_DIA;
			} else {
				hora_fim_cse = hrFimEquipe;
			}
			if (novoHrFim == 0) {
				hora_fim_param = HORA_MIN_FINAL_DIA;
			} else {
				hora_fim_param = novoHrFim;
			}

			if (hrIniEquipe < novoHrIni || hrIniEquipe > hora_fim_param || hora_fim_cse < novoHrIni || hora_fim_cse > hora_fim_param) {
				throw new ApplicationBusinessException(MbcHorarioTurnoCirgRNExceptionCode.MBC_01141);
			}
		}
	}

}