Its been a while
This commit is contained in:
@@ -12,17 +12,21 @@ module AutomationService
|
||||
|
||||
vw_mb_members = Vhcs::VwmbMember.where(enrollee_type_value_id: 1, pl_plan_key: @pl_plan_key).select(:mb_member_key, :pb_entity_key, :pl_plan_key, :family_id, :full_name_last_name_first, :social_security_number)
|
||||
|
||||
puts "--- Total Members #{vw_mb_members.length}"
|
||||
|
||||
member_update_futures = vw_mb_members.map do |vw_mb_member|
|
||||
Concurrent::Future.execute do
|
||||
ActiveRecord::Base.connection_pool.with_connection do
|
||||
UpdateMemberJob.perform_now(vw_mb_member.pb_entity_key, employer.id, card_setup.has_divisions, card_setup.has_dental, vw_mb_member)
|
||||
UpdateMemberJob.perform_now(vw_mb_member.pb_entity_key, employer.id, card_setup.has_divisions, card_setup.has_dental, false, vw_mb_member)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
member_updates = member_update_futures.map(&:value).compact
|
||||
employer.members = member_updates
|
||||
if employer.initialized && card_setup.initialized && member_updates.empty?
|
||||
|
||||
puts "--- Total Web Members #{member_updates.length}"
|
||||
# employer.members = member_updates
|
||||
if employer.initialized && card_setup.initialized && employer.members.active.empty?
|
||||
employer.active = false
|
||||
end
|
||||
employer.save
|
||||
|
||||
@@ -9,12 +9,12 @@ module AutomationService
|
||||
def call
|
||||
employer = Employer.includes(:id_card_setup).find_by(pl_plan_key: @pl_plan_key)
|
||||
card_setup = employer.id_card_setup
|
||||
member = UpdateMemberJob.perform_now(@pb_entity_key, employer.id, card_setup.has_divisions, card_setup.has_dental)
|
||||
if member.present?
|
||||
member.save
|
||||
else
|
||||
Member.find_by(pb_entity_key: @pb_entity_key).destroy
|
||||
end
|
||||
member = UpdateMemberJob.perform_now(@pb_entity_key, employer.id, card_setup.has_divisions, card_setup.has_dental, true)
|
||||
# if member.present?
|
||||
# member.save
|
||||
# else
|
||||
# Member.find_by(pb_entity_key: @pb_entity_key).destroy
|
||||
# end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -57,22 +57,24 @@ module IdCardPrinterService
|
||||
)
|
||||
|
||||
selected_attributes = employer_attributes.merge(rx_attributes).merge(provider_attributes)
|
||||
IdCard::PrintData.new(selected_attributes)
|
||||
IdCard::PrintData.create(selected_attributes)
|
||||
end
|
||||
|
||||
def create_plan_base_cards(common_fields_card)
|
||||
needed_plans_ids = @employer.members.where(pb_entity_key: @member_keys).distinct.pluck(:id_card_plan_id)
|
||||
needed_plans = @card_setup.plans.where(id: needed_plans_ids)
|
||||
needed_plans.each do |plan|
|
||||
selected_attributes = { plan_id: plan.id }
|
||||
plan.plan_benefits.each do |bene|
|
||||
selected_attributes["benefit_desc_#{bene.sequence}".to_sym] = bene.benefit_desc
|
||||
selected_attributes["benefit_#{bene.sequence}".to_sym] = bene.benefit
|
||||
end
|
||||
if needed_plans_ids.present?
|
||||
needed_plans = @card_setup.plans.where(id: needed_plans_ids)
|
||||
needed_plans.each do |plan|
|
||||
selected_attributes = { plan_id: plan.id }
|
||||
plan.plan_benefits.each do |bene|
|
||||
selected_attributes["benefit_desc_#{bene.sequence}".to_sym] = bene.benefit_desc
|
||||
selected_attributes["benefit_#{bene.sequence}".to_sym] = bene.benefit
|
||||
end
|
||||
|
||||
plan_base_card = common_fields_card.dup
|
||||
plan_base_card.assign_attributes(selected_attributes)
|
||||
plan_base_card.save
|
||||
plan_base_card = common_fields_card.dup
|
||||
plan_base_card.assign_attributes(selected_attributes)
|
||||
plan_base_card.save
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -3,23 +3,43 @@ module IdCardQueueService
|
||||
|
||||
def initialize(pl_plan_keys = nil)
|
||||
if pl_plan_keys
|
||||
@employer_pl_plan_keys = pl_plan_keys
|
||||
@employer_pl_plan_keys = Array.wrap(pl_plan_keys)
|
||||
else
|
||||
@employer_pl_plan_keys = IdCard::Setup.active.pluck(:pl_plan_key).join(',')
|
||||
@employer_pl_plan_keys = IdCard::Setup.active.pluck(:pl_plan_key)
|
||||
end
|
||||
end
|
||||
|
||||
def call
|
||||
raw_employers_member_keys = CallStoredProc.new('HLGetQueuedIdCardMemberKeysTPA', { PLPlanKeys: @employer_pl_plan_keys }).call.to_ary
|
||||
|
||||
format_employers_member_keys(raw_employers_member_keys)
|
||||
employer_member_keys = @employer_pl_plan_keys.map do |pl_plan_key|
|
||||
queued_employer_members = Vhcs::VwmbMember.joins('
|
||||
INNER JOIN "CLDocument" ON "CLDocument"."RecipientKey" = "VWMBMember"."MBMemberKey"
|
||||
').select('
|
||||
"VWMBMember"."PBEntityKey"
|
||||
').where('
|
||||
"CLDocument"."DocStatus" <> ?
|
||||
AND "CLDocument"."PLPlanKey" = ?
|
||||
AND "CLDocument"."PrintDate" IS NULL
|
||||
AND "CLDocument"."CreateDate" > ?',
|
||||
"Printed", pl_plan_key, Date.new(2026, 7, 17)
|
||||
).pluck(:pb_entity_key)
|
||||
|
||||
if queued_employer_members.present?
|
||||
{
|
||||
pl_plan_key: pl_plan_key,
|
||||
member_keys: queued_employer_members
|
||||
}
|
||||
else
|
||||
""
|
||||
end
|
||||
end
|
||||
|
||||
employer_member_keys.compact_blank
|
||||
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)
|
||||
|
||||
Executable → Regular
@@ -49,6 +49,8 @@ module ReportsService
|
||||
UPDATE CLDocument
|
||||
SET DocStatus = 'Printed', PrintDate = GetDate()
|
||||
where DocStatus <> 'Printed'
|
||||
and DocType = 'ID'
|
||||
and CreateDate > CAST('2026-05-01' AS date)
|
||||
")
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user