@company-manager/docs
Support

Mises à Jour

Guide des mises à jour et des changements de Company Manager.

Mises à Jour

Guide complet pour gérer les mises à jour de Company Manager.

Dernière Version

v1.0.0 (Janvier 2024)

Nouvelles Fonctionnalités

  • Support multi-tenant complet
  • Gestion avancée des commandes B2B/B2C
  • Intégration des paiements Stripe et PayPal
  • Tableau de bord personnalisable
  • API REST complète

Corrections

  • Optimisation des performances de recherche
  • Correction des problèmes de cache
  • Amélioration de la gestion des erreurs

Processus de Mise à Jour

1. Préparation

# Backup de la base de données
pg_dump company_manager > backup_pre_update.sql

# Backup des fichiers
tar -czf config_backup.tar.gz ./config

2. Mise à Jour du Code

# Mise à jour du code
git pull origin main

# Installation des dépendances
bun install

# Génération des types Prisma
bun prisma generate

3. Migration de la Base de Données

# Application des migrations
bun prisma migrate deploy

# Vérification
bun prisma db seed

Breaking Changes

v1.0.0

// Avant
interface User {
  id: string;
  role: string;
}

// Après
interface User {
  id: string;
  role: UserRole;
  tenantId: string;
}

enum UserRole {
  ADMIN = 'ADMIN',
  USER = 'USER',
}

Migration des Données

// Script de migration
async function migrateUsers() {
  const users = await prisma.user.findMany();
  
  for (const user of users) {
    await prisma.user.update({
      where: { id: user.id },
      data: {
        role: user.role === 'admin' ? 'ADMIN' : 'USER',
        tenantId: defaultTenantId,
      },
    });
  }
}

Rollback

Procédure de Rollback

# Restauration de la base de données
psql company_manager < backup_pre_update.sql

# Retour à la version précédente
git checkout v0.9.0

# Réinstallation des dépendances
bun install

Vérification Post-Rollback

// Test de vérification
async function verifyRollback() {
  // Vérification de la base de données
  const dbVersion = await prisma.migration.findFirst({
    orderBy: { appliedAt: 'desc' },
  });
  
  // Vérification des données
  const users = await prisma.user.count();
  const orders = await prisma.order.count();
  
  return {
    dbVersion: dbVersion?.name,
    userCount: users,
    orderCount: orders,
  };
}

Maintenance

Nettoyage

# Nettoyage des caches
bun clean

# Nettoyage des fichiers temporaires
rm -rf .next
rm -rf node_modules/.cache

Optimisation

# Optimisation de la base de données
vacuumdb --analyze company_manager

# Reconstruction des index
bun prisma db execute --file ./scripts/reindex.sql

Changelog

Format

## [1.0.0] - 2024-01-29

### Added
- Support multi-tenant
- Intégration des paiements
- API REST

### Changed
- Architecture des rôles utilisateur
- Structure de la base de données

### Fixed
- Performance des requêtes
- Gestion du cache

Notifications

Canaux de Communication

  1. Email pour les mises à jour majeures
  2. Notifications in-app pour les mises à jour mineures
  3. Documentation des changements

Template de Notification

interface UpdateNotification {
  version: string;
  type: 'major' | 'minor' | 'patch';
  changes: {
    title: string;
    description: string;
    impact: 'high' | 'medium' | 'low';
  }[];
  requiredActions?: string[];
}

Support

Ressources

Contact