class AssociarItensPrescricaoON extends BaseBusiness {

	public void salvarAssociacaoCuidadosMedicos(EcpItemControle itemControle,
			List<MpmCuidadoUsual> listaCuidadosIncluir,
			List<MpmCuidadoUsual> listaCuidadosExcluir) throws BaseException {
		RapServidores servidorLogado = getServidorLogadoFacade().obterServidorLogado();

		if (itemControle == null) {
			throw new IllegalArgumentException("Parâmetros inválidos");
		}

		EcpItemCtrlCuidadoMedico itemCtrlCuidadoMedico = null;
		for (MpmCuidadoUsual cuidado : listaCuidadosIncluir) {
			
			itemCtrlCuidadoMedico = new EcpItemCtrlCuidadoMedico();
			itemCtrlCuidadoMedico.setCriadoEm(Calendar.getInstance().getTime());
			itemCtrlCuidadoMedico.setCuidadoUsual(cuidado);
			itemCtrlCuidadoMedico.setItemControle(itemControle);
			itemCtrlCuidadoMedico.setServidor(servidorLogado);			
			
			this.getItemCtrlCuidadoMedicoDAO().persistir(itemCtrlCuidadoMedico);
			this.getItemCtrlCuidadoMedicoDAO().flush();
		}

		for (MpmCuidadoUsual cuidado : listaCuidadosExcluir) {
			itemCtrlCuidadoMedico = this.getItemCtrlCuidadoMedicoDAO()
					.obterCuidadoMedicoPorItemControleECuidado(itemControle,
							cuidado);
			
			if (itemCtrlCuidadoMedico != null) {
				this.getItemCtrlCuidadoMedicoDAO().remover(itemCtrlCuidadoMedico);
				this.getItemCtrlCuidadoMedicoDAO().flush();
			}
		}
	}

}