# Business Logic — FUW00116SFLogic.selectSvcNm() [878 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.FUW00116SF.FUW00116SFLogic` |
| Layer | Service/Logic (Web presentation layer, within the FUW00116SF screen module) |
| Module | `FUW00116SF` (Package: `eo.web.webview.FUW00116SF`) |

## 1. Role

### FUW00116SFLogic.selectSvcNm()

This method serves as a **service name email formatter**. It compiles a human-readable, multi-line string describing all subscribed telecommunication services (Fiber internet, telephone, television, and mobile) for inclusion in a confirmation email sent to the customer after they have placed a service order on the web screen FUW00114 (contract reservation screen). The method follows a **routing/dispatch pattern** — it reads the selected service types from contract data beans, then branches into dedicated processing sub-routines for each service category (Network, Telephone, Television, Mobile). Within each category, it uses a **builder pattern**, sequentially appending service name texts, discount texts, and accessory option texts to a `StringBuilder`. Contract reservation pending state is handled as a special initial branch. The method acts as a **data transformer** within the web screen module, converting structured bean data into an end-user-facing plain-text email body without any direct database or CRUD operations. It delegates to a suite of internal helper methods (`getKeiyakusvcinfo`, `getEonet`, `getEotel`, `getEotv`, `getMobile`, `getKeiyakuinfo`, `getMansioninfo`, `isSelectmobile`, `selectmobileKiki`, `getServiceFormBean`) to extract data from the input bean hierarchy. The final output is a return-code-delimited multi-line string that the caller (`setFormBeanMailInfo`) writes into the email form bean.
