forked from DGNum/gestioCOF
Gestion des commandes K-Psul donnant un négatif
* Settings - New: OVERDRAFT_AMOUNT Découvert autorisé par défaut - New: OVERDRAFT_DURATION Durée maximum d'un découvert par défaut * K-Psul : Gestion des commandes aboutissant à un négatif - Si une commande aboutit à un nouveau solde négatif, demande la permission 'kfet.perform_negative_operations' - Si le total de la commande est négatif, vérifie que ni la contrainte de temps de découvert, ni celle de montant maximum n'est outrepassée. Si ce n'est pas le cas, la commande ne peut être enregistrée jusqu'à définir des "règles de négatif" pour le compte concerné. La durée maximum d'un découvert est celle dans AccountNegative si elle y est définie pour le compte concerné, sinon celle par défaut (Settings.OVERDRAFT_DURATION). Il en est de même pour le découvert maximum autorisé. Attention: le découvert doit être exprimé sous forme de valeur positive aussi bien dans AccountNegative que pour Settings.OVERDRAFT_AMOUNT. - Si les permissions nécessaires sont présentes, qu'il n'y a pas de blocage et que le compte n'a pas encore d'entrée dans AccountNegative, création d'une entrée avec start=now() - Si la balance d'un compte est positive après une commande, supprime l'entrée dans AccountNegative associée au compte si le "décalage de zéro" (donné par balance_offset) est nul. Sinon cela veut dire que le compte n'est pas réellement en positif. * Modèles - Fix: Account.save() fonctionne dans le cas où data est vide - Modif: AccountNegative - Valeurs par défaut, NULL...
This commit is contained in:
parent
897986fec8
commit
510e16eecf
7 changed files with 183 additions and 22 deletions
20
kfet/migrations/0020_auto_20160808_0450.py
Normal file
20
kfet/migrations/0020_auto_20160808_0450.py
Normal file
|
@ -0,0 +1,20 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
import datetime
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('kfet', '0019_auto_20160808_0343'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='accountnegative',
|
||||
name='start',
|
||||
field=models.DateTimeField(default=datetime.datetime.now, blank=True, null=True),
|
||||
),
|
||||
]
|
19
kfet/migrations/0021_auto_20160808_0506.py
Normal file
19
kfet/migrations/0021_auto_20160808_0506.py
Normal file
|
@ -0,0 +1,19 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('kfet', '0020_auto_20160808_0450'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='accountnegative',
|
||||
name='start',
|
||||
field=models.DateTimeField(default=None, blank=True, null=True),
|
||||
),
|
||||
]
|
24
kfet/migrations/0022_auto_20160808_0512.py
Normal file
24
kfet/migrations/0022_auto_20160808_0512.py
Normal file
|
@ -0,0 +1,24 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('kfet', '0021_auto_20160808_0506'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='accountnegative',
|
||||
name='authorized_overdraft',
|
||||
field=models.DecimalField(blank=True, decimal_places=2, null=True, default=None, max_digits=6),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='accountnegative',
|
||||
name='balance_offset',
|
||||
field=models.DecimalField(blank=True, decimal_places=2, null=True, default=None, max_digits=6),
|
||||
),
|
||||
]
|
24
kfet/migrations/0023_auto_20160808_0535.py
Normal file
24
kfet/migrations/0023_auto_20160808_0535.py
Normal file
|
@ -0,0 +1,24 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('kfet', '0022_auto_20160808_0512'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameField(
|
||||
model_name='accountnegative',
|
||||
old_name='authorized_overdraft',
|
||||
new_name='authz_overdraft_amount',
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='accountnegative',
|
||||
name='authz_overdraft_until',
|
||||
field=models.DateTimeField(null=True, default=None, blank=True),
|
||||
),
|
||||
]
|
19
kfet/migrations/0024_settings_value_duration.py
Normal file
19
kfet/migrations/0024_settings_value_duration.py
Normal file
|
@ -0,0 +1,19 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('kfet', '0023_auto_20160808_0535'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='settings',
|
||||
name='value_duration',
|
||||
field=models.DurationField(null=True, default=None, blank=True),
|
||||
),
|
||||
]
|
Loading…
Add table
Add a link
Reference in a new issue