HouseholdMemberModel.java
package com.hwhub.batch.domain.model;
import lombok.Getter;
@Getter
public class HouseholdMemberModel {
private final Long householdId;
private final Long userId;
private final String displayName;
private final String profileImageKey;
private final String iconUrl;
private final String nickname;
private final String status;
private final String role;
/**
* 全プロパティを引数に取るコンストラクタ。
*
* @param householdId 世帯ID
* @param userId ユーザID
* @param displayName ユーザの表示名
* @param profileImageKey ユーザのプロフィール画像キー
* @param iconUrl プロフィール画像のUTL
* @param nickname ニックネーム
* @param status ステータス
* @param role ロール
*/
private HouseholdMemberModel(
Long householdId,
Long userId,
String displayName,
String profileImageKey,
String iconUrl,
String nickname,
String status,
String role) {
this.householdId = householdId;
this.userId = userId;
this.displayName = displayName;
this.profileImageKey = profileImageKey;
this.iconUrl = iconUrl;
this.nickname = nickname;
this.status = status;
this.role = role;
}
/**
* 再構築・永続化用。infrastructure層からのみ呼び出されることを想定。
*
* @param householdId 世帯ID
* @param userId ユーザID
* @param displayName ユーザの表示名
* @param profileImageKey ユーザのプロフィール画像キー
* @param iconUrl プロフィール画像のUTL
* @param nickname ニックネーム
* @param status ステータス
* @param role ロール
* @return インスタンスを返す。
*/
public static HouseholdMemberModel reconstruct(
Long householdId,
Long userId,
String displayName,
String profileImageKey,
String iconUrl,
String nickname,
String status,
String role) {
return new HouseholdMemberModel(
householdId, userId, displayName, profileImageKey, iconUrl, nickname, status, role);
}
}