import { ClientSchema } from '#database/schema' import { belongsTo, column, hasMany } from '@adonisjs/lucid/orm' import type { BelongsTo, HasMany } from '@adonisjs/lucid/types/relations' import Organization from '#models/organization' import Invoice from '#models/invoice' export default class Client extends ClientSchema { /** * Le champ `address` (existant, string libre) est conservé pour les * clients importés avant l'éditeur natif. Les champs structurés * (`address_line_1`, `address_zip`, etc.) viennent de la migration * `1778800000100_enrich_clients_for_invoicing` + alignement Lucid via * `1779000000100_rename_client_address_line_columns`. Le nouveau code * lit en priorité les champs structurés et retombe sur `address` s'ils * sont vides. */ @belongsTo(() => Organization) declare organization: BelongsTo @hasMany(() => Invoice) declare invoices: HasMany }