24 lines
679 B
Ruby
24 lines
679 B
Ruby
|
|
module MembersService
|
||
|
|
class InitializeDashboard
|
||
|
|
|
||
|
|
def initialize(member)
|
||
|
|
@member = member
|
||
|
|
unless @member.present?
|
||
|
|
raise ArgumentError, "Member not found."
|
||
|
|
end
|
||
|
|
|
||
|
|
end
|
||
|
|
|
||
|
|
def call
|
||
|
|
plan_benefits = MembersService::PlanBenefits.new(@member).call
|
||
|
|
network_provider = MembersService::NetworkProvider.new(@member).call
|
||
|
|
recent_claims = MembersService::Claims.new(@member, true).call
|
||
|
|
|
||
|
|
{
|
||
|
|
network_provider: network_provider,
|
||
|
|
plan_benefits: plan_benefits,
|
||
|
|
recent_claims: recent_claims
|
||
|
|
}
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|