Marwan Alwali 94e180f776 update
2025-09-21 17:38:18 +03:00

60 lines
3.1 KiB
Python

from django.urls import path
from . import views
app_name = 'facility_management'
urlpatterns = [
# Dashboard
path('', views.FacilityDashboardView.as_view(), name='dashboard'),
# Building Management
path('buildings/', views.BuildingListView.as_view(), name='building_list'),
path('buildings/create/', views.BuildingCreateView.as_view(), name='building_create'),
path('buildings/<int:pk>/', views.BuildingDetailView.as_view(), name='building_detail'),
path('buildings/<int:pk>/edit/', views.BuildingUpdateView.as_view(), name='building_update'),
# Asset Management
path('assets/', views.AssetListView.as_view(), name='asset_list'),
path('assets/create/', views.AssetCreateView.as_view(), name='asset_create'),
path('assets/<int:pk>/', views.AssetDetailView.as_view(), name='asset_detail'),
path('assets/<int:pk>/edit/', views.AssetUpdateView.as_view(), name='asset_edit'),
# Maintenance Management
path('maintenance/', views.MaintenanceRequestListView.as_view(), name='maintenance_list'),
path('maintenance/create/', views.MaintenanceRequestCreateView.as_view(), name='maintenance_create'),
path('maintenance/<int:pk>/', views.MaintenanceRequestDetailView.as_view(), name='maintenance_detail'),
path('maintenance/<int:pk>/edit/', views.MaintenanceRequestUpdateView.as_view(), name='maintenance_edit'),
# Room Management
path('rooms/', views.RoomListView.as_view(), name='room_list'),
path('rooms/create/', views.RoomCreateView.as_view(), name='room_create'),
path('rooms/<int:pk>/', views.RoomDetailView.as_view(), name='room_detail'),
path('rooms/<int:pk>/edit/', views.RoomUpdateView.as_view(), name='room_edit'),
# Vendor Management
path('vendors/', views.VendorListView.as_view(), name='vendor_list'),
path('vendors/create/', views.VendorCreateView.as_view(), name='vendor_create'),
path('vendors/<int:pk>/', views.VendorDetailView.as_view(), name='vendor_detail'),
path('vendors/<int:pk>/edit/', views.VendorUpdateView.as_view(), name='vendor_edit'),
# Service Contract Management
path('contracts/', views.ServiceContractListView.as_view(), name='contract_list'),
path('contracts/create/', views.ServiceContractCreateView.as_view(), name='contract_create'),
path('contracts/<int:pk>/', views.ServiceContractDetailView.as_view(), name='contract_detail'),
path('contracts/<int:pk>/edit/', views.ServiceContractUpdateView.as_view(), name='contract_edit'),
# Reports
path('reports/', views.FacilityReportView.as_view(), name='reports'),
# AJAX endpoints
path('ajax/buildings/', views.get_buildings, name='ajax_buildings'),
path('ajax/floors/', views.get_floors_by_building, name='ajax_floors'),
path('ajax/rooms/', views.get_rooms_by_floor, name='ajax_rooms'),
path('ajax/assets/', views.get_assets_by_location, name='ajax_assets'),
# Export endpoints
path('export/assets/', views.export_assets_csv, name='export_assets'),
path('export/maintenance/', views.export_maintenance_csv, name='export_maintenance'),
]