Skip to content

Commit 84e38ff

Browse files
committed
ganing code space from amount and using smaller font when code too long
1 parent 2979175 commit 84e38ff

File tree

6 files changed

+33
-30
lines changed

6 files changed

+33
-30
lines changed
1.75 KB
Loading
7.89 KB
Loading
7.89 KB
Loading

lib/afip_bill/generator.rb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@ class Generator
1313
FOOTER_PATH = File.dirname(__FILE__) + '/views/shared/_factura_footer.html.erb'.freeze
1414
BRAVO_CBTE_TIPO = {
1515
'01' => { directory: 'bills', template: 'factura_a', doc_name: 'factura', doc_type: 'a' },
16-
'02' => { directory: 'notes', template: 'nota_a', doc_name: 'Nota de débito', doc_type: 'a' },
17-
'03' => { directory: 'notes', template: 'nota_a', doc_name: 'Nota de crédito', doc_type: 'a' },
16+
'02' => { directory: 'bills', template: 'factura_a', doc_name: 'Nota de débito', doc_type: 'a' },
17+
'03' => { directory: 'bills', template: 'factura_a', doc_name: 'Nota de crédito', doc_type: 'a' },
1818
'06' => { directory: 'bills', template: 'factura_b', doc_name: 'factura', doc_type: 'b' },
19-
'07' => { directory: 'notes', template: 'nota_b', doc_name: 'Nota de débito', doc_type: 'b' },
20-
'08' => { directory: 'notes', template: 'nota_b', doc_name: 'Nota de crédito', doc_type: 'b' },
19+
'07' => { directory: 'bills', template: 'factura_b', doc_name: 'Nota de débito', doc_type: 'b' },
20+
'08' => { directory: 'bills', template: 'factura_b', doc_name: 'Nota de crédito', doc_type: 'b' },
2121
'11' => { directory: 'bills', template: 'factura_b', doc_name: 'factura', doc_type: 'c' },
22-
'12' => { directory: 'notes', template: 'nota_b', doc_name: 'Nota de débito', doc_type: 'c' },
23-
'13' => { directory: 'notes', template: 'nota_b', doc_name: 'Nota de crédito', doc_type: 'c' }
22+
'12' => { directory: 'bills', template: 'factura_b', doc_name: 'Nota de débito', doc_type: 'c' },
23+
'13' => { directory: 'bills', template: 'factura_b', doc_name: 'Nota de crédito', doc_type: 'c' }
2424
}.freeze
2525
IVA = 21.freeze
2626
DEFAULTS = {

lib/afip_bill/views/bills/factura_a.html.erb

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
11
<%= @template_header %>
22

3-
<div style="left:484.19px;top:259.63px" class="cls_011"><span class="cls_011">Alicuota</span></div>
43
<div style="left:19.00px;top:263.04px" class="cls_010"><span class="cls_010">Código</span></div>
5-
<div style="left:59.00px;top:263.04px" class="cls_010"><span class="cls_010">Producto / Servicio</span></div>
6-
<div style="left:325.77px;top:263.04px" class="cls_010"><span class="cls_010">Cant.</span></div>
4+
<div style="left:80.00px;top:263.04px" class="cls_010"><span class="cls_010">Producto / Servicio</span></div>
5+
<div style="left:390px;top:263.04px" class="cls_010"><span class="cls_010">Cant.</span></div>
76
<!--<div style="left:285.77px;top:263.66px" class="cls_011"><span class="cls_011">U. medida</span></div>-->
8-
<div style="left:365.05px;top:263.66px" class="cls_011"><span class="cls_011">Precio Unit.</span></div>
7+
<div style="left:420.05px;top:263.66px" class="cls_011"><span class="cls_011">Precio Unit.</span></div>
98
<!--<div style="left:388.47px;top:263.66px" class="cls_011"><span class="cls_011">% Bonif</span></div>-->
10-
<div style="left:434.50px;top:263.66px" class="cls_011"><span class="cls_011">Subtotal</span></div>
11-
<div style="left:524.27px;top:263.66px" class="cls_011"><span class="cls_011">Subtotal c/IVA</span></div>
12-
<div style="left:492.17px;top:267.68px" class="cls_011"><span class="cls_011">IVA</span></div>
9+
<div style="left:468.50px;top:263.66px" class="cls_011"><span class="cls_011">Subtotal</span></div>
10+
<div style="left:508.19px;top:261px" class="cls_011"><span class="cls_011">Alicuota <br/> IVA</span></div>
11+
<div style="left:544.27px;top:261px" class="cls_011"><span class="cls_011">Subtotal <br/> c/IVA</span></div>
1312

1413
<% top = 283 %>
1514
<% @line_items.each_with_index do |line_item, index|
1615
item_code = line_item.code || (index + 1).to_s.rjust(3, "0")
16+
small_code = item_code.length > 8
1717
precio_unitario = ('%.2f' % line_item.imp_unitario).to_s.tr(".", ",")
1818
subtotal = ('%.2f' % line_item.imp_total_unitario).to_s.tr(".", ",")
1919
alic_iva = ('%.2f' % line_item.iva).to_s.tr(".", ",")
2020
subtotal_con_iva = ('%.2f' % line_item.imp_total_unitario_con_iva).to_s.tr(".", ",")
2121
%>
22-
<div style="left:18.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= item_code %></span></div>
23-
<div style="left:57.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= line_item.name %></span></div>
24-
<div style="width:60px;left:290.30px;top:<%= top %>px" class="cls_008"><span style="position:absolute;right:0" class="cls_008"><%= line_item.quantity.to_s.tr(".", ",") %> </span></div>
22+
<div style="word-break: break-word; width:52px; left:18.00px;top:<%= top %>px;" class="cls_008"><span class="cls_008" style="<%= "font-size:5px" if small_code %>"><%= item_code %></span></div>
23+
<div style="left:80.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= line_item.name %></span></div>
24+
<div style="width:29px;left:388px;top:<%= top %>px" class="cls_008"><span style="position:absolute;right:0" class="cls_008"><%= line_item.quantity.to_s.tr(".", ",") %> </span></div>
2525
<!--<div style="left:288.30px;top:<%= top %>px" class="cls_012"><span class="cls_012">unidades</span></div>-->
26-
<div style="left:413px;top:<%= top %>px" class="cls_008"><span class="cls_008" style="position:absolute;right:0"><%= precio_unitario %></span></div>
26+
<div style="width:40px; left:420px;top:<%= top %>px" class="cls_008"><span class="cls_008" style="position:absolute;right:0"><%= precio_unitario %></span></div>
2727
<!--<div style="left:398.43px;top:<%= top %>px" class="cls_008"><span class="cls_008">0,00</span></div>-->
28-
<div style="width:60px;left:70.4%;top:<%= top %>px" class="cls_008"><span style="position:absolute;right:0" class="cls_008"><%= subtotal %></span></div>
29-
<div style="left:490.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= alic_iva %>%</span></div>
30-
<div style="width:60px;left:87%;top:<%= top %>px" class="cls_008"><span style="position:absolute;right:0" class="cls_008"><%= subtotal_con_iva %></span></div>
28+
<div style="width:40px;left:462px;top:<%= top %>px" class="cls_008"><span style="position:absolute;right:0" class="cls_008"><%= subtotal %></span></div>
29+
<div style="left:508px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= alic_iva %>%</span></div>
30+
<div style="width:40px;left:540;top:<%= top %>px" class="cls_008"><span style="position:absolute;right:0" class="cls_008"><%= subtotal_con_iva %></span></div>
3131
<% top += 15 %>
3232
<% end %>
3333

lib/afip_bill/views/bills/factura_b.html.erb

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,31 @@
11
<%= @template_header %>
22

33
<div style="left:19.00px;top:270.04px" class="cls_010"><span class="cls_010">Código</span></div>
4-
<div style="left:60.00px;top:270.04px" class="cls_010"><span class="cls_010">Producto / Servicio</span></div>
5-
<div style="left:372.39px;top:270.04px" class="cls_010"><span class="cls_010">Cantidad</span></div>
4+
<div style="left:80.00px;top:270.04px" class="cls_010"><span class="cls_010">Producto / Servicio</span></div>
5+
<div style="left:465.39px;top:270.04px" class="cls_010"><span class="cls_010">Cant.</span></div>
66
<!-- <div style="left:263.61px;top:270.04px" class="cls_010"><span class="cls_010">U. Medida</span></div> -->
7-
<div style="left:428.05px;top:270.66px" class="cls_011"><span class="cls_011">Precio Unit.</span></div>
7+
<div style="left:494px;top:270.66px" class="cls_011"><span class="cls_011">Precio Unit.</span></div>
88
<!-- <div style="left:386.97px;top:270.66px" class="cls_011"><span class="cls_011">% Bonif</span></div>
99
<div style="left:434.42px;top:270.66px" class="cls_011"><span class="cls_011">Imp. Bonif.</span></div> -->
10-
<div style="left:520.50px;top:270.66px" class="cls_011"><span class="cls_011">Subtotal</span></div>
10+
<div style="left:542.50px;top:270.66px" class="cls_011"><span class="cls_011">Subtotal</span></div>
1111

12-
<% top = 293 %>
12+
<% top = 288 %>
1313
<% @line_items.each_with_index do |line_item, index|
1414
item_code = line_item.code || (index + 1).to_s.rjust(3, "0")
15+
small_code = item_code.length > 8
1516
precio_unitario = ('%.2f' % line_item.imp_unitario).to_s.tr(".", ",")
1617
subtotal = ('%.2f' % line_item.imp_total_unitario).to_s.tr(".", ",")
1718
%>
18-
<div style="left:18.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= item_code %></span></div>
19-
<div style="left:57.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= line_item.name %></span></div>
20-
<div style="width:60px;left:392px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= line_item.quantity.round(2).to_s.tr(".", ",") %></span></div>
19+
<div style="word-break: break-word; width: 55px; left:18.00px;top:<%= top %>px" class="cls_008">
20+
<span class="cls_008" style="<%= "font-size:5px" if small_code %>"><%= item_code %></span>
21+
</div>
22+
<div style="left:80.00px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= line_item.name %></span></div>
23+
<div style="width:29px;left:478px;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= line_item.quantity.round(2).to_s.tr(".", ",") %></span></div>
2124
<!-- <div style="left:268.30px;top:<%= top %>px" class="cls_012"><span class="cls_012">unidades</span></div> -->
22-
<div style="left:478px;top:<%= top %>px" class="cls_008"><span class="cls_008" style="position:absolute;right:0"><%= precio_unitario %></span></div>
25+
<div style="width:40px; left:495px;top:<%= top %>px" class="cls_008"><span class="cls_008" style="position:absolute;right:0"><%= precio_unitario %></span></div>
2326
<!-- <div style="left:392.22px;top:<%= top %>px" class="cls_008"><span class="cls_008">0,00</span></div>
2427
<div style="left:471.43px;top:<%= top %>px" class="cls_008"><span class="cls_008">0,00</span></div> -->
25-
<div style="width:60px;left:91%;top:<%= top %>px" class="cls_008"><span class="cls_008"><%= subtotal %></span></div>
28+
<div style="width:40px;left:91%;top:<%= top %>px" class="cls_008"><span class="cls_008" style="position:absolute;right:0"><%= subtotal %></span></div>
2629
<% top += 15 %>
2730
<% end %>
2831

0 commit comments

Comments
 (0)