class MotivoAltaMedicaCRUD extends BaseBusiness {

	public void persistMotivoAltaMedica(MpmMotivoAltaMedica motivoAltaMedica) throws ApplicationBusinessException {
			
			// ORADB: Procedure mpmk_mam_rn.rn_mamp_ver_ind_comp
			if(motivoAltaMedica.getIndOutros().equals(Boolean.TRUE) && !motivoAltaMedica.getIndExigeComplemento()){
				throw new ApplicationBusinessException (
						MpmMotivoAltaMedicaCRUDExceptionCode.MPMT_MAM_BRI);
			}
			
			motivoAltaMedica.setDescricao(StringUtil.trim(motivoAltaMedica.getDescricao()));
			motivoAltaMedica.setSigla(StringUtil.trim(motivoAltaMedica.getSigla()));

			if (motivoAltaMedica.getSeq() == null) {
				// Pré-inserir
				this.preInserirMotivoAltaMedica(motivoAltaMedica);
				// Inserir
				this.getMpmMotivoAltaMedicaDAO().persistir(motivoAltaMedica);
				this.getMpmMotivoAltaMedicaDAO().flush();
			} else {
				// Pré-atualizar
				this.preAtualizarMotivoAltaMedica(motivoAltaMedica);
				// Atualizar
				this.getMpmMotivoAltaMedicaDAO().atualizar(motivoAltaMedica);
				this.getMpmMotivoAltaMedicaDAO().flush();
			}
		
	}

}