add scope to filter data
This commit is contained in:
parent
394546dc67
commit
e9dec3292c
13 changed files with 386 additions and 36 deletions
|
@ -7,17 +7,23 @@ from django.contrib import messages
|
|||
from django import forms
|
||||
from .models import Well, WaterMeterManufacturer
|
||||
from .forms import WellForm, WaterMeterManufacturerForm
|
||||
from django.contrib.auth.decorators import login_required
|
||||
from common.decorators import allowed_roles
|
||||
from common.consts import UserRoles
|
||||
from processes.utils import scope_wells_queryset
|
||||
|
||||
|
||||
@login_required
|
||||
@allowed_roles([UserRoles.ADMIN, UserRoles.BROKER, UserRoles.MANAGER, UserRoles.ACCOUNTANT])
|
||||
def well_list(request):
|
||||
"""نمایش لیست چاهها"""
|
||||
wells = Well.objects.select_related(
|
||||
base = Well.objects.select_related(
|
||||
'representative',
|
||||
'water_meter_manufacturer',
|
||||
'affairs',
|
||||
'county',
|
||||
'broker'
|
||||
).filter(is_deleted=False)
|
||||
wells = scope_wells_queryset(request.user, base)
|
||||
|
||||
# فرم برای افزودن چاه جدید
|
||||
form = WellForm()
|
||||
|
@ -31,6 +37,8 @@ def well_list(request):
|
|||
|
||||
|
||||
@require_POST
|
||||
@login_required
|
||||
@allowed_roles([UserRoles.ADMIN, UserRoles.BROKER, UserRoles.MANAGER, UserRoles.ACCOUNTANT])
|
||||
def add_well_ajax(request):
|
||||
"""AJAX endpoint for adding wells"""
|
||||
try:
|
||||
|
@ -87,6 +95,8 @@ def add_well_ajax(request):
|
|||
|
||||
|
||||
@require_POST
|
||||
@login_required
|
||||
@allowed_roles([UserRoles.ADMIN, UserRoles.BROKER, UserRoles.MANAGER, UserRoles.ACCOUNTANT])
|
||||
def edit_well_ajax(request, well_id):
|
||||
"""AJAX endpoint for editing wells"""
|
||||
well = get_object_or_404(Well, id=well_id)
|
||||
|
@ -141,6 +151,8 @@ def edit_well_ajax(request, well_id):
|
|||
|
||||
|
||||
@require_POST
|
||||
@login_required
|
||||
@allowed_roles([UserRoles.ADMIN, UserRoles.BROKER, UserRoles.MANAGER, UserRoles.ACCOUNTANT])
|
||||
def delete_well(request, well_id):
|
||||
"""حذف چاه"""
|
||||
well = get_object_or_404(Well, id=well_id)
|
||||
|
@ -154,6 +166,7 @@ def delete_well(request, well_id):
|
|||
|
||||
|
||||
@require_GET
|
||||
@login_required
|
||||
def get_well_data(request, well_id):
|
||||
"""دریافت اطلاعات چاه برای ویرایش"""
|
||||
well = get_object_or_404(Well, id=well_id)
|
||||
|
@ -183,6 +196,7 @@ def get_well_data(request, well_id):
|
|||
|
||||
|
||||
@require_POST
|
||||
@login_required
|
||||
def create_water_meter_manufacturer(request):
|
||||
"""ایجاد شرکت سازنده کنتور آب جدید"""
|
||||
form = WaterMeterManufacturerForm(request.POST)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue