Changeset 2122 for trunk/LATMOS-Accounts-Web/lib/LATMOS
- Timestamp:
- 11/08/17 14:46:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LATMOS-Accounts-Web/lib/LATMOS/Accounts/Web/Controller/Summary/ListEmployments.pm
r2121 r2122 27 27 my ( $self, $c ) = @_; 28 28 29 my ($min, $max) = $c->model('Accounts')->db->getEmploymentRange; 29 my $base = $c->model('Accounts')->db; 30 31 my ($min, $max) = $base->getEmploymentRange; 30 32 $c->stash->{minE} = $min 31 33 ? DateTime->from_epoch( epoch => str2time( $min ) ) … … 49 51 ); 50 52 53 my %atstart = map { $_ => 1 } $base->search_objects( 54 'employment', sprintf('firstday>=%s', $c->stash->{min}->ymd('-')) 55 ); 56 my %atend = map { $_ => 1 } $base->search_objects( 57 'employment', sprintf('lastday<=%s', $c->stash->{max}->ymd('-')) 58 ); 59 51 60 if (my $jtype = $c->req->param('jtype')) { 52 61 push(@search, 'contratType.sutype=' . $jtype); … … 59 68 60 69 foreach my $attr (qw(sn givenName description)) { 61 my %res = $ c->model('Accounts')->db->attributes_summary_by_object('user', $attr);70 my %res = $base->attributes_summary_by_object('user', $attr); 62 71 $users{$_}{$attr} = $res{$_}->[0] foreach (keys %res); 63 72 } … … 68 77 } 69 78 70 my %objects = map { $_ => {} } $c->model('Accounts')->db->search_objects('employment', @search); 79 my %inclusiveObjects = map { $_ => {} } $base->search_objects('employment', @search); 80 my %objects = (); 81 my $atstart = $c->req->param('atstart'); 82 my $atend = $c->req->param('atend'); 83 84 foreach my $emp (keys %inclusiveObjects) { 85 if ($atstart) { 86 $atstart{$emp} or next; 87 } 88 if ($atend) { 89 $atend{$emp} or next; 90 } 91 $objects{$emp} = $inclusiveObjects{$emp}; 92 } 71 93 72 94 my @attrs = qw(user firstday lastday contratType department); 73 95 74 96 foreach my $attr (@attrs) { 75 foreach (keys %objects) {76 $objects{$_}{$attr} = [];77 }78 97 my %res = $c->model('Accounts')->db->attributes_summary_by_object('employment', $attr); 79 98 foreach my $obj (keys %res) { 80 99 exists($objects{$obj}) or next; 81 $objects{$obj}{$attr} = $res{$obj} ;100 $objects{$obj}{$attr} = $res{$obj}->[0]; 82 101 } 83 102 } 84 103 85 $c->stash->{employments} = [ sort { $a->{user}[0] cmp $b->{user}[0] } values %objects ]; 104 foreach (keys %objects) { 105 $objects{$_}{username} = $c->stash->{users}{ $objects{$_}{user} }; 106 $objects{$_}{username} = $objects{$_}{user}; 107 } 108 109 $c->stash->{employments} = [ sort { $a->{user} cmp $b->{user} } values %objects ]; 86 110 } 87 111
Note: See TracChangeset
for help on using the changeset viewer.