loko/loko/contracts/urls.py

54 lines
No EOL
4.6 KiB
Python

from django.urls import path
from . import views
from . import views_teams
from .views_daily_report import daily_report_download
app_name = "contracts"
urlpatterns = [
# Gestion des équipes
path('teams/', views_teams.teams_index, name='teams_index'),
path('teams/members/create/', views_teams.teams_create_member, name='teams_create_member'),
path('teams/members/<int:member_id>/move/', views_teams.teams_move_member, name='teams_move_member'),
path('teams/members/<int:member_id>/update/', views_teams.teams_update_member, name='teams_update_member'),
path('teams/members/<int:member_id>/delete/', views_teams.teams_delete_member, name='teams_delete_member'),
path('teams/<int:team_id>/interventions/', views_teams.team_interventions_json, name='team_interventions_json'),
# Planification des équipes (Calendrier)
path('teams/planning/data/', views_teams.team_planning_data_ajax, name='team_planning_data_ajax'),
path('teams/planning/assign/', views_teams.team_planning_assign_member_ajax, name='team_planning_assign_member_ajax'),
path('teams/planning/absence/', views_teams.team_planning_toggle_absence_ajax, name='team_planning_toggle_absence_ajax'),
path('teams/planning/duplicate/', views_teams.team_planning_duplicate_ajax, name='team_planning_duplicate_ajax'),
path("", views.contracts_index, name="contracts_index"),
path('<int:contract_id>/', views.contracts_detail, name='contracts_detail'),
path('orders/available/', views.available_orders, name='available_orders'),
path('orders/<int:order_id>/', views.contracts_orders_detail, name='contracts_orders_detail'),
path('orders/<int:order_id>/update-status/', views.update_order_status, name='update_order_status'),
path('orders/<int:order_id>/change/', views.contracts_orders_change, name='contracts_orders_change'),
path('orders/<int:order_id>/quote/', views.contracts_orders_quote, name='contracts_orders_quote'),
path('orders/<int:order_id>/quote/preview/', views.preview_order_quote_pdf, name='contracts_orders_quote_pdf'),
path("orders/<int:order_id>/preview-claim-declaration/", views.preview_claim_declaration_pdf, name="order_claim_declaration_pdf_preview"),
path("orders/<int:order_id>/preview-state-of-works/", views.preview_state_of_works_pdf, name="order_state_of_works_pdf_preview"),
path("orders/<int:order_id>/generate-order-documents/", views.generate_documents_for_order, name="generate_documents_for_order"),
path('orders/<int:order_id>/documents/<int:doc_id>/download/', views.order_document_download, name='order_document_download'),
path('orders/add/', views.contracts_orders_add, name='contracts_orders_add'),
path('orders/create-ajax/', views.contracts_orders_create_ajax, name='contracts_orders_create_ajax'),
path('orders/get/', views.contracts_orders_get, name='contracts_orders_get'),
path('autocomplete-posts/', views.autocomplete_posts, name='autocomplete-posts'),
path('contracts/<int:contract_id>/posts/', views.contract_posts_list, name='contract_posts_list'),
# Créer une intervention à partir d'une commande
path('orders/<int:order_id>/add-intervention/', views.contracts_orders_add_intervention, name='contracts_orders_add_intervention'),
# Gestion des pièces jointes des déclarations de créance
path('documents/<int:doc_id>/attachments/', views.claim_declaration_attachments, name='claim_declaration_attachments'),
path('attachments/<int:attachment_id>/delete/', views.delete_claim_attachment, name='delete_claim_attachment'),
# Pièces jointes génériques d'une commande (photos, PDF, …)
path('orders/<int:order_id>/attachments/add/', views.order_add_attachment, name='order_add_attachment'),
path('orders/<int:order_id>/attachments/<int:attachment_id>/delete/', views.order_delete_attachment, name='order_delete_attachment'),
# Commandes directes (postes sans intervention)
path('orders/<int:order_id>/direct-posts/', views.order_direct_posts_list, name='order_direct_posts_list'),
path('orders/<int:order_id>/direct-posts/add/', views.order_direct_post_add, name='order_direct_post_add'),
path('orders/<int:order_id>/direct-posts/<int:direct_post_id>/update/', views.order_direct_post_update, name='order_direct_post_update'),
path('orders/<int:order_id>/direct-posts/<int:direct_post_id>/delete/', views.order_direct_post_delete, name='order_direct_post_delete'),
path('orders/<int:order_id>/direct-posts/<int:direct_post_id>/validate/', views.order_direct_post_validate, name='order_direct_post_validate'),
# Rapport journalier
path('daily-report/', daily_report_download, name='daily_report'),
]