[WIP] Improve code lisibility.
This commit is contained in:
parent
9c38f171d1
commit
843a9b0c78
|
@ -46,7 +46,7 @@ ROOT_URLCONF = "comptaClub.urls"
|
||||||
TEMPLATES = [
|
TEMPLATES = [
|
||||||
{
|
{
|
||||||
"BACKEND": "django.template.backends.django.DjangoTemplates",
|
"BACKEND": "django.template.backends.django.DjangoTemplates",
|
||||||
"DIRS": [os.path.join(BASE_DIR, "templates"), ],
|
"DIRS": [os.path.join(BASE_DIR, "templates"),],
|
||||||
"APP_DIRS": True,
|
"APP_DIRS": True,
|
||||||
"OPTIONS": {
|
"OPTIONS": {
|
||||||
"context_processors": [
|
"context_processors": [
|
||||||
|
@ -81,9 +81,9 @@ AUTH_PASSWORD_VALIDATORS = [
|
||||||
{
|
{
|
||||||
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
|
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
|
||||||
},
|
},
|
||||||
{"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", },
|
{"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",},
|
||||||
{"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator", },
|
{"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",},
|
||||||
{"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator", },
|
{"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",},
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ from .models import (
|
||||||
from .utils import zero_or_value
|
from .utils import zero_or_value
|
||||||
|
|
||||||
|
|
||||||
def get_transaction_and_sum_for_year_and_type(year, transaction_type_id):
|
def get_transactions_and_sums_for_year_and_type(accounting_year, transaction_type_id):
|
||||||
"""
|
"""
|
||||||
Récupère les transactions associées à une date et un type et additionne les valeurs obtenues.
|
Récupère les transactions associées à une date et un type et additionne les valeurs obtenues.
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ def get_transaction_and_sum_for_year_and_type(year, transaction_type_id):
|
||||||
dict
|
dict
|
||||||
"""
|
"""
|
||||||
transaction_list = (
|
transaction_list = (
|
||||||
Transaction.objects.filter(registrationDate__year=year)
|
Transaction.objects.filter(registrationDate__year=accounting_year)
|
||||||
.filter(transaction_type__transaction_type=transaction_type_id)
|
.filter(transaction_type__transaction_type=transaction_type_id)
|
||||||
.order_by("registrationDate")
|
.order_by("registrationDate")
|
||||||
)
|
)
|
||||||
|
@ -46,7 +46,7 @@ def get_transaction_and_sum_for_year_and_type(year, transaction_type_id):
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
def get_totalamount_sum_value(year, transaction_type):
|
def get_transactions_totalamount_sum_value(accounting_year, transaction_type):
|
||||||
"""
|
"""
|
||||||
Récupère les transactions associées à une date et un type et additionne le montant total des
|
Récupère les transactions associées à une date et un type et additionne le montant total des
|
||||||
records obtenus.
|
records obtenus.
|
||||||
|
@ -58,45 +58,47 @@ def get_totalamount_sum_value(year, transaction_type):
|
||||||
Returns:
|
Returns:
|
||||||
(int): somme totale
|
(int): somme totale
|
||||||
"""
|
"""
|
||||||
return zero_or_value(list(
|
return zero_or_value(
|
||||||
|
list(
|
||||||
Transaction.objects.filter(
|
Transaction.objects.filter(
|
||||||
registrationDate__year=year,
|
registrationDate__year=accounting_year,
|
||||||
transaction_type=transaction_type,
|
transaction_type=transaction_type,
|
||||||
is_simulated=False,
|
is_simulated=False,
|
||||||
is_done=True,
|
is_done=True,
|
||||||
)
|
)
|
||||||
.aggregate(Sum("totalAmount"))
|
.aggregate(Sum("totalAmount"))
|
||||||
.values()
|
.values()
|
||||||
)[0])
|
)[0]
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def get_transaction_and_sum_sxs(year, transaction_type_id):
|
def get_transactiontypes_and_total_amount_transactions(accounting_year, transactiontype_id):
|
||||||
"""
|
"""
|
||||||
Récupère tous les types de transactions qui existent pour, pour chacun d'eux récupère toutes
|
Récupère tous les types de transactions qui existent pour, pour chacun d'eux récupère toutes
|
||||||
les transactions qui sont `effectuées` et non `simulées` et va additionner les montants totaux
|
les transactions qui sont `effectuées` et non `simulées` et va additionner les montants totaux
|
||||||
par type de transaction.
|
par type de transaction.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
year (int): année
|
accounting_year (int): année
|
||||||
transaction_type_id (int): type de transaction
|
transaction_type_id (int): type de transaction
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
(int): somme totale
|
(dict): ensemble des types de transaction et somme totale
|
||||||
"""
|
"""
|
||||||
|
|
||||||
i = 0
|
i = 0
|
||||||
total_transaction = 0
|
total_transactions_value = 0
|
||||||
transactions_list = []
|
transactiontypes_info_list = []
|
||||||
transaction_type_list = TransactionType.objects.filter(
|
transactiontypes_list = TransactionType.objects.filter(
|
||||||
transaction_type=transaction_type_id, parent=None
|
transaction_type=transactiontype_id, parent=None
|
||||||
).order_by("order")
|
).order_by("order")
|
||||||
|
|
||||||
for transaction_type in transaction_type_list:
|
for transaction_type in transactiontypes_list:
|
||||||
j = 0
|
j = 0
|
||||||
|
|
||||||
sum_value = get_totalamount_sum_value(year, transaction_type)
|
sum_value = get_transactions_totalamount_sum_value(accounting_year, transaction_type)
|
||||||
total_transaction += sum_value
|
total_transactions_value += sum_value
|
||||||
transactions_list.append(
|
transactiontypes_info_list.append(
|
||||||
{
|
{
|
||||||
"label": transaction_type.label,
|
"label": transaction_type.label,
|
||||||
"category": transaction_type.category,
|
"category": transaction_type.category,
|
||||||
|
@ -106,14 +108,14 @@ def get_transaction_and_sum_sxs(year, transaction_type_id):
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
transaction_subtype = TransactionType.objects.filter(
|
transactiontype_subtype = TransactionType.objects.filter(
|
||||||
parent=transaction_type
|
parent=transaction_type
|
||||||
).order_by("order")
|
).order_by("order")
|
||||||
|
|
||||||
for subtype in transaction_subtype:
|
for subtype in transactiontype_subtype:
|
||||||
subtype_sum_value = get_totalamount_sum_value(year, subtype)
|
subtype_sum_value = get_transactions_totalamount_sum_value(accounting_year, subtype)
|
||||||
|
|
||||||
transactions_list.append(
|
transactiontypes_info_list.append(
|
||||||
{
|
{
|
||||||
"label": subtype.label,
|
"label": subtype.label,
|
||||||
"category": subtype.category,
|
"category": subtype.category,
|
||||||
|
@ -123,26 +125,27 @@ def get_transaction_and_sum_sxs(year, transaction_type_id):
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
transactions_list[i]["total_transactions_value"] += subtype_sum_value
|
transactiontypes_info_list[i]["total_transactions_value"] += subtype_sum_value
|
||||||
j += 1
|
j += 1
|
||||||
|
|
||||||
i += j + 1
|
i += j + 1
|
||||||
|
|
||||||
return {"sum": transactions_list, "total": total_transaction}
|
return {"transactiontypes_info_list": transactiontypes_info_list, "total": total_transactions_value}
|
||||||
|
|
||||||
|
|
||||||
def get_transaction_and_sum_for_spf_export(year, transaction_type_id):
|
def get_transactiontype_and_sum_for_spf_export(accounting_year, transaction_type_id):
|
||||||
"""
|
"""
|
||||||
Récupère tous les types de transactions sans parents pour une année et un type donnés. Ensuite, pour chacun d'eux elle va sélectionner toutes les
|
Récupère tous les types de transactions sans parents pour une année et un type donnés. Ensuite,
|
||||||
transactions qui sont `effectuées` et `non simulées` appartenant à ce type de transactions et
|
pour chacun d'eux elle va sélectionner toutes les transactions qui sont `effectuées` et `non
|
||||||
va ensuite additionner les montants totaux du type de transaction.
|
simulées` appartenant à ce type de transactions et va ensuite additionner les montants totaux
|
||||||
|
du type de transaction.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
year (int): année
|
year (int): année
|
||||||
transaction_type_id (int): type de transaction
|
transaction_type_id (int): type de transaction
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
(int): somme totale
|
(dict): ensemble des types de transaction et somme totale
|
||||||
"""
|
"""
|
||||||
|
|
||||||
transaction_type_info = []
|
transaction_type_info = []
|
||||||
|
@ -152,19 +155,21 @@ def get_transaction_and_sum_for_spf_export(year, transaction_type_id):
|
||||||
|
|
||||||
for transaction_type in transaction_type_list:
|
for transaction_type in transaction_type_list:
|
||||||
# Somme du père
|
# Somme du père
|
||||||
sum_value = get_totalamount_sum_value(year, transaction_type)
|
sum_value = get_transactions_totalamount_sum_value(accounting_year, transaction_type)
|
||||||
|
|
||||||
# Selection des fils
|
# Selection des fils
|
||||||
sum_value += zero_or_value(list(
|
sum_value += zero_or_value(
|
||||||
Transaction.objects.filter(
|
list(
|
||||||
registrationDate__year=year,
|
Transaction.objects.filter(
|
||||||
transaction_type__parent=transaction_type,
|
registrationDate__year=accounting_year,
|
||||||
is_simulated=False,
|
transaction_type__parent=transaction_type,
|
||||||
is_done=True,
|
is_simulated=False,
|
||||||
)
|
is_done=True,
|
||||||
.aggregate(Sum("totalAmount"))
|
)
|
||||||
.values()
|
.aggregate(Sum("totalAmount"))
|
||||||
)[0])
|
.values()
|
||||||
|
)[0]
|
||||||
|
)
|
||||||
|
|
||||||
transaction_type_info.append(
|
transaction_type_info.append(
|
||||||
[
|
[
|
||||||
|
@ -176,20 +181,22 @@ def get_transaction_and_sum_for_spf_export(year, transaction_type_id):
|
||||||
|
|
||||||
sum_total_transaction = 0
|
sum_total_transaction = 0
|
||||||
for transaction_type in transaction_type_info:
|
for transaction_type in transaction_type_info:
|
||||||
# if transaction[1] is not None:
|
|
||||||
sum_total_transaction += transaction_type[1]
|
sum_total_transaction += transaction_type[1]
|
||||||
|
|
||||||
return {"sum": transaction_type_info, "sum_total_transaction": sum_total_transaction}
|
return {
|
||||||
|
"sum": transaction_type_info,
|
||||||
|
"sum_total_transaction": sum_total_transaction,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
def get_right_engagement_and_sump_spf(year, category):
|
def get_right_engagement_and_sump_spf(accounting_year, category):
|
||||||
"""
|
"""
|
||||||
Récupère tous les types de droits et d'engagements et l'ensemble lignes correspondantes et
|
Récupère tous les types de droits et d'engagements et l'ensemble lignes correspondantes et
|
||||||
additionne les montants.
|
additionne les montants.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
year (int): année
|
year (int): année
|
||||||
category (int): ???
|
category (int): choix de la catégorie (i.e. "droits" ou "engagements")
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
(int): somme totale
|
(int): somme totale
|
||||||
|
@ -202,39 +209,45 @@ def get_right_engagement_and_sump_spf(year, category):
|
||||||
|
|
||||||
for right_engagement in right_engagement_list:
|
for right_engagement in right_engagement_list:
|
||||||
tmp = list(
|
tmp = list(
|
||||||
RightEngagement.objects.filter(registrationDate__year=year, r_e_type=right_engagement)
|
RightEngagement.objects.filter(
|
||||||
|
registrationDate__year=accounting_year, r_e_type=right_engagement
|
||||||
|
)
|
||||||
.aggregate(Sum("amount"))
|
.aggregate(Sum("amount"))
|
||||||
.values()
|
.values()
|
||||||
)[0]
|
)[0]
|
||||||
right_engagement_info.append([right_engagement.label, tmp if tmp is not None else Decimal(0.00)])
|
right_engagement_info.append(
|
||||||
|
[right_engagement.label, tmp if tmp is not None else Decimal(0.00)]
|
||||||
|
)
|
||||||
|
|
||||||
return right_engagement_info
|
return right_engagement_info
|
||||||
|
|
||||||
|
|
||||||
def get_asset_liability_and_sump_spf(year, category):
|
def get_asset_liability_and_sump_spf(accounting_year, category):
|
||||||
"""
|
"""
|
||||||
Récupère tous les types de droits et dettes. Pour chacun de ces types, va chercher
|
Récupère tous les types de droits et dettes. Pour chacun de ces types, va chercher
|
||||||
l'ensemble lignes correspondantes et sommes les montants.
|
l'ensemble lignes correspondantes et additionne les montants.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
year (int): année
|
year (int): année
|
||||||
category (int): ???
|
category (int): choix de la catégorie (i.e. "droits" ou "engagements")
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
(int): somme totale
|
(int): somme totale
|
||||||
"""
|
"""
|
||||||
|
|
||||||
asset_info = []
|
asset_liability_info = []
|
||||||
asset_liability_list = PatrimonyType.objects.filter(category=category).order_by(
|
asset_liability_list = PatrimonyType.objects.filter(category=category).order_by(
|
||||||
"order"
|
"order"
|
||||||
)
|
)
|
||||||
|
|
||||||
for line in asset_liability_list:
|
for item in asset_liability_list:
|
||||||
tmp = list(
|
tmp = list(
|
||||||
Patrimony.objects.filter(registrationDate__year=year, patrimony_type=line)
|
Patrimony.objects.filter(registrationDate__year=accounting_year, patrimony_type=item)
|
||||||
.aggregate(Sum("totalAmount"))
|
.aggregate(Sum("totalAmount"))
|
||||||
.values()
|
.values()
|
||||||
)[0]
|
)[0]
|
||||||
asset_info.append([line.label, tmp if tmp is not None else Decimal(0.00)])
|
asset_liability_info.append(
|
||||||
|
[item.label, tmp if tmp is not None else Decimal(0.00)]
|
||||||
|
)
|
||||||
|
|
||||||
return asset_info
|
return asset_liability_info
|
||||||
|
|
|
@ -53,7 +53,9 @@ class Command(BaseCommand):
|
||||||
# records_added += 1
|
# records_added += 1
|
||||||
|
|
||||||
if options["bank"] == "crelan" or options["bank"] == "keytrade":
|
if options["bank"] == "crelan" or options["bank"] == "keytrade":
|
||||||
records_added, error_list = import_csv_transaction(options["file"], options["bank"])
|
records_added, error_list = import_csv_transaction(
|
||||||
|
options["file"], options["bank"]
|
||||||
|
)
|
||||||
print("%s transactions ont été importées" % records_added)
|
print("%s transactions ont été importées" % records_added)
|
||||||
for error in error_list:
|
for error in error_list:
|
||||||
print(error)
|
print(error)
|
||||||
|
|
|
@ -305,7 +305,7 @@ class RightEngagementType(models.Model):
|
||||||
"label",
|
"label",
|
||||||
]
|
]
|
||||||
|
|
||||||
RIGHT_ENGAGEMENT_TYPE_CHOICE = (
|
CATEGORY_CHOICE = (
|
||||||
(0, "Droit"),
|
(0, "Droit"),
|
||||||
(1, "Engagement"),
|
(1, "Engagement"),
|
||||||
)
|
)
|
||||||
|
@ -321,7 +321,7 @@ class RightEngagementType(models.Model):
|
||||||
|
|
||||||
order = models.IntegerField()
|
order = models.IntegerField()
|
||||||
label = models.CharField(max_length=255)
|
label = models.CharField(max_length=255)
|
||||||
category = models.IntegerField(choices=RIGHT_ENGAGEMENT_TYPE_CHOICE)
|
category = models.IntegerField(choices=CATEGORY_CHOICE)
|
||||||
RightEngagementType_type = models.IntegerField(choices=TYPE_CHOICE)
|
RightEngagementType_type = models.IntegerField(choices=TYPE_CHOICE)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
|
|
|
@ -17,36 +17,36 @@ app_name = "annualcomptability"
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
url(r"^$", year_listing, name="year_listing"),
|
url(r"^$", year_listing, name="year_listing"),
|
||||||
url(
|
url(
|
||||||
r"^listing/(?P<year>[0-9]{4})/(?P<t_type>[A-Za-z]+)$",
|
r"^listing/(?P<accounting_year>[0-9]{4})/(?P<t_type>[A-Za-z]+)$",
|
||||||
transaction_by_year_listing,
|
transaction_by_year_listing,
|
||||||
name="by_year_bank",
|
name="by_year_bank",
|
||||||
),
|
),
|
||||||
url(
|
url(
|
||||||
r"^listing/(?P<year>[0-9]{4})/(?P<t_type>[A-Za-z]+)$",
|
r"^listing/(?P<accounting_year>[0-9]{4})/(?P<t_type>[A-Za-z]+)$",
|
||||||
transaction_by_year_listing,
|
transaction_by_year_listing,
|
||||||
name="by_year_box",
|
name="by_year_box",
|
||||||
),
|
),
|
||||||
url(
|
url(
|
||||||
r"^listing/(?P<year>[0-9]{4})/(?P<transaction_type_id>[0-9]+)$",
|
r"^listing/(?P<accounting_year>[0-9]{4})/(?P<transaction_type_id>[0-9]+)$",
|
||||||
transaction_listing_for_year_and_type,
|
transaction_listing_for_year_and_type,
|
||||||
name="transaction_listing_for_year_and_type",
|
name="transaction_listing_for_year_and_type",
|
||||||
),
|
),
|
||||||
# http://127.0.0.1:8000/comptability/annual/listing/2017/3
|
# http://127.0.0.1:8000/comptability/annual/listing/2017/3
|
||||||
url(r"^listing/(?P<year>[0-9]{4})$", transaction_by_year_listing, name="by_year"),
|
url(r"^listing/(?P<accounting_year>[0-9]{4})$", transaction_by_year_listing, name="by_year"),
|
||||||
url(
|
url(
|
||||||
r"^details/(?P<transactionid>[0-9]+)",
|
r"^details/(?P<transactionid>[0-9]+)",
|
||||||
transaction_details,
|
transaction_details,
|
||||||
name="compta_details",
|
name="compta_details",
|
||||||
),
|
),
|
||||||
url(
|
url(
|
||||||
r"^export/simple/(?P<year>[0-9]{4})$",
|
r"^export/simple/(?P<accounting_year>[0-9]{4})$",
|
||||||
export_year_spf_finance,
|
export_year_spf_finance,
|
||||||
name="export_simple",
|
name="export_simple",
|
||||||
),
|
),
|
||||||
url(
|
url(
|
||||||
r"^export/(?P<year>[0-9]{4})/(?P<export_type>\w+)$",
|
r"^export/(?P<accounting_year>[0-9]{4})/(?P<export_type>\w+)$",
|
||||||
comptability_export,
|
comptability_export,
|
||||||
name="export",
|
name="export",
|
||||||
),
|
),
|
||||||
url(r"^export/pdf/(?P<year>[0-9]{4})/", generate_pdf_for_spf, name="pdf_export"),
|
url(r"^export/pdf/(?P<accounting_year>[0-9]{4})/", generate_pdf_for_spf, name="pdf_export"),
|
||||||
]
|
]
|
||||||
|
|
|
@ -21,9 +21,9 @@ from .models import (
|
||||||
)
|
)
|
||||||
|
|
||||||
from .compta_tools import (
|
from .compta_tools import (
|
||||||
get_transaction_and_sum_for_year_and_type,
|
get_transactions_and_sums_for_year_and_type,
|
||||||
get_transaction_and_sum_sxs,
|
get_transactiontypes_and_total_amount_transactions,
|
||||||
get_transaction_and_sum_for_spf_export,
|
get_transactiontype_and_sum_for_spf_export,
|
||||||
get_right_engagement_and_sump_spf,
|
get_right_engagement_and_sump_spf,
|
||||||
get_asset_liability_and_sump_spf,
|
get_asset_liability_and_sump_spf,
|
||||||
)
|
)
|
||||||
|
@ -33,7 +33,7 @@ from comptaClub.site_config import load
|
||||||
import locale
|
import locale
|
||||||
|
|
||||||
|
|
||||||
def comptability_export(request, year, export_type):
|
def comptability_export(request, accounting_year, export_type):
|
||||||
"""
|
"""
|
||||||
Définit une fonction d'export.
|
Définit une fonction d'export.
|
||||||
|
|
||||||
|
@ -46,47 +46,51 @@ def comptability_export(request, year, export_type):
|
||||||
render_to_response sur la page HTML correspondante.
|
render_to_response sur la page HTML correspondante.
|
||||||
"""
|
"""
|
||||||
if export_type == "sxs":
|
if export_type == "sxs":
|
||||||
return export_year_sxs(request, year)
|
return export_year_sxs(request, accounting_year)
|
||||||
else:
|
else:
|
||||||
return export_year_ooo(request, year)
|
return export_year_ooo(request, accounting_year)
|
||||||
|
|
||||||
|
|
||||||
def export_year_ooo(request, year):
|
def export_year_ooo(request, accounting_year):
|
||||||
"""
|
"""
|
||||||
Affichage et calcul des `Recettes` et `Dépenses` pour une année donnée dans deux tableaux l'un au
|
Affichage et calcul des `Recettes` et `Dépenses` pour une année donnée dans deux tableaux l'un au
|
||||||
dessus de l'autre (one over other - ooo).
|
dessus de l'autre (one over other - ooo).
|
||||||
"""
|
"""
|
||||||
transactions_list_expenses = get_transaction_and_sum_for_year_and_type(year, 0)
|
transactions_list_expenses = get_transactions_and_sums_for_year_and_type(accounting_year, 0)
|
||||||
transactions_list_recettes = get_transaction_and_sum_for_year_and_type(year, 1)
|
transactions_list_recettes = get_transactions_and_sums_for_year_and_type(accounting_year, 1)
|
||||||
context = {
|
context = {
|
||||||
"compta_expenses": transactions_list_expenses,
|
"compta_expenses": transactions_list_expenses,
|
||||||
"year": year,
|
"accounting_year": accounting_year,
|
||||||
"compta_recettes": transactions_list_recettes,
|
"compta_recettes": transactions_list_recettes,
|
||||||
}
|
}
|
||||||
|
|
||||||
return render(request, "year_transaction_export_ooo.html", context)
|
return render(request, "year_transaction_export_ooo.html", context)
|
||||||
|
|
||||||
|
|
||||||
def export_year_sxs(request, year):
|
#def two_table_side_by_side_export(request, accounting_year):
|
||||||
|
def export_year_sxs(request, accounting_year):
|
||||||
"""
|
"""
|
||||||
Calcule et affiche la comptabilité d'une année passée en parametre dans un unique tableau (side
|
Calcule et affiche la comptabilité d'une année passée en parametre dans un unique tableau (side
|
||||||
by side).
|
by side).
|
||||||
"""
|
"""
|
||||||
transactions_list_expenses = get_transaction_and_sum_sxs(year, 0)
|
expenses_transactions_list = get_transactiontypes_and_total_amount_transactions(accounting_year, 0)
|
||||||
transactions_list_recettes = get_transaction_and_sum_sxs(year, 1)
|
recettes_transactions_list = get_transactiontypes_and_total_amount_transactions(accounting_year, 1)
|
||||||
|
|
||||||
transactions_list = zip_longest(transactions_list_recettes["sum"], transactions_list_expenses["sum"])
|
transactiontypes_list = zip_longest(
|
||||||
|
recettes_transactions_list["transactiontypes_info_list"],
|
||||||
|
expenses_transactions_list["transactiontypes_info_list"]
|
||||||
|
)
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
"transactions_list": transactions_list,
|
"transactiontypes_list": transactiontypes_list,
|
||||||
"year": year,
|
"accounting_year": accounting_year,
|
||||||
"total_depense": transactions_list_expenses["total"],
|
"total_expenses": expenses_transactions_list["total"],
|
||||||
"total_recette": transactions_list_recettes["total"],
|
"total_recettes": recettes_transactions_list["total"],
|
||||||
}
|
}
|
||||||
return render(request, "year_transaction_export_sxs.html", context)
|
return render(request, "year_transaction_export_sxs.html", context)
|
||||||
|
|
||||||
|
|
||||||
def export_year_spf_finance(request, year):
|
def export_year_spf_finance(request, accounting_year):
|
||||||
"""
|
"""
|
||||||
Calcule et affiche la comptabilité d'une année passée en parametre dans un unique tableau (side
|
Calcule et affiche la comptabilité d'une année passée en parametre dans un unique tableau (side
|
||||||
by side).
|
by side).
|
||||||
|
@ -94,44 +98,47 @@ def export_year_spf_finance(request, year):
|
||||||
La fonction va chercher chaque type de dépenses/recettes père (n'ayant pas de parent).
|
La fonction va chercher chaque type de dépenses/recettes père (n'ayant pas de parent).
|
||||||
Pour chacun de ces types, … <<< on fait quoi >>> ?
|
Pour chacun de ces types, … <<< on fait quoi >>> ?
|
||||||
"""
|
"""
|
||||||
annuality = Annuality.objects.filter(year__year=year)
|
annuality = Annuality.objects.filter(year__year=accounting_year)
|
||||||
|
|
||||||
# print(annuality[0].opening_balance)
|
# print(annuality[0].opening_balance)
|
||||||
|
|
||||||
transactions_list_expenses = get_transaction_and_sum_for_spf_export(year, 0)
|
transactiontypes_list_expenses = get_transactiontype_and_sum_for_spf_export(accounting_year, 0)
|
||||||
transactions_list_recettes = get_transaction_and_sum_for_spf_export(year, 1)
|
transactiontypes_list_recettes = get_transactiontype_and_sum_for_spf_export(accounting_year, 1)
|
||||||
list_sum = [
|
list_sum = [
|
||||||
x for x in zip_longest(transactions_list_recettes["sum"], transactions_list_expenses["sum"])
|
x
|
||||||
|
for x in zip_longest(
|
||||||
|
transactiontypes_list_recettes["sum"], transactiontypes_list_expenses["sum"]
|
||||||
|
)
|
||||||
]
|
]
|
||||||
|
|
||||||
# règle d'évaluation
|
# règle d'évaluation
|
||||||
rules_list = EvaluationRules.objects.filter(
|
rules_list = EvaluationRules.objects.filter(
|
||||||
Q(stop_date__year__lte=year) | Q(stop_date__isnull=True)
|
Q(stop_date__year__lte=accounting_year) | Q(stop_date__isnull=True)
|
||||||
).exclude(start_date__year__gt=year)
|
).exclude(start_date__year__gt=accounting_year)
|
||||||
|
|
||||||
rules_adaptation_list = EvaluationRulesAdaptation.objects.filter(
|
rules_adaptation_list = EvaluationRulesAdaptation.objects.filter(
|
||||||
start_date__year=year
|
start_date__year=accounting_year
|
||||||
)
|
)
|
||||||
complementary_informations = ComplementaryInformations.objects.filter(
|
complementary_informations = ComplementaryInformations.objects.filter(
|
||||||
annuality=annuality[0]
|
annuality=annuality[0]
|
||||||
)
|
)
|
||||||
|
|
||||||
liquidity = 0
|
liquidity = 0
|
||||||
assets_list = get_asset_liability_and_sump_spf(year, category=0)
|
assets_list = get_asset_liability_and_sump_spf(accounting_year, category=0)
|
||||||
for item in assets_list:
|
for item in assets_list:
|
||||||
if item[0] == "Liquidité":
|
if item[0] == "Liquidité":
|
||||||
item[1] += (
|
item[1] += (
|
||||||
annuality[0].opening_balance
|
annuality[0].opening_balance
|
||||||
+ transactions_list_recettes["sum_total_transaction"]
|
+ transactiontypes_list_recettes["sum_total_transaction"]
|
||||||
- transactions_list_expenses["sum_total_transaction"]
|
- transactiontypes_list_expenses["sum_total_transaction"]
|
||||||
)
|
)
|
||||||
liquidity = item[1]
|
liquidity = item[1]
|
||||||
|
|
||||||
liability_list = get_asset_liability_and_sump_spf(year, category=1)
|
liability_list = get_asset_liability_and_sump_spf(accounting_year, category=1)
|
||||||
asset_liability_sum = [x for x in zip_longest(assets_list, liability_list)]
|
asset_liability_sum = [x for x in zip_longest(assets_list, liability_list)]
|
||||||
|
|
||||||
right_list = get_right_engagement_and_sump_spf(year, category=0)
|
right_list = get_right_engagement_and_sump_spf(accounting_year, category=0)
|
||||||
engagement_list = get_right_engagement_and_sump_spf(year, category=1)
|
engagement_list = get_right_engagement_and_sump_spf(accounting_year, category=1)
|
||||||
# right_engagement_sum = zip_longest(right_list, engagement_list)
|
# right_engagement_sum = zip_longest(right_list, engagement_list)
|
||||||
right_engagement_sum = [x for x in zip_longest(right_list, engagement_list)]
|
right_engagement_sum = [x for x in zip_longest(right_list, engagement_list)]
|
||||||
|
|
||||||
|
@ -143,9 +150,9 @@ def export_year_spf_finance(request, year):
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
"list_sum": list_sum,
|
"list_sum": list_sum,
|
||||||
"year": year,
|
"accounting_year": accounting_year,
|
||||||
"total_depense": transactions_list_expenses["sum_total_transaction"],
|
"total_expenses": transactiontypes_list_expenses["sum_total_transaction"],
|
||||||
"total_recette": transactions_list_recettes["sum_total_transaction"],
|
"total_recette": transactiontypes_list_recettes["sum_total_transaction"],
|
||||||
"rules_list": rules_list,
|
"rules_list": rules_list,
|
||||||
"rules_adaptation_list": rules_adaptation_list,
|
"rules_adaptation_list": rules_adaptation_list,
|
||||||
"complementary_informations": complementary_informations,
|
"complementary_informations": complementary_informations,
|
||||||
|
@ -247,36 +254,37 @@ class MyDocument(object):
|
||||||
self.drawNewLine(INDENTED_X, "Siège social : " + info["SIEGE_SOCIAL"])
|
self.drawNewLine(INDENTED_X, "Siège social : " + info["SIEGE_SOCIAL"])
|
||||||
self.newline(BIG_LINE_HEIGHT)
|
self.newline(BIG_LINE_HEIGHT)
|
||||||
|
|
||||||
def title(self, year):
|
def title(self, accounting_year):
|
||||||
self.drawString(
|
self.drawString(
|
||||||
130,
|
130,
|
||||||
"Comptes simplifiés de l'exercice " + year,
|
"Comptes simplifiés de l'exercice " + accounting_year,
|
||||||
font_decoration="Bold",
|
font_decoration="Bold",
|
||||||
font_size=20,
|
font_size=20,
|
||||||
)
|
)
|
||||||
self.newline(DOUBLE_LINE_HEIGHT)
|
self.newline(DOUBLE_LINE_HEIGHT)
|
||||||
|
|
||||||
def recette_depense(self, year):
|
def recette_depense(self, accounting_year):
|
||||||
self.drawString(
|
self.drawString(
|
||||||
X, "Etat recettes/dépenses (en €)", font_decoration="Oblique", font_size=14
|
X, "Etat recettes/dépenses (en €)", font_decoration="Oblique", font_size=14
|
||||||
)
|
)
|
||||||
self.__display_table_transaction(year)
|
self.__display_table_transaction(accounting_year)
|
||||||
self.newline()
|
self.newline()
|
||||||
|
|
||||||
def __display_table_transaction(self, year):
|
def __display_table_transaction(self, accounting_year):
|
||||||
self.__display_table_header("DEPENSES", "RECETTES")
|
self.__display_table_header("DEPENSES", "RECETTES")
|
||||||
|
|
||||||
tmp_compta_depenses = get_transaction_and_sum_for_spf_export(year, 0)
|
tmp_compta_extenses = get_transactiontype_and_sum_for_spf_export(accounting_year, 0)
|
||||||
tmp_compta_recettes = get_transaction_and_sum_for_spf_export(year, 1)
|
tmp_compta_recettes = get_transactiontype_and_sum_for_spf_export(accounting_year, 1)
|
||||||
|
|
||||||
self.__display_table_transaction_body(tmp_compta_depenses, tmp_compta_recettes)
|
self.__display_table_transaction_body(tmp_compta_extenses, tmp_compta_recettes)
|
||||||
|
|
||||||
# print(tmp)
|
# print(tmp)
|
||||||
# totaldepense = self.__display_table_two_column(tmp_compta_depenses, 1)
|
# totaldepense = self.__display_table_two_column(tmp_compta_depenses, 1)
|
||||||
# totalrecette = self.__display_table_two_column(tmp_compta_recettes, 2)
|
# totalrecette = self.__display_table_two_column(tmp_compta_recettes, 2)
|
||||||
|
|
||||||
self.__display_table_footer(
|
self.__display_table_footer(
|
||||||
int(tmp_compta_depenses["sum_total_transaction"]), int(tmp_compta_recettes["sum_total_transaction"])
|
int(tmp_compta_depenses["sum_total_transaction"]),
|
||||||
|
int(tmp_compta_recettes["sum_total_transaction"]),
|
||||||
)
|
)
|
||||||
|
|
||||||
def __display_table_header(self, title_left, title_right):
|
def __display_table_header(self, title_left, title_right):
|
||||||
|
@ -357,19 +365,19 @@ class MyDocument(object):
|
||||||
str(locale.format("%d", int(value2), grouping=True)),
|
str(locale.format("%d", int(value2), grouping=True)),
|
||||||
)
|
)
|
||||||
|
|
||||||
def annexes(self, year):
|
def annexes(self, accounting_year):
|
||||||
self.drawNewLine(X, "Annexes", font_decoration="Oblique", font_size=14)
|
self.drawNewLine(X, "Annexes", font_decoration="Oblique", font_size=14)
|
||||||
self.display_evaluation_rules(year)
|
self.display_evaluation_rules(accounting_year)
|
||||||
self.display_modification_evaluation_rules(year)
|
self.display_modification_evaluation_rules(accounting_year)
|
||||||
self.display_additional_information(year)
|
self.display_additional_information(accounting_year)
|
||||||
self.display_patrimony(year)
|
self.display_patrimony(accounting_year)
|
||||||
self.display_right_engagement(year)
|
self.display_right_engagement(accounting_year)
|
||||||
|
|
||||||
def display_evaluation_rules(self, year):
|
def display_evaluation_rules(self, accounting_year):
|
||||||
self.drawNewLine(X, "1. Résumé des règles d'évaluation")
|
self.drawNewLine(X, "1. Résumé des règles d'évaluation")
|
||||||
rules_list = EvaluationRules.objects.filter(
|
rules_list = EvaluationRules.objects.filter(
|
||||||
Q(stop_date__year__lte=year) | Q(stop_date__isnull=True)
|
Q(stop_date__year__lte=accounting_year) | Q(stop_date__isnull=True)
|
||||||
).exclude(start_date__year__gt=year)
|
).exclude(start_date__year__gt=accounting_year)
|
||||||
if rules_list:
|
if rules_list:
|
||||||
for rule in rules_list:
|
for rule in rules_list:
|
||||||
self.drawNewLine(
|
self.drawNewLine(
|
||||||
|
@ -383,10 +391,10 @@ class MyDocument(object):
|
||||||
)
|
)
|
||||||
self.newline()
|
self.newline()
|
||||||
|
|
||||||
def display_modification_evaluation_rules(self, year):
|
def display_modification_evaluation_rules(self, accounting_year):
|
||||||
self.drawNewLine(X, "2. Adaptation des règles d'évaluation")
|
self.drawNewLine(X, "2. Adaptation des règles d'évaluation")
|
||||||
rules_adaptation_list = EvaluationRulesAdaptation.objects.filter(
|
rules_adaptation_list = EvaluationRulesAdaptation.objects.filter(
|
||||||
start_date__year=year
|
start_date__year=accounting_year
|
||||||
)
|
)
|
||||||
if rules_adaptation_list:
|
if rules_adaptation_list:
|
||||||
for line in rules_adaptation_list:
|
for line in rules_adaptation_list:
|
||||||
|
@ -403,9 +411,9 @@ class MyDocument(object):
|
||||||
)
|
)
|
||||||
self.newline()
|
self.newline()
|
||||||
|
|
||||||
def display_additional_information(self, year):
|
def display_additional_information(self, accounting_year):
|
||||||
self.drawNewLine(X, "3. Informations complémentaires")
|
self.drawNewLine(X, "3. Informations complémentaires")
|
||||||
annuality = Annuality.objects.filter(year__year=year)
|
annuality = Annuality.objects.filter(year__year=accounting_year)
|
||||||
complementary_informations = ComplementaryInformations.objects.filter(
|
complementary_informations = ComplementaryInformations.objects.filter(
|
||||||
annuality=annuality[0]
|
annuality=annuality[0]
|
||||||
)
|
)
|
||||||
|
@ -424,23 +432,23 @@ class MyDocument(object):
|
||||||
)
|
)
|
||||||
self.newline()
|
self.newline()
|
||||||
|
|
||||||
def display_patrimony(self, year):
|
def display_patrimony(self, accounting_year):
|
||||||
self.drawNewLine(X, "4. Etat du patrimoine")
|
self.drawNewLine(X, "4. Etat du patrimoine")
|
||||||
|
|
||||||
annuality = Annuality.objects.filter(year__year=year)
|
annuality = Annuality.objects.filter(year__year=accounting_year)
|
||||||
tmp_compta_depenses = get_transaction_and_sum_for_spf_export(year, 0)
|
tmp_compta_extenses = get_transactiontype_and_sum_for_spf_export(accounting_year, 0)
|
||||||
tmp_compta_recettes = get_transaction_and_sum_for_spf_export(year, 1)
|
tmp_compta_recettes = get_transactiontype_and_sum_for_spf_export(accounting_year, 1)
|
||||||
|
|
||||||
assets_list = get_asset_liability_and_sump_spf(year, category=0)
|
assets_list = get_asset_liability_and_sump_spf(accounting_year, category=0)
|
||||||
for item in assets_list:
|
for item in assets_list:
|
||||||
if item[0] == "Liquidité":
|
if item[0] == "Liquidité":
|
||||||
item[1] += (
|
item[1] += (
|
||||||
annuality[0].opening_balance
|
annuality[0].opening_balance
|
||||||
+ tmp_compta_recettes["sum_total_transaction"]
|
+ tmp_compta_recettes["sum_total_transaction"]
|
||||||
- tmp_compta_depenses["sum_total_transaction"]
|
- tmp_compta_extenses["sum_total_transaction"]
|
||||||
)
|
)
|
||||||
|
|
||||||
liability_list = get_asset_liability_and_sump_spf(year, category=1)
|
liability_list = get_asset_liability_and_sump_spf(accounting_year, category=1)
|
||||||
|
|
||||||
self.__display_table_header("AVOIRS", "DETTES")
|
self.__display_table_header("AVOIRS", "DETTES")
|
||||||
save = self.y
|
save = self.y
|
||||||
|
@ -485,7 +493,7 @@ class MyDocument(object):
|
||||||
|
|
||||||
return total
|
return total
|
||||||
|
|
||||||
def display_right_engagement(self, year):
|
def display_right_engagement(self, accounting_year):
|
||||||
self.drawNewLine(
|
self.drawNewLine(
|
||||||
X,
|
X,
|
||||||
"5. Droits et engagements importants qui ne sont pas susceptibles d'être quantifiés",
|
"5. Droits et engagements importants qui ne sont pas susceptibles d'être quantifiés",
|
||||||
|
@ -510,27 +518,27 @@ class MyDocument(object):
|
||||||
# document.rect(startx, y-5, 525, 15, fill=0)
|
# document.rect(startx, y-5, 525, 15, fill=0)
|
||||||
|
|
||||||
|
|
||||||
def generate_pdf_for_spf(request, year):
|
def generate_pdf_for_spf(request, accounting_year):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
# Create the HttpResponse object with the appropriate PDF headers.
|
# Create the HttpResponse object with the appropriate PDF headers.
|
||||||
response = HttpResponse(content_type="application/pdf")
|
response = HttpResponse(content_type="application/pdf")
|
||||||
response["Content-Disposition"] = (
|
response["Content-Disposition"] = (
|
||||||
'attachment; filename="comptes_simplifies_annuels_' + year + '.pdf"'
|
'attachment; filename="comptes_simplifies_annuels_' + accounting_year + '.pdf"'
|
||||||
)
|
)
|
||||||
document = MyDocument(response)
|
document = MyDocument(response)
|
||||||
info = load(request)
|
info = load(request)
|
||||||
|
|
||||||
document.header(info)
|
document.header(info)
|
||||||
document.title(year)
|
document.title(accounting_year)
|
||||||
document.recette_depense(year)
|
document.recette_depense(accounting_year)
|
||||||
document.annexes(year)
|
document.annexes(accounting_year)
|
||||||
document.download()
|
document.download()
|
||||||
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
def transaction_by_type(request, year, transaction_type_id):
|
def transaction_by_type(request, accounting_year, transaction_type_id):
|
||||||
"""
|
"""
|
||||||
Liste toutes les lignes de comptabilité pour une année recue en paramètre
|
Liste toutes les lignes de comptabilité pour une année recue en paramètre
|
||||||
"""
|
"""
|
||||||
|
@ -623,7 +631,7 @@ def transaction_by_type(request, year, transaction_type_id):
|
||||||
# return render(request, 'year_transaction_listing.html', context)
|
# return render(request, 'year_transaction_listing.html', context)
|
||||||
|
|
||||||
|
|
||||||
def transaction_by_year_listing(request, year, t_type=None):
|
def transaction_by_year_listing(request, accounting_year, t_type=None):
|
||||||
"""
|
"""
|
||||||
Liste toutes les lignes de comptabilité pour une année recue en paramètre
|
Liste toutes les lignes de comptabilité pour une année recue en paramètre
|
||||||
"""
|
"""
|
||||||
|
@ -632,7 +640,7 @@ def transaction_by_year_listing(request, year, t_type=None):
|
||||||
if t_type == "bank":
|
if t_type == "bank":
|
||||||
t_type = "Banque"
|
t_type = "Banque"
|
||||||
transaction_list = transaction_list = (
|
transaction_list = transaction_list = (
|
||||||
Transaction.objects.filter(registrationDate__year=year)
|
Transaction.objects.filter(registrationDate__year=accounting_year)
|
||||||
.filter(bkAmount__isnull=False)
|
.filter(bkAmount__isnull=False)
|
||||||
.exclude(bkAmount=0)
|
.exclude(bkAmount=0)
|
||||||
.exclude(is_simulated=True)
|
.exclude(is_simulated=True)
|
||||||
|
@ -641,7 +649,7 @@ def transaction_by_year_listing(request, year, t_type=None):
|
||||||
elif t_type == "box":
|
elif t_type == "box":
|
||||||
t_type = "Caisse"
|
t_type = "Caisse"
|
||||||
transaction_list = transaction_list = (
|
transaction_list = transaction_list = (
|
||||||
Transaction.objects.filter(registrationDate__year=year)
|
Transaction.objects.filter(registrationDate__year=accounting_year)
|
||||||
.filter(bxAmount__isnull=False)
|
.filter(bxAmount__isnull=False)
|
||||||
.exclude(bxAmount=0)
|
.exclude(bxAmount=0)
|
||||||
.exclude(is_simulated=True)
|
.exclude(is_simulated=True)
|
||||||
|
@ -650,7 +658,7 @@ def transaction_by_year_listing(request, year, t_type=None):
|
||||||
else:
|
else:
|
||||||
t_type = "Tous"
|
t_type = "Tous"
|
||||||
transaction_list = Transaction.objects.filter(
|
transaction_list = Transaction.objects.filter(
|
||||||
registrationDate__year=year
|
registrationDate__year=accounting_year
|
||||||
).order_by("registrationDate")
|
).order_by("registrationDate")
|
||||||
|
|
||||||
# pour mon dictionnaire date/total
|
# pour mon dictionnaire date/total
|
||||||
|
@ -659,8 +667,8 @@ def transaction_by_year_listing(request, year, t_type=None):
|
||||||
|
|
||||||
tmp_Total = 0
|
tmp_Total = 0
|
||||||
tmp_Amount = 0
|
tmp_Amount = 0
|
||||||
sumdepense = 0
|
sum_extense = 0
|
||||||
sumdepense_simulated = 0
|
sum_extense_simulated = 0
|
||||||
sumrecette = 0
|
sumrecette = 0
|
||||||
sumrecette_simulated = 0
|
sumrecette_simulated = 0
|
||||||
transaction_list_and_sum = []
|
transaction_list_and_sum = []
|
||||||
|
@ -674,9 +682,9 @@ def transaction_by_year_listing(request, year, t_type=None):
|
||||||
# on ajoute le signe ("+" ou "-") afin de pouvoir l'utiliser dans des calculs après.
|
# on ajoute le signe ("+" ou "-") afin de pouvoir l'utiliser dans des calculs après.
|
||||||
tmp_Amount = transaction.totalAmount
|
tmp_Amount = transaction.totalAmount
|
||||||
if transaction.transaction_type.transaction_type == 0:
|
if transaction.transaction_type.transaction_type == 0:
|
||||||
sumdepense_simulated += tmp_Amount
|
sum_extense_simulated += tmp_Amount
|
||||||
if transaction.is_simulated is not None and transaction.is_simulated == 0:
|
if transaction.is_simulated is not None and transaction.is_simulated == 0:
|
||||||
sumdepense += tmp_Amount
|
sum_extense += tmp_Amount
|
||||||
tmp_Amount = -tmp_Amount
|
tmp_Amount = -tmp_Amount
|
||||||
else:
|
else:
|
||||||
sumrecette_simulated += tmp_Amount
|
sumrecette_simulated += tmp_Amount
|
||||||
|
@ -703,16 +711,16 @@ def transaction_by_year_listing(request, year, t_type=None):
|
||||||
|
|
||||||
previous_date = transaction.registrationDate.date()
|
previous_date = transaction.registrationDate.date()
|
||||||
|
|
||||||
total = sumrecette - sumdepense
|
total = sumrecette - sum_extense
|
||||||
total_simulated = sumrecette_simulated - sumdepense_simulated
|
total_simulated = sumrecette_simulated - sum_extense_simulated
|
||||||
|
|
||||||
nb_transaction = transaction_list.count()
|
nb_transaction = transaction_list.count()
|
||||||
context = {
|
context = {
|
||||||
"transaction_list": transaction_list_and_sum,
|
"transaction_list": transaction_list_and_sum,
|
||||||
"year": year,
|
"accounting_year": accounting_year,
|
||||||
"totaldepense": sumdepense,
|
"totaldepense": sum_extense,
|
||||||
"totalrecette": sumrecette,
|
"totalrecette": sumrecette,
|
||||||
"totaldepense_simulated": sumdepense_simulated,
|
"totaldepense_simulated": sum_extense_simulated,
|
||||||
"totalrecette_simulated": sumrecette_simulated,
|
"totalrecette_simulated": sumrecette_simulated,
|
||||||
"total": total,
|
"total": total,
|
||||||
"total_simulated": total_simulated,
|
"total_simulated": total_simulated,
|
||||||
|
@ -742,13 +750,13 @@ def year_listing(request):
|
||||||
return render(request, "year_listing.html", context)
|
return render(request, "year_listing.html", context)
|
||||||
|
|
||||||
|
|
||||||
def transaction_listing_for_year_and_type(request, year, transaction_type_id):
|
def transaction_listing_for_year_and_type(request, accounting_year, transaction_type_id):
|
||||||
"""
|
"""
|
||||||
Liste toutes les transactions d'un `type de transaction` et pour une année (passés en paramètre).
|
Liste toutes les transactions d'un `type de transaction` et pour une année (passés en paramètre).
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
request (???):
|
request (???):
|
||||||
year (int): année
|
accounting_year (int): année
|
||||||
transaction_type_id (int): id d'un type de transaction
|
transaction_type_id (int): id d'un type de transaction
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
|
@ -756,9 +764,10 @@ def transaction_listing_for_year_and_type(request, year, transaction_type_id):
|
||||||
"""
|
"""
|
||||||
transaction_type = TransactionType.objects.get(pk=transaction_type_id)
|
transaction_type = TransactionType.objects.get(pk=transaction_type_id)
|
||||||
|
|
||||||
by_year_condition = Q(registrationDate__year=year)
|
by_year_condition = Q(registrationDate__year=accounting_year)
|
||||||
by_type_condition = Q(transaction_type=transaction_type_id)
|
by_type_condition = Q(transaction_type=transaction_type_id)
|
||||||
by_parent_type_condition = Q(transaction_type__parent=transaction_type_id)
|
by_parent_type_condition = Q(transaction_type__parent=transaction_type_id)
|
||||||
|
|
||||||
transaction_list = Transaction.objects.filter(
|
transaction_list = Transaction.objects.filter(
|
||||||
by_year_condition & (by_type_condition | by_parent_type_condition)
|
by_year_condition & (by_type_condition | by_parent_type_condition)
|
||||||
).order_by("registrationDate")
|
).order_by("registrationDate")
|
||||||
|
@ -773,16 +782,10 @@ def transaction_listing_for_year_and_type(request, year, transaction_type_id):
|
||||||
|
|
||||||
transaction_list_and_sum.append((transaction, total))
|
transaction_list_and_sum.append((transaction, total))
|
||||||
|
|
||||||
# nb_transaction = transaction_list.count()
|
|
||||||
# context = {'transaction_list': transaction_list_and_sum,
|
|
||||||
# 'transaction_type': str(transaction_type),
|
|
||||||
# 'nb_transaction': nb_transaction,
|
|
||||||
# 'year': year,
|
|
||||||
# 'total_simulated': total_simulated, 'total': total}
|
|
||||||
context = {
|
context = {
|
||||||
"transaction_list": transaction_list_and_sum,
|
"transaction_list": transaction_list_and_sum,
|
||||||
"transaction_type": str(transaction_type),
|
"transaction_type": str(transaction_type),
|
||||||
"year": year,
|
"accounting_year": accounting_year,
|
||||||
"total_simulated": total_simulated,
|
"total_simulated": total_simulated,
|
||||||
"total": total,
|
"total": total,
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div id="frame2">
|
<div id="frame2">
|
||||||
<div id="content"> -->
|
<div id="content"> -->
|
||||||
<font size="5"><b><u>Comptabilité {{ year }}</b></u></font>
|
<font size="5"><b><u>Comptabilité {{ accounting_year }}</b></u></font>
|
||||||
<br />
|
<br />
|
||||||
<br />
|
<br />
|
||||||
<table class="table table-striped table-bordered table-condensed sort sortable-onload-5-6r rowstyle-alt colstyle-alt" id="comptaTable">
|
<table class="table table-striped table-bordered table-condensed sort sortable-onload-5-6r rowstyle-alt colstyle-alt" id="comptaTable">
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block page_title %}{{ event }} {{ year }}{% endblock %}
|
{% block page_title %}{{ event }} {{ accounting_year }}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block page_title %}Comptabilité {{ year }} - {{t_type}}{% endblock %}
|
{% block page_title %}Comptabilité {{ accounting_year }} - {{t_type}}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
@ -10,11 +10,11 @@
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
|
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
|
||||||
<h1>{{ transaction_type }} <small>({{ year }})</small></h1>
|
<h1>{{ transaction_type }} <small>({{ accounting_year }})</small></h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
|
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
|
||||||
<p align="right" class="noprint">
|
<p align="right" class="noprint">
|
||||||
<a href="{% url 'annualcomptability:export' year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export' year 'ooo' %}">2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' year %}">Export SPF</a>
|
<a href="{% url 'annualcomptability:export' accounting_year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export' accounting_year 'ooo' %}">2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' accounting_year %}">Export SPF</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -20,13 +20,13 @@
|
||||||
<th class="centered" colspan="2">Suivi</th>
|
<th class="centered" colspan="2">Suivi</th>
|
||||||
<th class="centered">Export SPF Finance</th>
|
<th class="centered">Export SPF Finance</th>
|
||||||
</thead>
|
</thead>
|
||||||
{% for year in year_list %}
|
{% for accounting_year in year_list %}
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="{% url 'annualcomptability:by_year' year.0 %}">{{ year.0 }}</a></td>
|
<td><a href="{% url 'annualcomptability:by_year' accounting_year.0 %}">{{ accounting_year.0 }}</a></td>
|
||||||
<td class="push-right">{{ year.1 }}</td>
|
<td class="push-right">{{ accounting_year.1 }}</td>
|
||||||
<td class="centered"><a href="{% url 'annualcomptability:by_year_bank' year.0 'bank' %}">Bancaire</a></td>
|
<td class="centered"><a href="{% url 'annualcomptability:by_year_bank' accounting_year.0 'bank' %}">Bancaire</a></td>
|
||||||
<td class="centered"><a href="{% url 'annualcomptability:by_year_box' year.0 'box' %}">Caisse</a></td>
|
<td class="centered"><a href="{% url 'annualcomptability:by_year_box' accounting_year.0 'box' %}">Caisse</a></td>
|
||||||
<td class="centered"><a href="{% url 'annualcomptability:export_simple' year.0 %}">export</a></td>
|
<td class="centered"><a href="{% url 'annualcomptability:export_simple' accounting_year.0 %}">export</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
{% load tables %}
|
{% load tables %}
|
||||||
|
|
||||||
{% block page_title %}Comptabilité de l'année {{ year }}{% endblock %}
|
{% block page_title %}Comptabilité de l'année {{ accounting_year }}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
@ -12,11 +12,11 @@
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||||
<h3>Dépenses {{ year }}</h3>
|
<h3>Dépenses {{ accounting_year }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||||
<p align="right" class="noprint">
|
<p align="right" class="noprint">
|
||||||
<a href="{% url 'annualcomptability:by_year' year %}">Listing</a> | <a href="{% url 'annualcomptability:export' year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export_simple' year %}">Export SPF</a>
|
<a href="{% url 'annualcomptability:by_year' accounting_year %}">Listing</a> | <a href="{% url 'annualcomptability:export' accounting_year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export_simple' accounting_year %}">Export SPF</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -25,14 +25,14 @@
|
||||||
{% display_table compta_depenses %}
|
{% display_table compta_depenses %}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
||||||
<h3>Recettes {{ year }}</h3>
|
<h3>Recettes {{ accounting_year }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
||||||
{% display_table compta_recettes %}
|
{% display_table compta_recettes %}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
||||||
<p align="center" class="noprint">
|
<p align="center" class="noprint">
|
||||||
<a href="{% url 'annualcomptability:by_year' year %}">Listing</a> | <a href="{% url 'annualcomptability:export' year 'sxs' %}">Affichage 1 tableau</a>
|
<a href="{% url 'annualcomptability:by_year' accounting_year %}">Listing</a> | <a href="{% url 'annualcomptability:export' accounting_year 'sxs' %}">Affichage 1 tableau</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
{% load humanize %}
|
{% load humanize %}
|
||||||
{% load intdot %}
|
{% load intdot %}
|
||||||
|
|
||||||
{% block page_title %}Comptabilité {{ year }}{% endblock %}
|
{% block page_title %}Comptabilité {{ accounting_year }}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
@ -12,11 +12,11 @@
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
|
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
|
||||||
<h2>Comptes simplifiés de l'exercice {{ year }}</h2>
|
<h2>Comptes simplifiés de l'exercice {{ accounting_year }}</h2>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
|
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
|
||||||
<p align="right" class="noprint">
|
<p align="right" class="noprint">
|
||||||
<a href="{% url 'annualcomptability:by_year' year %}">Listing</a> | <a href="{% url 'annualcomptability:export' year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export' year 'ooo' %}">2 tableaux</a>
|
<a href="{% url 'annualcomptability:by_year' accounting_year %}">Listing</a> | <a href="{% url 'annualcomptability:export' accounting_year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export' accounting_year 'ooo' %}">2 tableaux</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -50,7 +50,7 @@
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<tr>
|
<tr>
|
||||||
<td class="push-right"><b>Total des dépenses</b></td>
|
<td class="push-right"><b>Total des dépenses</b></td>
|
||||||
<td class="push-right"><b>{{ total_depense|floatformat:0|intdot }}</b></td>
|
<td class="push-right"><b>{{ total_expenses|floatformat:0|intdot }}</b></td>
|
||||||
<td class="push-right"><b>Total des recettes</b></td>
|
<td class="push-right"><b>Total des recettes</b></td>
|
||||||
<td class="push-right"><b>{{ total_recette|floatformat:0|intdot }}</b></td>
|
<td class="push-right"><b>{{ total_recette|floatformat:0|intdot }}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -155,7 +155,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="span12">
|
<div class="span12">
|
||||||
<p class="right"><a href="{% url 'annualcomptability:pdf_export' year %}" class="btn btn-default btn-primary" role="button">Comptes PDF</a></p>
|
<p class="right"><a href="{% url 'annualcomptability:pdf_export' accounting_year %}" class="btn btn-default btn-primary" role="button">Comptes PDF</a></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
{% load humanize %}
|
{% load humanize %}
|
||||||
{% load intdot %}
|
{% load intdot %}
|
||||||
|
|
||||||
{% block page_title %}Comptabilité {{ year }}{% endblock %}
|
{% block page_title %}Comptabilité {{ accounting_year }}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
@ -13,11 +13,11 @@
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||||
<h3>Comptabilité {{ year }}</h3>
|
<h3>Comptabilité {{ accounting_year }}</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
<div class="col-xs-12 col-sm-12 col-md-6 col-lg-6">
|
||||||
<p align="right" class="noprint">
|
<p align="right" class="noprint">
|
||||||
<a href="{% url 'annualcomptability:by_year' year %}">Listing</a> | <a href="{% url 'annualcomptability:export' year 'ooo' %}">2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' year %}">Export SPF</a>
|
<a href="{% url 'annualcomptability:by_year' accounting_year %}">Listing</a> | <a href="{% url 'annualcomptability:export' accounting_year 'ooo' %}">2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' accounting_year %}">Export SPF</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -36,57 +36,57 @@
|
||||||
<th class="col-md-2 centered" colspan="2">Montants</th>
|
<th class="col-md-2 centered" colspan="2">Montants</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
{% for line in transactions_list %}
|
{% for transactiontype in transactiontypes_list %}
|
||||||
<tr {% if line.1.2 %} class="noprint" {% endif %}>
|
<tr {% if transactiontype.1.2 %} class="noprint" {% endif %}>
|
||||||
|
|
||||||
<!-- FIRST COLUMN -->
|
<!-- FIRST COLUMN -->
|
||||||
<td>
|
<td>
|
||||||
{% if line.1.2 %}
|
{% if transactiontype.1.2 %}
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<b>
|
<b>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<a href="{% url 'annualcomptability:transaction_listing_for_year_and_type' year line.1.4 %}">{{ line.1.0 }}</a>
|
<a href="{% url 'annualcomptability:transaction_listing_for_year_and_type' accounting_year transactiontype.1.id %}">{{ transactiontype.1.0 }}</a>
|
||||||
{% if line.1.2 == None %}
|
{% if transactiontype.1.2 == None %}
|
||||||
</b>
|
</b>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
{% if line.1.2 %}
|
{% if transactiontype.1.2 %}
|
||||||
<td class="col-md-1 push-right">
|
<td class="col-md-1 push-right">
|
||||||
{% if line.1.0 %}{% if line.1.3 == None %}0,00{% else %}{{ line.1.3|floatformat:2|intdot }}{% endif %}{% endif %}
|
{% if transactiontype.1.0 %}{% if transactiontype.1.3 == None %}0,00{% else %}{{ transactiontype.1.3|floatformat:2|intdot }}{% endif %}{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td class="col-md-1"></td>
|
<td class="col-md-1"></td>
|
||||||
{% else %}
|
{% else %}
|
||||||
<td></td>
|
<td></td>
|
||||||
<td class="push-right">
|
<td class="push-right">
|
||||||
{% if line.1.3 == None %}0,00{% else %}{{ line.1.3|floatformat:2|intdot }}{% endif %}
|
{% if transactiontype.1.3 == None %}0,00{% else %}{{ transactiontype.1.3|floatformat:2|intdot }}{% endif %}
|
||||||
</td>
|
</td>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<!-- SECOND COLUMN -->
|
<!-- SECOND COLUMN -->
|
||||||
<td>
|
<td>
|
||||||
{% if line.0.4 %}
|
{% if transactiontype.0.4 %}
|
||||||
{% if line.0.2 %}
|
{% if transactiontype.0.2 %}
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<b>
|
<b>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<a href="{% url 'annualcomptability:transaction_listing_for_year_and_type' year line.0.4 %}">{{ line.0.0 }}</a>
|
<a href="{% url 'annualcomptability:transaction_listing_for_year_and_type' accounting_year transactiontype.0.4 %}">{{ transactiontype.0.0 }}</a>
|
||||||
{% if line.0.2 == None %}
|
{% if transactiontype.0.2 == None %}
|
||||||
</b>
|
</b>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
{% if line.0.2 %}
|
{% if transactiontype.0.2 %}
|
||||||
<td class="col-md-1 push-right">
|
<td class="col-md-1 push-right">
|
||||||
{% if line.0.0 %}{% if line.0.3 == None %}0,00{% else %}{{ line.0.3|floatformat:2|intdot }}{% endif %}{% endif %}
|
{% if transactiontype.0.0 %}{% if transactiontype.0.3 == None %}0,00{% else %}{{ transactiontype.0.3|floatformat:2|intdot }}{% endif %}{% endif %}
|
||||||
</td>
|
</td>
|
||||||
<td class="col-md-1"></td>
|
<td class="col-md-1"></td>
|
||||||
{% else %}
|
{% else %}
|
||||||
<td></td>
|
<td></td>
|
||||||
<td class="push-right">
|
<td class="push-right">
|
||||||
{% if line.0.0 %}{% if line.0.3 == None %}0,00{% else %}{{ line.0.3|floatformat:2|intdot }}{% endif %}{% endif %}
|
{% if transactiontype.0.0 %}{% if transactiontype.0.3 == None %}0,00{% else %}{{ transactiontype.0.3|floatformat:2|intdot }}{% endif %}{% endif %}
|
||||||
</td>
|
</td>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -101,7 +101,7 @@
|
||||||
</tfoot>
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
<p align="center" class="noprint"><a href="{% url 'annualcomptability:by_year' year %}">Listing</a> | <a href="{% url 'annualcomptability:export' year 'ooo' %}">Affichage 2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' year %}">Affichage 1 tableaux simplifié</a></p>
|
<p align="center" class="noprint"><a href="{% url 'annualcomptability:by_year' accounting_year %}">Listing</a> | <a href="{% url 'annualcomptability:export' accounting_year 'ooo' %}">Affichage 2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' accounting_year %}">Affichage 1 tableaux simplifié</a></p>
|
||||||
<br>
|
<br>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block page_title %}Comptabilité {{ year }} - {{t_type}}{% endblock %}
|
{% block page_title %}Comptabilité {{ accounting_year }} - {{t_type}}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
|
@ -10,11 +10,11 @@
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
|
<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
|
||||||
<h1>Année {{ year }} <small>({% if t_type %}{{t_type}} uniquement - {% endif %}{{ nb_transaction }} transactions)</small></h1>
|
<h1>Année {{ accounting_year }} <small>({% if t_type %}{{t_type}} uniquement - {% endif %}{{ nb_transaction }} transactions)</small></h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
|
<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
|
||||||
<p align="right" class="noprint">
|
<p align="right" class="noprint">
|
||||||
<a href="{% url 'annualcomptability:export' year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export' year 'ooo' %}">2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' year %}">Export SPF</a>
|
<a href="{% url 'annualcomptability:export' accounting_year 'sxs' %}">1 tableau</a> | <a href="{% url 'annualcomptability:export' accounting_year 'ooo' %}">2 tableaux</a> | <a href="{% url 'annualcomptability:export_simple' accounting_year %}">Export SPF</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -115,7 +115,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
title: {
|
title: {
|
||||||
text: 'Année {{ year }} : évolution financière'
|
text: 'Année {{ accounting_year }} : évolution financière'
|
||||||
},
|
},
|
||||||
|
|
||||||
// subtitle: {
|
// subtitle: {
|
||||||
|
|
|
@ -356,4 +356,3 @@ def test_update_transaction_dict():
|
||||||
transaction_dict["description"] = None
|
transaction_dict["description"] = None
|
||||||
result = update_transaction_dict(transaction_dict)
|
result = update_transaction_dict(transaction_dict)
|
||||||
assert result == transaction_dict
|
assert result == transaction_dict
|
||||||
|
|
|
@ -18,10 +18,15 @@ def test_transaction_str():
|
||||||
def test_transaction_total_amount():
|
def test_transaction_total_amount():
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
transaction_type = TransactionType(label="", category=0, order=0, transaction_type=1)
|
transaction_type = TransactionType(
|
||||||
new_transaction = Transaction(bkAmount=50, bxAmount=50, transaction_type=transaction_type)
|
label="", category=0, order=0, transaction_type=1
|
||||||
|
)
|
||||||
|
new_transaction = Transaction(
|
||||||
|
bkAmount=50, bxAmount=50, transaction_type=transaction_type
|
||||||
|
)
|
||||||
assert 100 == new_transaction.total_amount
|
assert 100 == new_transaction.total_amount
|
||||||
|
|
||||||
|
|
||||||
# class TestModelTransaction(TestCase):
|
# class TestModelTransaction(TestCase):
|
||||||
# """Tests relatifs à la classe `BaseTransaction`."""
|
# """Tests relatifs à la classe `BaseTransaction`."""
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,4 @@
|
||||||
from comptabilite.utils import (
|
from comptabilite.utils import zero_or_value
|
||||||
zero_or_value
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def test_zero_or_value():
|
def test_zero_or_value():
|
||||||
|
|
Loading…
Reference in New Issue