Dineshpopuri commited on
Commit
76f4dd7
·
verified ·
1 Parent(s): 87cf4ac

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -1
app.py CHANGED
@@ -1,27 +1,35 @@
1
  from fastapi import FastAPI
2
  from pydantic import BaseModel
3
 
 
4
  app = FastAPI()
5
 
 
6
  class InputPayload(BaseModel):
7
  project_id: str
8
  open_punch_items: int
9
  missing_docs: int
10
 
 
11
  @app.post("/readiness")
12
  async def readiness_check(payload: InputPayload):
 
 
13
  penalties = payload.open_punch_items + payload.missing_docs
14
  readiness = max(0, 100 - penalties * 10)
15
 
 
16
  missing_items = []
17
  if payload.open_punch_items > 0:
18
  missing_items.append("Punch List Incomplete")
19
  if payload.missing_docs > 0:
20
  missing_items.append("Documents Missing")
21
 
22
- pdf_url = f"https://huggingface.co/spaces/YOUR_USERNAME/project-readiness-api/blob/main/{payload.project_id}_closure_pack.pdf"
 
23
 
24
  return {
 
25
  "readiness_score": readiness,
26
  "missing_items": missing_items,
27
  "pdf_url": pdf_url
 
1
  from fastapi import FastAPI
2
  from pydantic import BaseModel
3
 
4
+ # Initialize the FastAPI app
5
  app = FastAPI()
6
 
7
+ # Define the input data model
8
  class InputPayload(BaseModel):
9
  project_id: str
10
  open_punch_items: int
11
  missing_docs: int
12
 
13
+ # Define the /readiness POST endpoint
14
  @app.post("/readiness")
15
  async def readiness_check(payload: InputPayload):
16
+ # Calculate readiness score
17
+ total_checks = 10
18
  penalties = payload.open_punch_items + payload.missing_docs
19
  readiness = max(0, 100 - penalties * 10)
20
 
21
+ # Identify missing items
22
  missing_items = []
23
  if payload.open_punch_items > 0:
24
  missing_items.append("Punch List Incomplete")
25
  if payload.missing_docs > 0:
26
  missing_items.append("Documents Missing")
27
 
28
+ # Placeholder PDF URL (replace YOUR_USERNAME and SPACE_NAME)
29
+ pdf_url = f"https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME/blob/main/{payload.project_id}_closure_pack.pdf"
30
 
31
  return {
32
+ "project_id": payload.project_id,
33
  "readiness_score": readiness,
34
  "missing_items": missing_items,
35
  "pdf_url": pdf_url