Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/sterilizer/action/SterilizerAction.java =================================================================== diff -u -r16325 -r16352 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/sterilizer/action/SterilizerAction.java (.../SterilizerAction.java) (revision 16325) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/sterilizer/action/SterilizerAction.java (.../SterilizerAction.java) (revision 16352) @@ -18,13 +18,16 @@ import net.sf.json.processors.DefaultValueProcessor; import net.sf.json.util.PropertyFilter; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.ParentPackage; +import org.hibernate.Query; import com.forgon.directory.acegi.tools.AcegiHelper; import com.forgon.directory.model.BarcodeDevice; +import com.forgon.directory.model.OrgUserRelation; import com.forgon.disinfectsystem.barcode.service.BarcodeManager; import com.forgon.disinfectsystem.basedatamanager.sterilisation.service.SterilisationManager; import com.forgon.disinfectsystem.basedatamanager.sterilizer.service.SterilizerManager; @@ -374,20 +377,26 @@ "ownGroup", ""); String departCoding = AcegiHelper.getLoginUser().getCurrentOrgUnitCode(); - List sterilizerList = sterilizerManager.getSterilizerByDepartCoding(departCoding); + String queryString = "from " + Sterilizer.class.getSimpleName() + " where orgUnitCoding = :orgUnitCoding"; + if (StringUtils.isNotBlank(ownGroup)){ + queryString += " and ownGroup = :ownGroup"; + } + Query query = objectDao.getHibernateSession().createQuery(queryString); + query.setParameter("orgUnitCoding", departCoding); + + if (StringUtils.isNotBlank(ownGroup)){ + query.setParameter("ownGroup", ownGroup); + } + List sterilizerList = query.list(); + String str = ""; - if (sterilizerList != null && sterilizerList.size() > 0) { - for (int i = 0; i < sterilizerList.size(); i++) { - if(StringUtils.isNotBlank(ownGroup)){ - if(ownGroup.equals(sterilizerList.get(i).getOwnGroup())){ - str = str + "[ '" + sterilizerList.get(i).getName() + "'],"; - } - }else{ - str = str + "[ '" + sterilizerList.get(i).getName() + "'],"; - } - + if (CollectionUtils.isNotEmpty(sterilizerList)){ + for(Sterilizer s : sterilizerList){ + str = str + "[ '" + s.getName() + "'],"; } + } + str = str.length() > 0 ? str.substring(0, str.length() - 1) : str; if (StringUtils.equals("yes", StrutsParamUtils.getPraramValue("includeNone", null))) {