Prod build process

This commit is contained in:
Jason Jordan
2026-05-06 13:28:16 -04:00
parent 1d9025276d
commit e0101be567
223 changed files with 1861 additions and 7105 deletions
@@ -13,19 +13,19 @@ module IdCard
def create
file = logo_params["logo_file"]
if file.present? && file.is_a?(ActionDispatch::Http::UploadedFile)
employer_id = logo_params["employer_id"]
employer = Employer.find(employer_id)
setup = employer.id_card_setup
if setup.present? && file.present? && file.is_a?(ActionDispatch::Http::UploadedFile)
filename = file.original_filename
# binary_data = file.read
binary_data = File.binread(file)
meme_type = Marcel::MimeType.for(file)
employerlogo = IdCard::EmployerLogo.create(
filename: filename,
image_data: binary_data,
content_type: meme_type
)
employer_logo = IdCard::EmployerLogo.find_or_create_by(filename: filename, setup_id: setup.id)
employer_logo.update(image_data: binary_data)
render json: employerlogo, only: [:id], status: :ok
render json: employer_logo, only: [:id], status: :ok
end
end
@@ -54,7 +54,7 @@ module IdCard
private
def logo_params
params.require(:id_card_employer_logo).permit(:logo_file)
params.require(:id_card_employer_logo).permit(:logo_file, :employer_id)
end
end
+3 -8
View File
@@ -38,14 +38,9 @@ module IdCard
end
def generate_sample
if Integer(params[:id], exception: false).is_a?(Integer)
pl_plan_key = params[:id].to_s
@employer = Employer.find_by(pl_plan_key: pl_plan_key)
else
slug = params[:id]
@employer = Employer.find_by(slug: slug)
end
sample_cards_pdf = IdCardPrinterService::SampleCardsGenerator.new(@employer).call
employer_id = params[:id]
@employer = Employer.find(employer_id)
sample_cards_pdf = IdCardPrinterService::SampleCardsGenerator.new(@employer.id).call
send_data sample_cards_pdf.to_pdf,
filename: "#{@employer.name.parameterize(separator: "_")}_sample_cards_#{Date.today}.pdf",
@@ -1,49 +1,49 @@
module IdCard
class PrintDataController < ApplicationController
def generate_sample
@employer = Employer.find_by(slug: params[:employer_slug])
sample_cards_pdf = IdCardPrinterService::SampleCardsGenerator.new(@employer).call
# def generate_sample
# @employer = Employer.find_by(slug: params[:employer_slug])
# sample_cards_pdf = IdCardPrinterService::SampleCardsGenerator.new(@employer).call
send_data sample_cards_pdf.to_pdf,
filename: "#{@employer.name.parameterize(separator: "_")}_sample_cards_#{Date.today}.pdf",
type: "application/pdf",
disposition: 'attachment'
# send_data sample_cards_pdf.to_pdf,
# filename: "#{@employer.name.parameterize(separator: "_")}_sample_cards_#{Date.today}.pdf",
# type: "application/pdf",
# disposition: 'attachment'
end
# end
def generate_print
@employer = Employer.find_by(slug: params[:employer_slug])
cards_pdf = IdCardPrinterService::EmployerCardsGenerator.new(@employer, "PrintCard").call
# def generate_print
# @employer = Employer.find_by(slug: params[:employer_slug])
# cards_pdf = IdCardPrinterService::EmployerCardsGenerator.new(@employer, "PrintCard").call
send_data cards_pdf.to_pdf,
filename: "#{@employer.name.parameterize(separator: "_")}_print_cards_#{Date.today}.pdf",
type: "application/pdf",
disposition: 'attachment'
# send_data cards_pdf.to_pdf,
# filename: "#{@employer.name.parameterize(separator: "_")}_print_cards_#{Date.today}.pdf",
# type: "application/pdf",
# disposition: 'attachment'
end
# end
def generate_mobile_display
@employer = Employer.find_by(slug: params[:employer_slug])
cards_pdf = IdCardPrinterService::EmployerCardsGenerator.new(@employer, "MobileDisplayCard").call
# def generate_mobile_display
# @employer = Employer.find_by(slug: params[:employer_slug])
# cards_pdf = IdCardPrinterService::EmployerCardsGenerator.new(@employer, "MobileDisplayCard").call
send_data cards_pdf.to_pdf,
filename: "#{@employer.name.parameterize(separator: "_")}_mobile_display_cards_#{Date.today}.pdf",
type: "application/pdf",
disposition: 'attachment'
# send_data cards_pdf.to_pdf,
# filename: "#{@employer.name.parameterize(separator: "_")}_mobile_display_cards_#{Date.today}.pdf",
# type: "application/pdf",
# disposition: 'attachment'
end
# end
def generate_full_page
@employer = Employer.find_by(slug: params[:employer_slug])
cards_pdf = IdCardPrinterService::EmployerCardsGenerator.new(@employer, "FullPageCard", true).call
# def generate_full_page
# @employer = Employer.find_by(slug: params[:employer_slug])
# cards_pdf = IdCardPrinterService::EmployerCardsGenerator.new(@employer, "FullPageCard", true).call
cards_pdf.rewind
send_data cards_pdf.sysread,
filename: "#{@employer.name.parameterize(separator: "_")}_full_page_cards_#{Date.today}.zip",
type: 'application/zip',
disposition: 'attachment'
# cards_pdf.rewind
# send_data cards_pdf.sysread,
# filename: "#{@employer.name.parameterize(separator: "_")}_full_page_cards_#{Date.today}.zip",
# type: 'application/zip',
# disposition: 'attachment'
end
# end
end
end
+18 -217
View File
@@ -3,38 +3,17 @@ module IdCard
before_action :set_employer_and_setup
# View Methods
# def edit
# @employer = Employer.find_by(slug: params[:employer_id])
# if @employer.id_card_enabled?
# @setup = @employer.id_card_setup
# else
# @setup = @employer.create_id_card_setup
# end
# render :edit
# end
# def update
# setup_params = IdCard::Setup.permitted_params(params)
# @setup = IdCard::Setup.find(params[:id])
# if @setup.update(setup_params)
# puts "sucess"
# redirect_to employer_path(@setup.employer.slug), notice: 'ID Card Setup was successfully updated.'
# else
# puts "fail"
# render :edit, status: :unprocessable_entity
# end
# end
def index
provider_defaults = IdCard::ProviderSection.defaults
@provider_options = provider_defaults.map { |p| ["Default #{p.title}", p.id] }.concat(provider_defaults.map { |p| ["New #{p.title}", "new|#{p.id}"] })
if @setup.provider_section_id.present? && provider_defaults.map(&:id).exclude?(@setup.provider_section_id)
@provider_options.insert(0, ["#{@employer.name} Custom", @setup.provider_section_id])
if @setup.provider_section.present? && !@setup.provider_section.default
employer_custom_options = @setup.provider_section
else
employer_custom_options = IdCard::ProviderSection.new(title: "#{@employer.name} Custom")
end
@rx_options = IdCard::RxSection.all
@fairos_rx_id = IdCard::RxSection.find_by(title: "FairosRx").id
@provider_options = (IdCard::ProviderSection.where(default: true) + [employer_custom_options])
.compact.uniq.map { |option| [option.display_title, option.id || "99"] }
@rx_options = IdCard::RxSection.where.not(title: nil)
@rx_default = IdCard::RxSection.find_by(title: "FairosRx")
render :index
end
@@ -50,6 +29,15 @@ module IdCard
redirect_to employer_path(@employer.slug), notice: 'ID Card Setup was successfully updated.'
else
puts "fail"
if @setup.provider_section.present? && !@setup.provider_section.default
employer_custom_options = @setup.provider_section
else
employer_custom_options = IdCard::ProviderSection.new(title: "#{@employer.name} Custom")
end
@provider_options = (IdCard::ProviderSection.where(default: true) + [employer_custom_options])
.compact.uniq.map { |option| [option.display_title, option.id || "99"] }
@rx_options = IdCard::RxSection.all
@rx_default = IdCard::RxSection.find_by(title: "FairosRx")
render :index, status: :unprocessable_entity
end
end
@@ -66,6 +54,7 @@ module IdCard
redirect_to employer_path(@setup.employer.slug), notice: 'ID Card Plans successfully updated.'
else
puts "fail"
@plan_templates = IdCard::Plan.templates
render :plans, status: :unprocessable_entity
end
@@ -99,9 +88,6 @@ module IdCard
end
def destroy
# @resource = Resource.find(params[:id])
# @resource.destroy
# redirect_to resources_url, notice: 'Resource was successfully destroyed.'
end
# API Methods
@@ -117,190 +103,5 @@ module IdCard
end
end
# def process_logos(employer_setup_process_params)
# @uploaded_logos = []
# employer_logo = employer_setup_process_params["employer_logo"]
# if employer_logo.present? && employer_logo.is_a?(ActionDispatch::Http::UploadedFile)
# filename = employer_logo.original_filename
# binary_data = employer_logo.read
# meme_type = Marcel::MimeType.for(employer_logo)
# CardLogoFile.create(
# filename: filename,
# image_data: binary_data,
# content_type: meme_type,
# logo_type: "employer"
# )
# @uploaded_logos.push(filename)
# employer_setup_process_params["employer_logo"] = filename
# end
# network_logos = employer_setup_process_params["alternate_network_logos_attributes"]
# if network_logos.present?
# network_logos.each do |alt|
# network_logo = alt.last["network_logo"]
# if network_logo.present? && network_logo.is_a?(ActionDispatch::Http::UploadedFile)
# filename = network_logo.original_filename
# binary_data = network_logo.read
# meme_type = Marcel::MimeType.for(network_logo)
# CardLogoFile.create(
# filename: filename,
# image_data: binary_data,
# content_type: meme_type,
# logo_type: "network"
# )
# @uploaded_logos.push(filename)
# end
# alt.last["network_logo"] = @uploaded_logos.last
# end
# end
# employer_setup_process_params
# end
# def update_logos_with_employer_setup_information()
# @uploaded_logos.each do |logo|
# logo_file = CardLogoFile.find_by(filename: logo)
# if logo_file.present? && @employer.present?
# logo_file.employer_setup_process = @employer
# logo_file.save
# end
# end
# end
# def general_information_params
# params.require(:employer_setup_general_information_form).permit(
# :name,
# :employer_logo,
# :group_number,
# :dental,
# :pl_plan_key,
# :effect_date,
# :number_of_plans,
# :network,
# :number_of_additional_network_logos
# )
# end
# def plans_params
# params.require(:employer_setup_plans_form).permit(
# plans: permited_plans_keys,
# benefit_descs: benefit_sequence_keys
# )
# end
# def network_field_exceptions_params
# params.require(:employer_setup_network_field_exceptions_form).permit(
# network_field_exceptions: [:network_logo, field_exceptions: [:type, :value]],
# )
# end
# def form_for_step
# step_name = @top_form.current_step
# form_method = "EmployerSetup#{step_name.camelize}Form".constantize
# # puts "/////\\\\\\||||||"
# # puts session[:employer_setup_data]
# # puts session[:employer_setup_data]['employer_setup_process_id']
# puts form_method
# form_method.new(session[:employer_setup_data]['employer_setup_process_id'])
# end
# def process_step(step_name)
# @form_method = "EmployerSetup#{step_name.camelize}Form".constantize
# session_data_name = "#{step_name}_data"
# # puts "1--------------params----"
# # puts params
# # puts "8--------------session----"
# # puts session[:employer_setup_data]
# employer_setup_process_id = session[:employer_setup_data]['employer_setup_process_id']
# # puts session[:employer_setup_data]
# puts "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
# puts params
# @form = @form_method.new(employer_setup_process_id, params)
# if @form.pl_plan_key.blank?
# @form.pl_plan_key = session[:employer_setup_data]['pl_plan_key']
# end
# if @form.valid? && @form.save
# pl_plan_key = @top_form.pl_plan_key || @form.pl_plan_key
# # session[:employer_setup_data].merge!({current_step: step_name, pl_plan_key: pl_plan_key})
# # form_fields = @form.attributes.merge!(global_params(step_name))
# # session[:employer_setup_data][session_data_name] = form_fields
# # session[:employer_setup_data].merge!(global_params(step_name))
# # puts session[:employer_setup_data][session_data_name]
# true
# else
# false
# end
# end
# def step_params(step_name)
# form_name_sym = "employer_setup_#{step_name}_form".to_sym
# params.require(form_name_sym).permit(@form_method.permitted_params)
# end
# def global_params(step_name)
# form_name_sym = "employer_setup_#{step_name}_form".to_sym
# params.require(form_name_sym).permit(EmployerSetupForm.permitted_params)
# end
# def process_step(step_name)
# form_name = "employer_setup_#{step_name}_form".camelize.constantize
# form_params_name = "#{step_name}_params".to_sym
# allowed_params = [:general_information_params, :plans_params, :network_field_exceptions_params]
# if allowed_params.include?(form_params_name)
# form_params = send(form_params_name)
# @form = form_name.new(form_params)
# if @form.valid?
# session[:employer_setup_data]["#{step_name}_data"] = form_params
# true
# else
# false
# end
# end
# false
# end
# def employer_setup_params
# params.require(:employer_setup_form).permit(
# :current_step,
# :name,
# :employer_logo,
# :group_number,
# :pl_plan_key,
# :effect_date,
# :number_of_plans,
# :network,
# :number_of_additional_network_logos,
# network_field_exceptions: [:network_logo, field_exceptions: [:type, :value]],
# plans: permited_plans_keys,
# benefit_descs: benefit_sequence_keys
# )
# end
# def benefit_sequence_keys
# (1..14).map { |i| i.to_s.to_sym }
# end
# def permited_plans_keys
# benefit_sequence_keys.push(:plan_id)
# end
# def plans_params
# plans_keys = params[:plans]&.keys || []
# plans_keys.each_with_object({}) do |key, hash|
# if key == 'benefit_descs' || key.match?(/^plan_\d$/)
# hash[key.to_sym] = permited_plan_param_list
# end
# end
# end
# def permited_plan_param_list
# (1..14).map { |i| i.to_s.to_sym }.push(:plan_id)
# end
end
end