class ConfirmarPrescricaoMedicaRN extends BaseBusiness {

	public void atualizarAtendimentoPacienteCpa(MpmPrescricaoMedica prescricao, String nomeMicrocomputador, final Date dataFimVinculoServidor)
			throws BaseException {
		ArrayList<MpmPrescricaoCuidado> listaPrescricaoCuidados = (ArrayList<MpmPrescricaoCuidado>) this
				.getPrescricaoCuidadoDAO().listarPrescricaoCuidadoPendenteCpa(
						prescricao);

		AghAtendimentos atendimentoOld = null;
		if (listaPrescricaoCuidados.size() != 0) {
			for (MpmPrescricaoCuidado prescricaoCuidado : listaPrescricaoCuidados) {
				if (prescricaoCuidado.getPrescricaoMedica() != null
						&& prescricaoCuidado.getPrescricaoMedica()
								.getAtendimento() != null
						&& prescricaoCuidado.getPrescricaoMedica()
								.getAtendimento().getIndPacAtendimento() != null
						&& prescricaoCuidado.getPrescricaoMedica()
								.getAtendimento().getIndPacAtendimento()
								.equals(DominioPacAtendimento.S)) {

					atendimentoOld = this.getPacienteFacade().clonarAtendimento(
							prescricaoCuidado.getPrescricaoMedica()
									.getAtendimento());
					prescricaoCuidado.getPrescricaoMedica().getAtendimento()
							.setIndPacCpa(true);
					this.getPacienteFacade().persistirAtendimento(
							prescricaoCuidado.getPrescricaoMedica()
									.getAtendimento(), atendimentoOld, nomeMicrocomputador, dataFimVinculoServidor);
				}
			}
		} else {
			atendimentoOld = null;
			// if (prescricao.getAtendimento() != null
			// && prescricao.getAtendimento().getIndPacAtendimento() != null
			// && prescricao.getAtendimento().getIndPacAtendimento().equals(
			// DominioPacAtendimento.S)) {
			atendimentoOld = this.getPacienteFacade().clonarAtendimento(
					prescricao.getAtendimento());
			prescricao.getAtendimento().setIndPacCpa(false);
			this.getPacienteFacade().persistirAtendimento(
					prescricao.getAtendimento(), atendimentoOld, nomeMicrocomputador, dataFimVinculoServidor);
		}

	}

}