/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Interface.java to edit this template */ package com.megatim.fdxconsultation.service.ifaces.log; import com.megatim.fdxcommons.core.ifaces.interceptor.LoggingInterceptorBinding; import com.megatim.fdxcommons.model.pojo.CriteriaFormRequest; import com.megatim.fdxconsultation.model.dto.log.UserActionLogDto; import com.megatim.fdxconsultation.model.log.ApiUserActionLog; import com.megatim.fdxconsultation.model.log.dtos.ApiUserActionSummarySearch; import com.megatim.fdxconsultation.service.ifaces.abstracts.AbstractGenericReportingIFaces; import com.megatim.fdxconsultation.service.ifaces.abstracts.AbstractReadWithCriteriaEntityIFaces; import com.megatim.reporting.adhoc.dto.ReportConfiguration; import com.mgt.rs.security.core.common.Secured; import javax.servlet.http.HttpServletRequest; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.HttpHeaders; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; /** * * @author ASUS */ public interface ApiUserActionLogRS extends AbstractReadWithCriteriaEntityIFaces, AbstractGenericReportingIFaces { @POST @Produces({MediaType.APPLICATION_JSON}) @Path("getby-statut") @Secured(action = "Tableau de bord", enable = true) public Response getByStatut(@Context HttpHeaders headers, ApiUserActionSummarySearch apiUserActionSummarySearch); @POST @Produces({MediaType.APPLICATION_JSON}) @Path("getby-statut-participant") @Secured(action = "Stat endpoint par participant", enable = true) public Response getByStatutAndUserName(@Context HttpHeaders headers, ApiUserActionSummarySearch apiUserActionSummarySearch); @POST @Produces({MediaType.APPLICATION_JSON}) @Path("getby-statut-path") @Secured(action = "Stat endpoint par path", enable = true) public Response getByStatutAndPath(@Context HttpHeaders headers, ApiUserActionSummarySearch apiUserActionSummarySearch); @POST @Produces({MediaType.APPLICATION_JSON}) @Path("findwithpagination/{pageNumber}/{pagesize}") @Secured(action = "Piste d'audit", enable = true) @LoggingInterceptorBinding(message = "Consultation liste des logs API") @Override public Response findWithPagination(@Context HttpHeaders headers, @PathParam("pageNumber") Integer pageNumber, @PathParam("pagesize") Integer pageSize, CriteriaFormRequest criteriaFormRequest); @POST @Produces(MediaType.APPLICATION_OCTET_STREAM) @Path("export/pdf/all") @Secured(action = "Piste d'audit", enable = true) @LoggingInterceptorBinding(message = "Export pdf liste des logs API") @Override public Response printAll(@Context HttpHeaders headers, ReportConfiguration reportConfiguration); @POST @Produces(MediaType.APPLICATION_OCTET_STREAM) @Path("export/pdf/detail/{id}") @Secured(action = "Piste d'audit", enable = true) @Override public Response printOne(@Context HttpHeaders headers, @Context HttpServletRequest request, @PathParam("id") Long id, ReportConfiguration reportConfiguration); @POST @Produces(MediaType.APPLICATION_OCTET_STREAM) @Path("export/excel/all") @Secured(action = "Piste d'audit", enable = true) @LoggingInterceptorBinding(message = "Export excel liste des logs API") @Override public Response exportExcelAll(@Context HttpHeaders headers, ReportConfiguration reportConfiguration); @POST @Produces(MediaType.APPLICATION_OCTET_STREAM) @Path("export/excel/detail/{id}") @Secured(action = "Piste d'audit", enable = true) @Override public Response exportExcelOne(@Context HttpHeaders headers, @Context HttpServletRequest request, @PathParam("id") Long id, ReportConfiguration reportConfiguration); }