Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

feat(einsatzdaten): the address model cannot hold a house number, PLZ or Ort

オープン
#401 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
42/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
csharp, sqlite
領域
backend, database

調査の方向性

Start with Incident.cs, Formatting.Address, and the existing migration chain in Sqlite/Migrations.cs (currently v21); then trace the fields through IncidentDataDialogView.axaml, IncidentHeaderSection.cs, and the sync snapshot. The issue leaves open whether District remains distinct from Place, so settle that design question before changing the model. Done means optional address fields are migrated and carried through the form, formatting, PDF header, and sync.

索引モデルが issue の本文から書いたものです。

説明

enhancement

From a portability review of main (ecb341b).

The gap

An incident's location is two free-text fields and nothing else:

// src/LageBuch.Domain/Incident.cs
public string? Street   { get; private set; }   // :40
public string? District { get; private set; }   // :42

Columns incident_meta.street and incident_meta.district; Formatting.Address joins them with ", "; the placeholders are z. B. Hauptstr. 12 and z. B. Puch (IncidentDataDialogView.axaml:31,34). There is no house-number field (it goes in Street by convention), no PLZ, no Ort, no country.

Why it is a limit even in Bavaria

For a Feuerwehr documenting incidents inside its own Gemeinde this is exactly right and adding fields would be noise. It stops working in two cases that are not unusual:

  • Überörtliche Hilfe. The Ort is the discriminating field and there is nowhere to put it. Today it goes in District, which then means something different from one incident to the next.
  • A Landkreis-level ELW. Same problem, permanently.

The PDF header (IncidentHeaderSection.cs:53) and the Einsatzbericht that reaches the Kreisbrandinspektion inherit the ambiguity.

Outside Germany it is a harder stop: UK postcodes and US city/state/ZIP have nowhere to go at all.

Proposal

Add HouseNumber, PostalCode and Place to incident_meta, keep Street and District, and keep every field optional so the current one-Gemeinde workflow stays a two-field form. Formatting.Address grows a canonical join that drops the empties.

.fwincident has a real migration chain (Sqlite/Migrations.cs, currently at v21) so this is a routine additive migration — no data loss, old files open with the new fields null.

Fields follow through to IncidentDataDialogView, IncidentHeaderSection, and the sync snapshot.

Open question

Whether District (Ortsteil) survives as its own field once Place exists, or whether the two collapse. I lean towards keeping both — an Ortsteil is genuinely how a rural incident gets located, and it is not a city district.

主要言語
C#
スター
1
フォーク
3
平均マージ
4時間 34分
マージ済み PR(30日)
182

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

CodeForFire/lagebuch のほかの issue

CodeForFire/lagebuch の issue をすべて見る

似ている issue

C# の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。