77from ..models .database import get_db
88from ..schemas import PDLCreate , PDLResponse , APIResponse , ErrorDetail
99from ..schemas .requests import AdminPDLCreate
10- from ..middleware import get_current_user , require_admin , require_permission
10+ from ..middleware import get_current_user , require_admin , require_permission , require_not_demo
1111from ..routers .enedis import get_valid_token
1212from ..adapters import enedis_adapter
1313import logging
@@ -129,7 +129,7 @@ async def create_pdl(
129129 }
130130 }
131131 ),
132- current_user : User = Depends (get_current_user ),
132+ current_user : User = Depends (require_not_demo ),
133133 db : AsyncSession = Depends (get_db )
134134) -> APIResponse :
135135 """Add a new PDL to current user"""
@@ -364,7 +364,7 @@ async def get_pdl(
364364@router .delete ("/{pdl_id}" , response_model = APIResponse )
365365async def delete_pdl (
366366 pdl_id : str = Path (..., description = "PDL ID (UUID)" , openapi_examples = {"example_uuid" : {"summary" : "Example UUID" , "value" : "550e8400-e29b-41d4-a716-446655440000" }}),
367- current_user : User = Depends (get_current_user ),
367+ current_user : User = Depends (require_not_demo ),
368368 db : AsyncSession = Depends (get_db )
369369) -> APIResponse :
370370 """Delete a PDL"""
@@ -384,7 +384,7 @@ async def delete_pdl(
384384async def update_pdl_name (
385385 pdl_id : str = Path (..., description = "PDL ID (UUID)" , openapi_examples = {"example_uuid" : {"summary" : "Example UUID" , "value" : "550e8400-e29b-41d4-a716-446655440000" }}),
386386 name_data : PDLUpdateName = Body (..., openapi_examples = {"update_name" : {"summary" : "Update name" , "value" : {"name" : "Nouveau nom de compteur" }}}),
387- current_user : User = Depends (get_current_user ),
387+ current_user : User = Depends (require_not_demo ),
388388 db : AsyncSession = Depends (get_db ),
389389) -> APIResponse :
390390 """Update PDL custom name"""
@@ -417,7 +417,7 @@ async def update_pdl_type(
417417 "production_only" : {"summary" : "Production only" , "value" : {"has_consumption" : False , "has_production" : True }},
418418 "both" : {"summary" : "Both consumption and production" , "value" : {"has_consumption" : True , "has_production" : True }}
419419 }),
420- current_user : User = Depends (get_current_user ),
420+ current_user : User = Depends (require_not_demo ),
421421 db : AsyncSession = Depends (get_db ),
422422) -> APIResponse :
423423 """Update PDL type (consumption and/or production)"""
@@ -451,7 +451,7 @@ async def toggle_pdl_active(
451451 "activate" : {"summary" : "Activate PDL" , "value" : {"is_active" : True }},
452452 "deactivate" : {"summary" : "Deactivate PDL" , "value" : {"is_active" : False }}
453453 }),
454- current_user : User = Depends (get_current_user ),
454+ current_user : User = Depends (require_not_demo ),
455455 db : AsyncSession = Depends (get_db ),
456456) -> APIResponse :
457457 """Toggle PDL active/inactive status"""
@@ -487,7 +487,7 @@ async def update_pdl_pricing_option(
487487 "hc_weekend" : {"summary" : "HC Nuit & Week-end" , "value" : {"pricing_option" : "HC_WEEKEND" }},
488488 "clear" : {"summary" : "Remove pricing option" , "value" : {"pricing_option" : None }}
489489 }),
490- current_user : User = Depends (get_current_user ),
490+ current_user : User = Depends (require_not_demo ),
491491 db : AsyncSession = Depends (get_db ),
492492) -> APIResponse :
493493 """
@@ -539,7 +539,7 @@ async def update_pdl_selected_offer(
539539 "select_offer" : {"summary" : "Select an energy offer" , "value" : {"selected_offer_id" : "550e8400-e29b-41d4-a716-446655440001" }},
540540 "clear" : {"summary" : "Remove selected offer" , "value" : {"selected_offer_id" : None }}
541541 }),
542- current_user : User = Depends (get_current_user ),
542+ current_user : User = Depends (require_not_demo ),
543543 db : AsyncSession = Depends (get_db ),
544544) -> APIResponse :
545545 """
@@ -608,7 +608,7 @@ async def link_production_pdl(
608608 "link" : {"summary" : "Link to production PDL" , "value" : {"linked_production_pdl_id" : "550e8400-e29b-41d4-a716-446655440001" }},
609609 "unlink" : {"summary" : "Unlink production PDL" , "value" : {"linked_production_pdl_id" : None }}
610610 }),
611- current_user : User = Depends (get_current_user ),
611+ current_user : User = Depends (require_not_demo ),
612612 db : AsyncSession = Depends (get_db ),
613613) -> APIResponse :
614614 """
@@ -723,7 +723,7 @@ async def update_pdl_contract(
723723 }
724724 }
725725 ),
726- current_user : User = Depends (get_current_user ),
726+ current_user : User = Depends (require_not_demo ),
727727 db : AsyncSession = Depends (get_db ),
728728) -> APIResponse :
729729 """Update PDL contract information (subscribed power and offpeak hours)"""
@@ -770,7 +770,7 @@ async def reorder_pdls(
770770 }
771771 }
772772 ),
773- current_user : User = Depends (get_current_user ),
773+ current_user : User = Depends (require_not_demo ),
774774 db : AsyncSession = Depends (get_db ),
775775) -> APIResponse :
776776 """Update display order for multiple PDLs"""
0 commit comments