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

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.FUW00921SF.FUW00921SF01DBean` |
| Layer | Utility (Data Type Bean — provides metadata for web form fields) |
| Module | `FUW00921SF` (Package: `eo.web.webview.FUW00921SF`) |

## 1. Role

### FUW00921SF01DBean.listKoumokuIds()

This method serves as a **metadata provider** for the web form field item names associated with the "Customer Identity Verification Document" data type in the FUW00921SF screen module. Specifically, it returns a static list of two item labels: "Verified Customer Document Code List" (ご本人様確認書類コードリスト) and "Verified Customer Document Name List" (ご本人様確認書類名称リスト). These two items tell the UI framework which sub-fields are available under the composite data type bean for collecting customer identity verification document information during a service order form. The method implements the **Data Type Bean** design pattern — a shared convention across the FUW0092xx screen family where each data type bean exposes a `listKoumokuIds()` static factory method that returns the display labels for its constituent fields. Its **role in the larger system** is that of a shared registry: the parent screen bean (`FUW00921SFBean.listKoumokuIds(String key)`) dispatches to this method when the form field key matches "ご本人様確認書類" (Customer Identity Verification Document), enabling dynamic form rendering without hard-coding field labels at the screen level. The method has no conditional branches and returns the same list regardless of any input.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["listKoumokuIds()"])
    STEP1["Create ArrayList<String> koumokuList"]
    STEP2["Add 'ご本人様確認書類コードリスト' (Verified Customer Document Code List)"]
    STEP3["Add 'ご本人様確認書類名称リスト' (Verified Customer Document Name List)"]
    RETURN1["Return koumokuList"]

    START --> STEP1 --> STEP2 --> STEP3 --> RETURN1
```

This method performs a straightforward linear sequence: instantiate a new `ArrayList<String>`, add two pre-defined item label strings, and return the list. There are no conditional branches, loops, or external calls.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This method takes no parameters; it is a static factory that returns a fixed list. |

No instance fields or external state is read by this method.

## 4. CRUD Operations / Called Services

This method performs no database operations, service component calls, or CRUD actions. It is a pure in-memory data factory that builds and returns a static list.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| — | (none) | — | — | No service or database operations. Pure in-memory list construction. |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:FUW00921 (form field renderer) | `FUW00921SFBean.listKoumokuIds(key)` where `key == "ご本人様確認書類"` → `FUW00921SF01DBean.listKoumokuIds()` | (none — pure metadata, no CRUD) |

The sole caller is `FUW00921SFBean.listKoumokuIds(String key)` at line 5881, which delegates to this static method when the form field key equals "ご本人様確認書類" (Customer Identity Verification Document). This pattern is shared across the FUW0092xx screen family for all data type beans.

## 6. Per-Branch Detail Blocks

**Block 1** — [SET] `(L257)`

> Instantiate the return list.

| # | Type | Code |
|---|------|------|
| 1 | SET | `ArrayList<String> koumokuList = new ArrayList<String>();` // Create the list holding item name strings |

**Block 2** — [EXEC] `(L258)`

> Add the first item label: customer identity verification document code list.

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `koumokuList.add("ご本人様確認書類コードリスト");` // Add "Verified Customer Document Code List" |

**Block 3** — [EXEC] `(L259)`

> Add the second item label: customer identity verification document name list.

| # | Type | Code |
|---|------|------|
| 1 | EXEC | `koumokuList.add("ご本人様確認書類名称リスト");` // Add "Verified Customer Document Name List" |

**Block 4** — [RETURN] `(L260)`

> Return the fully populated list to the caller.

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return koumokuList;` // Return the ArrayList of item name strings |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| ご本人様確認書類コードリスト | Field | Verified Customer Document Code List — the list of document type codes used for identity verification (e.g., driver's license code, passport code) |
| ご本人様確認書類名称リスト | Field | Verified Customer Document Name List — the list of human-readable document names for identity verification display |
| ご本人様確認書類 | Field | Customer Identity Verification Document — the composite form field that collects information about what document the customer presented to verify their identity during service order registration |
| listKoumokuIds | Method | Item name list getter — a standard static factory method pattern across all Data Type Beans (DBean) in the web framework; returns the display labels for the data type's sub-fields |
| Data Type Bean (DBean) | Pattern | A Java class (e.g., `FUW00921SF01DBean`) that models a composite form field. Each DBean provides `listKoumokuIds()` to declare its sub-field labels, `typeModelData(String key, String subkey)` to declare sub-field types, and instance fields for each sub-field value |
| KOUMOKU | Term | Item / field — a Japanese term used throughout the codebase to refer to form field names or data elements in a screen definition |
| FUW00921SF | Module | Screen module code for a customer service order registration form (webview layer) that handles service contract line items, customer verification, and related data entry |
| 親権者続柄リスト | Field | Parent/Guardian Relationship List — another data type bean item in the same screen (sibling to this one) |
| 個人メールアドレスリスト | Field | Personal Email Address List — another data type bean item in the same screen (sibling to this one) |

---
