mirror of https://github.com/nanoy42/coope
9 changed files with 617 additions and 60 deletions
@ -0,0 +1,165 @@ |
|||
# Generated by Django 2.1 on 2019-02-27 07:59 |
|||
|
|||
from django.conf import settings |
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('gestion', '0005_auto_20190106_0018'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterField( |
|||
model_name='consumption', |
|||
name='customer', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='consumption_global_taken', to=settings.AUTH_USER_MODEL, verbose_name='Client'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumption', |
|||
name='product', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='gestion.Product', verbose_name='Produit'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumption', |
|||
name='quantity', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Quantité'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumptionhistory', |
|||
name='amount', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Montant'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumptionhistory', |
|||
name='customer', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='consumption_taken', to=settings.AUTH_USER_MODEL, verbose_name='Client'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumptionhistory', |
|||
name='paymentMethod', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='preferences.PaymentMethod', verbose_name='Moyen de paiement'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumptionhistory', |
|||
name='product', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='gestion.Product', verbose_name='Produit'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='consumptionhistory', |
|||
name='quantity', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Quantité'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalconsumption', |
|||
name='quantity', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Quantité'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalconsumptionhistory', |
|||
name='amount', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Montant'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalconsumptionhistory', |
|||
name='quantity', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Quantité'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalkeghistory', |
|||
name='amountSold', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=5, verbose_name='Somme vendue'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalkeghistory', |
|||
name='closingDate', |
|||
field=models.DateTimeField(blank=True, null=True, verbose_name='Date fermeture'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalkeghistory', |
|||
name='isCurrentKegHistory', |
|||
field=models.BooleanField(default=True, verbose_name='Actuel'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalkeghistory', |
|||
name='openingDate', |
|||
field=models.DateTimeField(blank=True, editable=False, verbose_name='Date ouverture'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalkeghistory', |
|||
name='quantitySold', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=5, verbose_name='Quantité vendue'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalmenuhistory', |
|||
name='amount', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Montant'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalmenuhistory', |
|||
name='quantity', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Quantité'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalproduct', |
|||
name='category', |
|||
field=models.CharField(choices=[('PP', 'Pinte Pression'), ('DP', 'Demi Pression'), ('GP', 'Galopin pression'), ('BT', 'Bouteille'), ('SO', 'Soft'), ('FO', 'En-cas'), ('PA', 'Ingredients panini')], default='FO', max_length=2, verbose_name='Catégorie'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='keghistory', |
|||
name='amountSold', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=5, verbose_name='Somme vendue'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='keghistory', |
|||
name='closingDate', |
|||
field=models.DateTimeField(blank=True, null=True, verbose_name='Date fermeture'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='keghistory', |
|||
name='isCurrentKegHistory', |
|||
field=models.BooleanField(default=True, verbose_name='Actuel'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='keghistory', |
|||
name='keg', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='gestion.Keg', verbose_name='Fût'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='keghistory', |
|||
name='openingDate', |
|||
field=models.DateTimeField(auto_now_add=True, verbose_name='Date ouverture'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='keghistory', |
|||
name='quantitySold', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=5, verbose_name='Quantité vendue'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='menuhistory', |
|||
name='amount', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Montant'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='menuhistory', |
|||
name='customer', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='menu_taken', to=settings.AUTH_USER_MODEL, verbose_name='Client'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='menuhistory', |
|||
name='paymentMethod', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='preferences.PaymentMethod', verbose_name='Moyen de paiement'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='menuhistory', |
|||
name='quantity', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Quantité'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='product', |
|||
name='category', |
|||
field=models.CharField(choices=[('PP', 'Pinte Pression'), ('DP', 'Demi Pression'), ('GP', 'Galopin pression'), ('BT', 'Bouteille'), ('SO', 'Soft'), ('FO', 'En-cas'), ('PA', 'Ingredients panini')], default='FO', max_length=2, verbose_name='Catégorie'), |
|||
), |
|||
] |
|||
@ -0,0 +1,199 @@ |
|||
# Generated by Django 2.1 on 2019-02-27 07:59 |
|||
|
|||
from django.db import migrations, models |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('preferences', '0008_auto_20190218_1802'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterModelOptions( |
|||
name='generalpreferences', |
|||
options={'verbose_name': 'Préférences générales', 'verbose_name_plural': 'Préférences générales'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='historicalgeneralpreferences', |
|||
options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Préférences générales'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='historicalpaymentmethod', |
|||
options={'get_latest_by': 'history_date', 'ordering': ('-history_date', '-history_id'), 'verbose_name': 'historical Moyen de paiement'}, |
|||
), |
|||
migrations.AlterModelOptions( |
|||
name='paymentmethod', |
|||
options={'verbose_name': 'Moyen de paiement', 'verbose_name_plural': 'Moyens de paiement'}, |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='active_message', |
|||
field=models.TextField(blank=True, verbose_name='Message non actif'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='automatic_logout_time', |
|||
field=models.PositiveIntegerField(null=True, verbose_name='Temps de déconnexion automatique'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='brewer', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Maître Brasseur'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='floating_buttons', |
|||
field=models.BooleanField(default=False, verbose_name='Boutons flottants'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='global_message', |
|||
field=models.TextField(blank=True, verbose_name='Message global'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='grocer', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Épic Épicier'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='home_text', |
|||
field=models.TextField(blank=True, verbose_name="Message d'accueil"), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='is_active', |
|||
field=models.BooleanField(default=True, verbose_name='Site actif'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='lost_pintes_allowed', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Nombre de pintes perdus admises'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='menu', |
|||
field=models.FileField(blank=True, null=True, upload_to='', verbose_name='Menu'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='president', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Président'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='rules', |
|||
field=models.FileField(blank=True, null=True, upload_to='', verbose_name='Règlement intérieur'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='secretary', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Secrétaire'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='statutes', |
|||
field=models.FileField(blank=True, null=True, upload_to='', verbose_name='Statuts'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='treasurer', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Trésorier'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='use_pinte_monitoring', |
|||
field=models.BooleanField(default=False, verbose_name='Suivi de pintes'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='generalpreferences', |
|||
name='vice_president', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Vice Président'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='active_message', |
|||
field=models.TextField(blank=True, verbose_name='Message non actif'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='automatic_logout_time', |
|||
field=models.PositiveIntegerField(null=True, verbose_name='Temps de déconnexion automatique'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='brewer', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Maître Brasseur'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='floating_buttons', |
|||
field=models.BooleanField(default=False, verbose_name='Boutons flottants'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='global_message', |
|||
field=models.TextField(blank=True, verbose_name='Message global'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='grocer', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Épic Épicier'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='home_text', |
|||
field=models.TextField(blank=True, verbose_name="Message d'accueil"), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='is_active', |
|||
field=models.BooleanField(default=True, verbose_name='Site actif'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='lost_pintes_allowed', |
|||
field=models.PositiveIntegerField(default=0, verbose_name='Nombre de pintes perdus admises'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='menu', |
|||
field=models.TextField(blank=True, max_length=100, null=True, verbose_name='Menu'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='president', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Président'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='rules', |
|||
field=models.TextField(blank=True, max_length=100, null=True, verbose_name='Règlement intérieur'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='secretary', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Secrétaire'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='statutes', |
|||
field=models.TextField(blank=True, max_length=100, null=True, verbose_name='Statuts'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='treasurer', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Trésorier'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='use_pinte_monitoring', |
|||
field=models.BooleanField(default=False, verbose_name='Suivi de pintes'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalgeneralpreferences', |
|||
name='vice_president', |
|||
field=models.CharField(blank=True, max_length=255, verbose_name='Vice Président'), |
|||
), |
|||
] |
|||
@ -1,13 +1,49 @@ |
|||
from django.contrib import admin |
|||
from django.contrib.auth.models import Permission |
|||
from simple_history.admin import SimpleHistoryAdmin |
|||
from django.db.models import F |
|||
|
|||
from .models import School, Profile, CotisationHistory, WhiteListHistory |
|||
|
|||
class CotisationHistoryAdmin(SimpleHistoryAdmin): |
|||
list_display = ('user', 'amount', 'duration', 'paymentDate', 'endDate', 'paymentMethod') |
|||
ordering = ('user', 'amount', 'duration', 'paymentDate', 'endDate') |
|||
search_fields = ('user',) |
|||
list_filter = ('paymentMethod', ) |
|||
|
|||
class BalanceFilter(admin.SimpleListFilter): |
|||
title = 'Solde' |
|||
parameter_name = 'solde' |
|||
|
|||
def lookups(self, request, model_admin): |
|||
return ( |
|||
('po', '>0'), |
|||
('nu', '=0'), |
|||
('ne', '<0'), |
|||
) |
|||
|
|||
def queryset(self, request, queryset): |
|||
if self.value() == 'po': |
|||
return queryset.filter(credit__gt=F('debit')) |
|||
elif self.value() == 'nu': |
|||
return queryset.filter(credit=F('debit')) |
|||
elif self.value() == 'ne': |
|||
return queryset.filter(credit__lt=F('debit')) |
|||
|
|||
from .models import School, Profile, CotisationHistory |
|||
|
|||
class ProfileAdmin(SimpleHistoryAdmin): |
|||
search_fields = ('user__username', 'user__first_name', 'user__last_name') |
|||
list_display = ('user', 'credit', 'debit', 'balance', 'school', 'cotisationEnd', 'is_adherent') |
|||
ordering = ('user', '-credit', '-debit') |
|||
search_fields = ('user',) |
|||
list_filter = ('school', BalanceFilter) |
|||
|
|||
class WhiteListHistoryAdmin(SimpleHistoryAdmin): |
|||
list_display = ('user', 'paymentDate', 'endDate', 'duration') |
|||
ordering = ('user', 'duration', 'paymentDate', 'endDate') |
|||
search_fields = ('user',) |
|||
|
|||
admin.site.register(Permission, SimpleHistoryAdmin) |
|||
admin.site.register(School, SimpleHistoryAdmin) |
|||
admin.site.register(WhiteListHistory, WhiteListHistoryAdmin) |
|||
admin.site.register(Profile, ProfileAdmin) |
|||
admin.site.register(CotisationHistory, SimpleHistoryAdmin) |
|||
admin.site.register(CotisationHistory, CotisationHistoryAdmin) |
|||
@ -0,0 +1,84 @@ |
|||
# Generated by Django 2.1 on 2019-02-27 07:59 |
|||
|
|||
from django.conf import settings |
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
dependencies = [ |
|||
('users', '0004_auto_20190226_2313'), |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.AlterModelOptions( |
|||
name='whitelisthistory', |
|||
options={'verbose_name': 'Historique accès gracieux', 'verbose_name_plural': 'Historique accès gracieux'}, |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalprofile', |
|||
name='cotisationEnd', |
|||
field=models.DateTimeField(blank=True, null=True, verbose_name='Fin de cotisation'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalprofile', |
|||
name='credit', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Crédit'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalprofile', |
|||
name='debit', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Débit'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalwhitelisthistory', |
|||
name='endDate', |
|||
field=models.DateTimeField(verbose_name='Date de fin'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='historicalwhitelisthistory', |
|||
name='paymentDate', |
|||
field=models.DateTimeField(blank=True, editable=False, verbose_name='Date de début'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='profile', |
|||
name='cotisationEnd', |
|||
field=models.DateTimeField(blank=True, null=True, verbose_name='Fin de cotisation'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='profile', |
|||
name='credit', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Crédit'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='profile', |
|||
name='debit', |
|||
field=models.DecimalField(decimal_places=2, default=0, max_digits=7, verbose_name='Débit'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='profile', |
|||
name='school', |
|||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.School', verbose_name='École'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='profile', |
|||
name='user', |
|||
field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Utilisateur'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='whitelisthistory', |
|||
name='endDate', |
|||
field=models.DateTimeField(verbose_name='Date de fin'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='whitelisthistory', |
|||
name='paymentDate', |
|||
field=models.DateTimeField(auto_now_add=True, verbose_name='Date de début'), |
|||
), |
|||
migrations.AlterField( |
|||
model_name='whitelisthistory', |
|||
name='user', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, verbose_name='Client'), |
|||
), |
|||
] |
|||
Loading…
Reference in new issue