Skip to content
Snippets Groups Projects
Commit 6ef1adf6 authored by tjc's avatar tjc
Browse files

implement way of retrieving information for a srcFeature FeatureLoc range

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@6325 ee4ac58c-ac51-4696-9907-e4b3aa274f04
parent 970349ce
No related branches found
No related tags found
No related merge requests found
......@@ -145,6 +145,9 @@
<dynamic>
<isGreaterThan property="featureLoc.featureBySrcFeatureId.featureId" compareValue="0">
srcfeature_id=$featureLoc.featureBySrcFeatureId.featureId$
</isGreaterThan>
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>
<isNotNull property="uniqueName">
uniquename LIKE #uniqueName#
......@@ -196,6 +199,7 @@
</dynamic>
f.feature_id > 0
</select>
<select id="getLazyFeatureById" resultMap ="map-feature-lazy" >
SELECT
......
......@@ -42,7 +42,7 @@
<!-- select feature_cvterm -->
<select id="getFeatureCvTermsBySrcFeatureId" parameterClass="java.lang.Integer"
<select id="getFeatureCvTermsBySrcFeature" parameterClass="org.gmod.schema.sequence.Feature"
resultMap="select-featurecvterm">
SELECT
fc.*,
......@@ -60,7 +60,11 @@
LEFT JOIN pub ON fc.pub_id=pub.pub_id
LEFT JOIN dbxref ON cvterm.dbxref_id=dbxref.dbxref_id
LEFT JOIN db ON dbxref.db_id=db.db_id
WHERE feature_id IN (SELECT feature_id FROM featureloc WHERE srcfeature_id=$value$)
WHERE feature_id IN
(SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>)
ORDER BY fc.feature_cvterm_id, fc.rank, type_id, fcp.rank;
</select>
......
......@@ -32,14 +32,18 @@
</dynamic>
</select>
<select id="getFeatureCvTermDbXRefBySrcFeatureId" parameterClass="java.lang.Integer"
<select id="getFeatureCvTermDbXRefBySrcFeature" parameterClass="org.gmod.schema.sequence.Feature"
resultMap="map-featurecvtermdbxref">
SELECT fcd.feature_cvterm_id, dbx.*, db.name
FROM feature_cvterm_dbxref fcd
LEFT JOIN dbxref dbx ON dbx.dbxref_id=fcd.dbxref_id
LEFT JOIN db ON db.db_id=dbx.db_id
LEFT JOIN feature_cvterm fc ON fcd.feature_cvterm_id=fc.feature_cvterm_id
WHERE feature_id IN (SELECT feature_id FROM featureloc WHERE srcfeature_id=$value$)
WHERE feature_id IN
(SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>)
</select>
<select id="getFeatureCvTermDbXRefByFeatureCvTerm" parameterClass="java.lang.Integer"
......
......@@ -30,13 +30,17 @@
</select>
<select id="getFeatureCvTermPubBySrcFeatureId" parameterClass="java.lang.Integer"
<select id="getFeatureCvTermPubBySrcFeature" parameterClass="org.gmod.schema.sequence.Feature"
resultMap="feature_cvterm_pub">
SELECT fcp.feature_cvterm_id, pub.*
FROM feature_cvterm_pub fcp
LEFT JOIN pub ON fcp.pub_id=pub.pub_id
LEFT JOIN feature_cvterm fc ON fcp.feature_cvterm_id=fc.feature_cvterm_id
WHERE feature_id IN (SELECT feature_id FROM featureloc WHERE srcfeature_id=$value$)
WHERE feature_id IN
(SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>)
</select>
......
......@@ -55,8 +55,8 @@
ORDER BY f.type_id, uniquename
</select>
<select id="getFeatureDbXRefsBySrcFeatureId"
parameterClass="java.lang.Integer"
<select id="getFeatureDbXRefsBySrcFeature"
parameterClass="org.gmod.schema.sequence.Feature"
resultMap="map-feature-dbxref">
SELECT db.name, dbx.accession, dbx.version, dbx.description,
dbx_f.feature_id, dbx_f.is_current
......@@ -64,7 +64,11 @@
LEFT JOIN dbxref dbx ON dbx.dbxref_id=dbx_f.dbxref_id
LEFT JOIN db ON db.db_id=dbx.db_id
LEFT JOIN feature f ON dbx_f.feature_id=f.feature_id
WHERE dbx_f.feature_id IN (SELECT feature_id FROM featureloc WHERE srcfeature_id=$value$)
WHERE dbx_f.feature_id IN
(SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>)
ORDER BY f.type_id, uniquename
</select>
......
......@@ -30,16 +30,18 @@
<result property="pub.cvTerm.cvTermId" column="type_id" />
</resultMap>
<select id="getFeaturePubsBySrcFeatureId" parameterClass="java.lang.Integer"
<select id="getFeaturePubsBySrcFeature" parameterClass="org.gmod.schema.sequence.Feature"
resultMap="map-featurepubs">
SELECT
f.feature_id AS id, pub.*
FROM feature f
LEFT JOIN featureloc fl ON f.feature_id = fl.feature_id
INNER JOIN feature_pub fpub ON fpub.feature_id = f.feature_id
LEFT JOIN pub ON fpub.pub_id=pub.pub_id
WHERE
srcfeature_id=$featureId$
WHERE f.feature_id IN
(SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>)
ORDER BY f.uniquename
</select>
......
......@@ -70,13 +70,17 @@
</isNotNull>
</select>
<select id="getFeatureSynonymsBySrcFeatureId" resultMap="map-alias"
parameterClass="java.lang.Integer">
<select id="getFeatureSynonymsBySrcFeature" resultMap="map-alias"
parameterClass="Feature">
SELECT fs.*, s.name, s.synonym_sgml, s.type_id
FROM feature_synonym fs
LEFT JOIN feature f ON f.feature_id=fs.feature_id
LEFT JOIN synonym s ON fs.synonym_id=s.synonym_id
WHERE f.feature_id IN (SELECT feature_id FROM featureloc WHERE srcfeature_id=$value$)
WHERE f.feature_id IN
(SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
<isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND">
<![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
</isGreaterThan>)
</select>
<select id="getLazyFeatureSynonymsByUniquename" resultMap="map-alias-part-lazy"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment