Class StatisticsController

java.lang.Object
org.qubership.atp.tdm.controllers.StatisticsController

@RequestMapping("/api/tdm/statistics") @RestController public class StatisticsController extends Object
  • Constructor Details

  • Method Details

    • getThreshold

      @GetMapping("/threshold") public int getThreshold()
    • getTestDataAvailability

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#projectId, \'READ\')") @GetMapping("/data/available") public List<GeneralStatisticsItem> getTestDataAvailability(@RequestParam UUID projectId, @RequestParam(required=false) UUID systemId)
    • getTestDataConsumption

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#projectId, \'READ\')") @GetMapping("/data/occupied") public ConsumedStatistics getTestDataConsumption(@RequestParam UUID projectId, @RequestParam(required=false) UUID systemId, @RequestParam String dateFrom, @RequestParam String dateTo)
    • getTestDataConsumptionWhitOutdated

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#projectId, \'READ\')") @GetMapping("/data/outdated") public OutdatedStatistics getTestDataConsumptionWhitOutdated(@RequestParam UUID projectId, @RequestParam(required=false) UUID systemId, @RequestParam String dateFrom, @RequestParam String dateTo, @RequestParam String expirationDate)
    • getTestDataCreatedWhen

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#projectId, \'READ\')") @GetMapping("/data/created/when") public DateStatistics getTestDataCreatedWhen(@RequestParam UUID projectId, @RequestParam(required=false) UUID systemId, @RequestParam String dateFrom, @RequestParam String dateTo)
    • getMonitoringSchedule

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#projectId, \'READ\')") @GetMapping("/schedule") public TestDataTableMonitoring getMonitoringSchedule(@RequestParam UUID projectId)
    • setupScheduledRun

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#monitoringItem.getProjectId(), \'CREATE\')") @PostMapping("/schedule") public void setupScheduledRun(@RequestBody TestDataTableMonitoring monitoringItem)
    • deleteScheduledRun

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#monitoringItem.getProjectId(), \'UPDATE\')") @PutMapping("/delete/schedule") public void deleteScheduledRun(@RequestBody TestDataTableMonitoring monitoringItem)
    • getUsersMonitoringSchedule

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#projectId, \'READ\')") @GetMapping("/schedule/users") public TestDataTableUsersMonitoring getUsersMonitoringSchedule(@RequestParam UUID projectId)
      Get getting TestDataTableUsersMonitoring.
      Parameters:
      projectId - uuid project
      Returns:
      TestDataTableUsersMonitoring that contains the details
    • setupUsersScheduledRun

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#monitoringItem.getProjectId(), \'CREATE\')") @PostMapping("/schedule/users") public void setupUsersScheduledRun(@RequestBody TestDataTableUsersMonitoring monitoringItem)
      Post save TestDataTableUsersMonitoring.
      Parameters:
      monitoringItem - TestDataTableUsersMonitoring
    • deleteUsersScheduledRun

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#monitoringItem.getProjectId(), \'UPDATE\')") @PutMapping("/delete/schedule/users") public void deleteUsersScheduledRun(@RequestBody TestDataTableUsersMonitoring monitoringItem)
      Put delete TestDataTableUsersMonitoring.
      Parameters:
      monitoringItem - TestDataTableUsersMonitoring
    • getNextScheduledRun

      @GetMapping("/next/run") public Map<String,String> getNextScheduledRun(@RequestParam String cronExpression) throws ParseException
      Get next run's date / time details.
      Parameters:
      cronExpression - cron expression to calculate next run based on
      Returns:
      nextRunHashMap that contains the details
      Throws:
      ParseException - Thrown in case if invalid cron expression was provided
    • alterOccupiedDateColumn

      @GetMapping("/fix/occupied/date/column") public List<String> alterOccupiedDateColumn()
      Method fixes issue with statistics functional (ATPII-10354).
      Returns:
      list of tables to which a new column was added
    • getStatisticsByUsers

      @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),#request.getProjectId(), \'CREATE\')") @PostMapping("/data/occupied/users") public UsersOccupyStatisticResponse getStatisticsByUsers(@RequestBody UsersOccupyStatisticRequest request)
      Endpoint return list of users with occupied data.
      Parameters:
      request - Request data for users statistics.
      Returns:
      List of users with data about occupation.
    • getAvailableDataStatsConfig

      @GetMapping("/available/column/configuration") @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),@environmentsServiceImpl.getLazyEnvironment(#environmentId).getProjectId(), \'READ\')") public AvailableDataStatisticsConfig getAvailableDataStatsConfig(@RequestParam UUID systemId, @RequestParam UUID environmentId)
    • saveAvailableDataStatsConfig

      @PostMapping("/available/column/configuration") @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),@environmentsServiceImpl.getLazyEnvironment(#statsConfig.getEnvironmentId()).getProjectId(), \'CREATE\')") public void saveAvailableDataStatsConfig(@RequestBody AvailableDataStatisticsConfig statsConfig)
    • getAvailableData

      @GetMapping("/data/occupied/available") @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),@environmentsServiceImpl.getLazyEnvironment(#environmentId).getProjectId(), \'READ\')") public AvailableDataByColumnStats getAvailableData(@RequestParam UUID systemId, @RequestParam UUID environmentId)
    • getAvailableDataMonitoringConfig

      @GetMapping("/schedule/available") @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),@environmentsServiceImpl.getLazyEnvironment(#environmentId).getProjectId(), \'READ\')") public TestAvailableDataMonitoring getAvailableDataMonitoringConfig(@RequestParam UUID systemId, @RequestParam UUID environmentId)
    • saveAvailableDataMonitoringConfig

      @PostMapping("/schedule/available") @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),@environmentsServiceImpl.getLazyEnvironment(#monitoringConfig.getEnvironmentId()).getProjectId(), \'UPDATE\')") public void saveAvailableDataMonitoringConfig(@RequestBody TestAvailableDataMonitoring monitoringConfig) throws Exception
      Throws:
      Exception
    • deleteAvailableDataMonitoringConfig

      @DeleteMapping("/schedule/available") @PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.tdm.utils.UsersManagementEntities).STATISTICS.getName(),@environmentsServiceImpl.getLazyEnvironment(#environmentId).getProjectId(), \'UPDATE\')") public void deleteAvailableDataMonitoringConfig(@RequestParam UUID systemId, @RequestParam UUID environmentId)