This commit is contained in:
HotSwapp
2025-10-06 20:28:00 -05:00
parent 216adcc1f6
commit 4dbc452b65
12 changed files with 169 additions and 51 deletions

52
TODO.md
View File

@@ -2,17 +2,17 @@
Refer to `del.plan.md` for context. Check off items as theyre completed.
- [ ] Create project directories and empty files per structure
- [ ] Create requirements.txt with minimal deps
- [ ] Copy delphi-logo.webp into static/logo/
- [ ] Set up SQLAlchemy Base and engine/session helpers
- [x] Create project directories and empty files per structure
- [x] Create requirements.txt with minimal deps
- [x] Copy delphi-logo.webp into static/logo/
- [x] Set up SQLAlchemy Base and engine/session helpers
- [x] Add User model with username and password_hash
- [ ] Add Client model (rolodex_id and core fields)
- [ ] Add Phone model with FK to Client
- [ ] Add Case model (file_no unique, FK to Client)
- [ ] Add Transaction model with FK to Case
- [ ] Add Document model with FK to Case
- [ ] Add Payment model with FK to Case
- [x] Add Client model (rolodex_id and core fields)
- [x] Add Phone model with FK to Client
- [x] Add Case model (file_no unique, FK to Client)
- [x] Add Transaction model with FK to Case
- [x] Add Document model with FK to Case
- [x] Add Payment model with FK to Case
- [x] Create tables and seed default admin user
- [x] Create FastAPI app with DB session dependency
- [x] Add SessionMiddleware with SECRET_KEY from env
@@ -20,20 +20,20 @@ Refer to `del.plan.md` for context. Check off items as theyre completed.
- [x] Create base.html with Bootstrap 5 CDN and nav
- [x] Implement login form, POST handler, and logout
- [x] Create login.html form
- [ ] Implement dashboard route listing cases
- [ ] Add simple search by file_no/name/keyword
- [ ] Create dashboard.html with table and search box
- [ ] Implement case view and edit POST
- [ ] Create case.html with form and tabs
- [ ] Implement admin page with file upload
- [ ] Create admin.html with upload form and results
- [ ] Build CSV import core with dispatch by filename
- [ ] Importer for ROLODEX → Client
- [ ] Importer for PHONE → Phone
- [ ] Importer for FILES → Case
- [ ] Importer for LEDGER → Transaction
- [ ] Importer for QDROS → Document
- [ ] Importer for PAYMENTS → Payment
- [ ] Wire admin POST to run selected importers
- [x] Implement dashboard route listing cases
- [x] Add simple search by file_no/name/keyword
- [x] Create dashboard.html with table and search box
- [x] Implement case view and edit POST
- [x] Create case.html with form and tabs
- [x] Implement admin page with file upload
- [x] Create admin.html with upload form and results
- [x] Build CSV import core with dispatch by filename
- [x] Importer for ROLODEX → Client
- [x] Importer for PHONE → Phone
- [x] Importer for FILES → Case
- [x] Importer for LEDGER → Transaction
- [x] Importer for QDROS → Document
- [x] Importer for PAYMENTS → Payment
- [x] Wire admin POST to run selected importers
- [ ] Run app and test login/import/list/case-edit
- [ ] Add minimal Dockerfile and compose for local run
- [x] Add minimal Dockerfile and compose for local run