public void buildResultado( XmlLoteResultadoInterface loteResultadoInterface, XmlRetorno xRetorno) { LabRequisicao labRequisicao = OracleHelper.getLabRequisicaoByReq( loteResultadoInterface.getReqStCodigo(), loteResultadoInterface.getStrDbName()); if (labRequisicao != null) { // TipoExame A - Analise Clinica e I - Imagem if (loteResultadoInterface.getTipoExame().equals('A')) { buildMapResultado(loteResultadoInterface.getResultadoExame(), loteResultadoInterface); if (listExameConfiguracao != null && !listExameConfiguracao.isEmpty()) { grapConfigIngresso(listExameConfiguracao, loteResultadoInterface); } } else { if (loteResultadoInterface.getTipoExame().equals('I')) { // TODO fazer a parte de Imagens. } else { xRetorno.getLISTA_FATALS().add("Tipo de Exame nao informado"); } } } else { xRetorno.getLISTA_FATALS().add("Requisicao nao encontrada"); } }
private LabDetalheRequisicao inclusaoTSA( XmlExameResultadoInterface xmlExameResultadoInterface, XmlLoteResultadoInterface resultadoInterface) { LabDetalheRequisicao labDetalheRequisicao = OracleHelper.getLabDetalherequisicaoByReqExameSeq( resultadoInterface.getReqStCodigo(), xmlExameResultadoInterface.getExaStCodigo(), xmlExameResultadoInterface.getSeqStCodigo(), resultadoInterface.getStrDbName()); if (labDetalheRequisicao == null) { labDetalheRequisicao = OracleHelper.getLabDetalherequisicaoByReqExameSeq( resultadoInterface.getReqStCodigo(), xmlExameResultadoInterface.getExaStCodigo(), "01", resultadoInterface.getStrDbName()); LoteInterfaceReceiverSql.insertDetalherequisicao( labDetalheRequisicao, xmlExameResultadoInterface, resultadoInterface, resultadoInterface.getStrDbName()); labDetalheRequisicao.setLegStCodigo("002"); labDetalheRequisicao.setSeqStCodigo(xmlExameResultadoInterface.getSeqStCodigo()); labDetalheRequisicao.setLegStCodigoFat("CON"); OracleHelper.saveObject(labDetalheRequisicao, resultadoInterface.getStrDbName()); labDetalheRequisicao = OracleHelper.getLabDetalherequisicaoByReqExameSeq( resultadoInterface.getReqStCodigo(), xmlExameResultadoInterface.getExaStCodigo(), xmlExameResultadoInterface.getSeqStCodigo(), resultadoInterface.getStrDbName()); } return labDetalheRequisicao; }
private void CalculaFormulaResultado( List<ExameConfiguracao> listExameConfiguracao, XmlLoteResultadoInterface loteResultadoInterface) { for (ExameConfiguracao exameConfiguracao : listExameConfiguracao) { LabDetalheRequisicao labDetalheRequisicao = OracleHelper.getLabDetalherequisicaoByReqExameSeq( loteResultadoInterface.getReqStCodigo(), exameConfiguracao.getExaStCodigo(), exameConfiguracao.getSeqStCodigo(), loteResultadoInterface.getStrDbName()); if (exameConfiguracao.getCinStTipoResultado().equals("003")) { String resultadoFormula = null; String resultadoCkFormula = null; String vars = null; BigDecimal res = new BigDecimal(0); DecimalFormat nroFormatado = null; String code = exameConfiguracao.getExaStCodigo(); if (mapResultadoFormula.containsKey(code)) { vars = mapResultadoFormula.get(code); } LabResultados labResultado = new LabResultados( exameConfiguracao.getReqStCodigo(), exameConfiguracao.getExaStCodigo(), exameConfiguracao.getLabResultado().getSeqStCodigo(), exameConfiguracao.getMetStCodigo(), exameConfiguracao.getEmvDtValidade(), exameConfiguracao.getCinStCodigo(), dtBanco, null, null, exameConfiguracao.getLabResultado().getResStComentario(), null, exameConfiguracao.getLabResultado().getResChHidden(), exameConfiguracao.getLabResultado().getResInSequencia(), exameConfiguracao.getCinStTipoResultado(), exameConfiguracao.getDerInCodigo(), exameConfiguracao.getLabResultado().getDerInValidadeRes(), exameConfiguracao.getLabResultado().getResClResultados(), exameConfiguracao.getLabResultado().getEquStCodigo(), exameConfiguracao.getDerChParcial(), exameConfiguracao.getLabResultado().getDerChNaoNecessario(), exameConfiguracao.getLabResultado().getDerInRepeticao()); System.out.println( "exameConfiguracao.getCinStCodigo() : " + exameConfiguracao.getCinStCodigo()); ByteArrayInputStream bais = new ByteArrayInputStream((vars + exameConfiguracao.getCinClFormula()).getBytes()); if (vars != null && exameConfiguracao.getCinClFormula() != null) { resultadoFormula = resultFormulaAndCheck(vars, bais); if (exameConfiguracao.getCinInDecimais() != null) { nroFormatado = new DecimalFormat( PartnerDecimal.PartnerDecimal(exameConfiguracao.getCinInDecimais())); } else { nroFormatado = new DecimalFormat(PartnerDecimal.PartnerDecimal(0)); } System.out.println("resultado formula : " + resultadoFormula); if (resultadoFormula != null && resultadoFormula.trim().length() > 0) { try { res = new BigDecimal(resultadoFormula.replaceAll(",", ".")); labResultado.setResStIngresso(nroFormatado.format(res)); labResultado.setResStResultado(nroFormatado.format(res)); } catch (NumberFormatException xcp) { System.out.println("do something else...................."); labResultado.setResStIngresso(resultadoFormula); labResultado.setResStResultado(resultadoFormula); } } else { labResultado.setResStIngresso(resultadoFormula); labResultado.setResStResultado(resultadoFormula); } } if (vars != null && exameConfiguracao.getCinClCheckFormula() != null) { resultadoCkFormula = resultFormulaAndCheck(vars, bais); labResultado.setResStFlag(resultadoCkFormula); } String resultado = mapResultadoFormula.get(code); mapResultadoFormula.remove(code); if (resultadoFormula != null) { mapResultadoFormula.put( code, resultado + exameConfiguracao.getCinStCodigo() + ":=\"" + resultadoFormula.replace(",", ".") + "\";"); } OracleHelper.saveOrUpdateObject(labResultado, loteResultadoInterface.getStrDbName()); } } }
private void buildMapResultado( List<XmlExameResultadoInterface> resultadoExame, XmlLoteResultadoInterface resultadoInterface) { dtBanco = OracleHelper.getDateFromDB(resultadoInterface.getStrDbName()); String resStIngresso = null; String resStResultado = null; if (resultadoExame != null && !resultadoExame.isEmpty()) { for (XmlExameResultadoInterface xmlExameResultadoInterface : resultadoExame) { LabDetalheRequisicao labDetalheRequisicao = null; if (xmlExameResultadoInterface.getExaStCodigo().equalsIgnoreCase("TSA")) { labDetalheRequisicao = inclusaoTSA(xmlExameResultadoInterface, resultadoInterface); } else { labDetalheRequisicao = OracleHelper.getLabDetalherequisicaoByReqExameSeq( resultadoInterface.getReqStCodigo(), xmlExameResultadoInterface.getExaStCodigo(), xmlExameResultadoInterface.getSeqStCodigo(), resultadoInterface.getStrDbName()); } if (labDetalheRequisicao != null) { String codResultado; if (xmlExameResultadoInterface.getResuladosExameItem() != null && !xmlExameResultadoInterface.getResuladosExameItem().isEmpty()) { for (XmlItemExameResultadoInterface itemExameResultadoInterface : xmlExameResultadoInterface.getXmlResuladosExameItem()) { if (xmlExameResultadoInterface.getDerChNaoNecessario().equals('N')) { if (labDetalheRequisicao.getLegStCodigo().equals("004") || labDetalheRequisicao.getLegStCodigo().equals("002") || labDetalheRequisicao.getLegStCodigo().equals("001") || labDetalheRequisicao.getLegStCodigo().equals("003") || labDetalheRequisicao.getLegStCodigo().equals("005") || labDetalheRequisicao.getLegStCodigo().equals("006") || labDetalheRequisicao.getLegStCodigo().equals("007") || (labDetalheRequisicao.getLegStCodigo().equals("011") && labDetalheRequisicao.getDerChParcial().toString().equalsIgnoreCase("S")) || (labDetalheRequisicao.getLegStCodigo().equals("016") && labDetalheRequisicao.getDerChParcial().toString().equalsIgnoreCase("S")) || labDetalheRequisicao.getLegStCodigo().equals("010") || labDetalheRequisicao.getLegStCodigo().equals("018") || labDetalheRequisicao.getLegStCodigo().equals("045") || labDetalheRequisicao.getLegStCodigo().equals("012")) { derInValidadeRes = labDetalheRequisicao.getDerInValidadeRes(); if (derInValidadeRes != null) { derInValidadeRes = derInValidadeRes + 1; } else { derInValidadeRes = 1; } if (xmlExameResultadoInterface.getExaStCodigo().equals("TSA")) { resStIngresso = itemExameResultadoInterface .getResStIngresso() .replace("{", "<") .replace("}", ">"); resStResultado = itemExameResultadoInterface .getResStResultado() .replace("{", "<") .replace("}", ">"); } else { resStIngresso = itemExameResultadoInterface.getResStIngresso(); resStResultado = itemExameResultadoInterface.getResStResultado(); } Character sParcial; if (xmlExameResultadoInterface.getDerChParcial().toString().equalsIgnoreCase("F") || xmlExameResultadoInterface .getDerChParcial() .toString() .equalsIgnoreCase("N")) { sParcial = 'N'; } else { sParcial = 'S'; } LabResultados labResultados = new LabResultados( resultadoInterface.getReqStCodigo(), xmlExameResultadoInterface.getExaStCodigo(), xmlExameResultadoInterface.getSeqStCodigo(), xmlExameResultadoInterface.getMetStCodigo(), null, itemExameResultadoInterface.getCinStCodigo(), null, itemExameResultadoInterface.getResStFlag(), resStIngresso, itemExameResultadoInterface.getResStComentario(), resStResultado, itemExameResultadoInterface.getResChHidden(), null, resultadoInterface.getLegStcodigo(), new BigDecimal(labDetalheRequisicao.getDerInCodigo()), derInValidadeRes, null, xmlExameResultadoInterface.getEquStCodigo(), sParcial, xmlExameResultadoInterface.getDerChNaoNecessario(), xmlExameResultadoInterface.getDerInRepeticao()); codResultado = labDetalheRequisicao.getDerInCodigo() + itemExameResultadoInterface.getCinStCodigo(); if (!mapResultado.containsKey(codResultado)) { mapResultado.put(codResultado, labResultados); } listExameConfiguracao = LoteInterfaceReceiverSql.ConfiguraIngresso( labResultados, resultadoInterface.getStrDbName(), xmlExameResultadoInterface.getDerInRepeticao()); } } else { labDetalheRequisicao.setDerChNaoNecessario('S'); labDetalheRequisicao.setUsuStCodigo(resultadoInterface.getUsuStCodigo()); OracleHelper.updateObject(labDetalheRequisicao, resultadoInterface.getStrDbName()); } } } } else { System.out.println("detalherequiscao nao encontrada"); } } } else { System.out.println("lista vazia."); } }