Ignore:
Timestamp:
11/06/17 17:41:24 (7 years ago)
Author:
nanardon
Message:

add tools to search employments

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql.pm

    r2111 r2121  
    955955} 
    956956 
     957=head2 getEmploymentRange 
     958 
     959Return date range within employment can be found in database 
     960 
     961=cut 
     962 
     963sub getEmploymentRange { 
     964    my ($self, @filters) = @_; 
     965 
     966    my ($min,$max); 
     967 
     968    if (@filters) { 
     969        my @flist = $self->search_objects('employment', @filters); 
     970        my $minSql = $self->db->prepare(q{ 
     971            SELECT min(firstday) as min FROM employment 
     972            WHERE name = ANY (?) 
     973        }); 
     974        $minSql->execute(\@flist); 
     975        if (my $res = $minSql->fetchrow_hashref) { 
     976            $min = $res->{min} 
     977        } 
     978        my $maxSql = $self->db->prepare(q{ 
     979            SELECT max(lastday) as max FROM employment 
     980            WHERE name = ANY (?) 
     981        }); 
     982        $maxSql->execute(\@flist); 
     983        if (my $res = $maxSql->fetchrow_hashref) { 
     984            $max = $res->{max} 
     985        } 
     986    } else { 
     987        my $minSql = $self->db->prepare(q{ 
     988            SELECT min(firstday) as min FROM employment 
     989        }); 
     990        $minSql->execute; 
     991        if (my $res = $minSql->fetchrow_hashref) { 
     992            $min = $res->{min} 
     993        } 
     994        my $maxSql = $self->db->prepare(q{ 
     995            SELECT max(lastday) as max FROM employment 
     996        }); 
     997        $maxSql->execute; 
     998        if (my $res = $maxSql->fetchrow_hashref) { 
     999            $max = $res->{max} 
     1000        } 
     1001    } 
     1002 
     1003    return ($min,$max); 
     1004} 
     1005 
    9571006sub ReportChange { 
    9581007    my ($self, $otype, $name, $ref, $changetype, $message, @args) = @_; 
Note: See TracChangeset for help on using the changeset viewer.