IPN-Vorschlagslogik erweitert und Bauteil-IPN vereindeutigt

Die IPN-Logik wurde um eine Konfiguration zur automatischen Suffix-Anfügung und die Berücksichtigung von doppelten Beschreibungen bei Bedarf ergänzt. Zudem wurde das Datenmodell angepasst, um eine eindeutige Speicherung der IPN zu gewährleisten.
This commit is contained in:
Marcel Diegelmann 2025-09-29 13:54:13 +02:00
parent 9b90a513c9
commit 654c2ed2af
16 changed files with 165 additions and 117 deletions

View file

@ -2,19 +2,21 @@
namespace App\Validator\Constraints;
use Attribute;
use Symfony\Component\Validator\Constraint;
/**
* @Annotation
* @Target({"PROPERTY"})
*/
#[\Attribute(\Attribute::TARGET_PROPERTY)]
#[Attribute(Attribute::TARGET_CLASS | Attribute::TARGET_PROPERTY)]
class UniquePartIpnConstraint extends Constraint
{
public string $message = 'part.ipn.must_be_unique';
public string $message = 'part.ipn.must_be_unique';
public function getTargets(): string|array
{
return [self::CLASS_CONSTRAINT, self::PROPERTY_CONSTRAINT];
}
public function validatedBy(): string
{
return UniquePartIpnValidator::class;
}
}
}