Also count lapsed/active against monthly/annual.
Add some details about the amount who are monthly/annual to the counts.
This commit is contained in:
		
							parent
							
								
									57275ec6bf
								
							
						
					
					
						commit
						8bf9a01550
					
				
					 1 changed files with 19 additions and 2 deletions
				
			
		|  | @ -44,8 +44,10 @@ foreach my $cat (@lapseCategories) { | |||
|   $expireReport{$cat}{list} = []; | ||||
| } | ||||
| my $lapsedCount = 0; | ||||
| my(%activeCounter, %lapsedCounter); | ||||
| 
 | ||||
| my %monthExpirations; | ||||
| 
 | ||||
| foreach my $supporterId (@supporterIds) { | ||||
|   my $expiresOn = $sp->supporterExpirationDate($supporterId); | ||||
|   my $expiresOnMonth = UnixDate(ParseDate($expiresOn), '%Y-%m'); | ||||
|  | @ -54,8 +56,14 @@ foreach my $supporterId (@supporterIds) { | |||
|   my $isLapsed = ( (not defined $expiresOn) or $expiresOn le $TODAY); | ||||
|   my $lapsesInOneWeek = ( (defined $expiresOn) and $expiresOn le $ONE_WEEK); | ||||
|   my $lapsesInOneMonth = ( (defined $expiresOn) and $expiresOn le $ONE_MONTH); | ||||
|   my $type = $sp->getType($supporterId); | ||||
|   $expiresOn = "NO-FULL-SIGNUP" if not defined $expiresOn; | ||||
|   $lapsedCount++ if $isLapsed; | ||||
|   if ($isLapsed) { | ||||
|     $lapsedCount++; | ||||
|     $lapsedCounter{$type}++ if defined $type; | ||||
|   } else { | ||||
|     $activeCounter{$type}++ if defined $type; | ||||
|   } | ||||
|   my %emails; | ||||
|   my $email = $sp->getPreferredEmailAddress($supporterId); | ||||
|   if (defined $email) { | ||||
|  | @ -119,7 +127,16 @@ my $subject = "Supporter lapsed report for $TODAY"; | |||
| my $per = ( ($lapsedCount / scalar(@supporterIds)) * 100.00); | ||||
| my $headerInfo = "$subject\n" . ("=" x length($subject)) . | ||||
|   "\n\nWe have " . scalar(@supporterIds) . " supporters and $lapsedCount are lapsed.  That's " . | ||||
|   sprintf("%.2f", $per) . "%.\nActive supporter count: " . (scalar(@supporterIds) - $lapsedCount) . "\n\n"; | ||||
|   sprintf("%.2f", $per) . "%.\nActive supporter count: " . (scalar(@supporterIds) - $lapsedCount) . "\n" . | ||||
|   sprintf("    Of the active supporters, %.2f%% are monthly and %.2f%% are annual", | ||||
|           ( ($activeCounter{Monthly} / (scalar(@supporterIds) - $lapsedCount)) * 100.00), | ||||
|           ( ($activeCounter{Annual} / (scalar(@supporterIds) - $lapsedCount)) * 100.00)) . ".\n\n"; | ||||
| 
 | ||||
| foreach my $type (keys %lapsedCounter) { | ||||
|   $headerInfo .= sprintf("%7s:    Lapsed Count: %3d   Active Count: %3d\n", | ||||
|                          $type, $lapsedCounter{$type}, $activeCounter{$type}); | ||||
| } | ||||
| $headerInfo .= "\n"; | ||||
| my $emailText .= $headerInfo; | ||||
| my $allStaffEmailText = $headerInfo; | ||||
| $emailText .= "\n     RENEWAL DUE COUNT BY MONTH\n"; | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Bradley M. Kuhn
						Bradley M. Kuhn