- Champ entryCause sur Bovine (enum App\Enum\CauseEntree : Achat/Naissance/PretOuPension) - Sélecteur "Cause d'entrée" sur le formulaire de saisie (default Achat, required) - ednotif_confirmed_at sur Bovine : timestamp set par le sync EDNOTIF la première fois qu'un bovin remonte dans getInventory. Backfill des bovins existants au jour de la migration. - Inventaire (page + export + stats) filtre les bovins encore "en attente EDNOTIF" : ils n'apparaissent qu'une fois confirmés par le sync. - getter getConfirmedBovineCount sur Reception, exposé en reception:read. - Tableau Historique full-width sur /entry-exit listant les entrées validées, avec filtres de colonnes (numéro, date, fournisseur), compteur Confirmés/Saisis, et badge de statut "Confirmée" / "EDNOTIF en attente". - Tableau récap de l'écran de saisie passé en useDataTableServerState pour bénéficier du loading et de la pagination serveur. - Validation entrée : confirm window obligatoire, message renforcé en cas d'écart entre saisis et déclarés. - Pattern projet "submitted" sur le formulaire d'ajout pour le visuel required. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
27 lines
612 B
PHP
27 lines
612 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace DoctrineMigrations;
|
|
|
|
use Doctrine\DBAL\Schema\Schema;
|
|
use Doctrine\Migrations\AbstractMigration;
|
|
|
|
final class Version20260429101011 extends AbstractMigration
|
|
{
|
|
public function getDescription(): string
|
|
{
|
|
return "Ajout de la cause d'entrée (enum CauseEntree EDNOTIF) sur bovine.";
|
|
}
|
|
|
|
public function up(Schema $schema): void
|
|
{
|
|
$this->addSql('ALTER TABLE bovine ADD entry_cause VARCHAR(1) DEFAULT NULL');
|
|
}
|
|
|
|
public function down(Schema $schema): void
|
|
{
|
|
$this->addSql('ALTER TABLE bovine DROP entry_cause');
|
|
}
|
|
}
|