[note] TransactionCategory --> TemplateCategory

This commit is contained in:
Benjamin Graillot 2020-02-23 17:27:55 +01:00
parent 126686ab03
commit 40a7d3b295
4 changed files with 36 additions and 16 deletions

View File

@ -7,7 +7,7 @@ from polymorphic.admin import PolymorphicChildModelAdmin, \
PolymorphicChildModelFilter, PolymorphicParentModelAdmin
from .models.notes import Alias, Note, NoteClub, NoteSpecial, NoteUser
from .models.transactions import Transaction, TransactionCategory, TransactionTemplate, TransactionType
from .models.transactions import Transaction, TemplateCategory, TransactionTemplate, TransactionType
class AliasInlines(admin.TabularInline):
@ -154,8 +154,8 @@ class TransactionTemplateAdmin(admin.ModelAdmin):
poly_destination.short_description = _('destination')
@admin.register(TransactionCategory)
class TransactionCategoryAdmin(admin.ModelAdmin):
@admin.register(TemplateCategory)
class TemplateCategoryAdmin(admin.ModelAdmin):
"""
Admin customisation for TransactionTemplate
"""

View File

@ -162,56 +162,56 @@
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 1,
"fields": {
"name": "Soft"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 2,
"fields": {
"name": "Pulls"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 3,
"fields": {
"name": "Gala"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 4,
"fields": {
"name": "Clubs"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 5,
"fields": {
"name": "Bouffe"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 6,
"fields": {
"name": "BDA"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 7,
"fields": {
"name": "Autre"
}
},
{
"model": "note.transactioncategory",
"model": "note.templatecategory",
"pk": 8,
"fields": {
"name": "Alcool"

View File

@ -3,11 +3,11 @@
from .notes import Alias, Note, NoteClub, NoteSpecial, NoteUser
from .transactions import MembershipTransaction, Transaction, \
TransactionCategory, TransactionTemplate, TransactionType
TemplateCategory, TransactionTemplate, TransactionType
__all__ = [
# Notes
'Alias', 'Note', 'NoteClub', 'NoteSpecial', 'NoteUser',
# Transactions
'MembershipTransaction', 'Transaction', 'TransactionCategory', 'TransactionTemplate','TransactionType',
'MembershipTransaction', 'Transaction', 'TemplateCategory', 'TransactionTemplate','TransactionType',
]

View File

@ -13,7 +13,7 @@ Defines transactions
"""
class TransactionCategory(models.Model):
class TemplateCategory(models.Model):
"""
Defined a recurrent transaction category
@ -55,7 +55,7 @@ class TransactionTemplate(models.Model):
help_text=_('in centimes'),
)
category = models.ForeignKey(
TransactionCategory,
TemplateCategory,
on_delete=models.PROTECT,
verbose_name=_('type'),
max_length=31,
@ -173,6 +173,26 @@ class Transaction(models.Model):
return self.amount * self.quantity
class TemplateTransaction(Transaction):
"""
Special type of :model:`note.Transaction` associated to a :model:`note.TransactionTemplate`.
"""
template = models.ForeignKey(
TransactionTemplate,
null=True
on_delete=models.SET_NULL
)
category = models.ForeignKey(
TemplateCategory,
on_delete=models.PROTECT
)
name = models.CharField(
max_length=255
)
class MembershipTransaction(Transaction):
"""
Special type of :model:`note.Transaction` associated to a :model:`member.Membership`.