From 4d2a584e08931d6da4b6176a7be4be5fe293e5c7 Mon Sep 17 00:00:00 2001 From: Viktor Miller Date: Fri, 16 Jan 2026 11:32:56 +0900 Subject: [PATCH] feat(02-01): extract additional work sections from legacy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added 6 additional work sections: Montage, Schrank, Elektriker, Dübelarbeiten, Packarbeiten, Anfahrt - Each section includes label, fields with type information - Field types: checkbox, abbau_aufbau, checkbox_anzahl, text - Total: 32 additional work fields across 6 sections - Preserves exact field names and structure from legacy Co-Authored-By: Claude Sonnet 4.5 --- includes/class-furniture-data.php | 68 +++++++++++++++++++++++++++++-- 1 file changed, 65 insertions(+), 3 deletions(-) diff --git a/includes/class-furniture-data.php b/includes/class-furniture-data.php index 576b4f4..a6479ce 100644 --- a/includes/class-furniture-data.php +++ b/includes/class-furniture-data.php @@ -225,10 +225,72 @@ class Umzugsliste_Furniture_Data { * Returns the additional work sections that appear after the room furniture inventory * Note: Sonstiges is a free text field (textarea), not included here * - * @return array Additional work sections + * @return array Additional work sections with their field structures */ public static function get_additional_work() { - // To be populated in Task 3 - return array(); + return array( + 'montage' => array( + 'label' => 'Montagearbeiten', + 'fields' => array( + array( 'name' => 'Montagearbeiten fallen nicht an', 'type' => 'checkbox' ), + array( 'name' => 'Ich habe spezielle Montagewünsche', 'type' => 'checkbox' ), + ), + ), + 'schrank' => array( + 'label' => 'Schrank', + 'fields' => array( + array( 'name' => 'Schrankwand', 'type' => 'abbau_aufbau' ), + array( 'name' => 'Stollenwand', 'type' => 'abbau_aufbau' ), + array( 'name' => 'Wohnzimmerschrank', 'type' => 'abbau_aufbau' ), + array( 'name' => 'Schiebetürenschrank', 'type' => 'abbau_aufbau' ), + array( 'name' => 'Regale', 'type' => 'abbau_aufbau' ), + array( 'name' => 'Küchenzeile', 'type' => 'abbau_aufbau' ), + ), + ), + 'elektriker' => array( + 'label' => 'Elektriker/Installateur', + 'fields' => array( + array( 'name' => 'E-Herd', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Spülmaschine', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Waschmaschine', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Spüle', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Lampen', 'type' => 'checkbox_anzahl' ), + ), + ), + 'duebelarbeiten' => array( + 'label' => 'Dübelarbeiten', + 'fields' => array( + array( 'name' => 'Regale', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Bilder', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Hängeschränke', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Garderobe', 'type' => 'checkbox_anzahl' ), + array( 'name' => 'Gardinenleiste', 'type' => 'checkbox_anzahl' ), + ), + ), + 'packarbeiten' => array( + 'label' => 'Packarbeiten', + 'fields' => array( + array( 'name' => 'Wir packen Alles selbst ein.', 'type' => 'checkbox' ), + array( 'name' => 'Wir möchten, dass Sie Alles einpacken.', 'type' => 'checkbox' ), + array( 'name' => 'Wir möchten nur Zerbrechliches gepackt haben.', 'type' => 'checkbox' ), + array( 'name' => 'Wir möchten, dass Sie Alles ein- und auspacken.', 'type' => 'checkbox' ), + array( 'name' => 'Wir benötigen Umzugskartons (Anzahl).', 'type' => 'text' ), + array( 'name' => 'Wir benötigen Kleiderboxen (Anzahl).', 'type' => 'text' ), + ), + ), + 'anfahrt' => array( + 'label' => 'Anfahrt', + 'fields' => array( + array( 'name' => 'LKW kann direkt vor den Eingang fahren - Beladestelle', 'type' => 'checkbox', 'key' => 'LKWBeladestelle' ), + array( 'name' => 'LKW kann direkt vor den Eingang fahren - Entladestelle', 'type' => 'checkbox', 'key' => 'LKWEntladestelle' ), + array( 'name' => 'Parkverbotsschilder aufstellen - Beladestelle', 'type' => 'checkbox', 'key' => 'ParkBeladestelle' ), + array( 'name' => 'Parkverbotsschilder aufstellen - Entladestelle', 'type' => 'checkbox', 'key' => 'ParkEntladestelle' ), + array( 'name' => 'Die Anfahrt ist eng bzw. nicht möglich - Beladestelle', 'type' => 'checkbox', 'key' => 'AnfahrtBeladestelle' ), + array( 'name' => 'Die Anfahrt ist eng bzw. nicht möglich - Entladestelle', 'type' => 'checkbox', 'key' => 'AnfahrtEntladestelle' ), + array( 'name' => 'Beladestelle Wegstrecke Haus-LKW in Meter', 'type' => 'text', 'key' => 'Abtragewegbelade' ), + array( 'name' => 'Entladestelle Wegstrecke LKW-Haus in Meter', 'type' => 'text', 'key' => 'Abtragewegentlade' ), + ), + ), + ); } }