private void obtenerValoresDescuentoPorcentaje(java.math.BigDecimal valorPorcentaje) { java.math.BigDecimal porcentaje = new java.math.BigDecimal( valorPorcentaje == null ? "0.00" : valorPorcentaje.toString().trim()); boolean obtenerBoleanoDeTabla = false; java.math.BigDecimal subTotalBaseImponibleInicial = new java.math.BigDecimal("0.00"); java.math.BigDecimal descuentoBaseImponible = new java.math.BigDecimal("0.00"); java.math.BigDecimal subTotalBaseCeroInicial = new java.math.BigDecimal("0.00"); java.math.BigDecimal descuentoBaseCero = new java.math.BigDecimal("0.00"); for (int j = 0; j < tabla.getRowCount(); j++) { obtenerBoleanoDeTabla = Boolean.valueOf(tabla.getValueAt(j, buscarColumna("IVA?", tabla)).toString()); // if (obtenerBoleanoDeTabla) // iva12 = iva12.add(new java.math.BigDecimal(table.getValueAt(i, // buscarColumna("Subtotal"))==null || table.getValueAt(i, // buscarColumna("Subtotal")).toString().trim().isEmpty() ? "0.00" : table.getValueAt(i, // buscarColumna("Subtotal")).toString().trim())); // else // iva0 = iva0.add(new java.math.BigDecimal(table.getValueAt(i, // buscarColumna("Subtotal"))==null || table.getValueAt(i, // buscarColumna("Subtotal")).toString().trim().isEmpty() ? "0.00" : table.getValueAt(i, // buscarColumna("Subtotal")).toString().trim())); if (obtenerBoleanoDeTabla) { subTotalBaseImponibleInicial = subTotalBaseImponibleInicial.add( new java.math.BigDecimal( tabla.getValueAt(j, buscarColumna("Parcial", tabla)) == null || tabla .getValueAt(j, buscarColumna("Parcial", tabla)) .toString() .trim() .isEmpty() ? "0.00" : tabla.getValueAt(j, buscarColumna("Parcial", tabla)).toString().trim())); descuentoBaseImponible = descuentoBaseImponible.add( new java.math.BigDecimal( tabla.getValueAt(j, buscarColumna("Descuento", tabla)) == null || tabla .getValueAt(j, buscarColumna("Descuento", tabla)) .toString() .trim() .isEmpty() ? "0.00" : tabla .getValueAt(j, buscarColumna("Descuento", tabla)) .toString() .trim())); } else { subTotalBaseCeroInicial = subTotalBaseCeroInicial.add( new java.math.BigDecimal( tabla.getValueAt(j, buscarColumna("Parcial", tabla)) == null || tabla .getValueAt(j, buscarColumna("Parcial", tabla)) .toString() .trim() .isEmpty() ? "0.00" : tabla.getValueAt(j, buscarColumna("Parcial", tabla)).toString().trim())); descuentoBaseCero = descuentoBaseCero.add( new java.math.BigDecimal( tabla.getValueAt(j, buscarColumna("Descuento", tabla)) == null || tabla .getValueAt(j, buscarColumna("Descuento", tabla)) .toString() .trim() .isEmpty() ? "0.00" : tabla .getValueAt(j, buscarColumna("Descuento", tabla)) .toString() .trim())); } } totalDescuento = descuentoBaseCero.add(descuentoBaseImponible); java.math.BigDecimal ivaVigente = jIFProformas != null ? new java.math.BigDecimal(jIFProformas.ivaVigente.toString()) : new java.math.BigDecimal(jIFProformasModificar.ivaVigente.toString()); try { if (jIFProformas != null) { //// PARA CALCULAR LOS TOTALES /** ************************************************************************* */ jIFProformas.descuentoBaseCero = descuentoBaseCero; jIFProformas.descuentoBaseImponible = descuentoBaseImponible; // // // if(subTotalBaseCeroInicial.subtract(descuentoBaseCero).add(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible)).compareTo(jIFProformas.mDIShrimp.getCero()) != 0){ // jIFProformas.descuentoGeneralCero = // jIFProformas.descuentoGeneral.divide(subTotalBaseCeroInicial.subtract(descuentoBaseCero). // // add(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible)), 17, // java.math.RoundingMode.HALF_EVEN).multiply(subTotalBaseCeroInicial.subtract(descuentoBaseCero), new java.math.MathContext(17, java.math.RoundingMode.HALF_EVEN)); // // jIFProformas.descuentoGeneralImponible = // jIFProformas.descuentoGeneral.divide(subTotalBaseCeroInicial.subtract(descuentoBaseCero). // // add(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible)), 17, // java.math.RoundingMode.HALF_EVEN).multiply(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible), new java.math.MathContext(17, java.math.RoundingMode.HALF_EVEN)); // } else { // jIFProformas.descuentoGeneralCero = jIFProformas.mDIShrimp.getCero(); // jIFProformas.descuentoGeneralImponible = // jIFProformas.mDIShrimp.getCero(); // } jIFProformas.subtotalBaseCero = validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseCeroInicial.subtract(jIFProformas.descuentoBaseCero), 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()); jIFProformas.subtotalBaseImponible = validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseImponibleInicial.subtract(jIFProformas.descuentoBaseImponible), 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()); /** ************************************************************************* */ /** ************************************************************************* */ //// PARA PONER LOS TOTALES EN EL FORMULARIO java.math.BigDecimal iva = jIFProformas .subtotalBaseImponible .multiply(ivaVigente) .divide(new java.math.BigDecimal("100.00"), java.math.RoundingMode.HALF_EVEN); java.math.BigDecimal totalFinal = jIFProformas.subtotalBaseCero.add(jIFProformas.subtotalBaseImponible).add(iva); jIFProformas.jtfParcialCero.setText( validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseCeroInicial, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfParcialImponible.setText( validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseImponibleInicial, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfDescuentoCero.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformas.descuentoBaseCero, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfDescuentoImponible.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformas.descuentoBaseImponible, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfSubtotalCero.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformas.subtotalBaseCero, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfSubtotalImponible.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformas.subtotalBaseImponible, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfIva.setText( validaciones.Validacion.redondeoDecimalBigDecimal(iva, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); jIFProformas.jtfTotal.setText( validaciones.Validacion.redondeoDecimalBigDecimal( totalFinal, 2, java.math.RoundingMode.UP) .add(jIFProformas.mDIShrimp.getCero()) .toString()); } else { //// PARA CALCULAR LOS TOTALES /** ************************************************************************* */ jIFProformasModificar.descuentoBaseCero = descuentoBaseCero; jIFProformasModificar.descuentoBaseImponible = descuentoBaseImponible; // // // if(subTotalBaseCeroInicial.subtract(descuentoBaseCero).add(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible)).compareTo(jIFProformasModificar.mDIShrimp.getCero()) != 0){ // jIFProformasModificar.descuentoGeneralCero = // jIFProformasModificar.descuentoGeneral.divide(subTotalBaseCeroInicial.subtract(descuentoBaseCero). // // add(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible)), 17, // java.math.RoundingMode.HALF_EVEN).multiply(subTotalBaseCeroInicial.subtract(descuentoBaseCero), new java.math.MathContext(17, java.math.RoundingMode.HALF_EVEN)); // // jIFProformasModificar.descuentoGeneralImponible = // jIFProformasModificar.descuentoGeneral.divide(subTotalBaseCeroInicial.subtract(descuentoBaseCero). // // add(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible)), 17, // java.math.RoundingMode.HALF_EVEN).multiply(subTotalBaseImponibleInicial.subtract(descuentoBaseImponible), new java.math.MathContext(17, java.math.RoundingMode.HALF_EVEN)); // } else { // jIFProformasModificar.descuentoGeneralCero = // jIFProformasModificar.mDIShrimp.getCero(); // jIFProformasModificar.descuentoGeneralImponible = // jIFProformasModificar.mDIShrimp.getCero(); // } jIFProformasModificar.subtotalBaseCero = validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseCeroInicial.subtract(jIFProformasModificar.descuentoBaseCero), 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()); jIFProformasModificar.subtotalBaseImponible = validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseImponibleInicial.subtract( jIFProformasModificar.descuentoBaseImponible), 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()); /** ************************************************************************* */ /** ************************************************************************* */ //// PARA PONER LOS TOTALES EN EL FORMULARIO java.math.BigDecimal iva = jIFProformasModificar .subtotalBaseImponible .multiply(ivaVigente) .divide(new java.math.BigDecimal("100.00"), java.math.RoundingMode.HALF_EVEN); java.math.BigDecimal totalFinal = jIFProformasModificar .subtotalBaseCero .add(jIFProformasModificar.subtotalBaseImponible) .add(iva); jIFProformasModificar.jtfParcialCero.setText( validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseCeroInicial, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfParcialImponible.setText( validaciones.Validacion.redondeoDecimalBigDecimal( subTotalBaseImponibleInicial, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfDescuentoCero.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformasModificar.descuentoBaseCero, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfDescuentoImponible.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformasModificar.descuentoBaseImponible, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfSubtotalCero.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformasModificar.subtotalBaseCero, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfSubtotalImponible.setText( validaciones.Validacion.redondeoDecimalBigDecimal( jIFProformasModificar.subtotalBaseImponible, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfIva.setText( validaciones.Validacion.redondeoDecimalBigDecimal(iva, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); jIFProformasModificar.jtfTotal.setText( validaciones.Validacion.redondeoDecimalBigDecimal( totalFinal, 2, java.math.RoundingMode.UP) .add(jIFProformasModificar.mDIShrimp.getCero()) .toString()); } } catch (Exception e) { shrimp.helper.JDVentanaMensajes.showMessageDialog( new javax.swing.JFrame(), "Ha ocurrido un error inesperado en el formulario", javax.swing.JOptionPane.ERROR_MESSAGE, javax.swing.JOptionPane.DEFAULT_OPTION, e, null); e.printStackTrace(); } }
private void guardarExcel() throws Exception { java.util.List<String> listaCabecera = new java.util.ArrayList(); java.util.List<String> listaCuerpo = new java.util.ArrayList(); java.math.BigDecimal cero = new java.math.BigDecimal("0.00"); desde = jftfDesde.getValue() == null ? "" : jftfDesde.getText(); hasta = jftfHasta.getValue() == null ? "" : jftfHasta.getText(); listaCabecera.add("S" + sisUsuarioEmpresaTO.getEmpRazonSocial()); listaCabecera.add("SReporte de Pesca"); listaCabecera.add("SDesde: " + desde + " Hasta: " + hasta); listaCabecera.add("S"); listaCuerpo.add( "SSect." + "¬" + "SPisc." + "¬" + "SHas." + "¬" + "SCor." + "¬" + "SSiembra" + "¬" + "SPesca" + "¬" + "SDías" + "¬" + "SN.Larvas" + "¬" + "SDensidad." + "¬" + "SLab." + "¬" + "SNauplio." + "¬" + "SBalanceado" + "¬" + "SBiomasa Proy." + "¬" + "SBiomasa Real" + "¬" + "SLibrasxHas." + "¬" + "SConv. Al." + "¬" + "SGra. Prom." + "¬" + "SGra. Ideal" + "¬" + "SSobrev." + "¬" + "SCosto" + "¬" + "SVenta" + "¬" + "SResul." + "¬" + "SCostoxHas." + "¬" + "SVentaxHas." + "¬" + "SResultxHas." + "¬" + "SCostoxLb." + "¬" + "SVentaxLb." + "¬" + "SResultxLb." + "¬" + "SResultDia"); for (produccion.TO.PrdResumenCorridaTO prdResumenCorridaTO : bbResumenCorrida1.getListaPrdListaResumenCorridaTO()) { listaCuerpo.add( (prdResumenCorridaTO.getSecCodigo() == null ? "S" : "S" + prdResumenCorridaTO.getSecCodigo()) + "¬" + (prdResumenCorridaTO.getPisNumero() == null ? "S" : "S" + prdResumenCorridaTO.getPisNumero()) + "¬" + (prdResumenCorridaTO.getRcHectareaje() == null ? "D" : "D" + prdResumenCorridaTO.getRcHectareaje().toString()) + "¬" + (prdResumenCorridaTO.getRcCorridaNumero() == null ? "S" : "S" + prdResumenCorridaTO.getRcCorridaNumero().toString()) + "¬" + (prdResumenCorridaTO.getRcFechaSiembra() == null ? "S" : "S" + prdResumenCorridaTO.getRcFechaSiembra().toString()) + "¬" + (prdResumenCorridaTO.getRcFechaPesca() == null ? "S" : "S" + prdResumenCorridaTO.getRcFechaPesca().toString()) + "¬" + (prdResumenCorridaTO.getRcEdad() == null ? "C" : "C" + prdResumenCorridaTO.getRcEdad().toString()) + "¬" + (prdResumenCorridaTO.getRcNumeroLarvas() == null ? "C" : "C" + prdResumenCorridaTO.getRcNumeroLarvas().toString()) + "¬" + (prdResumenCorridaTO.getRcDensidad() == null ? "C" : "C" + prdResumenCorridaTO.getRcDensidad().toString()) + "¬" + (prdResumenCorridaTO.getRcLaboratorio() == null ? "S" : "S" + prdResumenCorridaTO.getRcLaboratorio().toString()) + "¬" + (prdResumenCorridaTO.getRcNauplio() == null ? "S" : "S" + prdResumenCorridaTO.getRcNauplio().toString()) + "¬" + (prdResumenCorridaTO.getRcLibrasBalanceados() == null ? "C" : "C" + prdResumenCorridaTO.getRcLibrasBalanceados().toString()) + "¬" + (prdResumenCorridaTO.getRcBiomasa() == null ? "C" : "C" + prdResumenCorridaTO.getRcBiomasa().toString()) + "¬" + (prdResumenCorridaTO.getRcBiomasaReal() == null ? "C" : "C" + prdResumenCorridaTO.getRcBiomasaReal().toString()) + "¬" + (prdResumenCorridaTO.getRcBiomasaReal() == null || prdResumenCorridaTO.getRcHectareaje() == null || prdResumenCorridaTO.getRcHectareaje().compareTo(cero) == 0 ? "C" : "C" + String.valueOf( prdResumenCorridaTO .getRcBiomasaReal() .divide( prdResumenCorridaTO.getRcHectareaje(), 2, java.math.RoundingMode.HALF_UP) .intValue())) + "¬" + (prdResumenCorridaTO.getRcConversion() == null ? "D" : "D" + prdResumenCorridaTO.getRcConversion().toString()) + "¬" + (prdResumenCorridaTO.getRcTPromedio() == null ? "D" : "D" + prdResumenCorridaTO.getRcTPromedio().toString()) + "¬" + (prdResumenCorridaTO.getRcPesoIdeal() == null ? "D" : "D" + prdResumenCorridaTO.getRcPesoIdeal().toString()) + "¬" + (prdResumenCorridaTO.getRcSobrevivencia() == null ? "S" : "S" + prdResumenCorridaTO.getRcSobrevivencia().toString()) + "¬" + (prdResumenCorridaTO.getRcCosto() == null ? "D" : "D" + prdResumenCorridaTO.getRcCosto().toString()) + "¬" + (prdResumenCorridaTO.getRcValorVenta() == null ? "D" : "D" + prdResumenCorridaTO.getRcValorVenta().toString()) + "¬" + (prdResumenCorridaTO.getRcResultado() == null ? "D" : "D" + prdResumenCorridaTO.getRcResultado().toString()) + "¬" + (prdResumenCorridaTO.getRcCostoHectarea() == null ? "D" : "D" + prdResumenCorridaTO.getRcCostoHectarea().toString()) + "¬" + (prdResumenCorridaTO.getRcVentaHectarea() == null ? "D" : "D" + prdResumenCorridaTO.getRcVentaHectarea().toString()) + "¬" + (prdResumenCorridaTO.getRcResultadoHectarea() == null ? "D" : "D" + prdResumenCorridaTO.getRcResultadoHectarea().toString()) + "¬" + (prdResumenCorridaTO.getRcCostoLibra() == null ? "D" : "D" + prdResumenCorridaTO.getRcCostoLibra().toString()) + "¬" + (prdResumenCorridaTO.getRcVentaLibra() == null ? "D" : "D" + prdResumenCorridaTO.getRcVentaLibra().toString()) + "¬" + (prdResumenCorridaTO.getRcResultadoLibra() == null ? "D" : "D" + prdResumenCorridaTO.getRcResultadoLibra().toString()) + "¬" + (prdResumenCorridaTO.getRcResultadoLibra() == null || prdResumenCorridaTO.getRcEdad() == null || prdResumenCorridaTO.getRcEdad().compareTo(cero) == 0 ? "D" : "D" + validaciones.Validacion.redondeoDecimalBigDecimal( prdResumenCorridaTO .getRcResultadoHectarea() .divide( prdResumenCorridaTO.getRcEdad(), 2, java.math.RoundingMode.HALF_UP)) .toString()) + "¬"); } long nombreFichero = java.util.Calendar.getInstance(java.util.TimeZone.getTimeZone("America/Guayaquil")) .getTime() .getTime(); shrimp.validaciones.GenerarExcel.crearExcel( listaCabecera, listaCuerpo, "TODOCOMPU", "tmp/" + nombreFichero + ".xls"); shrimp.validaciones.Fichero.abrirFichero("tmp/" + nombreFichero + ".xls"); }