diff --git a/Model/lib/wdk/model/records/datasetRecords.xml b/Model/lib/wdk/model/records/datasetRecords.xml
index 961e780d..d2536ab7 100644
--- a/Model/lib/wdk/model/records/datasetRecords.xml
+++ b/Model/lib/wdk/model/records/datasetRecords.xml
@@ -1070,6 +1070,12 @@ Based on evolutionarily informed expectations of gene content of near-universal
>>>>>> master
)
- ) dp
-WHERE pres.dataset_presenter_id = dp.dataset_presenter_id(+)
- AND project_id = '@PROJECT_ID@'
-) dts
-LEFT OUTER JOIN
-(
- SELECT dataset_id,
- LISTAGG(email, ',') WITHIN GROUP (ORDER BY email) "REQUEST_EMAIL_BCC"
- FROM useraccounts.accounts@ACCT_DBLINK@ acc,
- studyaccess.providers@ACCT_DBLINK@ pr
- where pr.user_id = acc.user_id
- and is_manager = 1
- GROUP BY dataset_id
- ORDER BY dataset_id
-) bcc
-ON dts.dataset_id = bcc.dataset_id
-UNION
--- installed user datasets
-SELECT CONCAT('EDAUD_', d.user_dataset_id) as dataset_stable_id
- , null as project_availability
- , 'NA' as is_public
- , 'NA' as study_access
- , null as days_for_approval
- , '0' as is_prerelease
- , null as policy_url
- , 'TODO_CARD_HEADLINE' as card_headline
- , '[]' as card_points
- , '[]' as card_questions
- , null as request_protection_level
- , null as request_access_fields
- , null as request_email
- , null as request_email_bcc
- , null as request_email_body
- , null as request_needs_approval
- , null as request_email_body_requester
- , null as request_email_body_manager
- , null as custom_download_tab
- , null as custom_download_ack
- from @VDI_CONTROL_SCHEMA@.availableuserdatasets d
+ select dts.*, bcc.request_email_bcc
+ from (
+ SELECT
+ pres.dataset_presenter_id as dataset_id,
+ project_availability,
+ is_public,
+ initcap(dp.study_access) as study_access,
+ days_for_approval,
+ policy_url,
+ card_headline,
+ card_points,
+ card_questions,
+ request_protection_level,
+ request_access_fields,
+ request_email,
+ request_email_body,
+ request_needs_approval,
+ request_email_body_manager,
+ request_email_body_requester,
+ custom_download_tab,
+ custom_download_ack,
+ CASE
+ WHEN study_access = 'prerelease' THEN '1'
+ ELSE '0'
+ END as is_prerelease
+ FROM
+ apidbtuning.datasetpresenter pres
+ JOIN (
+ SELECT
+ dataset_presenter_id,
+ max(CASE WHEN property = 'projectAvailability' THEN value END) as project_availability,
+ max(CASE WHEN property = 'isPublic' THEN value END) as is_public,
+ max(CASE WHEN property = 'studyAccess' THEN value END) as study_access,
+ max(CASE WHEN property = 'daysForApproval' THEN value END) as days_for_approval,
+ max(CASE WHEN property = 'policyUrl' THEN value END) as policy_url,
+ max(CASE WHEN property = 'cardHeadline' THEN value END) as card_headline,
+ max(CASE WHEN property = 'cardPoints' THEN value END) as card_points,
+ max(CASE WHEN property = 'cardQuestions' THEN value END) as card_questions,
+ max(CASE WHEN property = 'requestProtectionLevel' THEN value END) as request_protection_level,
+ max(CASE WHEN property = 'requestAccessFields' THEN value END) as request_access_fields,
+ max(CASE WHEN property = 'requestEmail' THEN value END) as request_email,
+ max(CASE WHEN property = 'requestEmailBody' THEN value END) as request_email_body,
+ max(CASE WHEN property = 'requestNeedsApproval' THEN value END) as request_needs_approval,
+ max(CASE WHEN property = 'requestEmailBodyManager' THEN value END) as request_email_body_manager,
+ max(CASE WHEN property = 'requestEmailBodyRequester' THEN value END) as request_email_body_requester,
+ max(CASE WHEN property = 'customDownoadTab' THEN value END) as custom_download_tab,
+ max(CASE WHEN property = 'customDownloadAck' THEN value END) as custom_download_ack
+ FROM properties
+ WHERE property IN ('studyCategories', 'projectAvailability', 'isPublic', 'studyAccess', 'daysForApproval', 'policyUrl', 'cardHeadline', 'cardPoints', 'cardQuestions', 'requestProtectionLevel', 'requestAccessFields', 'requestEmail', 'requestEmailBody', 'requestNeedsApproval', 'requestEmailBodyRequester', 'requestEmailBodyManager', 'customDownoadTab', 'customDownloadAck')
+ AND trim(value) IS NOT NULL
+ GROUP BY dataset_presenter_id
+ ) dp
+ ON pres.dataset_presenter_id = dp.dataset_presenter_id
+ WHERE project_id = '@PROJECT_ID@'
+ ) dts
+ LEFT JOIN (
+ SELECT dataset_id,
+ string_agg(email, ',') as request_email_bcc
+ FROM useraccounts.accounts acc
+ JOIN studyaccess.providers pr ON pr.user_id = acc.user_id
+ WHERE is_manager = 1
+ GROUP BY dataset_id
+ ORDER BY dataset_id
+ ) bcc
+ ON dts.dataset_id = bcc.dataset_id
+ UNION
+ SELECT
+ CONCAT('EDAUD_', d.user_dataset_id) as dataset_stable_id,
+ null as project_availability,
+ 'NA' as is_public,
+ 'NA' as study_access,
+ null as days_for_approval,
+ '0' as is_prerelease,
+ null as policy_url,
+ 'TODO_CARD_HEADLINE' as card_headline,
+ '[]' as card_points,
+ '[]' as card_questions,
+ null as request_protection_level,
+ null as request_access_fields,
+ null as request_email,
+ null as request_email_bcc,
+ null as request_email_body,
+ null as request_needs_approval,
+ null as request_email_body_requester,
+ null as request_email_body_manager,
+ null as custom_download_tab,
+ null as custom_download_ack
+ FROM @VDI_CONTROL_SCHEMA@.availableuserdatasets d
]]>
@@ -1194,33 +1250,55 @@ SELECT CONCAT('EDAUD_', d.user_dataset_id) as dataset_stable_id
-
@@ -1277,7 +1355,7 @@ LEFT OUTER JOIN (
select DATASET_PRESENTER_ID,
count(1) as total_number,
count(case when approval_status_id = 0 then 1 end) as approved_number
- from studyaccess.end_users@ACCT_DBLINK@ eu
+ from studyaccess.end_users eu
group by dataset_presenter_id
)
) mycounts
@@ -1606,60 +1684,13 @@ where mystudies.dataset_id = dp.dataset_presenter_id
' || dp.citation || '', '' || dh.text || '') as publink
- , dp.pmid
- from apidbtuning.datasetPublication dp
- left join apidbtuning.datasethyperlink dh
- on dp.dataset_presenter_id = dh.dataset_presenter_id
- and dh.isPublication = 'Y'
- )
- select dsp.dataset_presenter_id as dataset_id,
- dsp.name as dataset_name, dsp.dataset_name_pattern,
- --dsp.display_name,
- ds.version,
- dsp.short_display_name, dsp.description,
- nvl(dsp.summary, dsp.description) as summary,
- dsp.protocol, dsp.usage,
- dsp.type,
- dsp.is_species_scope,
- dsp.build_number_introduced,
- nvl(history.eupath_release, introduced.eupath_release) as eupath_release,
- pubs.pmids,
- pubs.pmids_download
- from apidbTuning.DatasetPresenter dsp, apidb.datasource ds,
- (select dataset_presenter_id
- , dbms_xmlgen.convert(rtrim(xmlagg(xmlelement(e,publink, '
').extract('//text()') order by publink).getclobval(), '
'), 1) as pmids
- , listagg( pmid, ', ') within group (order by pmid) as pmids_download
- from allpubs
- group by dataset_presenter_id) pubs,
- (select dataset_presenter_id,
- '@PROJECT_ID@ rel. ' || release_number || ', ' || release_date as eupath_release
- from (select dh.dataset_presenter_id, dh.build_number, to_char(ebd.release_date,'YYYY-MON-DD') as release_date,
- ebd.release_number, ebd.project,
- row_number() over (partition by dh.dataset_presenter_id
- order by ebd.release_number desc) rn
- from apidbTuning.DatasetHistory dh, apidbTuning.EupathBuildDates ebd
- where dh.build_number = ebd.build_number
- and ebd.project = '@PROJECT_ID@')
- where rn = 1) history,
- (select build_number,
- '@PROJECT_ID@ rel. ' || release_number || ', ' || release_date as eupath_release
- from apidbTuning.EupathBuildDates
- where project = '@PROJECT_ID@') introduced
- where dsp.dataset_presenter_id = history.dataset_presenter_id(+)
- and dsp.build_number_introduced = introduced.build_number(+)
- and dsp.dataset_presenter_id = pubs.dataset_presenter_id(+)
- and ds.name (+) = dsp.name
- UNION ALL
SELECT CONCAT('EDAUD_', d.dataset_id) as dataset_stable_id
, null as dataset_name
, null as dataset_name_pattern
, null as version
, d.name as short_display_name
- , to_clob(d.description) as description
- , to_clob(d.description) as summary
+ , d.description as description
+ , d.description as summary
, null as protocol
, null as usage
, null as type
@@ -1673,75 +1704,25 @@ where mystudies.dataset_id = dp.dataset_presenter_id
- ' || dp.citation || '', '' || dh.text || '') as publink
- , dp.pmid
- from apidbtuning.datasetPublication dp
- left join apidbtuning.datasethyperlink dh
- on dp.dataset_presenter_id = dh.dataset_presenter_id
- and dh.isPublication = 'Y'
- ),
- lastVerDS as (
- select dataset_presenter_id, max(version) as version
- from apidb.datasource ds, apidbTuning.DatasetPresenter dsp
- where ds.name (+) = dsp.name
- group by dataset_presenter_id )
- select dsp.dataset_presenter_id as dataset_id,
- dsp.name as dataset_name, dsp.dataset_name_pattern,
- --dsp.display_name,
- lastVerDS.version,
- dsp.short_display_name, dsp.description,
- nvl(dsp.summary, dsp.description) as summary,
- dsp.protocol, dsp.usage,
- dsp.type,
- dsp.is_species_scope,
- dsp.build_number_introduced,
- nvl(history.eupath_release, introduced.eupath_release) as eupath_release,
- pubs.pmids,
- pubs.pmids_download
- from apidbTuning.DatasetPresenter dsp, lastVerDS,
- (select dataset_presenter_id
- , dbms_xmlgen.convert(rtrim(xmlagg(xmlelement(e, publink, ', ').extract('//text()') order by publink).getclobval(), ', '), 1) as pmids
- , listagg( pmid, ', ') within group (order by pmid) as pmids_download
- from allpubs
- group by dataset_presenter_id) pubs,
- (select dataset_presenter_id,
- 'VEuPathDB rel. ' || release_number || ', ' || release_date as eupath_release
- from (select dh.dataset_presenter_id, dh.build_number, to_char(ebd.release_date,'YYYY-MON-DD') as release_date,
- ebd.release_number, ebd.project,
- row_number() over (partition by dh.dataset_presenter_id
- order by ebd.release_number desc) rn
- from apidbTuning.DatasetHistory dh, apidbTuning.EupathBuildDates ebd
- where dh.build_number = ebd.build_number
- and ebd.project = '@PROJECT_ID@')
- where rn = 1) history,
- (select build_number,
- '@PROJECT_ID@ rel. ' || release_number || ', ' || release_date as eupath_release
- from apidbTuning.EupathBuildDates
- where project = '@PROJECT_ID@') introduced
- where dsp.dataset_presenter_id = history.dataset_presenter_id(+)
- and dsp.build_number_introduced = introduced.build_number(+)
- and dsp.dataset_presenter_id = pubs.dataset_presenter_id(+)
- and lastVerDS.dataset_presenter_id = dsp.dataset_presenter_id
- and NOT dsp.name IN ('taxonomy_RSRC','enzymeDB_RSRC','PDBProteinSequences_RSRC','NRDB_RSRC','GO_RSRC')
- UNION ALL
- select dsp.dataset_presenter_id as dataset_id,
- dsp.name as dataset_name, dsp.dataset_name_pattern,
- '' as version,
- dsp.short_display_name, dsp.description,
- nvl(dsp.summary, dsp.description) as summary,
- dsp.protocol, dsp.usage,
- dsp.type,
- dsp.is_species_scope,
- dsp.build_number_introduced,
- '' as eupath_release,
- TO_CLOB('') as pmids,
- '' as pmids_download
- from apidbTuning.DatasetPresenter dsp
- where dsp.name IN ('taxonomy_RSRC','enzymeDB_RSRC','PDBProteinSequences_RSRC','NRDB_RSRC','GO_RSRC')
- ]]>
+
+
@@ -1801,11 +1782,6 @@ select dsp.dataset_presenter_id as dataset_id,
Contact VEuPathDB for more details'
- END as contact,
- CASE WHEN (dsc.name is null and dsc.affiliation is not null) THEN dsc.name
- ELSE dsc.affiliation END as institution,
- dsc.email as email,
- nvl(dsp.short_attribution, dsc.name) as short_attribution
- from ApidbTuning.DatasetPresenter dsp, ApidbTuning.DatasetContact dsc
- where dsp.dataset_presenter_id = dsc.dataset_presenter_id (+)
- and dsc.is_primary_contact = 1
- UNION
SELECT CONCAT('EDAUD_', d.user_dataset_id)
, null as contact
, null as institution
@@ -2243,7 +2206,7 @@ from apidbtuning.datasetpresenter pres,
select eu.DATASET_PRESENTER_ID,
count(*) as total,
count(case when approval_status_id = 0 then 1 end) as approved
- from studyaccess.end_users@ACCT_DBLINK@ eu, apidbtuning.datasetproperty dp
+ from studyaccess.end_users eu, apidbtuning.datasetproperty dp
where eu.dataset_presenter_id = dp.DATASET_PRESENTER_ID
and property = 'studyAccess'
and value != 'public'
@@ -2284,19 +2247,19 @@ FROM
SELECT *
FROM (
SELECT user_id, key, value
- FROM useraccounts.account_properties@ACCT_DBLINK@ where key in ('first_name', 'last_name')
+ FROM useraccounts.account_properties where key in ('first_name', 'last_name')
))
GROUP BY user_id
) t1,
(
SELECT user_id, value
- FROM useraccounts.account_properties@ACCT_DBLINK@
+ FROM useraccounts.account_properties
WHERE key in ('organization')
) t2,
(
SELECT user_id, dataset_presenter_id, start_date, purpose, a.name AS approval_status
- FROM studyaccess.end_users@ACCT_DBLINK@ v
- INNER JOIN studyaccess.approval_status@ACCT_DBLINK@ a
+ FROM studyaccess.end_users v
+ INNER JOIN studyaccess.approval_status a
ON v.approval_status_id = a.approval_status_id
WHERE a.name = 'approved'
) t3,
diff --git a/Model/src/main/java/org/apidb/apicommon/model/datasetInjector/GenomicsEDAStudy.java b/Model/src/main/java/org/apidb/apicommon/model/datasetInjector/GenomicsEDAStudy.java
index aa8f982f..bdca1f7d 100644
--- a/Model/src/main/java/org/apidb/apicommon/model/datasetInjector/GenomicsEDAStudy.java
+++ b/Model/src/main/java/org/apidb/apicommon/model/datasetInjector/GenomicsEDAStudy.java
@@ -20,7 +20,7 @@ private void injectCardQuestions() {
String presenterId = getPropValue("presenterId");
String cardQuestions = "UNION select '" + presenterId + "' as dataset_presenter_id, 'cardQuestions' as property, '{ ";
//cardQuestions = cardQuestions + getCardQuestionString();
- cardQuestions = cardQuestions + " }' as value from dual";
+ cardQuestions = cardQuestions + " }' as value";
//System.err.println("cardQuestionsSql=" + cardQuestions);
setPropValue("cardQuestionsSql",cardQuestions);
injectTemplate("injectDatasetQuestions");
@@ -30,7 +30,7 @@ private void injectProjectAvailability() {
String presenterId = getPropValue("presenterId");
String projectAvailabilityProp = getPropValue("projectAvailability");
- String projectAvailability = "UNION select '" + presenterId + "' as dataset_presenter_id, 'projectAvailability' as property, '" + projectAvailabilityProp + "' as value from dual";
+ String projectAvailability = "UNION select '" + presenterId + "' as dataset_presenter_id, 'projectAvailability' as property, '" + projectAvailabilityProp + "' as value";
setPropValue("projectAvailabilitySql",projectAvailability);
injectTemplate("injectProjectAvailability");
}