2727import org .apereo .openlrw .caliper .Event ;
2828
2929import java .time .Instant ;
30+ import java .util .ArrayList ;
3031import java .util .Collection ;
32+ import java .util .Collections ;
3133
3234
3335/**
@@ -99,7 +101,7 @@ public Collection<LineItem> getLineItemsForClass(JwtAuthenticationToken token, @
99101 * @throws ResultNotFoundException
100102 */
101103 @ RequestMapping (value = "/{classId:.+}/lineitems/{lineitemId}/results" , method = RequestMethod .GET )
102- public Result getLineItemsResults (JwtAuthenticationToken token , @ PathVariable final String lineitemId ) throws ResultNotFoundException {
104+ public Collection < Result > getLineItemsResults (JwtAuthenticationToken token , @ PathVariable final String lineitemId ) throws ResultNotFoundException {
103105 UserContext userContext = (UserContext ) token .getPrincipal ();
104106 return resultService .getResultsForlineItem (userContext .getTenantId (), userContext .getOrgId (), lineitemId );
105107 }
@@ -118,12 +120,21 @@ public ResponseEntity<?> postLineItem(JwtAuthenticationToken token, @RequestBody
118120 @ RequestMapping (value = "/{classId:.+}/results" , method = RequestMethod .GET )
119121 public Collection <Result > getResultsForClass (JwtAuthenticationToken token , @ PathVariable final String classId ) throws LineItemNotFoundException , ResultNotFoundException {
120122 UserContext userContext = (UserContext ) token .getPrincipal ();
121- return resultService .getResultsForClass (userContext .getTenantId (), userContext .getOrgId (), classId );
123+
124+ Collection <LineItem > lineItems = this .lineItemService .getLineItemsForClass (userContext .getTenantId (), userContext .getOrgId (), classId );
125+ ArrayList <Result > results = new ArrayList <Result >();
126+ for (LineItem lineItem : lineItems ) {
127+ Collection <Result > lineItemResults = this .resultService .getResultsForlineItem (userContext .getTenantId (), userContext .getOrgId (), lineItem .getSourcedId ());
128+ results .addAll (lineItemResults );
129+ }
130+
131+ return results ;
122132 }
123133
124134 @ RequestMapping (value = "/{classId:.+}/results" , method = RequestMethod .POST )
125135 public ResponseEntity <?> postResult (JwtAuthenticationToken token , @ PathVariable final String classId , @ RequestBody Result result , @ RequestParam (value ="check" , required =false ) Boolean check ) {
126136 UserContext userContext = (UserContext ) token .getPrincipal ();
137+
127138 Result savedResult = this .resultService .save (userContext .getTenantId (), userContext .getOrgId (), classId , result , (check == null ) ? true : check );
128139 HttpHeaders httpHeaders = new HttpHeaders ();
129140 httpHeaders .setLocation (ServletUriComponentsBuilder .fromCurrentRequest ()
0 commit comments