Files
CenterPes/Movement/Views/viewsProduct.py
2025-11-01 18:10:39 -03:00

47 lines
1.9 KiB
Python

from django.views.generic import ListView, CreateView, UpdateView, DeleteView, DetailView
from django.contrib.auth.mixins import LoginRequiredMixin , PermissionRequiredMixin
from Movement.Forms import FormsProduct
from Movement import models
from django.urls import reverse_lazy
from django.utils import timezone
class ProductListView(LoginRequiredMixin, PermissionRequiredMixin, ListView):
model = models.Product
template_name = 'Product/List.html'
context_object_name = 'Products'
paginate_by = 10
permission_required = 'Base.view_professional'
def get_queryset(self):
queryset = super().get_queryset()
date = self.request.GET.get('date')
print(date)
if date:
queryset = queryset.filter(date__icontains=date)
else:
queryset = queryset.filter(date__icontains=timezone.localdate())
return queryset
# class ProductCreateView(LoginRequiredMixin,PermissionRequiredMixin, CreateView):
# model = models.Product
# template_name = 'Product/Create.html'
# form_class = FormsProduct.FormsProduct
# success_url = reverse_lazy('ProductListView')
# permission_required = 'Base.add_professional'
class ProductDetailView(LoginRequiredMixin,PermissionRequiredMixin, DetailView):
model = models.Product
template_name = 'Product/Detail.html'
permission_required = 'Base.view_professional'
class ProductUpdateView(LoginRequiredMixin,PermissionRequiredMixin, UpdateView):
model = models.Product
template_name = 'Product/Update.html'
form_class = FormsProduct.FormsProduct
success_url = reverse_lazy('ProductListView')
permission_required = 'Base.change_professional'
class ProductDeleteView(LoginRequiredMixin,PermissionRequiredMixin, DeleteView):
model = models.Product
template_name = 'Product/Delete.html'
success_url = reverse_lazy('MovProductListView')
permission_required = 'Base.delete_professional'