Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 43 additions & 39 deletions src/breeding-insight/dao/StudyDAO.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,52 +18,56 @@
import {BiResponse, Response} from "@/breeding-insight/model/BiResponse";
import * as api from "@/util/api";
import {PaginationQuery} from "@/breeding-insight/model/PaginationQuery";
import { Result, Err, Success, ResultGenerator } from "@/breeding-insight/model/Result";
import {BrAPIDAOUtil} from "@/breeding-insight/dao/BrAPIDAOUtil";
import {Result, Err, Success, ResultGenerator} from "@/breeding-insight/model/Result";

const BRAPI_FETCH_PAGE_SIZE = Number(process.env.VUE_APP_BRAPI_FETCH_PAGE_SIZE);

export class StudyDAO {

static async getAllForTrial(programId: string, trialDbId: string): Promise<Result<Error, BiResponse>> {
// Use GET endpoint to get all Studies for a single Trial by external reference.
const { data } = await api.call({
url: `${process.env.VUE_APP_BI_API_V1_PATH}/programs/${programId}/brapi/v2/studies`,
method: 'get',
params: {
trialDbId: trialDbId,
pageSize: 1000000 }
}) as Response;
static async getAllForTrial(programId: string, trialDbId: string): Promise<Result<Error, BiResponse>> {
// Use GET endpoint to get all Studies for a single Trial by external reference.
const {data} = await api.call({
url: `${process.env.VUE_APP_BI_API_V1_PATH}/programs/${programId}/brapi/v2/studies`,
method: 'get',
params: {
trialDbId: trialDbId,
pageSize: BRAPI_FETCH_PAGE_SIZE
}
}) as Response;

return ResultGenerator.success(new BiResponse(data));
}

return ResultGenerator.success(new BiResponse(data));
}
static async getAll(programId: string, paginationQuery: PaginationQuery, full: boolean): Promise<Result<Error, BiResponse>> {
try {
const {data} = await api.call({
url: `${process.env.VUE_APP_BI_API_V1_PATH}/programs/${programId}/brapi/v2/studies`,
method: 'get',
params: {
full,
pageSize: BRAPI_FETCH_PAGE_SIZE
}
}) as Response;

static async getAll(programId: string, paginationQuery: PaginationQuery, full : boolean): Promise<Result<Error, BiResponse>> {
try {
// TODO: update pageSize setting when we can do backend brapi sorting
const { data } = await api.call({
url: `${process.env.VUE_APP_BI_API_V1_PATH}/programs/${programId}/brapi/v2/studies`,
method: 'get',
params: { full, pageSize: 1000000 }
}) as Response;
return ResultGenerator.success(new BiResponse(data));

} catch (error) {
return ResultGenerator.err(error);
}
}

return ResultGenerator.success(new BiResponse(data));

} catch (error) {
return ResultGenerator.err(error);
}
}
static async getById(programId: string, studyId: string): Promise<Result<Error, BiResponse>> {
try {
const {data} = await api.call({
url: `${process.env.VUE_APP_BI_API_V1_PATH}/programs/${programId}/brapi/v2/studies`,
method: 'get',
params: {studyDbId: studyId}
}) as Response;

static async getById(programId: string, studyId: string): Promise<Result<Error, BiResponse>> {
try {
const { data } = await api.call({
url: `${process.env.VUE_APP_BI_API_V1_PATH}/programs/${programId}/brapi/v2/studies`,
method: 'get',
params: { studyDbId: studyId }
}) as Response;
return ResultGenerator.success(new BiResponse(data));

return ResultGenerator.success(new BiResponse(data));

} catch (error) {
return ResultGenerator.err(error);
} catch (error) {
return ResultGenerator.err(error);
}
}
}
}
1 change: 1 addition & 0 deletions vue.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ process.env.VUE_APP_OPENID_LOGOUT_URL = process.env.VUE_APP_OPENID_LOGOUT_URL ||
process.env.VUE_APP_BI_API_V1_PATH = process.env.VUE_APP_BI_API_ROOT + "/v1";
process.env.VUE_APP_LOG_LEVEL = process.env.VUE_APP_LOG_LEVEL || 'error';
process.env.VUE_APP_BI_REFERENCE_SOURCE = process.env.VUE_APP_BI_REFERENCE_SOURCE || 'breedinginsight.org';
process.env.VUE_APP_BRAPI_FETCH_PAGE_SIZE = process.env.CACHE_BRAPI_FETCH_PAGE_SIZE || '65000';
process.env.VUE_APP_BRAPI_VENDOR_SUBMISSION_ENABLED = ('true' === process.env.VUE_APP_BRAPI_VENDOR_SUBMISSION_ENABLED);
process.env.VUE_APP_ALTERNATE_AUTHENTICATION_ENABLED = ('true' === process.env.VUE_APP_ALTERNATE_AUTHENTICATION_ENABLED);

Expand Down
Loading