class ManterObtGravidezAnteriorON extends BaseBusiness {

	public String gravarObtGravidezAnterior(MpmAltaSumario altaSumario, DominioSimNao indicadorNecropsia) throws ApplicationBusinessException {
		String confirmacao = null;
		
		if(altaSumario != null){

			Integer altanAtdSeq = altaSumario.getId().getApaAtdSeq();
			Integer altanApaSeq = altaSumario.getId().getApaSeq();
			Short altanAsuSeqp = altaSumario.getId().getSeqp();
			
			MpmObtGravidezAnterior obtGravidezAnterior = getMpmObtGravidezAnteriorDAO().obterMpmObtGravidezAnterior(altanAtdSeq, altanApaSeq, altanAsuSeqp);

			// Se o paciente for do Sexo Masculino a opção 'N' será uma constante
			indicadorNecropsia = obterIndicadorNecropsia(altaSumario.getPaciente().getSexo(), indicadorNecropsia);
			
			if (obtGravidezAnterior == null) {// Inserir Obito Necrópsia

				    obtGravidezAnterior = new MpmObtGravidezAnterior();
				    MpmObtGravidezAnteriorId id = new  MpmObtGravidezAnteriorId();
					id.setAsuApaAtdSeq(altanAtdSeq);
					id.setAsuApaSeq(altanApaSeq);
					id.setAsuSeqp(altanAsuSeqp);
					obtGravidezAnterior.setId(id);
					
					obtGravidezAnterior.setMpmAltaSumarios(altaSumario);
					
					obtGravidezAnterior.setGravidezAnterior(indicadorNecropsia);
					
					inserirObtGravidezAnterior(obtGravidezAnterior);
					
					confirmacao = "MENSAGEM_SUCESSO_INCLUSAO_OBT_GRAVIDEZ_ANTERIOR";
	

			} else { // Atualizar Obito Necrópsia
				obtGravidezAnterior.setMpmAltaSumarios(altaSumario);
				obtGravidezAnterior.setGravidezAnterior(indicadorNecropsia);
				atualizarObtGravidezAnterior(obtGravidezAnterior);
				confirmacao = "MENSAGEM_SUCESSO_ALTERACAO_OBT_GRAVIDEZ_ANTERIOR";
			}
		}
		return confirmacao;
	}

}