43 lines
1.9 KiB
Python
43 lines
1.9 KiB
Python
from django.views.generic import ListView, CreateView, UpdateView, DeleteView, DetailView
|
|
from django.contrib.auth.mixins import LoginRequiredMixin, PermissionRequiredMixin
|
|
from Base.Forms import FormsChartOfAccount
|
|
from Base import models
|
|
from django.urls import reverse_lazy
|
|
|
|
class ChartOfAccountListView(LoginRequiredMixin, PermissionRequiredMixin, ListView):
|
|
model = models.ChartOfAccount
|
|
template_name = 'ChartOfAccount/List.html'
|
|
context_object_name = 'ChartOfAccount'
|
|
paginate_by = 10
|
|
permission_required = 'Base.view_'
|
|
def get_queryset(self):
|
|
queryset = super().get_queryset()
|
|
name = self.request.GET.get('name')
|
|
if name:
|
|
queryset = queryset.filter(name__icontains=name)
|
|
return queryset
|
|
|
|
class ChartOfAccountCreateView(LoginRequiredMixin, PermissionRequiredMixin, CreateView):
|
|
model = models.ChartOfAccount
|
|
template_name = 'ChartOfAccount/Create.html'
|
|
form_class = FormsChartOfAccount.FormsChartOfAccount
|
|
success_url = reverse_lazy('ChartOfAccountListView')
|
|
permission_required = 'Base.add_'
|
|
|
|
class ChartOfAccountDetailView(LoginRequiredMixin, PermissionRequiredMixin, DetailView):
|
|
model = models.ChartOfAccount
|
|
template_name = 'ChartOfAccount/Detail.html'
|
|
permission_required = 'Base.view_'
|
|
|
|
class ChartOfAccountUpdateView(LoginRequiredMixin, PermissionRequiredMixin, UpdateView):
|
|
model = models.ChartOfAccount
|
|
template_name = 'ChartOfAccount/Update.html'
|
|
form_class = FormsChartOfAccount.FormsChartOfAccount
|
|
success_url = reverse_lazy('ChartOfAccountListView')
|
|
permission_required = 'Base.change_'
|
|
|
|
class ChartOfAccountDeleteView(LoginRequiredMixin, PermissionRequiredMixin, DeleteView):
|
|
model = models.ChartOfAccount
|
|
template_name = 'ChartOfAccount/Delete.html'
|
|
success_url = reverse_lazy('ChartOfAccountListView')
|
|
permission_required = 'Base.delete_' |