@ -2,28 +2,48 @@ from django.contrib import admin
from compensation . models import Compensation , CompensationAction , CompensationState , Payment , \
EcoAccountDeduction , EcoAccount
from konova . admin import BaseObjectAdmin
from konova . admin import BaseObjectAdmin , BaseResourceAdmin
class CompensationStateAdmin( admin . Model Admin) :
class AbstractCompensationAdmin( BaseObject Admin) :
list_display = [
" id " ,
" biotope_type " ,
" surface " ,
" identifier " ,
" title " ,
" created " ,
" deleted " ,
]
def get_fields ( self , request , obj = None ) :
return super ( ) . get_fields ( request , obj ) + [
" identifier " ,
" title " ,
" comment " ,
" after_states " ,
" before_states " ,
]
class CompensationActionAdmin ( admin . ModelAdmin ) :
list_display = [
" id " ,
" action_type " ,
" amount " ,
" unit " ,
" comment " ,
def get_readonly_fields ( self , request , obj = None ) :
return super ( ) . get_readonly_fields ( request , obj ) + [
" after_states " ,
" before_states " ,
]
class CompensationAdmin ( AbstractCompensationAdmin ) :
autocomplete_fields = [
" intervention " ,
]
def get_fields ( self , request , obj = None ) :
return super ( ) . get_fields ( request , obj ) + [
" is_cef " ,
" is_coherence_keeping " ,
" intervention " ,
]
class CompensationAdmin ( BaseObjectAdmin ) :
class EcoAccountAdmin( AbstractCompensation Admin) :
list_display = [
" id " ,
" identifier " ,
@ -32,14 +52,16 @@ class CompensationAdmin(BaseObjectAdmin):
" deleted " ,
]
class EcoAccountAdmin ( admin . ModelAdmin ) :
list_display = [
" id " ,
" identifier " ,
" title " ,
filter_horizontal = [
" users "
]
def get_fields ( self , request , obj = None ) :
return super ( ) . get_fields ( request , obj ) + [
" deductable_surface " ,
" users "
]
class PaymentAdmin ( admin . ModelAdmin ) :
list_display = [
@ -49,18 +71,56 @@ class PaymentAdmin(admin.ModelAdmin):
]
class EcoAccountDeductionAdmin ( admin. Model Admin) :
class EcoAccountDeductionAdmin ( BaseResource Admin) :
list_display = [
" id " ,
" account " ,
" intervention " ,
" surface " ,
]
search_fields = [
" account__identifier " ,
" account__title " ,
" intervention__identifier " ,
" intervention__title " ,
" surface " ,
]
autocomplete_fields = [
" account " ,
" intervention " ,
]
def get_fields ( self , request , obj = None ) :
return super ( ) . get_fields ( request , obj ) + [
" account " ,
" intervention " ,
" surface " ,
]
class CompensationStateAdmin ( admin . ModelAdmin ) :
list_display = [
" id " ,
" biotope_type " ,
" surface " ,
]
class CompensationActionAdmin ( admin . ModelAdmin ) :
list_display = [
" id " ,
" action_type " ,
" amount " ,
" unit " ,
" comment " ,
]
admin . site . register ( Compensation , CompensationAdmin )
admin . site . register ( Payment , PaymentAdmin )
admin . site . register ( CompensationAction , CompensationActionAdmin )
admin . site . register ( CompensationState , CompensationStateAdmin )
admin . site . register ( EcoAccount , EcoAccountAdmin )
admin . site . register ( EcoAccountDeduction , EcoAccountDeductionAdmin )
# For a more cleaner admin interface these rarely used admin views are not important for deployment
#admin.site.register(Payment, PaymentAdmin)
#admin.site.register(CompensationAction, CompensationActionAdmin)
#admin.site.register(CompensationState, CompensationStateAdmin)