Aryan Jain commited on
Commit
b2f266f
·
1 Parent(s): 2aa3f0a

update apis

Browse files
src/controllers/_evaluation_controller.py CHANGED
@@ -54,77 +54,77 @@ class EvaluationController:
54
  self.evaluation_service = EvaluationService
55
  self.router = APIRouter()
56
  self.router.add_api_route(
57
- "/evaluation_criteria",
58
  self.get_criteria,
59
  methods=["GET"],
60
  response_model=EvaluationResponse,
61
  tags=["Evaluation Criteria"],
62
  )
63
  self.router.add_api_route(
64
- "/evaluation_criteria/{id}",
65
  self.get_criteria_by_id,
66
  methods=["GET"],
67
  response_model=EvaluationResponse,
68
  tags=["Evaluation Criteria by ID"],
69
  )
70
  self.router.add_api_route(
71
- "/rfps/{rfp_id}/evaluation_criteria",
72
  self.get_criteria_by_rfp_id,
73
  methods=["GET"],
74
  response_model=EvaluationResponse,
75
  tags=["Evaluation Criteria by RFP ID"],
76
  )
77
  self.router.add_api_route(
78
- "/rfps/{rfp_id}/evaluation_criteria/{id}",
79
  self.get_criteria_by_proposal_and_rfp_id,
80
  methods=["GET"],
81
  response_model=EvaluationResponse,
82
  tags=["Evaluation Criteria by Proposal and RFP ID"],
83
  )
84
  self.router.add_api_route(
85
- "/evaluation_criteria",
86
  self.create_criteria,
87
  methods=["POST"],
88
  response_model=EvaluationResponse,
89
  tags=["Evaluation Criteria"],
90
  )
91
  self.router.add_api_route(
92
- "/rfps/{rfp_id}/evaluation_criteria",
93
  self.create_criteria_by_rfp_id,
94
  methods=["POST"],
95
  response_model=EvaluationResponse,
96
  tags=["Evaluation Criteria by RFP ID"],
97
  )
98
  self.router.add_api_route(
99
- "/evaluation_criteria/{id}",
100
  self.update_criteria,
101
  methods=["PUT"],
102
  response_model=EvaluationResponse,
103
  tags=["Evaluation Criteria by ID"],
104
  )
105
  self.router.add_api_route(
106
- "/rfps/{rfp_id}/evaluation_criteria/{id}",
107
  self.update_criteria_by_proposal_and_rfp_id,
108
  methods=["PUT"],
109
  response_model=EvaluationResponse,
110
  tags=["Evaluation Criteria by Proposal and RFP ID"],
111
  )
112
  self.router.add_api_route(
113
- "/evaluation_criteria/{id}",
114
  self.delete_criteria,
115
  methods=["DELETE"],
116
  response_model=DeleteResponse,
117
  tags=["Evaluation Criteria by ID"],
118
  )
119
  self.router.add_api_route(
120
- "/rfps/{rfp_id}/evaluation_criteria",
121
  self.delete_criteria_by_rfp_id,
122
  methods=["DELETE"],
123
  response_model=DeleteResponse,
124
  tags=["Evaluation Criteria by RFP ID"],
125
  )
126
  self.router.add_api_route(
127
- "/rfps/{rfp_id}/evaluation_criteria/{id}",
128
  self.delete_criteria_by_proposal_and_rfp_id,
129
  methods=["DELETE"],
130
  response_model=DeleteResponse,
 
54
  self.evaluation_service = EvaluationService
55
  self.router = APIRouter()
56
  self.router.add_api_route(
57
+ "/evaluation-criteria",
58
  self.get_criteria,
59
  methods=["GET"],
60
  response_model=EvaluationResponse,
61
  tags=["Evaluation Criteria"],
62
  )
63
  self.router.add_api_route(
64
+ "/evaluation-criteria/{id}",
65
  self.get_criteria_by_id,
66
  methods=["GET"],
67
  response_model=EvaluationResponse,
68
  tags=["Evaluation Criteria by ID"],
69
  )
70
  self.router.add_api_route(
71
+ "/rfps/{rfp_id}/evaluation-criteria",
72
  self.get_criteria_by_rfp_id,
73
  methods=["GET"],
74
  response_model=EvaluationResponse,
75
  tags=["Evaluation Criteria by RFP ID"],
76
  )
77
  self.router.add_api_route(
78
+ "/rfps/{rfp_id}/evaluation-criteria/{id}",
79
  self.get_criteria_by_proposal_and_rfp_id,
80
  methods=["GET"],
81
  response_model=EvaluationResponse,
82
  tags=["Evaluation Criteria by Proposal and RFP ID"],
83
  )
84
  self.router.add_api_route(
85
+ "/evaluation-criteria",
86
  self.create_criteria,
87
  methods=["POST"],
88
  response_model=EvaluationResponse,
89
  tags=["Evaluation Criteria"],
90
  )
91
  self.router.add_api_route(
92
+ "/rfps/{rfp_id}/evaluation-criteria",
93
  self.create_criteria_by_rfp_id,
94
  methods=["POST"],
95
  response_model=EvaluationResponse,
96
  tags=["Evaluation Criteria by RFP ID"],
97
  )
98
  self.router.add_api_route(
99
+ "/evaluation-criteria/{id}",
100
  self.update_criteria,
101
  methods=["PUT"],
102
  response_model=EvaluationResponse,
103
  tags=["Evaluation Criteria by ID"],
104
  )
105
  self.router.add_api_route(
106
+ "/rfps/{rfp_id}/evaluation-criteria/{id}",
107
  self.update_criteria_by_proposal_and_rfp_id,
108
  methods=["PUT"],
109
  response_model=EvaluationResponse,
110
  tags=["Evaluation Criteria by Proposal and RFP ID"],
111
  )
112
  self.router.add_api_route(
113
+ "/evaluation-criteria/{id}",
114
  self.delete_criteria,
115
  methods=["DELETE"],
116
  response_model=DeleteResponse,
117
  tags=["Evaluation Criteria by ID"],
118
  )
119
  self.router.add_api_route(
120
+ "/rfps/{rfp_id}/evaluation-criteria",
121
  self.delete_criteria_by_rfp_id,
122
  methods=["DELETE"],
123
  response_model=DeleteResponse,
124
  tags=["Evaluation Criteria by RFP ID"],
125
  )
126
  self.router.add_api_route(
127
+ "/rfps/{rfp_id}/evaluation-criteria/{id}",
128
  self.delete_criteria_by_proposal_and_rfp_id,
129
  methods=["DELETE"],
130
  response_model=DeleteResponse,
src/controllers/_proposal_ai_analysis_controller.py CHANGED
@@ -205,77 +205,77 @@ class ProposalAIController:
205
  self.router = APIRouter()
206
 
207
  self.router.add_api_route(
208
- "/proposal_strengths",
209
  self.get_proposal_strengths,
210
  methods=["GET"],
211
  tags=["Proposal Strengths"],
212
  response_model=ProposalStrengthResponse,
213
  )
214
  self.router.add_api_route(
215
- "/proposal_strengths/{id}",
216
  self.get_proposal_strengths_by_id,
217
  methods=["GET"],
218
  tags=["Proposal Strengths by ID"],
219
  response_model=ProposalStrengthResponse,
220
  )
221
  self.router.add_api_route(
222
- "/proposals/{proposal_id}/proposal_strengths",
223
  self.get_proposal_strengths_by_proposal_id,
224
  methods=["GET"],
225
  tags=["Proposal Strengths by Proposal ID"],
226
  response_model=ProposalAllStrengthsResponse,
227
  )
228
  self.router.add_api_route(
229
- "/proposals/{proposal_id}/proposal_strengths/{id}",
230
  self.get_proposal_strengths_by_proposal_and_id,
231
  methods=["GET"],
232
  tags=["Proposal Strengths by Proposal and ID"],
233
  response_model=ProposalStrengthResponse,
234
  )
235
  self.router.add_api_route(
236
- "/proposal_strengths",
237
  self.create_proposal_strengths,
238
  methods=["POST"],
239
  tags=["Proposal Strengths"],
240
  response_model=ProposalStrengthResponse,
241
  )
242
  self.router.add_api_route(
243
- "/proposals/{proposal_id}/proposal_strengths",
244
  self.create_all_proposal_strengths,
245
  methods=["POST"],
246
  tags=["Proposal Strengths by Proposal ID"],
247
  response_model=ProposalAllStrengthsResponse,
248
  )
249
  self.router.add_api_route(
250
- "/proposal_strengths/{id}",
251
  self.update_proposal_strengths,
252
  methods=["PUT"],
253
  tags=["Proposal Strengths by ID"],
254
  response_model=ProposalStrengthResponse,
255
  )
256
  self.router.add_api_route(
257
- "/proposals/{proposal_id}/proposal_strengths",
258
  self.update_all_proposal_strengths,
259
  methods=["PUT"],
260
  tags=["Proposal Strengths by Proposal ID"],
261
  response_model=ProposalAllStrengthsResponse,
262
  )
263
  self.router.add_api_route(
264
- "/proposal_strengths/{id}",
265
  self.delete_proposal_strength,
266
  methods=["DELETE"],
267
  tags=["Proposal Strengths by ID"],
268
  response_model=DeleteResponse,
269
  )
270
  self.router.add_api_route(
271
- "/proposals/{proposal_id}/proposal_strengths",
272
  self.delete_all_proposal_strengths,
273
  methods=["DELETE"],
274
  tags=["Proposal Strengths by Proposal ID"],
275
  response_model=DeleteResponse,
276
  )
277
  self.router.add_api_route(
278
- "/proposals/{proposal_id}/proposal_strengths/{id}",
279
  self.delete_proposal_strengths_by_proposal_and_id,
280
  methods=["DELETE"],
281
  tags=["Proposal Strengths by Proposal and ID"],
@@ -283,77 +283,77 @@ class ProposalAIController:
283
  )
284
 
285
  self.router.add_api_route(
286
- "/proposal_weakness",
287
  self.get_proposal_weakness,
288
  methods=["GET"],
289
  tags=["Proposal Weakness"],
290
  response_model=ProposalWeaknessResponse,
291
  )
292
  self.router.add_api_route(
293
- "/proposal_weakness/{id}",
294
  self.get_proposal_weakness_by_id,
295
  methods=["GET"],
296
  tags=["Proposal Weakness by ID"],
297
  response_model=ProposalWeaknessResponse,
298
  )
299
  self.router.add_api_route(
300
- "/proposals/{proposal_id}/proposal_weakness",
301
  self.get_proposal_weakness_by_proposal_id,
302
  methods=["GET"],
303
  tags=["Proposal Weakness by Proposal ID"],
304
  response_model=ProposalAllWeaknessesResponse,
305
  )
306
  self.router.add_api_route(
307
- "/proposals/{proposal_id}/proposal_weakness/{id}",
308
  self.get_proposal_weakness_by_proposal_and_id,
309
  methods=["GET"],
310
  tags=["Proposal Weakness by Proposal and ID"],
311
  response_model=ProposalWeaknessResponse,
312
  )
313
  self.router.add_api_route(
314
- "/proposal_weakness",
315
  self.create_proposal_weakness,
316
  methods=["POST"],
317
  tags=["Proposal Weakness"],
318
  response_model=ProposalWeaknessResponse,
319
  )
320
  self.router.add_api_route(
321
- "/proposals/{proposal_id}/proposal_weakness",
322
  self.create_all_proposal_weakness,
323
  methods=["POST"],
324
  tags=["Proposal Weakness by Proposal ID"],
325
  response_model=ProposalAllWeaknessesResponse,
326
  )
327
  self.router.add_api_route(
328
- "/proposal_weakness/{id}",
329
  self.update_proposal_weakness,
330
  methods=["PUT"],
331
  tags=["Proposal Weakness by ID"],
332
  response_model=ProposalWeaknessResponse,
333
  )
334
  self.router.add_api_route(
335
- "/proposals/{proposal_id}/proposal_weakness",
336
  self.update_all_proposal_weakness,
337
  methods=["PUT"],
338
  tags=["Proposal Weakness by Proposal ID"],
339
  response_model=ProposalAllWeaknessesResponse,
340
  )
341
  self.router.add_api_route(
342
- "/proposal_weakness/{id}",
343
  self.delete_proposal_weakness,
344
  methods=["DELETE"],
345
  tags=["Proposal Weakness by ID"],
346
  response_model=DeleteResponse,
347
  )
348
  self.router.add_api_route(
349
- "/proposals/{proposal_id}/proposal_weakness",
350
  self.delete_all_proposal_weakness,
351
  methods=["DELETE"],
352
  tags=["Proposal Weakness by Proposal ID"],
353
  response_model=DeleteResponse,
354
  )
355
  self.router.add_api_route(
356
- "/proposals/{proposal_id}/proposal_weakness/{id}",
357
  self.delete_proposal_weakness_by_proposal_and_id,
358
  methods=["DELETE"],
359
  tags=["Proposal Weakness by Proposal and ID"],
@@ -361,77 +361,77 @@ class ProposalAIController:
361
  )
362
 
363
  self.router.add_api_route(
364
- "/proposal_rejections",
365
  self.get_proposal_rejections,
366
  methods=["GET"],
367
  tags=["Proposal Rejections"],
368
  response_model=ProposalRejectionReasonResponse,
369
  )
370
  self.router.add_api_route(
371
- "/proposal_rejections/{id}",
372
  self.get_proposal_rejections_by_id,
373
  methods=["GET"],
374
  tags=["Proposal Rejections by ID"],
375
  response_model=ProposalRejectionReasonResponse,
376
  )
377
  self.router.add_api_route(
378
- "/proposals/{proposal_id}/proposal_rejections",
379
  self.get_proposal_rejections_by_proposal_id,
380
  methods=["GET"],
381
  tags=["Proposal Rejections by Proposal ID"],
382
  response_model=ProposalAllRejectionReasonsResponse,
383
  )
384
  self.router.add_api_route(
385
- "/proposals/{proposal_id}/proposal_rejections/{id}",
386
  self.get_proposal_rejections_by_proposal_and_id,
387
  methods=["GET"],
388
  tags=["Proposal Rejections by Proposal and ID"],
389
  response_model=ProposalRejectionReasonResponse,
390
  )
391
  self.router.add_api_route(
392
- "/proposal_rejections",
393
  self.create_proposal_rejections,
394
  methods=["POST"],
395
  tags=["Proposal Rejections"],
396
  response_model=ProposalRejectionReasonResponse,
397
  )
398
  self.router.add_api_route(
399
- "/proposals/{proposal_id}/proposal_rejections",
400
  self.create_all_proposal_rejections,
401
  methods=["POST"],
402
  tags=["Proposal Rejections by Proposal ID"],
403
  response_model=ProposalAllRejectionReasonsResponse,
404
  )
405
  self.router.add_api_route(
406
- "/proposal_rejections/{id}",
407
  self.update_proposal_rejections,
408
  methods=["PUT"],
409
  tags=["Proposal Rejections by ID"],
410
  response_model=ProposalRejectionReasonResponse,
411
  )
412
  self.router.add_api_route(
413
- "/proposals/{proposal_id}/proposal_rejections",
414
  self.update_all_proposal_rejections,
415
  methods=["PUT"],
416
  tags=["Proposal Rejections by Proposal ID"],
417
  response_model=ProposalAllRejectionReasonsResponse,
418
  )
419
  self.router.add_api_route(
420
- "/proposal_rejections/{id}",
421
  self.delete_proposal_rejections,
422
  methods=["DELETE"],
423
  tags=["Proposal Rejections by ID"],
424
  response_model=DeleteResponse,
425
  )
426
  self.router.add_api_route(
427
- "/proposals/{proposal_id}/proposal_rejections",
428
  self.delete_all_proposal_rejections,
429
  methods=["DELETE"],
430
  tags=["Proposal Rejections by Proposal ID"],
431
  response_model=DeleteResponse,
432
  )
433
  self.router.add_api_route(
434
- "/proposals/{proposal_id}/proposal_rejections/{id}",
435
  self.delete_proposal_rejections_by_proposal_and_id,
436
  methods=["DELETE"],
437
  tags=["Proposal Rejections by Proposal and ID"],
@@ -439,77 +439,77 @@ class ProposalAIController:
439
  )
440
 
441
  self.router.add_api_route(
442
- "/proposal_improvements",
443
  self.get_proposal_improvements,
444
  methods=["GET"],
445
  tags=["Proposal Improvements"],
446
  response_model=ProposalImprovementResponse,
447
  )
448
  self.router.add_api_route(
449
- "/proposal_improvements/{id}",
450
  self.get_proposal_improvements_by_id,
451
  methods=["GET"],
452
  tags=["Proposal Improvements by ID"],
453
  response_model=ProposalImprovementResponse,
454
  )
455
  self.router.add_api_route(
456
- "/proposals/{proposal_id}/proposal_improvements",
457
  self.get_proposal_improvements_by_proposal_id,
458
  methods=["GET"],
459
  tags=["Proposal Improvements by Proposal ID"],
460
  response_model=ProposalAllImprovementsResponse,
461
  )
462
  self.router.add_api_route(
463
- "/proposals/{proposal_id}/proposal_improvements/{id}",
464
  self.get_proposal_improvements_by_proposal_and_id,
465
  methods=["GET"],
466
  tags=["Proposal Improvements by Proposal and ID"],
467
  response_model=ProposalImprovementResponse,
468
  )
469
  self.router.add_api_route(
470
- "/proposal_improvements",
471
  self.create_proposal_improvements,
472
  methods=["POST"],
473
  tags=["Proposal Improvements"],
474
  response_model=ProposalImprovementResponse,
475
  )
476
  self.router.add_api_route(
477
- "/proposals/{proposal_id}/proposal_improvements",
478
  self.create_all_proposal_improvements,
479
  methods=["POST"],
480
  tags=["Proposal Improvements by Proposal ID"],
481
  response_model=ProposalAllImprovementsResponse,
482
  )
483
  self.router.add_api_route(
484
- "/proposal_improvements/{id}",
485
  self.update_proposal_improvements,
486
  methods=["PUT"],
487
  tags=["Proposal Improvements by ID"],
488
  response_model=ProposalImprovementResponse,
489
  )
490
  self.router.add_api_route(
491
- "/proposals/{proposal_id}/proposal_improvements",
492
  self.update_all_proposal_improvements,
493
  methods=["PUT"],
494
  tags=["Proposal Improvements by Proposal ID"],
495
  response_model=ProposalAllImprovementsResponse,
496
  )
497
  self.router.add_api_route(
498
- "/proposal_improvements/{id}",
499
  self.delete_proposal_improvements,
500
  methods=["DELETE"],
501
  tags=["Proposal Improvements by ID"],
502
  response_model=DeleteResponse,
503
  )
504
  self.router.add_api_route(
505
- "/proposals/{proposal_id}/proposal_improvements",
506
  self.delete_all_proposal_improvements,
507
  methods=["DELETE"],
508
  tags=["Proposal Improvements by Proposal ID"],
509
  response_model=DeleteResponse,
510
  )
511
  self.router.add_api_route(
512
- "/proposals/{proposal_id}/proposal_improvements/{id}",
513
  self.delete_proposal_improvements_by_proposal_and_id,
514
  methods=["DELETE"],
515
  tags=["Proposal Improvements by Proposal and ID"],
@@ -517,77 +517,77 @@ class ProposalAIController:
517
  )
518
 
519
  self.router.add_api_route(
520
- "/proposal_ai_score",
521
  self.get_proposal_ai_score,
522
  methods=["GET"],
523
  tags=["Proposal AI Score"],
524
  response_model=ProposalAIAnalysisResponse,
525
  )
526
  self.router.add_api_route(
527
- "/proposal_ai_score/{id}",
528
  self.get_proposal_ai_score_by_id,
529
  methods=["GET"],
530
  tags=["Proposal AI Score by ID"],
531
  response_model=ProposalAIAnalysisResponse,
532
  )
533
  self.router.add_api_route(
534
- "/proposals/{proposal_id}/proposal_ai_score",
535
  self.get_proposal_ai_score_by_proposal_id,
536
  methods=["GET"],
537
  tags=["Proposal AI Score by Proposal ID"],
538
  response_model=ProposalAIAnalysisResponse,
539
  )
540
  self.router.add_api_route(
541
- "/proposals/{proposal_id}/proposal_ai_score/{id}",
542
  self.get_proposal_ai_score_by_proposal_and_id,
543
  methods=["GET"],
544
  tags=["Proposal AI Score by Proposal and ID"],
545
  response_model=ProposalAIAnalysisResponse,
546
  )
547
  self.router.add_api_route(
548
- "/proposal_ai_score",
549
  self.create_proposal_ai_score,
550
  methods=["POST"],
551
  tags=["Proposal AI Score"],
552
  response_model=ProposalAIAnalysisResponse,
553
  )
554
  self.router.add_api_route(
555
- "/proposals/{proposal_id}/proposal_ai_score",
556
  self.create_proposal_ai_score_by_proposal_id,
557
  methods=["POST"],
558
  tags=["Proposal AI Score by Proposal ID"],
559
  response_model=ProposalAIAnalysisResponse,
560
  )
561
  self.router.add_api_route(
562
- "/proposal_ai_score/{id}",
563
  self.update_proposal_ai_score,
564
  methods=["PUT"],
565
  tags=["Proposal AI Score by ID"],
566
  response_model=ProposalAIAnalysisResponse,
567
  )
568
  self.router.add_api_route(
569
- "/proposals/{proposal_id}/proposal_ai_score",
570
  self.update_proposal_ai_score_by_proposal_id,
571
  methods=["PUT"],
572
  tags=["Proposal AI Score by Proposal ID"],
573
  response_model=ProposalAIAnalysisResponse,
574
  )
575
  self.router.add_api_route(
576
- "/proposal_ai_score/{id}",
577
  self.delete_proposal_ai_score,
578
  methods=["DELETE"],
579
  tags=["Proposal AI Score by ID"],
580
  response_model=DeleteResponse,
581
  )
582
  self.router.add_api_route(
583
- "/proposals/{proposal_id}/proposal_ai_score",
584
  self.delete_proposal_ai_score_by_proposal_id,
585
  methods=["DELETE"],
586
  tags=["Proposal AI Score by Proposal ID"],
587
  response_model=DeleteResponse,
588
  )
589
  self.router.add_api_route(
590
- "/proposals/{proposal_id}/proposal_ai_score/{id}",
591
  self.delete_proposal_ai_score_by_proposal_and_id,
592
  methods=["DELETE"],
593
  tags=["Proposal AI Score by Proposal and ID"],
@@ -595,28 +595,28 @@ class ProposalAIController:
595
  )
596
 
597
  self.router.add_api_route(
598
- "/proposals/{proposal_id}/proposal_analysis",
599
  self.get_all_proposal_analysis,
600
  methods=["GET"],
601
  tags=["Proposal Complete Analysis"],
602
  response_model=ProposalCompleteAnalysisResponse,
603
  )
604
  self.router.add_api_route(
605
- "/proposals/{proposal_id}/proposal_analysis",
606
  self.create_proposal_analysis,
607
  methods=["POST"],
608
  tags=["Proposal Complete Analysis"],
609
  response_model=ProposalCompleteAnalysisResponse,
610
  )
611
  self.router.add_api_route(
612
- "/proposals/{proposal_id}/proposal_analysis",
613
  self.update_proposal_analysis,
614
  methods=["PUT"],
615
  tags=["Proposal Complete Analysis"],
616
  response_model=ProposalCompleteAnalysisResponse,
617
  )
618
  self.router.add_api_route(
619
- "/proposals/{proposal_id}/proposal_analysis",
620
  self.delete_proposal_analysis,
621
  methods=["DELETE"],
622
  tags=["Proposal Complete Analysis"],
 
205
  self.router = APIRouter()
206
 
207
  self.router.add_api_route(
208
+ "/proposal-strengths",
209
  self.get_proposal_strengths,
210
  methods=["GET"],
211
  tags=["Proposal Strengths"],
212
  response_model=ProposalStrengthResponse,
213
  )
214
  self.router.add_api_route(
215
+ "/proposal-strengths/{id}",
216
  self.get_proposal_strengths_by_id,
217
  methods=["GET"],
218
  tags=["Proposal Strengths by ID"],
219
  response_model=ProposalStrengthResponse,
220
  )
221
  self.router.add_api_route(
222
+ "/proposals/{proposal_id}/proposal-strengths",
223
  self.get_proposal_strengths_by_proposal_id,
224
  methods=["GET"],
225
  tags=["Proposal Strengths by Proposal ID"],
226
  response_model=ProposalAllStrengthsResponse,
227
  )
228
  self.router.add_api_route(
229
+ "/proposals/{proposal_id}/proposal-strengths/{id}",
230
  self.get_proposal_strengths_by_proposal_and_id,
231
  methods=["GET"],
232
  tags=["Proposal Strengths by Proposal and ID"],
233
  response_model=ProposalStrengthResponse,
234
  )
235
  self.router.add_api_route(
236
+ "/proposal-strengths",
237
  self.create_proposal_strengths,
238
  methods=["POST"],
239
  tags=["Proposal Strengths"],
240
  response_model=ProposalStrengthResponse,
241
  )
242
  self.router.add_api_route(
243
+ "/proposals/{proposal_id}/proposal-strengths",
244
  self.create_all_proposal_strengths,
245
  methods=["POST"],
246
  tags=["Proposal Strengths by Proposal ID"],
247
  response_model=ProposalAllStrengthsResponse,
248
  )
249
  self.router.add_api_route(
250
+ "/proposal-strengths/{id}",
251
  self.update_proposal_strengths,
252
  methods=["PUT"],
253
  tags=["Proposal Strengths by ID"],
254
  response_model=ProposalStrengthResponse,
255
  )
256
  self.router.add_api_route(
257
+ "/proposals/{proposal_id}/proposal-strengths",
258
  self.update_all_proposal_strengths,
259
  methods=["PUT"],
260
  tags=["Proposal Strengths by Proposal ID"],
261
  response_model=ProposalAllStrengthsResponse,
262
  )
263
  self.router.add_api_route(
264
+ "/proposal-strengths/{id}",
265
  self.delete_proposal_strength,
266
  methods=["DELETE"],
267
  tags=["Proposal Strengths by ID"],
268
  response_model=DeleteResponse,
269
  )
270
  self.router.add_api_route(
271
+ "/proposals/{proposal_id}/proposal-strengths",
272
  self.delete_all_proposal_strengths,
273
  methods=["DELETE"],
274
  tags=["Proposal Strengths by Proposal ID"],
275
  response_model=DeleteResponse,
276
  )
277
  self.router.add_api_route(
278
+ "/proposals/{proposal_id}/proposal-strengths/{id}",
279
  self.delete_proposal_strengths_by_proposal_and_id,
280
  methods=["DELETE"],
281
  tags=["Proposal Strengths by Proposal and ID"],
 
283
  )
284
 
285
  self.router.add_api_route(
286
+ "/proposal-weakness",
287
  self.get_proposal_weakness,
288
  methods=["GET"],
289
  tags=["Proposal Weakness"],
290
  response_model=ProposalWeaknessResponse,
291
  )
292
  self.router.add_api_route(
293
+ "/proposal-weakness/{id}",
294
  self.get_proposal_weakness_by_id,
295
  methods=["GET"],
296
  tags=["Proposal Weakness by ID"],
297
  response_model=ProposalWeaknessResponse,
298
  )
299
  self.router.add_api_route(
300
+ "/proposals/{proposal_id}/proposal-weakness",
301
  self.get_proposal_weakness_by_proposal_id,
302
  methods=["GET"],
303
  tags=["Proposal Weakness by Proposal ID"],
304
  response_model=ProposalAllWeaknessesResponse,
305
  )
306
  self.router.add_api_route(
307
+ "/proposals/{proposal_id}/proposal-weakness/{id}",
308
  self.get_proposal_weakness_by_proposal_and_id,
309
  methods=["GET"],
310
  tags=["Proposal Weakness by Proposal and ID"],
311
  response_model=ProposalWeaknessResponse,
312
  )
313
  self.router.add_api_route(
314
+ "/proposal-weakness",
315
  self.create_proposal_weakness,
316
  methods=["POST"],
317
  tags=["Proposal Weakness"],
318
  response_model=ProposalWeaknessResponse,
319
  )
320
  self.router.add_api_route(
321
+ "/proposals/{proposal_id}/proposal-weakness",
322
  self.create_all_proposal_weakness,
323
  methods=["POST"],
324
  tags=["Proposal Weakness by Proposal ID"],
325
  response_model=ProposalAllWeaknessesResponse,
326
  )
327
  self.router.add_api_route(
328
+ "/proposal-weakness/{id}",
329
  self.update_proposal_weakness,
330
  methods=["PUT"],
331
  tags=["Proposal Weakness by ID"],
332
  response_model=ProposalWeaknessResponse,
333
  )
334
  self.router.add_api_route(
335
+ "/proposals/{proposal_id}/proposal-weakness",
336
  self.update_all_proposal_weakness,
337
  methods=["PUT"],
338
  tags=["Proposal Weakness by Proposal ID"],
339
  response_model=ProposalAllWeaknessesResponse,
340
  )
341
  self.router.add_api_route(
342
+ "/proposal-weakness/{id}",
343
  self.delete_proposal_weakness,
344
  methods=["DELETE"],
345
  tags=["Proposal Weakness by ID"],
346
  response_model=DeleteResponse,
347
  )
348
  self.router.add_api_route(
349
+ "/proposals/{proposal_id}/proposal-weakness",
350
  self.delete_all_proposal_weakness,
351
  methods=["DELETE"],
352
  tags=["Proposal Weakness by Proposal ID"],
353
  response_model=DeleteResponse,
354
  )
355
  self.router.add_api_route(
356
+ "/proposals/{proposal_id}/proposal-weakness/{id}",
357
  self.delete_proposal_weakness_by_proposal_and_id,
358
  methods=["DELETE"],
359
  tags=["Proposal Weakness by Proposal and ID"],
 
361
  )
362
 
363
  self.router.add_api_route(
364
+ "/proposal-rejections",
365
  self.get_proposal_rejections,
366
  methods=["GET"],
367
  tags=["Proposal Rejections"],
368
  response_model=ProposalRejectionReasonResponse,
369
  )
370
  self.router.add_api_route(
371
+ "/proposal-rejections/{id}",
372
  self.get_proposal_rejections_by_id,
373
  methods=["GET"],
374
  tags=["Proposal Rejections by ID"],
375
  response_model=ProposalRejectionReasonResponse,
376
  )
377
  self.router.add_api_route(
378
+ "/proposals/{proposal_id}/proposal-rejections",
379
  self.get_proposal_rejections_by_proposal_id,
380
  methods=["GET"],
381
  tags=["Proposal Rejections by Proposal ID"],
382
  response_model=ProposalAllRejectionReasonsResponse,
383
  )
384
  self.router.add_api_route(
385
+ "/proposals/{proposal_id}/proposal-rejections/{id}",
386
  self.get_proposal_rejections_by_proposal_and_id,
387
  methods=["GET"],
388
  tags=["Proposal Rejections by Proposal and ID"],
389
  response_model=ProposalRejectionReasonResponse,
390
  )
391
  self.router.add_api_route(
392
+ "/proposal-rejections",
393
  self.create_proposal_rejections,
394
  methods=["POST"],
395
  tags=["Proposal Rejections"],
396
  response_model=ProposalRejectionReasonResponse,
397
  )
398
  self.router.add_api_route(
399
+ "/proposals/{proposal_id}/proposal-rejections",
400
  self.create_all_proposal_rejections,
401
  methods=["POST"],
402
  tags=["Proposal Rejections by Proposal ID"],
403
  response_model=ProposalAllRejectionReasonsResponse,
404
  )
405
  self.router.add_api_route(
406
+ "/proposal-rejections/{id}",
407
  self.update_proposal_rejections,
408
  methods=["PUT"],
409
  tags=["Proposal Rejections by ID"],
410
  response_model=ProposalRejectionReasonResponse,
411
  )
412
  self.router.add_api_route(
413
+ "/proposals/{proposal_id}/proposal-rejections",
414
  self.update_all_proposal_rejections,
415
  methods=["PUT"],
416
  tags=["Proposal Rejections by Proposal ID"],
417
  response_model=ProposalAllRejectionReasonsResponse,
418
  )
419
  self.router.add_api_route(
420
+ "/proposal-rejections/{id}",
421
  self.delete_proposal_rejections,
422
  methods=["DELETE"],
423
  tags=["Proposal Rejections by ID"],
424
  response_model=DeleteResponse,
425
  )
426
  self.router.add_api_route(
427
+ "/proposals/{proposal_id}/proposal-rejections",
428
  self.delete_all_proposal_rejections,
429
  methods=["DELETE"],
430
  tags=["Proposal Rejections by Proposal ID"],
431
  response_model=DeleteResponse,
432
  )
433
  self.router.add_api_route(
434
+ "/proposals/{proposal_id}/proposal-rejections/{id}",
435
  self.delete_proposal_rejections_by_proposal_and_id,
436
  methods=["DELETE"],
437
  tags=["Proposal Rejections by Proposal and ID"],
 
439
  )
440
 
441
  self.router.add_api_route(
442
+ "/proposal-improvements",
443
  self.get_proposal_improvements,
444
  methods=["GET"],
445
  tags=["Proposal Improvements"],
446
  response_model=ProposalImprovementResponse,
447
  )
448
  self.router.add_api_route(
449
+ "/proposal-improvements/{id}",
450
  self.get_proposal_improvements_by_id,
451
  methods=["GET"],
452
  tags=["Proposal Improvements by ID"],
453
  response_model=ProposalImprovementResponse,
454
  )
455
  self.router.add_api_route(
456
+ "/proposals/{proposal_id}/proposal-improvements",
457
  self.get_proposal_improvements_by_proposal_id,
458
  methods=["GET"],
459
  tags=["Proposal Improvements by Proposal ID"],
460
  response_model=ProposalAllImprovementsResponse,
461
  )
462
  self.router.add_api_route(
463
+ "/proposals/{proposal_id}/proposal-improvements/{id}",
464
  self.get_proposal_improvements_by_proposal_and_id,
465
  methods=["GET"],
466
  tags=["Proposal Improvements by Proposal and ID"],
467
  response_model=ProposalImprovementResponse,
468
  )
469
  self.router.add_api_route(
470
+ "/proposal-improvements",
471
  self.create_proposal_improvements,
472
  methods=["POST"],
473
  tags=["Proposal Improvements"],
474
  response_model=ProposalImprovementResponse,
475
  )
476
  self.router.add_api_route(
477
+ "/proposals/{proposal_id}/proposal-improvements",
478
  self.create_all_proposal_improvements,
479
  methods=["POST"],
480
  tags=["Proposal Improvements by Proposal ID"],
481
  response_model=ProposalAllImprovementsResponse,
482
  )
483
  self.router.add_api_route(
484
+ "/proposal-improvements/{id}",
485
  self.update_proposal_improvements,
486
  methods=["PUT"],
487
  tags=["Proposal Improvements by ID"],
488
  response_model=ProposalImprovementResponse,
489
  )
490
  self.router.add_api_route(
491
+ "/proposals/{proposal_id}/proposal-improvements",
492
  self.update_all_proposal_improvements,
493
  methods=["PUT"],
494
  tags=["Proposal Improvements by Proposal ID"],
495
  response_model=ProposalAllImprovementsResponse,
496
  )
497
  self.router.add_api_route(
498
+ "/proposal-improvements/{id}",
499
  self.delete_proposal_improvements,
500
  methods=["DELETE"],
501
  tags=["Proposal Improvements by ID"],
502
  response_model=DeleteResponse,
503
  )
504
  self.router.add_api_route(
505
+ "/proposals/{proposal_id}/proposal-improvements",
506
  self.delete_all_proposal_improvements,
507
  methods=["DELETE"],
508
  tags=["Proposal Improvements by Proposal ID"],
509
  response_model=DeleteResponse,
510
  )
511
  self.router.add_api_route(
512
+ "/proposals/{proposal_id}/proposal-improvements/{id}",
513
  self.delete_proposal_improvements_by_proposal_and_id,
514
  methods=["DELETE"],
515
  tags=["Proposal Improvements by Proposal and ID"],
 
517
  )
518
 
519
  self.router.add_api_route(
520
+ "/proposal-ai-score",
521
  self.get_proposal_ai_score,
522
  methods=["GET"],
523
  tags=["Proposal AI Score"],
524
  response_model=ProposalAIAnalysisResponse,
525
  )
526
  self.router.add_api_route(
527
+ "/proposal-ai-score/{id}",
528
  self.get_proposal_ai_score_by_id,
529
  methods=["GET"],
530
  tags=["Proposal AI Score by ID"],
531
  response_model=ProposalAIAnalysisResponse,
532
  )
533
  self.router.add_api_route(
534
+ "/proposals/{proposal_id}/proposal-ai-score",
535
  self.get_proposal_ai_score_by_proposal_id,
536
  methods=["GET"],
537
  tags=["Proposal AI Score by Proposal ID"],
538
  response_model=ProposalAIAnalysisResponse,
539
  )
540
  self.router.add_api_route(
541
+ "/proposals/{proposal_id}/proposal-ai-score/{id}",
542
  self.get_proposal_ai_score_by_proposal_and_id,
543
  methods=["GET"],
544
  tags=["Proposal AI Score by Proposal and ID"],
545
  response_model=ProposalAIAnalysisResponse,
546
  )
547
  self.router.add_api_route(
548
+ "/proposal-ai-score",
549
  self.create_proposal_ai_score,
550
  methods=["POST"],
551
  tags=["Proposal AI Score"],
552
  response_model=ProposalAIAnalysisResponse,
553
  )
554
  self.router.add_api_route(
555
+ "/proposals/{proposal_id}/proposal-ai-score",
556
  self.create_proposal_ai_score_by_proposal_id,
557
  methods=["POST"],
558
  tags=["Proposal AI Score by Proposal ID"],
559
  response_model=ProposalAIAnalysisResponse,
560
  )
561
  self.router.add_api_route(
562
+ "/proposal-ai-score/{id}",
563
  self.update_proposal_ai_score,
564
  methods=["PUT"],
565
  tags=["Proposal AI Score by ID"],
566
  response_model=ProposalAIAnalysisResponse,
567
  )
568
  self.router.add_api_route(
569
+ "/proposals/{proposal_id}/proposal-ai-score",
570
  self.update_proposal_ai_score_by_proposal_id,
571
  methods=["PUT"],
572
  tags=["Proposal AI Score by Proposal ID"],
573
  response_model=ProposalAIAnalysisResponse,
574
  )
575
  self.router.add_api_route(
576
+ "/proposal-ai-score/{id}",
577
  self.delete_proposal_ai_score,
578
  methods=["DELETE"],
579
  tags=["Proposal AI Score by ID"],
580
  response_model=DeleteResponse,
581
  )
582
  self.router.add_api_route(
583
+ "/proposals/{proposal_id}/proposal-ai-score",
584
  self.delete_proposal_ai_score_by_proposal_id,
585
  methods=["DELETE"],
586
  tags=["Proposal AI Score by Proposal ID"],
587
  response_model=DeleteResponse,
588
  )
589
  self.router.add_api_route(
590
+ "/proposals/{proposal_id}/proposal-ai-score/{id}",
591
  self.delete_proposal_ai_score_by_proposal_and_id,
592
  methods=["DELETE"],
593
  tags=["Proposal AI Score by Proposal and ID"],
 
595
  )
596
 
597
  self.router.add_api_route(
598
+ "/proposals/{proposal_id}/proposal-analysis",
599
  self.get_all_proposal_analysis,
600
  methods=["GET"],
601
  tags=["Proposal Complete Analysis"],
602
  response_model=ProposalCompleteAnalysisResponse,
603
  )
604
  self.router.add_api_route(
605
+ "/proposals/{proposal_id}/proposal-analysis",
606
  self.create_proposal_analysis,
607
  methods=["POST"],
608
  tags=["Proposal Complete Analysis"],
609
  response_model=ProposalCompleteAnalysisResponse,
610
  )
611
  self.router.add_api_route(
612
+ "/proposals/{proposal_id}/proposal-analysis",
613
  self.update_proposal_analysis,
614
  methods=["PUT"],
615
  tags=["Proposal Complete Analysis"],
616
  response_model=ProposalCompleteAnalysisResponse,
617
  )
618
  self.router.add_api_route(
619
+ "/proposals/{proposal_id}/proposal-analysis",
620
  self.delete_proposal_analysis,
621
  methods=["DELETE"],
622
  tags=["Proposal Complete Analysis"],
src/controllers/_proposal_detailed_analysis_controller.py CHANGED
@@ -70,70 +70,70 @@ class ProposalDetailedController:
70
  self.service = ProposalDetailedAnalysisService
71
  self.router = APIRouter()
72
  self.router.add_api_route(
73
- "/proposal_detailed_analysis",
74
  self.get_proposal_analysis,
75
  methods=["GET"],
76
  tags=["Proposal Detailed Analysis"],
77
  response_model=ProposalDetailedAnalysisResponse,
78
  )
79
  self.router.add_api_route(
80
- "/proposal_detailed_analysis/{id}",
81
  self.get_proposal_analysis_by_id,
82
  methods=["GET"],
83
  tags=["Proposal Detailed Analysis by ID"],
84
  response_model=ProposalDetailedAnalysisResponse,
85
  )
86
  self.router.add_api_route(
87
- "/proposals/{proposal_id}/proposal_detailed_analysis",
88
  self.get_proposal_analysis_by_proposal_id,
89
  methods=["GET"],
90
  tags=["Proposal Detailed Analysis by Proposal ID"],
91
  response_model=CompleteAnalysisResponse,
92
  )
93
  self.router.add_api_route(
94
- "/proposal_detailed_analysis",
95
  self.create_proposal_analysis,
96
  methods=["POST"],
97
  tags=["Proposal Detailed Analysis"],
98
  response_model=ProposalDetailedAnalysisResponse,
99
  )
100
  self.router.add_api_route(
101
- "/proposals/{proposal_id}/proposal_detailed_analysis",
102
  self.create_complete_proposal_analysis,
103
  methods=["POST"],
104
  tags=["Proposal Detailed Analysis by Proposal ID"],
105
  response_model=CompleteAnalysisResponse,
106
  )
107
  self.router.add_api_route(
108
- "/proposal_detailed_analysis/{id}",
109
  self.update_proposal_analysis,
110
  methods=["PUT"],
111
  tags=["Proposal Detailed Analysis by ID"],
112
  response_model=ProposalDetailedAnalysisResponse,
113
  )
114
  self.router.add_api_route(
115
- "/proposals/{proposal_id}/proposal_detailed_analysis",
116
  self.update_complete_proposal_analysis,
117
  methods=["PUT"],
118
  tags=["Proposal Detailed Analysis by Proposal ID"],
119
  response_model=CompleteAnalysisResponse,
120
  )
121
  self.router.add_api_route(
122
- "/proposal_detailed_analysis/{id}",
123
  self.delete_proposal_analysis,
124
  methods=["DELETE"],
125
  tags=["Proposal Detailed Analysis by ID"],
126
  response_model=DeleteResponse,
127
  )
128
  self.router.add_api_route(
129
- "/proposals/{proposal_id}/proposal_detailed_analysis",
130
  self.delete_proposal_analysis_by_proposal_id,
131
  methods=["DELETE"],
132
  tags=["Proposal Detailed Analysis by Proposal ID"],
133
  response_model=DeleteResponse,
134
  )
135
  self.router.add_api_route(
136
- "/proposals/{proposal_id}/proposal_detailed_analysis/{id}",
137
  self.delete_proposal_analysis_by_proposal_and_id,
138
  methods=["DELETE"],
139
  tags=["Proposal Detailed Analysis by Proposal and ID"],
 
70
  self.service = ProposalDetailedAnalysisService
71
  self.router = APIRouter()
72
  self.router.add_api_route(
73
+ "/proposal-detailed-analysis",
74
  self.get_proposal_analysis,
75
  methods=["GET"],
76
  tags=["Proposal Detailed Analysis"],
77
  response_model=ProposalDetailedAnalysisResponse,
78
  )
79
  self.router.add_api_route(
80
+ "/proposal-detailed-analysis/{id}",
81
  self.get_proposal_analysis_by_id,
82
  methods=["GET"],
83
  tags=["Proposal Detailed Analysis by ID"],
84
  response_model=ProposalDetailedAnalysisResponse,
85
  )
86
  self.router.add_api_route(
87
+ "/proposals/{proposal_id}/proposal-detailed-analysis",
88
  self.get_proposal_analysis_by_proposal_id,
89
  methods=["GET"],
90
  tags=["Proposal Detailed Analysis by Proposal ID"],
91
  response_model=CompleteAnalysisResponse,
92
  )
93
  self.router.add_api_route(
94
+ "/proposal-detailed-analysis",
95
  self.create_proposal_analysis,
96
  methods=["POST"],
97
  tags=["Proposal Detailed Analysis"],
98
  response_model=ProposalDetailedAnalysisResponse,
99
  )
100
  self.router.add_api_route(
101
+ "/proposals/{proposal_id}/proposal-detailed-analysis",
102
  self.create_complete_proposal_analysis,
103
  methods=["POST"],
104
  tags=["Proposal Detailed Analysis by Proposal ID"],
105
  response_model=CompleteAnalysisResponse,
106
  )
107
  self.router.add_api_route(
108
+ "/proposal-detailed-analysis/{id}",
109
  self.update_proposal_analysis,
110
  methods=["PUT"],
111
  tags=["Proposal Detailed Analysis by ID"],
112
  response_model=ProposalDetailedAnalysisResponse,
113
  )
114
  self.router.add_api_route(
115
+ "/proposals/{proposal_id}/proposal-detailed-analysis",
116
  self.update_complete_proposal_analysis,
117
  methods=["PUT"],
118
  tags=["Proposal Detailed Analysis by Proposal ID"],
119
  response_model=CompleteAnalysisResponse,
120
  )
121
  self.router.add_api_route(
122
+ "/proposal-detailed-analysis/{id}",
123
  self.delete_proposal_analysis,
124
  methods=["DELETE"],
125
  tags=["Proposal Detailed Analysis by ID"],
126
  response_model=DeleteResponse,
127
  )
128
  self.router.add_api_route(
129
+ "/proposals/{proposal_id}/proposal-detailed-analysis",
130
  self.delete_proposal_analysis_by_proposal_id,
131
  methods=["DELETE"],
132
  tags=["Proposal Detailed Analysis by Proposal ID"],
133
  response_model=DeleteResponse,
134
  )
135
  self.router.add_api_route(
136
+ "/proposals/{proposal_id}/proposal-detailed-analysis/{id}",
137
  self.delete_proposal_analysis_by_proposal_and_id,
138
  methods=["DELETE"],
139
  tags=["Proposal Detailed Analysis by Proposal and ID"],