Table of Contents

Class Report

Namespace
UsluzionicaServer.Domain.Entities
Assembly
UsluzionicaServer.dll

Prijava oglasa ili korisnika.

META JE DVA NULLABLE FK-a, NE POLIMORFNI int TargetId. Polimorfni ključ ne može biti strani ključ, pa baza ne bi imala nikakav način da proveri da meta uopšte postoji — a prijava koja pokazuje na obrisan red je gore nego nikakva, jer zauzima mesto u redu za admina i ne može se rešiti. Ovako CHECK ograničenje traži da je popunjeno tačno jedno polje, a FK čuva da ono na šta pokazuje zaista postoji.

Redovi se NE brišu kad se meta ukloni — to je revizijski trag. Zato su svi FK-ovi Restrict; oglasi se ionako arhiviraju, ne brišu fizički (ListingService.DeleteAsync postavlja Status = Archived).

public class Report
Inheritance
Report
Inherited Members

Properties

CreatedAt
Id
Listing
ListingId

Popunjeno kad je TargetType = Listing.

Note

Slobodna napomena prijavioca. Jedini kontekst kad je razlog „Drugo".

Reason
ReportedUser
ReportedUserId

Popunjeno kad je TargetType = User.

Reporter
ReporterId

Ko prijavljuje.

ResolutionNote

Beleška admina o odluci. Vidi se samo u admin panelu.

ResolvedAt
ResolvedBy
ResolvedById
Status
TargetType