Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/container/service/ReviewedBasketManagerImpl.java =================================================================== diff -u -r16702 -r16828 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/container/service/ReviewedBasketManagerImpl.java (.../ReviewedBasketManagerImpl.java) (revision 16702) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/container/service/ReviewedBasketManagerImpl.java (.../ReviewedBasketManagerImpl.java) (revision 16828) @@ -276,7 +276,7 @@ ((ReviewedBasket) basketObj).getTousseInstances(objectDao); if(CollectionUtils.isNotEmpty(tousseInstanceList)){ for(TousseInstance tousseInstance : tousseInstanceList){ - if(TousseInstance.STATUS_REVIEWED.equals(tousseInstance.getStatus())){ + if(tousseInstance.isReviewed()){ return (ReviewedBasket) basketObj; } } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java =================================================================== diff -u -r16479 -r16828 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 16479) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/action/SterilizationRecordAction.java (.../SterilizationRecordAction.java) (revision 16828) @@ -244,13 +244,9 @@ /*Map result = new HashMap(); result.put("success", true); result.put("message", "aaaa");*/ - - HttpServletResponse response = StrutsParamUtils - .getResponse(); - response.setContentType("text/json;charset=UTF-8"); - response.getWriter().print(JSONObject.fromObject(result).toString()); + StrutsResponseUtils.output(JSONObject.fromObject(result)); } catch (Exception e) { - e.printStackTrace(); + StrutsResponseUtils.output(false,"保存失败"); } return null; } Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationRecordForm.js =================================================================== diff -u -r16715 -r16828 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationRecordForm.js (.../sterilizationRecordForm.js) (revision 16715) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationRecordForm.js (.../sterilizationRecordForm.js) (revision 16828) @@ -2857,15 +2857,20 @@ waitMsg : '正在保存数据,请稍候', waitTitle : '提交表单', success : function(form, action) { - sterilizationRecordWin.close(); - showResult('保存成功'); + var result = Ext.decode(action.response.responseText); + if(result && result.message){ + showResult(result.message); + }else{ + showResult('保存成功'); + } grid.dwrReload(); - + sterilizationRecordWin.close(); }, failure : function(form, action) { - var result = Ext.decode(action.response.responseText); - showResult(result.error, '提示信息'); - //showResult(action.failureType); + var result = Ext.decode(action.response.responseText); + if(result && result.message){ + showResult(result.message); + } } }); } Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r16784 -r16828 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 16784) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 16828) @@ -437,8 +437,8 @@ // 更新器械包的状态 for (TousseInstance tousseInstance : allTousseInstancesOfSterile) { - if(tousseInstance.isDiscarded()){ - //过滤掉已废弃的器械包 + if(!tousseInstance.isSteriling()){ + //过滤掉非灭菌中的器械包 continue; } updateTousseInstanceProperty(sdf, sterilizationRecord, @@ -671,7 +671,8 @@ } for (TousseInstance ti : list){ Long tid = ti.getId(); - if(tidContianerNameMap.containsKey(tid)){ + //必须是灭菌中才修改。只有完成灭菌操作才会进到这里。完成灭菌操作的只有灭菌中的包实例 + if(ti.isSteriling()&&tidContianerNameMap.containsKey(tid)){ ti.setSterilizationBasket(tidContianerNameMap.get(tid)); } } @@ -1034,13 +1035,13 @@ // 新加灭菌记录,校验 if( !isAllSterilizationEnd(sterilizationRecord.getSterilizerName())) { - result.put("success", false); - result.put("error", "灭菌炉正在灭菌中"); + result.put(JSONUtil.JSON_KEY_SUCCESS, false); + result.put(JSONUtil.JSON_KEY_MESSAGE, "灭菌炉正在灭菌中"); return result; } isNewRecord = true; } - result.put("success", true); + result.put(JSONUtil.JSON_KEY_SUCCESS, true); //器械包条码增加单引号 Collection tousseInstanceBarcodesInclude = new ArrayList(); if(CollectionUtils.isNotEmpty(tousseInstanceBarcodes)){ @@ -1066,10 +1067,29 @@ } if(CollectionUtils.isNotEmpty(tousseBarcodeList)){ - result.put("success", false); - result.put("error", "部分器械包正在灭菌或已灭菌"); + result.put(JSONUtil.JSON_KEY_SUCCESS, false); + result.put(JSONUtil.JSON_KEY_MESSAGE, "部分器械包正在灭菌或已灭菌"); return result; } + +// //检查器械包是否已经关联到灭菌篮筐实例。如果已经在灭菌篮筐实例中,则需要扫描篮筐灭菌 +// sql = "select b.barcode,t.tousseName,c.containerName from TousseInstance t join barcodeDevice b on b.id = t.id"+ +// " join ReviewedBasket r on r.id = t.reviewBasket_id"+ +// " join Container c on c.id = r.container_id" + +// " where b.barcode in ("+StringUtils.join(tousseInstanceBarcodesInclude.toArray() , ",")+")"; +// rs = objectDao.executeSql(sql); +// try { +// while(rs.next()){ +// result.put(JSONUtil.JSON_KEY_SUCCESS, false); +// result.put(JSONUtil.JSON_KEY_MESSAGE,"条码为"+rs.getString("barcode")+"的" + rs.getString("tousseName") +// +"已经入到" + rs.getString("containerName")+"中,只能通过扫描篮筐进行灭菌"); +// return result; +// } +// } catch (SQLException e) { +// e.printStackTrace(); +// }finally { +// DatabaseUtil.closeResultSetAndStatement(rs); +// } } //篮筐条码增加单引号 @@ -1175,8 +1195,8 @@ containerBarcodeList.add(rs.getString("barcode")); } if(containerBarcodeList.size() == 0){ - result.put("success", false); - result.put("error", "条码为" + containerBarcode + "的灭菌篮筐正在灭菌或已灭菌"); + result.put(JSONUtil.JSON_KEY_SUCCESS, false); + result.put(JSONUtil.JSON_KEY_MESSAGE, "条码为" + containerBarcode + "的灭菌篮筐正在灭菌或已灭菌"); return result; } } catch (SQLException e) { @@ -1302,8 +1322,7 @@ .getTousseInstanceList(); for (ReviewedBasket reviewedBasket : sterilizationRecord .getReviewedBaskets()) { - Collection tousseInstances = reviewedBasket - .getTousseInstances(objectDao); + Collection tousseInstances = tousseInstanceManager.getReviewedTousseInstance(reviewedBasket); if (!CollectionUtils.isEmpty(tousseInstances)) { allNewTousseInstances = CollectionUtils.union( allNewTousseInstances, @@ -1461,11 +1480,11 @@ // sterilizationRecord.setEndDate(new Date()); } - // 对应将器械包状态改回原来的状态(已审核状态),如果没有废弃的话 + // 对应将器械包状态改回原来的状态(已审核状态),如果是灭菌中的状态的话 List tousseList = sterilizationRecord .getTousseInstanceList(); for (TousseInstance tousse : tousseList) { - if(tousse != null && !tousse.isDiscarded()){ + if(tousse != null && tousse.isSteriling()){ tousse.setStatus(TousseInstance.STATUS_REVIEWED); } } @@ -1478,7 +1497,7 @@ .setStatus(Container.CONTAINER_STATUS_STERILIZELOADING); // basket.setSterilizationRecords(null); for (TousseInstance tousse : basket.getTousseInstances(objectDao)) { - if(tousse != null && !tousse.isDiscarded()){ + if(tousse != null && tousse.isSteriling()){ tousse.setStatus(TousseInstance.STATUS_REVIEWED); } }