# Business Logic — FUW00928SF01DBean.listKoumokuIds() [6 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.FUW00928SF.FUW00928SF01DBean` |
| Layer | Webview / Data Type Bean (View/DTO layer) |
| Module | `FUW00928SF` (Package: `eo.web.webview.FUW00928SF`) |

## 1. Role

### FUW00928SF01DBean.listKoumokuIds()

This method serves as a **static data-type bean field definition provider** for a telecom carrier selection list screen within the EO Optical service order management system. It is part of the data-type bean architecture where each `FUWxxxxxSF0NDBean` class represents a specific data type view model (a structured list of selectable items displayed on a web form). Specifically, `FUW00928SF01DBean` handles the "Telecommunications Carrier List" (通信事業者リスト) data type — the field items exposed for carrier code and carrier name selection in service order forms.

The method implements a **static factory pattern**: it is declared `static` and returns a pre-built `ArrayList<String>` containing fixed field label identifiers. This list is used by the view layer (JSP/tag templates) to dynamically render column headers or dropdown options for a carrier lookup table. The parent class `FUW00928SFBean` delegates to this method when the user selects the "Telecommunications Carrier List" option, acting as a router among five distinct data-type beans (carrier list, bitmap, EO Phone List, backup service, and contents information).

This is a **shared utility** called by the parent bean's dispatch method (`listKoumokuIds(String key)`) and potentially by other modules that reference the same `FUW00928SF` package for carrier-related display data. It has no conditional branches, no external dependencies, and no CRUD operations — it simply returns a constant set of two field names used across the EO Optical service order entry workflow.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["listKoumokuIds()"])
    N1["Initialize ArrayList koumokuList"]
    N2["Add 通信事業者コード to list"]
    N3["Add 通信事業者名 to list"]
    N4["Return koumokuList"]
    END_NODE(["Return ArrayList String"])

    START --> N1 --> N2 --> N3 --> N4 --> END_NODE
```

The method follows a simple linear execution path:

1. **Initialize** — A new `ArrayList<String>` named `koumokuList` is instantiated to hold field label strings.
2. **Add "通信事業者コード"** — The telecommunications carrier code field label is appended. This represents the unique identifier assigned to a telecommunications carrier (e.g., NTT East, KDDI, SoftBank).
3. **Add "通信事業者名"** — The telecommunications carrier name field label is appended. This represents the human-readable name of the carrier.
4. **Return** — The populated list is returned to the caller.

There are no conditional branches, loops, error handling, or method calls beyond local object construction and `ArrayList.add()`.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This is a static method with no parameters. It returns a pre-defined list of field labels regardless of caller input. |

## 4. CRUD Operations / Called Services

This method performs no CRUD operations and calls no external services. It only constructs and returns a local `ArrayList` with hardcoded strings.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| — | — | — | — | No database or service calls — pure data-type bean field list factory |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen: FUW00928SF (EO Optical Order Entry) | `FUW00928SFBean.listKoumokuIds("通信事業者リスト")` -> `FUW00928SF01DBean.listKoumokuIds()` | — |

**Caller Details:**

The method is invoked by `FUW00928SFBean.listKoumokuIds(String key)` when the `key` parameter equals `"通信事業者リスト"` (Telecommunications Carrier List). The parent bean acts as a dispatcher that routes requests to five different data-type beans based on the key value. This method specifically handles the carrier code and carrier name list for the EO Optical service order entry screen. No other direct callers were found across the codebase.

## 6. Per-Branch Detail Blocks

**Block 1** — [ALWAYS EXECUTED] (L256)

> Method entry: static factory returning a constant list of field labels for the telecommunications carrier selection view.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ArrayList<String> koumokuList = new ArrayList<String>()` — Instantiate an empty list to hold field label strings |
| 2 | SET | `koumokuList.add("通信事業者コード")` // 通信事業者コード = Telecommunications Carrier Code [-> Field label: carrier code identifier] |
| 3 | SET | `koumokuList.add("通信事業者名")` // 通信事業者名 = Telecommunications Carrier Name [-> Field label: carrier name identifier] |
| 4 | RETURN | `return koumokuList;` — Return the populated list |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `FUW00928SF01DBean` | Class | Data-type bean for the Telecommunications Carrier List — a DTO-like view model that holds field label strings for a specific screen section |
| `listKoumokuIds` | Method | Returns the list of field names (column headers) for a data-type bean |
| 通信事業者コード | Field | Telecommunications Carrier Code — the unique identifier code assigned to a telecom carrier (e.g., NTT, KDDI, SoftBank) in the order system |
| 通信事業者名 | Field | Telecommunications Carrier Name — the human-readable name of the telecommunications carrier |
| 通信事業者リスト | Field | Telecommunications Carrier List — the screen option/section key that triggers this data-type bean in the parent bean's dispatcher |
| DBean | Acronym | Data-type Bean — a view-layer class that defines the structure of a selectable list displayed on a form |
| EO Optical | Business term | EO Hikari (EO光) — NTT East's fiber-to-the-home (FTTH) broadband service brand in the Kanto region |
| FUW00928SF | Module | EO Optical service order entry and management feature module |
| 項目名 (koumokumei) | Field | Item name — the label or display name used for form fields, table columns, or dropdown options |
