-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadmin.py
93 lines (60 loc) · 3.26 KB
/
admin.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
from django.contrib import admin
from qux.models import CoreModelAdmin
from .models import *
class ProductAdmin(CoreModelAdmin):
list_display = ('id', 'sku', 'amount', 'monthly_validity', 'description',
'category', 'is_active', 'expiry_date', 'sac_code') + CoreModelAdmin.list_display
search_fields = ('id', 'sku', 'amount', 'monthly_validity', 'description',
'category', 'is_active', 'expiry_date', 'sac_code')
raw_id_fields = ('addon', )
admin.site.register(Product, ProductAdmin)
class CustomerAdmin(CoreModelAdmin):
list_display = ('id', 'name', 'contact_name', 'primary_contact', 'gstin', 'pan',
'gstin_verified', 'pan_verified',) + CoreModelAdmin.list_display
search_fields = ('id', 'name', 'contact_name', 'primary_contact__username', 'gstin', 'pan', )
raw_id_fields = ('primary_contact', 'users', 'billing_address', 'shipping_address')
admin.site.register(Customer, CustomerAdmin)
class InvoiceProductInline(admin.TabularInline):
model = InvoiceProduct
show_change_link = True
extra = 0
raw_id_fields = ('product', )
class InvoiceAdmin(CoreModelAdmin):
list_display = ('id', 'invoice_number', 'customer', 'amount',
'gst', 'total_amount') + CoreModelAdmin.list_display
search_fields = ('id', 'invoice_number', 'slug', 'customer__name', 'amount', 'gst', 'total_amount')
raw_id_fields = ('customer', 'cart', )
inlines = (InvoiceProductInline,)
admin.site.register(Invoice, InvoiceAdmin)
class CartProductInline(admin.TabularInline):
model = CartProduct
show_change_link = True
extra = 0
raw_id_fields = ('product', )
class CartAdmin(CoreModelAdmin):
list_display = ('id', 'invoice_number', 'customer', 'amount',
'gst', 'total_amount', 'is_open',) + CoreModelAdmin.list_display
search_fields = ('id', 'slug', 'invoice_number', 'slug', 'customer__name',
'amount', 'gst', 'total_amount',)
raw_id_fields = ('customer', )
inlines = (CartProductInline,)
admin.site.register(Cart, CartAdmin)
class InvoiceProductAdmin(CoreModelAdmin):
list_display = ('id', 'invoice', 'product', 'amount',
'gst') + CoreModelAdmin.list_display
search_fields = ('id', 'invoice__invoice_number', 'product__sku', 'amount', 'gst')
raw_id_fields = ('invoice', 'product', )
admin.site.register(InvoiceProduct, InvoiceProductAdmin)
class CartProductAdmin(CoreModelAdmin):
list_display = ('id', 'cart', 'product', 'amount',
'gst') + CoreModelAdmin.list_display
search_fields = ('id', 'cart__invoice_number', 'product__sku', 'amount', 'gst')
raw_id_fields = ('cart', 'product', )
admin.site.register(CartProduct, CartProductAdmin)
class PaymentAdmin(CoreModelAdmin):
list_display = ('id', 'invoice', 'payment_date', 'is_processed', 'new_object_id', 'paid_amount', 'payment_mode',
'payment_source', 'source_reference', ) + CoreModelAdmin.list_display
search_fields = ('id', 'slug', 'invoice__invoice_number', 'invoice__id', 'payment_date',
'is_processed', 'payment_mode', 'paid_amount', 'payment_source', 'source_reference',)
raw_id_fields = ('invoice', 'customer',)
admin.site.register(Payment, PaymentAdmin)