Added feature for part IPN suggest with category prefixes (#1054)

* Erweiterungstätigkeiten zur IPN-Vorschlagsliste anhand von Präfixen aus den Kategorien

* Umstellung Migrationen bzgl. Multi-Plattform-Support.
Zunächst MySQL, SQLite Statements integrieren.

* Postgre Statements integrieren

* SQL-Formatierung in Migration verbessern

* Erweitere IPN-Suggest um Bauteilbeschreibung.

Die Implementierung berücksichtigt nun zusätzlich die Bauteilbeschreibung zu maximal 150 Zeichen Länge für die Generierung von IPN-Vorschlägen und Inkrementen.

* Anpassungen aus Analyse vornehmen

* IPN-Validierung für Parts überarbeiten

* IPN-Vorschlagslogik um Konfiguration erweitert

* Anpassungen aus phpstan Analyse

* 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.

* Regex-Konfigurationsmöglichkeit für IPN-Vorschläge einführen

Die Einstellungen für die IPN-Vorschlagslogik wurden um eine Regex-Validierung und eine Hilfetext-Konfiguration erweitert. Tests und Änderungen an den Formularoptionen wurden implementiert.

* Match range assert and form limits in suggestPartDigits

* Keep existing behavior with autoAppend suffix by default

* Show the regex hint in the browser validation notice.

* Improved translations

* Removed unnecessary service definition

* Removed german comments

---------

Co-authored-by: Marcel Diegelmann <marcel.diegelmann@gmail.com>
Co-authored-by: Jan Böhmer <mail@jan-boehmer.de>
This commit is contained in:
web-devinition.de 2025-11-03 00:31:47 +01:00 committed by GitHub
parent 14a4f1f437
commit 771857e014
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
34 changed files with 2791 additions and 115 deletions

View file

@ -778,5 +778,83 @@
<target>Aangepaste status van onderdeel</target>
</segment>
</unit>
<unit id="dsG4xTQ" name="category.edit.part_ipn_prefix">
<segment state="translated">
<source>category.edit.part_ipn_prefix</source>
<target>IPN-voorvoegsel van onderdeel</target>
</segment>
</unit>
<unit id="OXeGz1A" name="category.edit.part_ipn_prefix.placeholder">
<segment state="translated">
<source>category.edit.part_ipn_prefix.placeholder</source>
<target>bijv. "B12A"</target>
</segment>
</unit>
<unit id="a1bUsfJ" name="category.edit.part_ipn_prefix.help">
<segment state="translated">
<source>category.edit.part_ipn_prefix.help</source>
<target>Een voorgesteld voorvoegsel bij het invoeren van de IPN van een onderdeel.</target>
</segment>
</unit>
<unit id="a1k7Blf" name="part.edit.tab.advanced.ipn.commonSectionHeader">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.commonSectionHeader</source>
<target>Suggesties zonder toename van onderdelen</target>
</segment>
</unit>
<unit id="2achA.b" name="part.edit.tab.advanced.ipn.partIncrementHeader">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.partIncrementHeader</source>
<target>Suggesties met numerieke verhogingen van onderdelen</target>
</segment>
</unit>
<unit id="a7jKe3c" name="part.edit.tab.advanced.ipn.prefix.description.current-increment">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.description.current-increment</source>
<target>Huidige IPN-specificatie voor het onderdeel</target>
</segment>
</unit>
<unit id="kEco9iX" name="part.edit.tab.advanced.ipn.prefix.description.increment">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.description.increment</source>
<target>Volgende mogelijke IPN-specificatie op basis van een identieke onderdeelbeschrijving</target>
</segment>
</unit>
<unit id="dB1ChKc" name="part.edit.tab.advanced.ipn.prefix_empty.direct_category">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix_empty.direct_category</source>
<target>Het IPN-prefix van de directe categorie is leeg, geef het op in de categorie "%name%"</target>
</segment>
</unit>
<unit id="ec2DiJd" name="part.edit.tab.advanced.ipn.prefix.direct_category">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.direct_category</source>
<target>IPN-prefix van de directe categorie</target>
</segment>
</unit>
<unit id="2e.kJb4" name="part.edit.tab.advanced.ipn.prefix.direct_category.increment">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.direct_category.increment</source>
<target>IPN-voorvoegsel van de directe categorie en een onderdeel specifiek increment</target>
</segment>
</unit>
<unit id="ba1GCoq" name="part.edit.tab.advanced.ipn.prefix.hierarchical.no_increment">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.hierarchical.no_increment</source>
<target>IPN-prefixen met een hiërarchische volgorde van hoofdcategorieën</target>
</segment>
</unit>
<unit id="d1uVFa3" name="part.edit.tab.advanced.ipn.prefix.hierarchical.increment">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.hierarchical.increment</source>
<target>IPN-prefixen met een hiërarchische volgorde van hoofdcategorieën en een specifieke toename voor het onderdeel</target>
</segment>
</unit>
<unit id="a4rPagW" name="part.edit.tab.advanced.ipn.prefix.not_saved">
<segment state="translated">
<source>part.edit.tab.advanced.ipn.prefix.not_saved</source>
<target>Maak eerst een component en wijs het toe aan een categorie: met de bestaande categorieën en hun eigen IPN-prefixen kan de IPN voor het component automatisch worden voorgesteld</target>
</segment>
</unit>
</file>
</xliff>