Employer form mostly working with persist to db
This commit is contained in:
@@ -0,0 +1,136 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer Setup</h1>
|
||||
<%= form_with model: @employer_setup, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :employer_name, label: { text: "Employer Name" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "Medcost"]), label: { text: "Provider Network" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<label for="file_upload_input" class="cursor-pointer bg-atmosphere hover:bg-bluetang text-platinum font-bold py-2 px-4 rounded border border-platinum">
|
||||
Choose Employer Logo File
|
||||
</label>
|
||||
<span id="file_name_display" class="ml-2 text-bluemana font-semibold">No file chosen</span>
|
||||
<%= f.file_field :employer_logo, class: "hidden", id: "file_upload_input" %>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Plans Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="w-full flex my-8" data-controller="add-plan" data-add-plan-form-color-value="<%= EmployerSetupPlansForm::PLAN_COLORS.to_json %>" >
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<% @employer_setup.plans.each_with_index do |plan, index| %>
|
||||
<%= f.fields_for :plans, plan, child_index: index do |plan_fields| %>
|
||||
|
||||
<% if index == 0 %>
|
||||
<div class="flex flex-col w-1/2 relative items-end" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-[50%] top-[2%] h-[98%] border-l-4 <%= "border-#{EmployerSetupPlansForm::PLAN_COLORS[index]}" %> "></div>
|
||||
<div class="inline-flex flex-col pl-1 pr-6 w-1/2">
|
||||
<div class="font-bold text-2xl <%= "text-#{EmployerSetupPlansForm::PLAN_COLORS[index]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan 1" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: index %>
|
||||
</div>
|
||||
<div class="flex flex-col items-end w-full">
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<div class="flex w-full">
|
||||
<div class="flex flex-col items-stretch justify-end pr-6 w-1/2">
|
||||
<%= render 'plan_benefits_desc_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
</div>
|
||||
<div class="flex flex-col items-stretch justify-end pl-1 pr-6 w-1/2">
|
||||
<%= render 'plan_benefit_only_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-2 pr-6 w-1/2">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan 1", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-copper hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-copper w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 mt-10 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{EmployerSetupPlansForm::PLAN_COLORS[index]}" %>"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{EmployerSetupPlansForm::PLAN_COLORS[index]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{index + 1}" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: index %>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan #{index + 1}", class: "cursor-pointer bg-deepcove text-brightlava py-2 px-4 font-semibold leading-tight rounded border-3 border-#{EmployerSetupPlansForm::PLAN_COLORS[index]} w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, Plan.new, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: "NEW_RECORD".to_i %>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan NEW_PLAN", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Alternative Network Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full justify-start" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= EmployerSetupPlansForm::PLAN_COLORS.to_json %>">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-75 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :alternative_network_logos, AlternativeNetworkLogo.new, child_index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3" data-controller="add-network-exception" data-add-network-exception-parent-color-value="NEXT_SECONDARY_COLOR">
|
||||
<%= render 'alt_network_logo_fields', network_fields: network_fields %>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<div class="pt-8">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
Reference in New Issue
Block a user