class MbcAgendaHemoterapiaRN extends BaseBusiness {

	public void verificarIndicadores(final MbcAgendaHemoterapia agendaHemoterapia) throws ApplicationBusinessException {

		AbsComponenteSanguineo absComponenteSanguineo = getBancoDeSangueFacade().obterAbsComponenteSanguineoOriginal(agendaHemoterapia.getId().getCsaCodigo());
		if (agendaHemoterapia.getIndIrradiado() || agendaHemoterapia.getIndFiltrado() || agendaHemoterapia.getIndLavado()) {
			if (absComponenteSanguineo == null) {
				throw new ApplicationBusinessException(MbcAgendaProcedimentoRNExceptionCode.MBC_00865);
			}
			if (absComponenteSanguineo.getIndIrradiado().equals(Boolean.FALSE) && agendaHemoterapia.getIndIrradiado().equals(Boolean.TRUE)) {
				throw new ApplicationBusinessException(MbcAgendaProcedimentoRNExceptionCode.MBC_00866);
			}
			if (absComponenteSanguineo.getIndFiltrado().equals(Boolean.FALSE) && agendaHemoterapia.getIndFiltrado().equals(Boolean.TRUE)) {
				throw new ApplicationBusinessException(MbcAgendaProcedimentoRNExceptionCode.MBC_00867);
			}
			if (absComponenteSanguineo.getIndLavado().equals(Boolean.FALSE) && agendaHemoterapia.getIndLavado().equals(Boolean.TRUE)) {
				throw new ApplicationBusinessException(MbcAgendaProcedimentoRNExceptionCode.MBC_00868);
			}
		}
	}

}