All files / src/controllers/public/scan timeline.controller.ts

70.59% Statements 12/17
100% Branches 0/0
0% Functions 0/5
66.67% Lines 10/15

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 571x   1x 1x 1x 1x     1x                   1x               1x                     1x                   1x                  
import {get, param, post, requestBody} from '@loopback/rest';
 
import {service} from '@loopback/core';
import {TimelineService} from '@logchain/services/scan/timeline.service';
import {authenticate} from '@loopback/authentication';
import {TimelineStep} from '@logchain/types';
 
@authenticate('aws-cognito')
export class TimelineController {
  constructor(
    @service(TimelineService)
    public timelineService: TimelineService,
  ) {}
 
  /**
   * GET TIMELINE BY PMO
   */
  @get('/timeline/pmo/{pmoId}')
  async getTimelineByPmo(
    @param.path.number('pmoId')
    pmoId: number,
  ) {
    return this.timelineService.findByPmoId(pmoId);
  }
 
  @get('/timeline/pmo/{pmoId}/{status}')
  async getTimelineDetail(
    @param.path.number('pmoId')
    pmoId: number,
 
    @param.path.string('status')
    status: TimelineStep,
  ) {
    return this.timelineService.getTimelineDetail(pmoId, status);
  }
 
  @post('/timeline/summary')
  async getTimelineSummary(
    @requestBody()
    body: {
      pmoIds: number[];
    },
  ) {
    return this.timelineService.getTimelineSummary(body.pmoIds);
  }
 
  @post('/timeline/by-pmos')
  async getTimelineByPmos(
    @requestBody()
    body: {
      pmoIds: number[];
    },
  ) {
    return this.timelineService.getAllTimeLine(body.pmoIds);
  }
}