/** * @param dets * @param registros */ public void registrarGasto( final List<GCompraDet> dets, final Poliza poliza, final String factura) { GCompraDet det = dets.get(0); PolizaDet asiento = poliza.agregarPartida(); asiento.setCuenta(getCuenta("600")); asiento.setDescripcion(""); String pattern = "F-{0} {1}"; String descripcion2 = MessageFormat.format(pattern, det.getFactura(), det.getProducto().getDescripcion()); descripcion2 = StringUtils.substring(descripcion2, 0, 50); asiento.setDescripcion2(descripcion2); if ((det.getRubro() != null) || (det.getRubro().getRubroCuentaOrigen() != null)) { ConceptoDeGasto concepto = det.getRubro().getRubroCuentaOrigen(); String cc = concepto != null ? concepto.getDescripcion() : "NA"; asiento.setDescripcion2(cc); } CantidadMonetaria debe = CantidadMonetaria.pesos(0); for (GCompraDet part : dets) { debe = debe.add(part.getImporteMN()); } asiento.setDebe(debe.amount()); asiento.setReferencia(dets.get(0).getCompra().getProveedor().getNombreRazon()); asiento.setReferencia2(det.getSucursal().getNombre()); }
private PolizaDet generarPartidaDeProvision(Poliza p, GFacturaPorCompra fac) { if (fac.getDocumento().equalsIgnoreCase("21")) { System.out.println("DEBUG.."); } if (!fac.getRequisiciones().isEmpty()) { Requisicion r = fac.getRequisiciones().iterator().next().getRequisicion(); if (r.getConcepto() != null) { if (r.getConcepto().getId() == 737332L) { return null; } } } PolizaDet a = p.agregarPartida(); a.setCuenta(getCuenta("212")); a.setDescripcion(""); String pattern = "PROV F:{0} {1}"; String descripcion = MessageFormat.format( pattern, fac.getDocumento(), fac.getCompra().getProveedor().getNombreRazon()); a.setDescripcion2(descripcion); a.setHaber(fac.getTotatMN().amount()); a.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a.setReferencia2(fac.getCompra().getSucursal().getNombre()); return a; }
private void registrarRetenciones(Poliza p, List<GFacturaPorCompra> facs) { for (GFacturaPorCompra fac : facs) { for (GCompraDet det : fac.getCompra().getPartidas()) { if (det.getRetencion1() == RETENCION_HONORARIOS) { // honorarios=honorarios.add(det.getRetencion1Imp()); // honorarios=det.getRetencion1Imp(); PolizaDet a = p.agregarPartida(); a.setCuenta(getCuenta("205")); a.setDescripcion(PolizaContableManager.IVA_RETENIDO_PENDIENTE); String pattern = "F:{0} {1}"; String descripcion2 = MessageFormat.format( pattern, fac.getDocumento(), fac.getCompra().getProveedor().getNombreRazon() + "aqui"); a.setDescripcion2(descripcion2); a.setHaber(CantidadMonetaria.pesos(det.getRetencion2Imp().doubleValue()).amount()); a.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a.setReferencia2(fac.getCompra().getSucursal().getNombre()); PolizaDet a2 = p.agregarPartida(); a2.setCuenta(getCuenta("117")); a2.setDescripcion(PolizaContableManager.IVA_POR_ACREDITAR_RETENIDO); a2.setDebe(CantidadMonetaria.pesos(det.getRetencion1Imp().doubleValue()).amount()); a2.setDescripcion2(fac.getCompra().getProveedor().getNombreRazon()); a2.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a2.setReferencia2(fac.getCompra().getSucursal().getNombre()); PolizaDet a3 = p.agregarPartida(); a3.setCuenta(getCuenta("118")); a3.setDescripcion("ISR RETENIDO PENDIENTE X PAGAR"); a3.setHaber(CantidadMonetaria.pesos(det.getRetencion2Imp().doubleValue()).amount()); a3.setDescripcion2(fac.getCompra().getProveedor().getNombreRazon()); a3.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a3.setReferencia2(fac.getCompra().getSucursal().getNombre()); continue; } else if (det.getRetencion1() == RETENCION_TRANSPORTE) { // Cargo a Iva Acreditable Retenido PolizaDet a = p.agregarPartida(); a.setCuenta(getCuenta("205")); a.setDescripcion(PolizaContableManager.IVA_RETENIDO_PENDIENTE); String pattern = "F:{0} {1}"; String descripcion = MessageFormat.format( pattern, fac.getDocumento(), fac.getCompra().getProveedor().getNombreRazon()); a.setDescripcion2(descripcion); a.setHaber(CantidadMonetaria.pesos(det.getRetencion1Imp().doubleValue()).amount()); a.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a.setReferencia2(fac.getCompra().getSucursal().getNombre()); // Abono a IVA RETENIDO PolizaDet a2 = p.agregarPartida(); a2.setDescripcion(descripcion); a2.setCuenta(getCuenta("117")); a2.setDescripcion(PolizaContableManager.IVA_POR_ACREDITAR_RETENIDO); a2.setDebe(CantidadMonetaria.pesos(det.getRetencion1Imp().doubleValue()).amount()); a2.setDescripcion2(descripcion); a2.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a2.setReferencia2(fac.getCompra().getSucursal().getNombre()); } } } }
private void registrarIva(Poliza p, List<GFacturaPorCompra> facs) { // Impuesto de gastos for (GFacturaPorCompra fac : facs) { PolizaDet a = p.agregarPartida(); a.setCuenta(getCuenta("117")); a.setDescripcion("Iva x acreditar"); String pattern = "IVA F:{0} {1}"; String descripcion2 = MessageFormat.format( pattern, fac.getDocumento(), fac.getCompra().getProveedor().getNombreRazon()); a.setDescripcion2(descripcion2); CantidadMonetaria impuestoGastos = CantidadMonetaria.pesos(0); for (GCompraDet det : fac.getCompra().getPartidas()) { if (!det.getProducto().getInversion()) { CantidadMonetaria imp = det.getImpuestoMN(); impuestoGastos = impuestoGastos.add(imp); } } a.setDebe(impuestoGastos.amount()); if ((fac.getCompra().getRet1MN() != null) && (fac.getCompra().getRet1MN().amount().doubleValue() > 0)) { a.setDebe(a.getDebe().subtract(fac.getCompra().getRet1MN().amount())); } a.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a.setReferencia2(fac.getCompra().getSucursal().getNombre()); } /** Impuesto de gastos* */ for (GFacturaPorCompra fac : facs) { PolizaDet a = p.agregarPartida(); a.setCuenta(getCuenta("117")); a.setDescripcion("Iva x acreditar"); String pattern = "IVA F:{0} {1}"; String descripcion2 = MessageFormat.format( pattern, fac.getDocumento(), fac.getCompra().getProveedor().getNombreRazon()); a.setDescripcion2(descripcion2); CantidadMonetaria impuestoGastos = CantidadMonetaria.pesos(0); for (GCompraDet det : fac.getCompra().getPartidas()) { if (det.getProducto().getInversion()) { CantidadMonetaria imp = det.getImpuestoMN(); impuestoGastos = impuestoGastos.add(imp); } } a.setDebe(impuestoGastos.amount()); a.setReferencia(fac.getCompra().getProveedor().getNombreRazon()); a.setReferencia2(fac.getCompra().getSucursal().getNombre()); } }