yavsc/src/Yavsc.Org
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Paul Schneider 70ab05522b
Gestion des fichiers utilisateur et pièces jointes (demande/devis)
Espace de stockage personnel géré depuis PostIt, avec attachement par
référence (sans duplication) des fichiers à la demande du client
(NominativeServiceCommand) et au devis du fournisseur (Estimate).

Backend:
- UploadedFile.OwnerId (FK ApplicationUser, nullable) ; les téléversements
  vers api/v1/fs créent/mettent à jour une ligne propriétaire.
- Tables de jointure EstimateAttachedFile et QueryAttachedFile (PK composite),
  migration UserFileAttachments.
- EstimateApiController: GET/POST/DELETE estimate/{id}/attachments
  (fournisseur uniquement, fichier devant appartenir au caller).
- FrontOfficeApiController: GET/POST/DELETE front/query/{id}/attachments
  (client uniquement).
- FileSystemApiController: GET fs/file/{fileId} sert les octets depuis le
  host Blogs (autorisation propriétaire ou partie au devis/demande via DB
  partagée) — le host API ne gère que les métadonnées, contrainte des
  conteneurs docker à disques distincts.

Client .NET:
- UserFilesApiClient (list/upload/delete/download) pointant vers BlogsApiUrl.
- DTOs UserDirectoryDto/FileEntryDto/AttachmentDto/FileReceivedDto/UploadFile.
- Méthodes d'attachement sur EstimateApiClient et FrontOfficeApiClient.

PostIt (Avalonia):
- Page « Mes fichiers » (naviguer/téléverser/télécharger/supprimer), servant
  aussi de sélecteur pour l'attachement.
- Section pièces jointes dans l'édition du devis (fournisseur) et le détail
  de la demande (client), avec ajout depuis My Files, détachement,
  téléchargement.
- Enregistrement DI + mapping ViewLocator + bouton d'accès.

Tests:
- EstimateEditionPageViewModelTests mis à jour (nouveau ctor fsClient,
  historique d'appels du stub pour les assertions post-envoi).

Nommage HTTP/méthodes en anglais, documentation en français.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-24 16:35:36 +01:00
..
Avatars-Dev reorg 2026-02-28 21:17:54 +00:00
Bills-Dev reorg 2026-02-28 21:17:54 +00:00
Controllers Estimate validation polish + PDF/TeX generation in Yavsc.Api 2026-09-22 03:22:01 +01:00
data reorg 2026-02-28 21:17:54 +00:00
Data-Dev reorg 2026-02-28 21:17:54 +00:00
Extensions Hide inserted estimates from client list; redirect anon to /signin 2026-09-21 14:38:49 +01:00
Helpers Estimate validation polish + PDF/TeX generation in Yavsc.Api 2026-09-22 03:22:01 +01:00
keys reorg 2026-02-28 21:17:54 +00:00
Migrations Gestion des fichiers utilisateur et pièces jointes (demande/devis) 2026-09-24 16:35:36 +01:00
Resources Localisation 2026-07-12 15:18:07 +01:00
Services -Config.Temp 2026-09-18 11:13:44 +01:00
Temp-Dev reorg 2026-02-28 21:17:54 +00:00
ViewComponents Estimate validation polish + PDF/TeX generation in Yavsc.Api 2026-09-22 03:22:01 +01:00
ViewModels Estimate validation polish + PDF/TeX generation in Yavsc.Api 2026-09-22 03:22:01 +01:00
Views Estimate validation polish + PDF/TeX generation in Yavsc.Api 2026-09-22 03:22:01 +01:00
wwwroot accessibility 2026-09-21 10:38:09 +01:00
.eslintrc.json reorg 2026-02-28 21:17:54 +00:00
appsettings-org-template.json new defaults 2026-09-16 18:23:52 +01:00
appsettings-org.json refacto site settings 2026-09-17 23:54:36 +01:00
appsettings-org.Testing.json Revert "repoduces the bug" 2026-07-11 22:17:58 +01:00
AssemblyInfo.cs test(yavsc.org): cover the kid derivation in ComputeKid 2026-07-09 20:28:58 +01:00
Contants.cs An activity interface 2026-08-30 23:55:09 +01:00
CustomModelBinder.cs using clauses cleanup 2026-08-22 03:34:48 +01:00
libman.json reorg 2026-02-28 21:17:54 +00:00
License.md reorg 2026-02-28 21:17:54 +00:00
Makefile reorg 2026-02-28 21:17:54 +00:00
noteLocalization.md reorg 2026-02-28 21:17:54 +00:00
Program.cs using clauses cleanup 2026-08-22 03:34:48 +01:00
Startup.cs -Config.Temp 2026-09-18 11:13:44 +01:00
tempkey.jwk reorg 2026-02-28 21:17:54 +00:00
Yavsc.Org.csproj version update 2026-09-22 18:39:19 +01:00