/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package com.megatim.fdxconsultation.service.ifaces.dataproduction; import com.megatim.fdxcommons.core.ifaces.interceptor.LoggingInterceptorBinding; import com.megatim.fdxcommons.model.dtos.dataproduction.DataProductionDto; import com.megatim.fdxcommons.model.pojo.CriteriaFormRequest; import com.megatim.fdxconsultation.model.dataproduction.DataProduction; import com.megatim.fdxconsultation.model.dto.stats.TableauBordSlimDto; import com.megatim.fdxconsultation.service.ifaces.abstracts.AbstractGenericReportingIFaces; import com.megatim.fdxconsultation.service.ifaces.abstracts.AbstractReadWithCriteriaEntityIFaces; import com.mgt.rs.security.core.common.Secured; 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 DataProductionRS extends AbstractReadWithCriteriaEntityIFaces, AbstractGenericReportingIFaces { @Override public DataProductionDto mapToDto(DataProduction entity); @GET @Produces({MediaType.APPLICATION_JSON}) @Path("findbyid/{id}") @Secured(action = "*") @Override public Response findById(@Context HttpHeaders headers, @PathParam("id") Long id); @POST @Produces({MediaType.APPLICATION_JSON}) @Path("findwithpagination/{pageNumber}/{pagesize}") @Secured(action = "Echanges données", enable = true) @LoggingInterceptorBinding(message = "Consultation tableau de bord Fdx API", classe = TableauBordSlimDto.class) @Override public Response findWithPagination(@Context HttpHeaders headers, @PathParam("pageNumber") Integer pageNumber, @PathParam("pagesize") Integer pageSize, CriteriaFormRequest criteriaFormRequest); @POST @Produces({MediaType.APPLICATION_JSON}) @Path("count") @Secured(actions = {"Echanges données"}) @Override public Long count(@Context HttpHeaders headers, CriteriaFormRequest criteriaFormRequest); @GET @Produces({MediaType.APPLICATION_JSON}) @Path("search-columns") @Secured(actions = {"Echanges données"}) @Override public Response getSearchColumns(@Context HttpHeaders headers); @POST @Produces({MediaType.APPLICATION_JSON}) @Secured(action = "Echanges données", enable = true) @Path("find-all") @Override public Response findAll(@Context HttpHeaders headers, CriteriaFormRequest criteriaFormRequest); }