Checkpoint: - Ajout table opex_bases_repartition (11e table) avec 58 bases de répartition 2026 seedées depuis le JSON source
- Ajout procédure tRPC opex.getBasesRepartition et opex.setBaseRepartition - DsiOpex utilise maintenant les bases de répartition depuis la BDD (priorité BDD > JSON fallback pour 2025) - Total en bas à droite de la vue établissements affiche totalGlobal (somme postes BDD = 1 257 678 €) au lieu de la somme des arrondis par établissement (1 259 641 €) - 0 erreur TypeScript
This commit is contained in:
@@ -160,3 +160,19 @@ export const capexLignes = mysqlTable("capex_lignes", {
|
||||
|
||||
export type CapexLigne = typeof capexLignes.$inferSelect;
|
||||
export type InsertCapexLigne = typeof capexLignes.$inferInsert;
|
||||
|
||||
// ───────────────────────────────────────────────────────────────────────────────
|
||||
// OPEX — Bases de répartition par établissement et par année
|
||||
// (charges de classe 6 utilisées pour le prorata)
|
||||
// ───────────────────────────────────────────────────────────────────────────────
|
||||
export const opexBasesRepartition = mysqlTable("opex_bases_repartition", {
|
||||
id: int("id").autoincrement().primaryKey(),
|
||||
annee: int("annee").notNull(),
|
||||
etablissementCode: varchar("etablissementCode", { length: 50 }).notNull(),
|
||||
etablissementNom: varchar("etablissementNom", { length: 255 }),
|
||||
baseRepartition: decimal("baseRepartition", { precision: 20, scale: 6 }).notNull(),
|
||||
createdAt: timestamp("createdAt").defaultNow().notNull(),
|
||||
});
|
||||
|
||||
export type OpexBaseRepartition = typeof opexBasesRepartition.$inferSelect;
|
||||
export type InsertOpexBaseRepartition = typeof opexBasesRepartition.$inferInsert;
|
||||
|
||||
Reference in New Issue
Block a user