add nakladn second part template

prod
Dmitriy Shesterkin 9 years ago
parent c9c5feb1b9
commit a93a2a4e7a
  1. 39
      src/commons/templatetags/my_tags.py
  2. 36
      templates/docs/nakladn/as_pdf.html

@ -74,3 +74,42 @@ def file_version(path):
return md5(open(full_path, 'rb').read()).hexdigest() return md5(open(full_path, 'rb').read()).hexdigest()
except IOError: except IOError:
return '' return ''
@register.filter
def rub_in_parts(string, part):
"""Преобразуем строку с суммой прописью для вывода в накладную"""
s = ''
rub = string.find('руб')
if rub != -1:
result = string[:rub - 1]
else:
result = string
if len(result) >= 50:
words = result.split(' ')
len_string = 0
for word in words:
if len_string >= 50:
break
len_string += len(word) + 1
first_part = result[:len_string]
second_part = result[len_string:]
if part == 1:
s = first_part
elif part == 2:
s = second_part
else:
s = result
else:
s = result
return s
@register.filter
def only_kopeck(sum):
kopeck = str(sum).split('.')[-1]
if len(kopeck) < 2:
return f'{kopeck}0'
else:
return kopeck

@ -304,17 +304,17 @@
<tr class="bottom_border left_border"> <tr class="bottom_border left_border">
<td width="3%" class="center right_border">{{ forloop.counter }}</td>{# 1 #} <td width="3%" class="center right_border">{{ forloop.counter }}</td>{# 1 #}
<td width="21%" class="left right_border_2">{{ item.name|safe }}</td>{# 2 #} <td width="21%" class="left right_border_2">{{ item.name|safe }}</td>{# 2 #}
<td width="4%" class="right_border_2"></td>{# 3 #} <td width="4%" class="right_border_2 center">-</td>{# 3 #}
<td width="5%" class="center right_border_2">{{ item.units|safe }}</td>{# 4 #} <td width="5%" class="center right_border_2">{{ item.units|safe }}</td>{# 4 #}
<td width="5%" class="center right_border">{{ item.units_kod|safe }}</td>{# 5 #} <td width="5%" class="center right_border">{{ item.units_kod|safe }}</td>{# 5 #}
<td width="5%" class="right_border"></td>{# 6 #} <td width="5%" class="center right_border">-</td>{# 6 #}
<td width="5%" class="right_border"></td>{# 7 #} <td width="5%" class="center right_border">-</td>{# 7 #}
<td width="5%" class="right_border"></td>{# 8 #} <td width="5%" class="center right_border">-</td>{# 8 #}
<td width="5%" class="right_border"></td>{# 9 #} <td width="5%" class="center right_border">-</td>{# 9 #}
<td width="6%" class="right_border">{{ item.qty }}</td>{# 10 #} <td width="6%" class="right_border">{{ item.qty }}</td>{# 10 #}
<td width="9%" class="right_border">{{ item.clean_price}}</td>{# 11 #} <td width="9%" class="right_border">{{ item.clean_price}}</td>{# 11 #}
<td width="7%" class="right_border_2">{{ item.clean_total_price|floatformat:2 }}</td>{# 12 #} <td width="7%" class="right_border_2">{{ item.clean_total_price|floatformat:2 }}</td>{# 12 #}
<td width="4%" class="center right_border_2">{{ obj.get_nds_as_number }}</td>{# 13 #} <td width="4%" class="center right_border_2">{% if obj.get_nds_as_number != 0 %}{{ obj.get_nds_as_number }}{% else %}Без НДС{% endif %}</td>{# 13 #}
<td width="7%" class="right_border">{{ item.total_nds|floatformat:2 }}</td>{# 14 #} <td width="7%" class="right_border">{{ item.total_nds|floatformat:2 }}</td>{# 14 #}
<td width="9%" class="right_border_2">{{ item.full_total_price|floatformat:2 }}</td>{# 15 #} <td width="9%" class="right_border_2">{{ item.full_total_price|floatformat:2 }}</td>{# 15 #}
</tr> </tr>
@ -388,7 +388,7 @@
<td width="3%"></td> <td width="3%"></td>
<td colspan="3">Товарная накладная имеет приложение на</td> <td colspan="3">Товарная накладная имеет приложение на</td>
<td width="1%"></td> <td width="1%"></td>
<td width="44%" class="bottom_border"></td> <td width="44%" class="center bottom_border">---</td>
<td width="1%"></td> <td width="1%"></td>
<td width="29%">листах</td> <td width="29%">листах</td>
</tr> </tr>
@ -447,7 +447,7 @@
<td></td> <td></td>
<td>Всего мест</td> <td>Всего мест</td>
<td></td> <td></td>
<td class="bottom_border"></td> <td class="center bottom_border">---</td>
<td></td> <td></td>
<td>Масса груза (брутто)</td> <td>Масса груза (брутто)</td>
<td></td> <td></td>
@ -496,7 +496,7 @@
<tr> <tr>
<td colspan="3">Приложение (паспорта, сертификаты и т.п.) на</td> <td colspan="3">Приложение (паспорта, сертификаты и т.п.) на</td>
<td width="1%"></td> <td width="1%"></td>
<td colspan="3" class="bottom_border"></td> <td colspan="3" class="center bottom_border">---</td>
<td width="1%"></td> <td width="1%"></td>
<td colspan="2" class="right_border">листах</td> <td colspan="2" class="right_border">листах</td>
{# правая половина #} {# правая половина #}
@ -522,7 +522,7 @@
<tr> <tr>
<td>Всего отпущено на сумму</td> <td>Всего отпущено на сумму</td>
<td width="1%"></td> <td width="1%"></td>
<td colspan="7" class="bottom_border"></td> <td colspan="7" class="bottom_border">{{ obj.sum_full_total_price|to_float|rubles|rub_in_parts:1|capfirst }}</td>
<td class="right_border"></td> <td class="right_border"></td>
{# правая половина #} {# правая половина #}
<td></td> <td></td>
@ -539,9 +539,9 @@
<td colspan="9" class="center font_7 top">(кем, кому (организация, должность, фамилия, и., о.))</td> <td colspan="9" class="center font_7 top">(кем, кому (организация, должность, фамилия, и., о.))</td>
</tr> </tr>
<tr> <tr>
<td colspan="5" class="bottom_border"></td> <td colspan="5" class="bottom_border center"> {{ obj.sum_full_total_price|to_float|rubles|rub_in_parts:2 }} </td>
<td>руб.</td> <td>руб.</td>
<td colspan="3" class="bottom_border"></td> <td colspan="3" class="bottom_border">{{ obj.sum_full_total_price|to_float|only_kopeck }}</td>
<td width="4%" class="right_border">коп.</td> <td width="4%" class="right_border">коп.</td>
{# правая половина #} {# правая половина #}
<td width="1%"></td> <td width="1%"></td>
@ -692,24 +692,24 @@
</td> </td>
<td width="3%"></td> <td width="3%"></td>
<td width="1%" class="right">«</td> <td width="1%" class="right">«</td>
<td width="2%" class="bottom_border"></td> <td width="2%" class="center bottom_border">{{ obj.doc_date|date:"d" }}</td>
<td width="1%">»</td> <td width="1%">»</td>
<td width="1%"></td> <td width="1%"></td>
<td width="13%" class="bottom_border"></td> <td width="13%" class="center bottom_border">{{ obj.doc_date|date:"E" }}</td>
<td width="1%"></td> <td width="1%"></td>
<td width="5%" class="bottom_border"></td> <td width="5%" class="center bottom_border">{{ obj.doc_date|date:"Y" }}</td>
<td width="14%" class="right_border">года</td> <td width="14%" class="right_border">года</td>
{# правая половина #} {# правая половина #}
<td width="1%"></td> <td width="1%"></td>
<td width="10%" class="font_10 right">М.П.</td> <td width="10%" class="font_10 right">М.П.</td>
<td width="3%"></td> <td width="3%"></td>
<td width="1%" class="right">«</td> <td width="1%" class="right">«</td>
<td width="2%" class="bottom_border"></td> <td width="2%" class="center bottom_border">{{ obj.doc_date|date:"d" }}</td>
<td width="1%">»</td> <td width="1%">»</td>
<td width="1%"></td> <td width="1%"></td>
<td width="13%" class="bottom_border"></td> <td width="13%" class="center bottom_border">{{ obj.doc_date|date:"E" }}</td>
<td width="1%"></td> <td width="1%"></td>
<td width="5%" class="bottom_border"></td> <td width="5%" class="center bottom_border">{{ obj.doc_date|date:"Y" }}</td>
<td width="13%">года</td> <td width="13%">года</td>
</tr> </tr>
<tr> <tr>

Loading…
Cancel
Save