Add M365 License Calculator feature

New top-nav section with a CSV-based license calculator. Upload an Azure AD
user export to see license counts (M365 Standard/Basic, Defender P1, PBI Pro,
PBI Premium) grouped by QWE Client. QWE Client and IsRestaurant are editable
per user, saved to SQLite, and restored on the next upload. Department-based
defaults pre-populate QWE Client (AT→QWE AT, SK→QWE SK) when no saved value
exists.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-09 15:40:19 +02:00
co-authored by Claude Sonnet 4.6
parent e37ee99054
commit adf303ad53
5 changed files with 581 additions and 1 deletions
+3
View File
@@ -25,12 +25,15 @@ from app.auth import (
get_current_user,
)
from app.omada import omada_client
from app.m365 import router as m365_router
logging.basicConfig(level=logging.INFO, format="%(asctime)s %(levelname)s %(name)s: %(message)s")
logger = logging.getLogger(__name__)
app = FastAPI(title="Salus by Stranto", docs_url=None, redoc_url=None)
app.include_router(m365_router)
app.add_middleware(
SessionMiddleware,
secret_key=SESSION_SECRET_KEY,