# Business Logic — KKW00810SF02DBean.listKoumokuIds() [15 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.KKW00810SF.KKW00810SF02DBean` |
| Layer | Utility / Data Bean (inferred from package `eo.web.webview`) |
| Module | `KKW00810SF` (Package: `eo.web.webview.KKW00810SF`) |

## 1. Role

### KKW00810SF02DBean.listKoumokuIds()

This method is a static factory that returns the complete list of item identifiers (field display names) used by the data-type bean `KKW00810SF02DBean`, which is responsible for the "Fixed IP Address Payout Result Details" screen item set in the K-Opticom telecom billing/order fulfillment system. The item names correspond to a fixed-IP address service contract line-item view, covering topics such as fixed IP address configuration, subnet mask, alias numbering, contract internal classification numbers, registration timestamps, aggregation/central office codes, and contract status. It serves as a shared metadata provider — multiple screen beans (e.g., `KKW00810SFBean.listKoumokuIds(String key)`) delegate to this method when the "Fixed IP Address Payout Result Details" data type is requested, enabling uniform rendering of column headers and field labels across the web UI. The method implements a simple metadata-provider pattern: it builds a hardcoded ordered list and returns it, with no conditional branching or external I/O.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["listKoumokuIds()"])
    STEP1["Create ArrayList
koumokuList"]
    STEP2["Add item 1:
固定IPアドレス（アウト）"]
    STEP3["Add item 2:
更新年月日時分秒
（固定IPアドレス）"]
    STEP4["Add item 3:
ネットマスク"]
    STEP5["Add item 4:
エイリアニング番号"]
    STEP6["Add item 5:
サービス契約内訳番号"]
    STEP7["Add item 6:
KK0161世代登録
年月日時分秒"]
    STEP8["Add item 7:
サービス契約回線内訳番号"]
    STEP9["Add item 8:
集約局・中心局コード"]
    STEP10["Add item 9:
固定IP取得種別コード"]
    STEP11["Add item 10:
使用回数"]
    STEP12["Add item 11:
サービス契約内訳ステータス"]
    STEP13["Return koumokuList"]

    START --> STEP1
    STEP1 --> STEP2
    STEP2 --> STEP3
    STEP3 --> STEP4
    STEP4 --> STEP5
    STEP5 --> STEP6
    STEP6 --> STEP7
    STEP7 --> STEP8
    STEP8 --> STEP9
    STEP9 --> STEP10
    STEP10 --> STEP11
    STEP11 --> STEP12
    STEP12 --> STEP13
```

**Constant Resolution:** This method contains no constant-based conditional branches. All item names are hardcoded Japanese display strings. No constant file lookups are required.

**Processing Description:**
1. Instantiate a new `ArrayList<String>` named `koumokuList`.
2. Append 11 hardcoded Japanese string literals representing field display names for fixed-IP address service contract data.
3. Return the populated list.

There are no conditional branches, loops, or external method calls. The processing is a flat linear sequence of `add()` operations.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This is a static method with no parameters. |
| - | (implicit) | - | The method does not read any instance fields or external state. It is fully self-contained. |

## 4. CRUD Operations / Called Services

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| — | (none) | — | — | This method performs no database or service component operations. It is a pure in-memory metadata provider that builds and returns a list of display name strings. |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Bean: `KKW00810SFBean` | `listKoumokuIds(key)` where `key.equals("固定IPアドレス払出結果明細")` → `KKW00810SF02DBean.listKoumokuIds()` | (none — pure metadata return) |

**Caller Details:**
- The primary caller is `KKW00810SFBean.listKoumokuIds(String key)` (line 2584 in `KKW00810SFBean.java`), which dispatches to `KKW00810SF02DBean.listKoumokuIds()` when the requested data type key is `"固定IPアドレス払出結果明細"` ("Fixed IP Address Payout Result Details"). This bean-level dispatcher is used by the UI layer to dynamically resolve column headers and field labels for different data type screens.

## 6. Per-Branch Detail Blocks

> This method has no conditional branches. The entire method is a single sequential block.

**Block 1** — [SEQUENTIAL] `(no condition)` (L650–L663)

> Instantiate a list, populate it with 11 fixed-IP address service item names in display-order, and return.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ArrayList<String> koumokuList = new ArrayList<String>();` // Create empty list for item names [L650] |
| 2 | EXEC | `koumokuList.add("固定IPアドレス（アウト）");` // Add item: Fixed IP Address (Out) [-> item index 0] [L651] |
| 3 | EXEC | `koumokuList.add("更新年月日時分秒（固定IPアドレス）");` // Add item: Update Year/Month/Day/Time/Min/Sec (Fixed IP Address) [L652] |
| 4 | EXEC | `koumokuList.add("ネットマスク");` // Add item: Net Mask [L653] |
| 5 | EXEC | `koumokuList.add("エイリアニング番号");` // Add item: Aliasing Number [L654] |
| 6 | EXEC | `koumokuList.add("サービス契約内訳番号");` // Add item: Service Contract Internal Classification Number [L655] |
| 7 | EXEC | `koumokuList.add("KK0161世代登録年月日時分秒");` // Add item: KK0161 Generation Registration Year/Month/Day/Time/Min/Sec [L656] |
| 8 | EXEC | `koumokuList.add("サービス契約回線内訳番号");` // Add item: Service Contract Line Internal Classification Number [L657] |
| 9 | EXEC | `koumokuList.add("集約局・中心局コード");` // Add item: Aggregation Office / Central Office Code [L658] |
| 10 | EXEC | `koumokuList.add("固定IP取得種別コード");` // Add item: Fixed IP Acquisition Type Code [L659] |
| 11 | EXEC | `koumokuList.add("使用回数");` // Add item: Usage Count [L660] |
| 12 | EXEC | `koumokuList.add("サービス契約内訳ステータス");` // Add item: Service Contract Internal Classification Status [L661] |
| 13 | RETURN | `return koumokuList;` // Return the 11-item list [L662] |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| 固定IPアドレス（アウト） | Field | Fixed IP Address (Outbound) — the static outbound IP address assigned to the customer's service |
| 更新年月日時分秒 | Field | Update Year/Month/Day/Time/Minute/Second — timestamp of the last update to the record |
| ネットマスク | Field | Net Mask — the subnet mask associated with the fixed IP address configuration |
| エイリアニング番号 | Field | Aliasing Number — an alias/secondary identifier for the IP address assignment |
| サービス契約内訳番号 | Field | Service Contract Internal Classification Number — internal breakdown/line item number within a service contract |
| KK0161世代登録年月日時分秒 | Field | KK0161 Generation Registration Timestamp — the registration date/time for the KK0161 generation of the record (legacy system generation identifier) |
| サービス契約回線内訳番号 | Field | Service Contract Line Internal Classification Number — internal line-item breakdown number for a service contract |
| 集約局・中心局コード | Field | Aggregation Office / Central Office Code — the telecom exchange/central office code associated with the service |
| 固定IP取得種別コード | Field | Fixed IP Acquisition Type Code — code indicating how the fixed IP address was acquired (e.g., new registration, modification) |
| 使用回数 | Field | Usage Count — the number of times the service/item has been used |
| サービス契約内訳ステータス | Field | Service Contract Internal Classification Status — the current status of the service contract line item |
| データタイプビューン | Field | Data Type Bean — a Java bean class that provides metadata (item names, types) for a specific screen's data type |
| 固定IPアドレス払出結果明細 | Business term | Fixed IP Address Payout Result Details — the screen/data view that displays the results of fixed IP address assignment/payout operations |
| 項目名 | Field | Item Name — the display label/identifier for a field or column in the UI |
| KKW00810SF | Module | K-Opticom Web Fixed IP Address Service — the module handling fixed IP address service contract operations |
