|
From: <jav...@us...> - 2021-03-04 16:44:51
|
Revision: 18955
http://sourceforge.net/p/dcm4che/svn/18955
Author: javawilli
Date: 2021-03-04 16:44:46 +0000 (Thu, 04 Mar 2021)
Log Message:
-----------
Improve update of MPPS on 'DISCONTINUE' ORM handling
Modified Paths:
--------------
dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/entity/MPPSBean.java
dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/session/MPPSManagerBean.java
Modified: dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/entity/MPPSBean.java
===================================================================
--- dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/entity/MPPSBean.java 2021-02-19 10:57:02 UTC (rev 18954)
+++ dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/entity/MPPSBean.java 2021-03-04 16:44:46 UTC (rev 18955)
@@ -405,4 +405,19 @@
throws FinderException {
return ejbSelectMppsByStudyIuid(suid);
}
+
+ /**
+ * @ejb.select query="SELECT DISTINCT OBJECT(mpps) FROM MPPS mpps, IN(mpps.series) s, IN(s.requestAttributes) r WHERE r.spsId = ?1"
+ */
+ public abstract Collection ejbSelectMppsBySpsId(String spsId)
+ throws FinderException;
+
+
+ /**
+ * @ejb.home-method
+ */
+ public Collection ejbHomeMppsBySpsId(String spsId)
+ throws FinderException {
+ return ejbSelectMppsBySpsId(spsId);
+ }
}
Modified: dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/session/MPPSManagerBean.java
===================================================================
--- dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/session/MPPSManagerBean.java 2021-02-19 10:57:02 UTC (rev 18954)
+++ dcm4chee/dcm4chee-arc/branches/DCM4CHEE_2_18_0-RC/dcm4jboss-ejb/src/java/org/dcm4chex/archive/ejb/session/MPPSManagerBean.java 2021-03-04 16:44:46 UTC (rev 18955)
@@ -902,7 +902,11 @@
}
Collection c;
try {
- c = mppsHome.mppsByStudyIuid(suid);
+ if (suid != null) {
+ c = mppsHome.mppsByStudyIuid(suid);
+ } else {
+ c = mppsHome.mppsBySpsId(mwlitem.getItem(Tags.SPSSeq).getString(Tags.SPSID));
+ }
} catch (FinderException e) {
throw new EJBException(e);
}
@@ -1015,9 +1019,8 @@
String spsid = sps.getString(Tags.SPSID);
for (int i = 0, n = ssasq.countItems(); i < n; i++) {
Dataset ssa = ssasq.getItem(i);
- if (suid.equals(ssa.getString(Tags.StudyInstanceUID))
- && isNullOrEquals(ssa.getString(Tags.RequestedProcedureID),
- rpid)
+ if ( (suid == null || suid.equals(ssa.getString(Tags.StudyInstanceUID)))
+ && isNullOrEquals(ssa.getString(Tags.RequestedProcedureID), rpid)
&& isNullOrEquals(ssa.getString(Tags.SPSID), spsid)) {
if (discontinued) {
ssa.clear();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|