Interface PermissionRequestMetricsRepository

All Superinterfaces:
org.springframework.data.repository.CrudRepository<PermissionRequestMetricsModel,Long>, org.springframework.data.jpa.repository.JpaRepository<PermissionRequestMetricsModel,Long>, org.springframework.data.repository.ListCrudRepository<PermissionRequestMetricsModel,Long>, org.springframework.data.repository.ListPagingAndSortingRepository<PermissionRequestMetricsModel,Long>, org.springframework.data.repository.PagingAndSortingRepository<PermissionRequestMetricsModel,Long>, org.springframework.data.repository.query.QueryByExampleExecutor<PermissionRequestMetricsModel>, org.springframework.data.repository.Repository<PermissionRequestMetricsModel,Long>

@Repository public interface PermissionRequestMetricsRepository extends org.springframework.data.jpa.repository.JpaRepository<PermissionRequestMetricsModel,Long>
  • Method Summary

    Methods inherited from interface org.springframework.data.repository.CrudRepository

    count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, save

    Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository

    deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlush

    Methods inherited from interface org.springframework.data.repository.ListCrudRepository

    findAll, findAllById, saveAll

    Methods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor

    count, exists, findAll, findBy, findOne
  • Method Details

    • getPermissionRequestMetrics

      @Query("SELECT p FROM PermissionRequestMetricsModel p WHERE p.permissionRequestStatus = :status AND p.dataNeedType = :dataNeedType AND p.permissionAdministratorId = :#{#dsi.permissionAdministratorId()} AND p.regionConnectorId = :#{#dsi.regionConnectorId()} AND p.countryCode = :#{#dsi.countryCode()}") Optional<PermissionRequestMetricsModel> getPermissionRequestMetrics(@Param("status") PermissionProcessStatus status, @Param("dataNeedType") String dataNeedType, @Param("dsi") DataSourceInformation dsi)
    • upsertPermissionRequestMetric

      @Modifying @Transactional @Query(value="INSERT INTO metric.permission_request_metrics (mean, median, permission_request_count, permission_request_status,\n data_need_type, permission_administrator_id, region_connector_id, country_code)\n VALUES (:#{#model.mean}, :#{#model.median}, :#{#model.permissionRequestCount}, :#{#model.permissionRequestStatus.name()},\n :#{#model.dataNeedType}, :#{#model.permissionAdministratorId}, :#{#model.regionConnectorId}, :#{#model.countryCode})\n ON CONFLICT (permission_request_status, data_need_type, permission_administrator_id, region_connector_id, country_code)\n DO UPDATE SET\n mean = excluded.mean,\n median = excluded.median,\n permission_request_count = excluded.permission_request_count\n", nativeQuery=true) void upsertPermissionRequestMetric(@Param("model") PermissionRequestMetricsModel model)