You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A web-based rating form for shutdown workers. Supervisors select a project, choose workers from the live SharePoint roster, submit ratings, and results are written directly back to SharePoint for OPMS reporting.
System Architecture
flowchart TD
SP1[(SharePoint\nPPLRosters)] -->|Load roster| DC[Datacleaning.py\nFilter SH- projects\nSplit leaders vs workers]
DC --> W[Web.py - Flask app\n60s roster cache]
W -->|Render form| UI[Supervisor fills rating form\nSelect project + rate workers]
UI -->|Submit ratings| W
W --> SA[SharepointAPI.py\nLookup Person / Job / Supervisor IDs]
SA --> SP2[(SharePoint\nPPLRankingTX)]
SP2 --> OPMS[OPMS\nReporting + analytics]
classDef sharepoint fill:#dbeafe,stroke:#2563eb,color:#1e40af
classDef app fill:#f3f4f6,stroke:#6b7280,color:#111827
classDef user fill:#fef3c7,stroke:#d97706,color:#92400e
classDef output fill:#d1fae5,stroke:#059669,color:#064e3b
class SP1,SP2 sharepoint
class DC,W,SA app
class UI user
class OPMS output
Loading
Preview
How it works
Supervisor opens the form — app loads live roster from SharePoint PPLRosters
Supervisor selects a shutdown project (only SH- prefixed projects shown)
Workers and leaders are split automatically by position keywords
Supervisor submits overall ratings and comments per worker
App looks up Person ID, Job ID, and Supervisor ID from SharePoint lookup lists
Rating rows are written to PPLRankingTX in SharePoint