# Business Logic — FUW02101SFLogic.init() [146 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `eo.web.webview.FUW02101SF.FUW02101SFLogic` |
| Layer | Web Business Logic (Service Layer — webview package) |
| Module | `FUW02101SF` (Package: `eo.web.webview.FUW02101SF`) |

## 1. Role

### FUW02101SFLogic.init()

This method is the **initial display processing** (初期処理) for the **Mail Box Capacity Addition Order** (メールボックス契約容量追加申込) screen (FUW02101). It prepares the entire view model for a customer who is requesting to add extra mail box storage capacity to their existing eo hikari service contract. Specifically, it retrieves the customer's current service contract data (including optional sub-service contracts), queries backend price/course information for the available capacity addition options, maps the pricing plan list and initial fee list into the form bean, and computes the addable capacity range. It enforces business validity — the addable capacity must be greater than zero and the current capacity must not exceed 200 MB — and sets up the paid/free flag that determines whether a price table or a free-message is rendered. The method always returns `true`, indicating successful initialization and that the view should be displayed to the user. It is the **entry point** (initial action handler) for screen `FUW02101`, invoked automatically by the X31S framework's standard screen dispatch mechanism when the user navigates to the capacity addition request screen.

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["init() entry"])
    CHECK_OROSI["checkOrosi / Device check"]
    GET_COMMON["getCommonInfoBean / Get shared form bean"]
    GET_COMMONINFO["getCommoninfoBeanInfo / Fetch customer contract data"]
    EXTRACT_BEANS["Extract: svcKeiInfoBean, opSvcKeiInfoBean, sbopSvcKeiInfoBean"]
    CHECK_SVC["checkSvcData / Validate service data"]
    GET_SVCBEAN["getServiceFormBean / Get service form bean"]
    BUILD_PARAM["Build paramMap with USECASE_ID_FUSV0051"]
    BUILD_MAPPER["Create FUSV0051_FUSV0051OPDBMapper"]
    SET_01SC["setFUSV005101SC / Price Course + Sub-option Service Consent"]
    SET_02SC["setFUSV005102SC / Price Plan Fixed Unit Price (option charge) list"]
    SET_01CC["setFUSV005101CC / Initial Fee List CC"]
    INVOKE["invokeService / Call backend services"]
    TRY_BLOCK_START{"invokeService"}
    CATCH_BLOCK["catch JCCWebServiceException / throw JCCBusinessException"]
    GET_01SC["getFUSV005101SC / Map: initial capacity, max capacity, step value, free capacity"]
    GET_02SC["getFUSV005102SC / Map: price plan list"]
    SET_NOW_POP["Set NOW_POP_ID"]
    SET_NOW_MLAD["Set NOW_MLAD"]
    SET_NOW_MLBOX["Set NOW_MLBOX_CAPA"]
    SET_MANSION["setMansionDiv / Mansion division check"]
    CALC_ADD_CAPA["mlboxKeiCapa = mlboxMaxCapa - mlboxCapa"]
    CONVERT_GB["If mlboxKeiCapa > 1024: convert to GB"]
    SET_ADD_PSB_CAPA["Set ADD_PSB_MLBOX_CAPA"]
    CHECK_MLBOX_GT0{"mlboxKeiCapa <= 0?"}
    CHECK_MLBOX_CAPA{"mlboxCapa > 200?"}
    THROW_0103["throw ERROR_CODE_0103 (Contract error)"]
    THROW_0102["throw ERROR_CODE_0102 (Contract state error)"]
    SET_NEW_ADD["Set NEW_ADD_DIV"]
    CREATE_OPTION["createOptionData / Build capacity option buttons"]
    SET_PAY_FLG["setPayFlg / Paid/free flag"]
    CHECK_PAY{"payFlag?"}
    SET_FREE_PRICE["setFreePrcInfoMap / Set free price info"]
    MAP_PRICING["setPrcInfoArea / Map pricing table"]
    SET_NOW_DAY["setPrcDspNowDay / Set billing display current date"]
    SET_NEXT_SCREEN["Set NEXT_SCREEN_ID / NEXT_SCREEN_NAME"]
    RETURN_END(["return true"])

    START --> CHECK_OROSI
    CHECK_OROSI --> GET_COMMON
    GET_COMMON --> GET_COMMONINFO
    GET_COMMONINFO --> EXTRACT_BEANS
    EXTRACT_BEANS --> CHECK_SVC
    CHECK_SVC --> GET_SVCBEAN
    GET_SVCBEAN --> BUILD_PARAM
    BUILD_PARAM --> BUILD_MAPPER
    BUILD_MAPPER --> SET_01SC
    SET_01SC --> SET_02SC
    SET_02SC --> SET_01CC
    SET_01CC --> TRY_BLOCK_START
    TRY_BLOCK_START --> INVOKE
    INVOKE --> GET_01SC
    INVOKE --> CATCH_BLOCK
    GET_01SC --> GET_02SC
    CATCH_BLOCK --> CATCH_END(["catch: error"])
    GET_02SC --> SET_NOW_POP
    SET_NOW_POP --> SET_NOW_MLAD
    SET_NOW_MLAD --> SET_NOW_MLBOX
    SET_NOW_MLBOX --> SET_MANSION
    SET_MANSION --> CALC_ADD_CAPA
    CALC_ADD_CAPA --> CONVERT_GB
    CONVERT_GB --> CHECK_MLBOX_GT0
    CHECK_MLBOX_GT0 -->|Yes| THROW_0103
    CHECK_MLBOX_GT0 -->|No| CHECK_MLBOX_CAPA
    CHECK_MLBOX_CAPA -->|Yes| THROW_0102
    CHECK_MLBOX_CAPA -->|No| SET_NEW_ADD
    SET_NEW_ADD --> CREATE_OPTION
    CREATE_OPTION --> SET_PAY_FLG
    SET_PAY_FLG --> CHECK_PAY
    CHECK_PAY -->|False| SET_FREE_PRICE
    CHECK_PAY -->|True| MAP_PRICING
    SET_FREE_PRICE --> MAP_PRICING
    MAP_PRICING --> SET_NOW_DAY
    SET_NOW_DAY --> SET_NEXT_SCREEN
    SET_NEXT_SCREEN --> RETURN_END
```

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| - | (none) | - | This method takes no parameters. All required data is obtained from shared form beans (commoninfo, service form) populated by the X31S framework during request dispatch. |

**External State / Instance Fields Accessed:**

| # | Field | Business Description |
|---|-------|---------------------|
| 1 | `this` (self) | Passed to `JFUWebCommon.checkOrosi(this)`, `setPrcDspNowDay(this)`, `getScreenId(this)`, `setPayFlg(bean, outputMap)` — the logic instance provides access to the shared business logic context |

## 4. CRUD Operations / Called Services

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| R | `JFUWebCommon.checkOrosi` | - | - | Reads device/environment check data — validates the accessing terminal (device check) |
| R | `FUW02101SFLogic.getCommoninfoBeanInfo` | - | CommonInfo table (shared form bean) | Retrieves customer contract data: service contract info, option service contract info, sub-option service contract info |
| R | `FUW02101SFLogic.checkSvcData` | - | - | Reads and validates option service contract info bean (null check) |
| R | `FUSV0051_FUSV0051OPDBMapper.setFUSV005101SC` | FUSV005101SC | `EKK1881A010CBS` (Price Course: Sub-option Service Consent Details) | Queries the price course and sub-option service consent details — returns initial capacity, max capacity, step value, free capacity |
| R | `FUSV0051_FUSV0051OPDBMapper.setFUSV005102SC` | FUSV005102SC | `EKK0601B001CBS` (Price Plan Fixed Unit Price List) | Queries the optional charge (option submission fee) price plan list |
| R | `FUSV0051_FUSV0051OPDBMapper.setFUSV005101CC` | FUSV005101CC | Initial fee details | Prepares the initial fee list context for display |
| R | `FUSV0051_FUSV0051OPDBMapper.getFUSV005101SC` | FUSV005101SC | `EKK1881A010CBS` | Maps the backend response: initial capacity (SHK_CAPA), add capacity step upper limit (ADD_CAPA_ZOUBUN_UPPL_VALUE), add capacity step value (ADD_CAPA_ZOUBUN_VALUE), free capacity (MRYO_CAPA) |
| R | `FUSV0051_FUSV0051OPDBMapper.getFUSV005102SC` | FUSV005102SC | `EKK0601B001CBS` | Maps the price plan fixed unit price (option charge) list |
| C | `FUW02101SFLogic.createOptionData` | - | - | Creates the capacity addition option button data for display (computes addable capacity and pricing per tier) |
| R | `FUW02101SFLogic.getMansionDiv` | - | - | Determines the mansion division flag based on contract data |
| R | `FUW02101SFLogic.setPayFlg` | - | - | Determines the paid/free flag based on option data and pricing |
| - | `JFUWebCommon.setPrcInfoArea` | - | - | Maps the pricing area display data to the form bean (builds price table UI model) |
| - | `JFUWebCommon.setPrcDspNowDay` | - | - | Sets the current date for the billing display section |
| - | `JFUWebCommon.setFreePrcInfoMap` | - | - | Sets free price information map when no charge applies |
| - | `JFUWebCommon.getScreenId` | - | - | Retrieves the next screen ID (FUW02101) for post-init navigation |

## 5. Dependency Trace

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Screen:FUW02101 (X31S Web Screen) | `FUW02101SFChecker.checkMethod` (check action) -> X31S dispatch -> `FUW02101SFLogic.init` | `setFUSV005101SC [R] EKK1881A010CBS`, `setFUSV005102SC [R] EKK0601B001CBS`, `setFUSV005101CC [R] Initial Fee` |

**Notes on call chain:**
- `FUW02101SFChecker` implements `X31SGuiCheckBase` and delegates to `FUW02101SFLogic` for business processing.
- The X31S framework automatically routes screen actions (e.g., `init`, `cfm`, `mskm`, `back`) to the corresponding methods in `FUW02101SFLogic` based on the screen ID `FUW02101`.
- No direct Java callers reference `init()` by name — it is invoked through the framework's convention-based dispatch.

## 6. Per-Branch Detail Blocks

**Block 1** — [SET/EXEC] `(L114) Device check`

> Performs device (equipment) check using the shared common check utility.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `JFUWebCommon.checkOrosi(this)` |

---

**Block 2** — [SET/EXEC] `(L117) Get shared form bean`

> Acquires the shared form bean for accessing common customer data.

| # | Type | Code |
|---|------|------|
| 1 | SET | `commoninfoBean = super.getCommonInfoBean()` |

---

**Block 3** — [SET/EXEC] `(L120) Get customer contract info from shared form bean`

> Retrieves customer contract data and extracts three key beans: service contract info, option service contract info, and sub-option service contract info.

| # | Type | Code |
|---|------|------|
| 1 | SET | `resultMap = getCommoninfoBeanInfo(commoninfoBean)` |
| 2 | SET | `svcKeiInfoBean = (X31SDataBeanAccess)resultMap.get(CommonInfoCFConst.SVC_KEI_INFO)` |
| 3 | SET | `opSvcKeiInfoBean = (X31SDataBeanAccess)resultMap.get(CommonInfoCFConst.OP_SVC_KEI_INFO)` |
| 4 | SET | `sbopSvcKeiInfoBean = (X31SDataBeanAccess)resultMap.get(CommonInfoCFConst.SBOP_SVC_KEI_INFO)` |

---

**Block 4** — [SET/EXEC] `(L127) Validate service data`

> Validates the extracted service data (specifically checks that option service contract info exists).

| # | Type | Code |
|---|------|------|
| 1 | CALL | `checkSvcData(resultMap)` |

---

**Block 5** — [SET/EXEC] `(L130) Get service form bean`

> Acquires the service-specific form bean.

| # | Type | Code |
|---|------|------|
| 1 | SET | `bean = super.getServiceFormBean()` |

---

**Block 6** — [SET/EXEC] `(L134) Build service call parameters`

> Creates the parameter map for the service invocation with the use case ID `FUSV0051`.

| # | Type | Code |
|---|------|------|
| 1 | SET | `paramMap = new HashMap<String, String>(16)` |
| 2 | SET | `paramMap.put(X31CWebConst.TELEGRAM_INFO_USECASE_ID, USECASE_ID_FUSV0051)` `[-> USECASE_ID_FUSV0051="FUSV0051"]` |
| 3 | SET | `mapper = new FUSV0051_FUSV0051OPDBMapper()` |
| 4 | SET | `dataMap = new HashMap<String, Object>()` |
| 5 | SET | `paramBean = { svcKeiInfoBean }` |

---

**Block 7** — [CALL] `(L139) SC #1: Price Course + Sub-option Service Consent`

> Calls SC to retrieve the price course and sub-option service consent details.
> `FUNC_CD_1` indicates display function.

| # | Type | Code |
|---|------|------|
| 1 | SET | `dataMap = mapper.setFUSV005101SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1)` |

---

**Block 8** — [CALL] `(L142) SC #2: Price Plan Fixed Unit Price (option charge) list`

> Calls SC to retrieve the optional charge price plan list.
> `FUNC_CD_1` indicates display function.

| # | Type | Code |
|---|------|------|
| 1 | SET | `dataMap = mapper.setFUSV005102SC(paramBean, dataMap, JPCModelConstant.FUNC_CD_1)` |

---

**Block 9** — [CALL] `(L145) CC #1: Initial Fee List`

> Prepares the initial fee list for display.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `mapper.setFUSV005101CC(paramBean, dataMap)` |

---

**Block 10** — [TRY/CATCH] `(L150) Invoke backend service`

> Invokes the backend service to execute all queued SC/CC operations. On failure (JCCWebServiceException), throws JCCBusinessException with error code `JFUStrConst.ERROR_CODE_0002` (System error).

| # | Type | Code |
|---|------|------|
| 1 | SET | `outputMap = new HashMap<String, Object>()` |
| 2 | EXEC | `invokeService(paramMap, dataMap, outputMap)` |
| 3 | CATCH | `JCCWebServiceException se -> throw new JCCBusinessException(JFUStrConst.ERROR_CODE_0002)` |

---

**Block 11** — [SET/EXEC] `(L162) Map SC response #1`

> Maps the price course and sub-option service consent response data back to the bean.

| # | Type | Code |
|---|------|------|
| 1 | SET | `bean = mapper.getFUSV005101SC(bean, outputMap)` |

---

**Block 12** — [SET/EXEC] `(L165) Map SC response #2`

> Maps the price plan fixed unit price (option charge) list response back to the bean.

| # | Type | Code |
|---|------|------|
| 1 | SET | `bean = mapper.getFUSV005102SC(bean, outputMap)` |

---

**Block 13** — [SET/EXEC] `(L169-L172) Set current POP ID, mail address, mail box capacity`

> Copies current POP ID (Point of Presence identifier), mail address, and mail box capacity from the option service contract info bean to the service form bean.

| # | Type | Code |
|---|------|------|
| 1 | SET | `bean.sendMessageString(FUW02101SFConst.NOW_POP_ID, X31CWebConst.DATABEAN_SET_VALUE, opSvcKeiInfoBean.sendMessageString(CommonInfoCFConst.POP_ID_28, X31CWebConst.DATABEAN_GET_VALUE))` |
| 2 | SET | `bean.sendMessageString(FUW02101SFConst.NOW_MLAD, X31CWebConst.DATABEAN_SET_VALUE, opSvcKeiInfoBean.sendMessageString(CommonInfoCFConst.MLAD_28, X31CWebConst.DATABEAN_GET_VALUE))` |
| 3 | SET | `bean.sendMessageString(FUW02101SFConst.NOW_MLBOX_CAPA, X31CWebConst.DATABEAN_SET_VALUE, opSvcKeiInfoBean.sendMessageString(CommonInfoCFConst.CAPA_28, X31CWebConst.DATABEAN_GET_VALUE))` |

---

**Block 14** — [SET/EXEC] `(L174) Set mansion division flag`

> Computes the mansion division flag (residential building type distinction).

| # | Type | Code |
|---|------|------|
| 1 | SET | `bean.sendMessageBoolean(FUW02101SFConst.MANSION_DIV, X31CWebConst.DATABEAN_SET_VALUE, getMansionDiv(commoninfoBean, outputMap, bean))` |

---

**Block 15** — [SET] `(L176) Calculate addable capacity`

> Computes the capacity difference and converts to GB if needed (> 1024 MB).

| # | Type | Code |
|---|------|------|
| 1 | SET | `mlboxCapa = Long.valueOf(opSvcKeiInfoBean.sendMessageString(CommonInfoCFConst.CAPA_28, X31CWebConst.DATABEAN_GET_VALUE)).intValue()` |
| 2 | SET | `mlboxMaxCapa = bean.sendMessageLong(FUW02101SFConst.ADD_CAPA_ZOUBUN_UPPL_VALUE, X31CWebConst.DATABEAN_GET_VALUE).intValue()` |

---

**Block 16** — [IF] `(L183) mlboxKeiCapa > 1024` `[mlboxKeiCapa = mlboxMaxCapa - mlboxCapa]`

> If the addable capacity exceeds 1024 MB, converts it to GB (divides by 1024, rounds down to 2 decimals then rounds up to 1 decimal) and appends the "GB" unit.

| # | Type | Code |
|---|------|------|
| 1 | SET | `mlboxKeiCapa = mlboxMaxCapa - mlboxCapa` |
| 2 | SET | `mlboxKeiCapaDecimal = new BigDecimal(mlboxKeiCapa)` |
| 3 | SET | `gbDecimal = new BigDecimal(1024)` |
| 4 | SET | `capaDecimal = mlboxKeiCapaDecimal.divide(gbDecimal)` |
| 5 | SET | `capaDecimal = capaDecimal.setScale(2, BigDecimal.ROUND_DOWN)` |
| 6 | SET | `capaDecimal = capaDecimal.setScale(1, BigDecimal.ROUND_UP)` |
| 7 | SET | `mlboxKeiCapaText = capaDecimal + "GB"` `[-> TANI_GB="GB"]` |
| 8 | SET | `bean.sendMessageString(FUW02101SFConst.ADD_PSB_MLBOX_CAPA, X31CWebConst.DATABEAN_SET_VALUE, mlboxKeiCapaText)` |

---

**Block 17** — [IF] `(L191) mlboxKeiCapa <= 0` `[TANI_GB="GB"]`

> If the addable capacity is zero or negative, throws a contract error. This means the customer cannot add any capacity.

| # | Type | Code |
|---|------|------|
| 1 | THROW | `throw new JCCBusinessException(JFUStrConst.ERROR_CODE_0103)` |

---

**Block 18** — [IF] `(L197) mlboxCapa > 200`

> If the current mail box capacity exceeds 200 MB, throws a contract state error. This is a business rule preventing capacity addition for high-capacity plans.

| # | Type | Code |
|---|------|------|
| 1 | THROW | `throw new JCCBusinessException(JFUStrConst.ERROR_CODE_0102)` |

---

**Block 19** — [IF] `(L204) sbopSvcKeiInfoBean != null`

> Determines whether this is a new registration or an addition. If sub-option service contract info bean is not null, it is an addition (`Boolean.FALSE`); otherwise it is new registration (`Boolean.TRUE`).

| # | Type | Code |
|---|------|------|
| 1 | SET | `newAddDiv = Boolean.TRUE` (default: new registration) |
| 2 | IF (sub-block) | `if (sbopSvcKeiInfoBean != null)` `[-> newAddDiv = Boolean.FALSE (addition)]` |
| 3 | SET (nested) | `newAddDiv = Boolean.FALSE` |
| 4 | SET | `bean.sendMessageBoolean(FUW02101SFConst.NEW_ADD_DIV, X31CWebConst.DATABEAN_SET_VALUE, newAddDiv)` |

---

**Block 20** — [CALL] `(L210) Create option data`

> Generates the data for the capacity addition option buttons, including tiered pricing computation.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `createOptionData(bean, outputMap)` |

---

**Block 21** — [SET/IF] `(L213) Set paid/free flag and branch`

> Determines whether the selected option is paid or free. If free (`!payFlag`), sets the free price info map.

| # | Type | Code |
|---|------|------|
| 1 | SET | `payFlag = bean.sendMessageBoolean(FUW02101SFConst.PAY_FLG, X31CWebConst.DATABEAN_SET_VALUE, setPayFlg(bean, outputMap))` |
| 2 | IF | `if (!payFlag)` |
| 3 | CALL (nested) | `JFUWebCommon.setFreePrcInfoMap(outputMap, SC_TITLE_FUSV005102)` `[-> "FUSV005102SC"]` |

---

**Block 22** — [CALL] `(L218) Map pricing table`

> Maps the pricing table display data to the form bean with price course titles.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `JFUWebCommon.setPrcInfoArea(bean, outputMap, SC_TITLE_FUSV005102, CC_TITLE_FUSV005101, FUW02101)` |

---

**Block 23** — [CALL] `(L220) Set billing display current date`

> Sets the current date for the billing display section on the screen.

| # | Type | Code |
|---|------|------|
| 1 | CALL | `JFUWebCommon.setPrcDspNowDay(this)` |

---

**Block 24** — [SET/EXEC] `(L224) Set next screen navigation`

> Sets the next screen ID and screen name for post-initialization navigation routing.

| # | Type | Code |
|---|------|------|
| 1 | SET | `commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_ID, X31CWebConst.DATABEAN_SET_VALUE, JFUWebCommon.getScreenId(this))` |
| 2 | SET | `commoninfoBean.sendMessageString(CommonInfoCFConst.NEXT_SCREEN_NAME, X31CWebConst.DATABEAN_SET_VALUE, JFUScreenConst.SCREEN_NAME_FUW02101)` |

---

**Block 25** — [RETURN] `(L227)`

> Always returns `true` to signal successful initialization.

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return true` |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `svc_kei_info` | Field | Service contract info — the customer's primary service agreement data (service ID, price plan, etc.) |
| `op_svc_kei_info` | Field | Option service contract info — data for optional/add-on services the customer has subscribed to (e.g., mail service) |
| `sbop_svc_kei_info` | Field | Sub-option service contract info — data for secondary add-on services; null for new registrations |
| `pop_id` | Field | Point of Presence ID — the network access point ID assigned to the customer's eo hikari service |
| `mlad` | Field | Mail address — the customer's eo mail address associated with their contract |
| `capa` | Field | Capacity — the current mail box storage capacity in MB allocated to the customer |
| `add_capa` | Field | Additional capacity — the capacity amount the customer can add |
| `add_capa_zoubun` | Field | Capacity step value — the increment size (in MB) for each capacity tier |
| `add_capa_zoubun_uppl_value` | Field | Capacity step upper limit — the maximum addable capacity in MB |
| `mryo_capa` | Field | Free capacity — the amount of capacity included free of charge in the current plan |
| `mansion_div` | Field | Mansion division flag — boolean distinguishing apartment/condominium from other building types for pricing |
| `new_add_div` | Field | New/addition division flag — `TRUE` = new registration, `FALSE` = capacity addition to existing contract |
| `pay_flg` | Field | Paid flag — `TRUE` if the selected option incurs a charge, `FALSE` if free |
| `EKK1881A010CBS` | SC Code | Price Course: Sub-option Service Consent Details — the service component that returns service provision item data (initial capacity, max capacity, step value, free capacity) |
| `EKK0601B001CBS` | SC Code | Price Plan Fixed Unit Price (option charge) — the service component that returns the optional charge pricing plan list |
| `FUSV0051` | Constant | Use case ID — the service use case identifier for mail box capacity addition initial display |
| `FUSV0052` | Constant | Use case ID — the service use case identifier for mail box capacity addition submission (cfm/mskm actions) |
| `FUSV005101SC` | Constant | SC Title — price course and sub-option service consent |
| `FUSV005102SC` | Constant | SC Title — price plan fixed unit price (option charge) list |
| `FUSV005101CC` | Constant | CC Title — initial fee list |
| `FUW02101` | Constant | Screen ID — the mail box capacity addition initial display screen |
| ERROR_CODE_0102 | Constant | Contract state error — thrown when option service contract info is null or current capacity > 200 MB |
| ERROR_CODE_0103 | Constant | Contract error — thrown when addable capacity is zero or negative |
| ERROR_CODE_0002 | Constant | System error — thrown when a backend web service call fails |
| FUNC_CD_1 | Constant | Function code 1 — indicates display/initial retrieval operation |
| FUNC_CD_2 | Constant | Function code 2 — indicates submission/registration operation |
| FTTH | Business term | Fiber To The Home — fiber-optic broadband service; eo hikari is K-Opticom's FTTH offering |
| ISP | Business term | Internet Service Provider — the internet access service layer |
| Mail | Business term | eo mail — the email service bundled with eo hikari FTTH subscriptions |
| Mail Box | Business term | Mail box — the storage allocated to a customer's eo mail account (capacity measured in MB) |
| SC | Acronym | Service Component — backend service layer class that handles data access and business rule execution for a specific operation |
| CC | Acronym | Common Component — shared business component (non-DB) for data processing and mapping |
| POP | Acronym | Point of Presence — the physical network access point (NTT equipment cabinet or similar) serving the customer's location |
| Bean | Technical | X31SDataBeanAccess — the Fujfuturity X31S framework's data transfer object for form/screen data exchange |
