private void AtualizaDetalheRequisicao( LabResultados labResultado, ExameConfiguracao exameConfiguracao, XmlLoteResultadoInterface loteResultadoInterface) { LabDetalheRequisicao labDetalheRequisicao = OracleHelper.getLabDetalherequisicaoByReqExameSeq( labResultado.getReqStCodigo(), labResultado.getExaStCodigo(), labResultado.getSeqStCodigo(), loteResultadoInterface.getStrDbName()); if (labDetalheRequisicao != null) { if (exameConfiguracao.getCinChObrigatorio().equals('S') && exameConfiguracao.getLabResultado().getResStResultado() != null && exameConfiguracao.getLabResultado().getResStResultado().equals("")) { labDetalheRequisicao.setLegStCodigo("007"); } else { labDetalheRequisicao.setLegStCodigo(loteResultadoInterface.getLegStcodigo()); } labDetalheRequisicao.setMetStCodigo(exameConfiguracao.getLabResultado().getMetStCodigo()); labDetalheRequisicao.setUsuStCodigo(VerificaUsuario(loteResultadoInterface)); labDetalheRequisicao.setDerInRepeticao( exameConfiguracao.getLabResultado().getDerInRepeticao()); labDetalheRequisicao.setDerChNaoNecessario( exameConfiguracao.getLabResultado().getDerChNaoNecessario()); labDetalheRequisicao.setEmvDtValidade(exameConfiguracao.getEmvDtValidade()); labDetalheRequisicao.setDerInValidadeRes( exameConfiguracao.getLabResultado().getDerInValidadeRes()); labDetalheRequisicao.setDerChParcial(exameConfiguracao.getLabResultado().getDerChParcial()); labDetalheRequisicao.setFrlCodigo(loteResultadoInterface.getObsStCodigo()); if (exameConfiguracao.getEquStCodigo() != null && !exameConfiguracao.getEquStCodigo().equals("")) { labDetalheRequisicao.setEquInCodigo(exameConfiguracao.getEquInCodigo().longValue()); } // TODO tratar exames assinados if (loteResultadoInterface.getTipoExame().equals("I")) {} OracleHelper.saveOrUpdateObject(labDetalheRequisicao, loteResultadoInterface.getStrDbName()); } }
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 LabResultados inclusaoResultados( ExameConfiguracao exameConfiguracao, String strDbName, Integer seqRes) { DecimalFormat nroFormatado = null; LabResultados labResultado = new LabResultados( exameConfiguracao.getReqStCodigo(), exameConfiguracao.getExaStCodigo(), exameConfiguracao.getLabResultado().getSeqStCodigo(), exameConfiguracao.getLabResultado().getMetStCodigo(), exameConfiguracao.getEmvDtValidade(), exameConfiguracao.getCinStCodigo(), dtBanco, exameConfiguracao.getLabResultado().getResStFlag(), exameConfiguracao.getLabResultado().getResStIngresso(), exameConfiguracao.getLabResultado().getResStComentario(), exameConfiguracao.getLabResultado().getResStResultado(), 'N', seqRes, exameConfiguracao.getCinStTipoResultado(), exameConfiguracao.getDerInCodigo(), exameConfiguracao.getLabResultado().getDerInValidadeRes(), null, null, null, null, exameConfiguracao.getLabResultado().getDerInRepeticao()); if (exameConfiguracao.getCinStSugere() != null && exameConfiguracao.getCinStSugere().equalsIgnoreCase("TEMPO")) { labResultado.setResStIngresso(exameConfiguracao.getDerInTempo().toString()); labResultado.setResStResultado(exameConfiguracao.getDerInTempo().toString()); } if (exameConfiguracao.getCinStSugere() != null && exameConfiguracao.getCinStSugere().equalsIgnoreCase("VOLUME")) { labResultado.setResStIngresso(exameConfiguracao.getDerStVolume()); labResultado.setResStResultado(exameConfiguracao.getDerStVolume()); } if (exameConfiguracao.getCinStSugere() != null && exameConfiguracao.getCinStSugere().equalsIgnoreCase("PESO")) { labResultado.setResStIngresso(exameConfiguracao.getReqStPeso()); labResultado.setResStResultado(exameConfiguracao.getReqStPeso()); } if (exameConfiguracao.getCinStSugere() != null && exameConfiguracao.getCinStSugere().equalsIgnoreCase("ALTURA")) { labResultado.setResStIngresso(exameConfiguracao.getReqStAltura()); labResultado.setResStResultado(exameConfiguracao.getReqStAltura()); } if (exameConfiguracao.getCinStTipoResultado() != null) { switch (new Integer(exameConfiguracao.getCinStTipoResultado())) { case 1: if (exameConfiguracao.getLabResultado().getResStResultado() != null && !exameConfiguracao.getLabResultado().getResStResultado().equals("")) { if (exameConfiguracao.getCinInDecimais() != null) { nroFormatado = new DecimalFormat( PartnerDecimal.PartnerDecimal(exameConfiguracao.getCinInDecimais())); } else { nroFormatado = new DecimalFormat(PartnerDecimal.PartnerDecimal(0)); } BigDecimal resultado = new BigDecimal( exameConfiguracao.getLabResultado().getResStResultado().replaceAll(",", ".")); labResultado.setResStResultado(nroFormatado.format(resultado)); labResultado.setResStIngresso(nroFormatado.format(resultado)); } break; case 4: labResultado.setResStIngresso(exameConfiguracao.getLabResultado().getResStResultado()); if (exameConfiguracao.getLabResultado().getSeqStCodigo().equals("045")) { labResultado.setResStResultado( resultadoFrases(exameConfiguracao.getLabResultado().getResStIngresso(), strDbName)); } else { labResultado.setResStResultado( resultadoFrases(exameConfiguracao.getLabResultado().getResStIngresso(), strDbName) .toUpperCase()); } break; case 9: labResultado.setResStIngresso(exameConfiguracao.getLabResultado().getResStResultado()); if (exameConfiguracao.getLabResultado().getSeqStCodigo().equals("045")) { labResultado.setResStResultado( resultadoTsa(exameConfiguracao.getLabResultado().getResStIngresso(), strDbName)); } else { labResultado.setResStResultado( resultadoTsa(exameConfiguracao.getLabResultado().getResStIngresso(), strDbName) .toUpperCase()); } break; case 10: if (exameConfiguracao.getLabResultado().getSeqStCodigo().equals("045")) { labResultado.setResStIngresso( resultadoBacteria( exameConfiguracao.getLabResultado().getResStIngresso(), strDbName)); labResultado.setResStResultado( resultadoBacteria( exameConfiguracao.getLabResultado().getResStIngresso(), strDbName)); } else { labResultado.setResStIngresso( resultadoBacteria(exameConfiguracao.getLabResultado().getResStIngresso(), strDbName) .toUpperCase()); labResultado.setResStResultado( resultadoBacteria( exameConfiguracao.getLabResultado().getResStIngresso(), strDbName)); } break; default: } } return labResultado; }
private void grapConfigIngresso( List<ExameConfiguracao> listExameConfiguracao, XmlLoteResultadoInterface loteResultadoInterface) { String reqStCodigo = null; for (ExameConfiguracao exameConfiguracao : listExameConfiguracao) { LabResultados labResultado; String code = exameConfiguracao.getDerInCodigo() + exameConfiguracao.getCinStCodigo(); if (mapResultado.containsKey(code)) { exameConfiguracao.setLabResultado(mapResultado.get(code)); labResultado = inclusaoResultados( exameConfiguracao, loteResultadoInterface.getStrDbName(), derInValidadeRes); labResultado.setEmvDtValidade(exameConfiguracao.getEmvDtValidade()); labResultado.setResInSequencia(exameConfiguracao.getCinInSequencia().intValue()); String codeResultado = labResultado.getExaStCodigo(); if (!mapResultadoFormula.containsKey(codeResultado)) { mapResultadoFormula.put( codeResultado, labResultado.getCinStCodigo() + ":=\"" + labResultado.getResStIngresso().replace(",", ".") + "\";"); } else { String strResForm = mapResultadoFormula.get(codeResultado); mapResultadoFormula.remove(code); mapResultadoFormula.put( codeResultado, strResForm + labResultado.getCinStCodigo() + ":=\"" + labResultado.getResStIngresso().replace(",", ".") + "\";"); } reqStCodigo = labResultado.getReqStCodigo(); OracleHelper.saveObject(labResultado, loteResultadoInterface.getStrDbName()); AtualizaDetalheRequisicao(labResultado, exameConfiguracao, loteResultadoInterface); } else { labResultado = new LabResultados( exameConfiguracao.getReqStCodigo(), exameConfiguracao.getExaStCodigo(), exameConfiguracao.getSeqStCodigo(), exameConfiguracao.getMetStCodigo(), exameConfiguracao.getEmvDtValidade(), exameConfiguracao.getCinStCodigo(), dtBanco, null, null, null, null, 'N', derInValidadeRes, exameConfiguracao.getCinStTipoResultado(), exameConfiguracao.getDerInCodigo(), derInValidadeRes, null, null, 'N', 'N', null); exameConfiguracao.setLabResultado(labResultado); OracleHelper.saveObject(labResultado, loteResultadoInterface.getStrDbName()); } } CalculaFormulaResultado(listExameConfiguracao, loteResultadoInterface); if (reqStCodigo != null) { OracleHelper.procedureExecuterPSTATUSREQUISICAO( reqStCodigo, loteResultadoInterface.getStrDbName()); } }