Files
baclight/app/services/id_card_queue_service/get_queued_members.rb
T

31 lines
1009 B
Ruby
Raw Normal View History

2026-03-20 10:46:53 -04:00
module IdCardQueueService
2026-04-15 08:12:47 -04:00
class GetQueuedMembers
2026-03-16 12:09:45 -04:00
2026-03-19 00:42:27 -04:00
def initialize(pl_plan_keys = nil)
2026-03-16 12:09:45 -04:00
if pl_plan_keys
@employer_pl_plan_keys = pl_plan_keys
else
2026-03-20 10:46:53 -04:00
@employer_pl_plan_keys = IdCard::Setup.active.pluck(:pl_plan_key).join(',')
2026-03-16 12:09:45 -04:00
end
end
def call
2026-04-15 08:12:47 -04:00
raw_employers_member_keys = CallStoredProc.new('HLGetQueuedIdCardMemberKeysTPA', { PLPlanKeys: @employer_pl_plan_keys }).call.to_ary
2026-03-27 08:04:37 -04:00
format_employers_member_keys(raw_employers_member_keys)
end
private
def format_employers_member_keys(raw_employers_member_keys)
key_map = { "PlanKey" => :pl_plan_key, "MemberKeys" => :member_keys }
raw_employers_member_keys.map do |hash|
hash["PlanKey"] = hash["PlanKey"].to_s
hash["MemberKeys"] = hash["MemberKeys"].split(", ").map(&:to_i)
hash.transform_keys(key_map)
end
2026-03-16 12:09:45 -04:00
end
end
end