<% reference_year = (@filter_params[:filteryear] || Date.today.year).to_i %> <% organization = OrganizationsHelper::AssociazioneDH %> <% soci = Membership.all.where(organization_id: organization.id).registered_on_year(reference_year).ordered_by_person_anagrafica %> <% soci_ids = soci.pluck(:person_id) %> <% quanti = 0 %> <% soci_senza_tessera = [] %> <%= "PROSPETTO #{reference_year} Quote soci DH ASS" %>
Soci che hanno versato contribuzioni per l'anno <%= reference_year %>: <% soci_con_emissioni = SrgQec.joins("LEFT JOIN people on srg_qecs.person_id = people.id").select(:person_id).where('YEAR(competenza) = ?', reference_year).order('people.nome', 'people.cognome').group(:person_id).having('SUM(dh) > 0') %> <%# soci_con_emissioni = SrgQec.joins("LEFT JOIN memberships on srg_qecs.person_id = memberships.person_id").joins("LEFT JOIN people on srg_qecs.person_id = people.id").select(:person_id).where('YEAR(competenza) = ?', reference_year).where('memberships.organization_id = ?',OrganizationsHelper::AssociazioneATENA.id).order('people.nome', 'people.cognome').group(:person_id, 'memberships.tessera').having('SUM(milq) > 0') %> <%# memberships = Membership.registered_on_year(reference_year, OrganizationsHelper::AssociazioneMIL.id) %> <%# memberships = Membership.all.where(organization_id: OrganizationsHelper::AssociazioneMIL.id).still_active_at(Date.today.year).ordered_by_tessera %> <% dates = (1..12).map{|month| DateTime.new(reference_year, month, 1) } %> <% months = I18n.t("date.month_names").drop(1) %> <% totals = Hash[(1..12).map{ |month| [DateTime.new(reference_year, month, 1), 0] } ] %> <% big_total = 0.0 %> <% months.each do |month| %> <% end %> <% if soci_con_emissioni %> <% soci_con_emissioni.each do |socio_con_emissioni| %> <% person = Person.find(socio_con_emissioni.person_id) %> <% soci_ids.delete(person.id) %> <% membership = Membership.where(organization_id: organization.id, person_id: person.id).registered_on_year(reference_year).first %> <% quanti += 1 %> <% if membership.present? %> <% else %> <% soci_senza_tessera << person %> <% end %> <% member_total = 0.0 %> <% dates.each do |date| %> <% emesso = SrgQec.where(competenza: date, person_id: person.id).select(:dh).take %> <% if emesso.present? %> <% mensile = emesso.dh %> <% else %> <% mensile = 0.0 %> <% end %> <% totals[date] += mensile %> <% member_total += mensile %> <% end %> <% big_total += member_total %> <% end %> <% end %> <% dates.each do |date| %> <% end %>
socio<%= month %>TOTALE
annuale
socio
<%= "#{person.anagrafe_person_name}, tessera #{membership.tessera}" %><%= "#{person.anagrafe_person_name}" %><%= money_format_zero(mensile) %><%= money_format_zero(member_total) %>
Totale <%= quanti %> soci:<%= money_format_zero(totals[date]) %><%= money_format_zero(big_total) %>


Soci che hanno versato contribuzioni ma risultano non iscritti per l'anno <%= reference_year %>:
<% if soci_senza_tessera.length > 0 %> <% soci_senza_tessera.each do |person| %> <%= person.anagrafe_person_name %>
<% end %> <% else %> nessuno
<% end %>


Soci che non hanno versato contribuzioni ma risultano iscritti per l'anno <%= reference_year %>:
<% if soci_ids.size > 0 %> <% soci_ids.each do |socio_id| %> <% person = Person.find(socio_id) %> <%= person.anagrafe_person_name %>
<% end %> <% else %> nessuno
<% end %>