Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/foreignproxydisinfection/ForeignProxyDisinfection.java =================================================================== diff -u -r16616 -r22299 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/foreignproxydisinfection/ForeignProxyDisinfection.java (.../ForeignProxyDisinfection.java) (revision 16616) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/sterilizationmanager/foreignproxydisinfection/ForeignProxyDisinfection.java (.../ForeignProxyDisinfection.java) (revision 22299) @@ -167,6 +167,11 @@ String sql = String.format(" where po.foreignProxyItem_id in(select fi.id from %s fi where fi.foreignProxyDisinfection.id=%s)", ForeignProxyItem.class.getSimpleName(),getId()); return dao.findBySql(TousseInstance.class.getSimpleName(), sql); } + + public List getNonTerminatedTousseInstanceList(ObjectDao dao) { + String sql = String.format(" where po.foreignProxyItem_id in(select fi.id from %s fi where fi.foreignProxyDisinfection.id=%s and (fi.isTerminated is null or fi.isTerminated=false))", ForeignProxyItem.class.getSimpleName(),getId()); + return dao.findBySql(TousseInstance.class.getSimpleName(), sql); + } public String getHasPrinted() { return hasPrinted; Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManagerImpl.java =================================================================== diff -u -r22298 -r22299 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManagerImpl.java (.../ForeignProxyDisinfectionManagerImpl.java) (revision 22298) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/foreignproxydisinfection/service/ForeignProxyDisinfectionManagerImpl.java (.../ForeignProxyDisinfectionManagerImpl.java) (revision 22299) @@ -408,7 +408,7 @@ JSONObject foreignProxyDisinfectionJson = new JSONObject(); foreignProxyDisinfectionJson.put("id", foreignProxyDisinfection.getId()); jsonObj.put("foreignProxyDisinfection", foreignProxyDisinfectionJson); - List tousseList = foreignProxyDisinfection.getTousseInstanceList(objectDao); + List tousseList = foreignProxyDisinfection.getNonTerminatedTousseInstanceList(objectDao); if(tousseList == null){ tousseList = new ArrayList(); } @@ -723,7 +723,7 @@ throw new RuntimeException("申请单已被删除,不能修改!"); } } - if(foreignProxyDisinfection.ended() || foreignProxyDisinfection.partEnded()){ + if(foreignProxyDisinfection.ended()){ throw new RuntimeException(String.format("申请单已%s,不能装配!", foreignProxyDisinfection.getEndStatus())); } if(foreignProxyDisinfection.hasPacked()){ @@ -1113,7 +1113,7 @@ } List voList = new ArrayList(); for (ForeignProxyDisinfection invoice : foreignProxyDisinfections) { - List tousseList = invoice.getTousseInstanceList(objectDao); + List tousseList = invoice.getNonTerminatedTousseInstanceList(objectDao); for (TousseInstance tousseInstance : tousseList) { TousseDefinition tousseDefinition = tousseInstance.getTousseDefinition(); if(tousseDefinition.isDisinfection()){