just adding simple search and ordering to datatable api (WIP)
This commit is contained in:
+1
-1
@@ -25,7 +25,7 @@ public interface ReadExtraDataAndReportingService {
|
|||||||
void updateExtraData(String type, String set, Long id,
|
void updateExtraData(String type, String set, Long id,
|
||||||
Map<String, String> queryParams);
|
Map<String, String> queryParams);
|
||||||
|
|
||||||
String retrieveDataTable(String datatable);
|
String retrieveDataTable(String datatable, String sqlSearch, String sqlOrder);
|
||||||
|
|
||||||
Response processPentahoRequest(String reportName, String outputType,
|
Response processPentahoRequest(String reportName, String outputType,
|
||||||
Map<String, String> queryParams);
|
Map<String, String> queryParams);
|
||||||
|
|||||||
+5
-1
@@ -368,10 +368,14 @@ public class ReadExtraDataAndReportingServiceImpl implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String retrieveDataTable(String datatable) {
|
public String retrieveDataTable(String datatable, String sqlSearch, String sqlOrder) {
|
||||||
long startTime = System.currentTimeMillis();
|
long startTime = System.currentTimeMillis();
|
||||||
|
|
||||||
String sql = "select * from " + datatable;
|
String sql = "select * from " + datatable;
|
||||||
|
if (sqlSearch != null)
|
||||||
|
sql = sql + " where " + sqlSearch;
|
||||||
|
if (sqlOrder != null)
|
||||||
|
sql = sql + " order by " + sqlOrder;
|
||||||
|
|
||||||
GenericResultsetData result = fillReportingGenericResultSet(sql);
|
GenericResultsetData result = fillReportingGenericResultSet(sql);
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import javax.ws.rs.GET;
|
|||||||
import javax.ws.rs.Path;
|
import javax.ws.rs.Path;
|
||||||
import javax.ws.rs.PathParam;
|
import javax.ws.rs.PathParam;
|
||||||
import javax.ws.rs.Produces;
|
import javax.ws.rs.Produces;
|
||||||
|
import javax.ws.rs.QueryParam;
|
||||||
import javax.ws.rs.core.Context;
|
import javax.ws.rs.core.Context;
|
||||||
import javax.ws.rs.core.MediaType;
|
import javax.ws.rs.core.MediaType;
|
||||||
import javax.ws.rs.core.UriInfo;
|
import javax.ws.rs.core.UriInfo;
|
||||||
@@ -42,11 +43,13 @@ public class DataTableApiResource {
|
|||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({MediaType.APPLICATION_JSON})
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({MediaType.APPLICATION_JSON})
|
||||||
public String extraData(@PathParam("datatable") final String datatable,
|
public String extraData(@PathParam("datatable") final String datatable,
|
||||||
|
@QueryParam("sqlSearch") final String sqlSearch,
|
||||||
|
@QueryParam("sqlOrder") final String sqlOrder,
|
||||||
@Context final UriInfo uriInfo) {
|
@Context final UriInfo uriInfo) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
//GenericResultsetData result = this.readExtraDataAndReportingService.retrieveDataTable(datatable);
|
//GenericResultsetData result = this.readExtraDataAndReportingService.retrieveDataTable(datatable);
|
||||||
return this.readExtraDataAndReportingService.retrieveDataTable(datatable);
|
return this.readExtraDataAndReportingService.retrieveDataTable(datatable, sqlSearch, sqlOrder);
|
||||||
|
|
||||||
//boolean prettyPrint = ApiParameterHelper.prettyPrint(uriInfo.getQueryParameters());
|
//boolean prettyPrint = ApiParameterHelper.prettyPrint(uriInfo.getQueryParameters());
|
||||||
//return this.apiDataConversionService.convertGenericResultsetDataToJson(prettyPrint, result);
|
//return this.apiDataConversionService.convertGenericResultsetDataToJson(prettyPrint, result);
|
||||||
|
|||||||
Reference in New Issue
Block a user