habulaj commited on
Commit
8010de3
·
verified ·
1 Parent(s): 6efa54c

Update routes/onboarding.py

Browse files
Files changed (1) hide show
  1. routes/onboarding.py +19 -9
routes/onboarding.py CHANGED
@@ -80,17 +80,27 @@ async def update_onboarding_question(payload: UpdateOnboardingQuestion = Body(..
80
  @router.post("/onboarding/add-question")
81
  async def add_onboarding_question(payload: UpdateOnboardingQuestion = Body(...)):
82
  """
83
- Adiciona uma nova pergunta de onboarding com base nos dados fornecidos.
84
- Todos os campos do payload são enviados para criação.
85
  """
86
  try:
87
- new_question = {
88
- "id": payload.id,
89
- "title": payload.title,
90
- "question_type": payload.question_type,
91
- "optional": payload.optional,
92
- "options": payload.options
93
- }
 
 
 
 
 
 
 
 
 
 
94
 
95
  query_url = f"{SUPABASE_URL}/rest/v1/Onboarding"
96
  headers = SUPABASE_ROLE_HEADERS.copy()
 
80
  @router.post("/onboarding/add-question")
81
  async def add_onboarding_question(payload: UpdateOnboardingQuestion = Body(...)):
82
  """
83
+ Adiciona uma nova pergunta de onboarding.
84
+ Se `id` for 0, será ignorado para que o Supabase gere automaticamente.
85
  """
86
  try:
87
+ new_question = {}
88
+
89
+ # Ignora o id se for 0 (para gerar automaticamente)
90
+ if payload.id != 0:
91
+ new_question["id"] = payload.id
92
+
93
+ if payload.title is not None:
94
+ new_question["title"] = payload.title
95
+ if payload.question_type is not None:
96
+ new_question["question_type"] = payload.question_type
97
+ if payload.optional is not None:
98
+ new_question["optional"] = payload.optional
99
+ if payload.options is not None:
100
+ new_question["options"] = payload.options
101
+
102
+ if not new_question:
103
+ raise HTTPException(status_code=400, detail="Nenhum dado fornecido para criação.")
104
 
105
  query_url = f"{SUPABASE_URL}/rest/v1/Onboarding"
106
  headers = SUPABASE_ROLE_HEADERS.copy()