Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/ClassifyBasketRecyclingSequenceManager.java =================================================================== diff -u -r20421 -r20422 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/ClassifyBasketRecyclingSequenceManager.java (.../ClassifyBasketRecyclingSequenceManager.java) (revision 20421) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/ClassifyBasketRecyclingSequenceManager.java (.../ClassifyBasketRecyclingSequenceManager.java) (revision 20422) @@ -31,6 +31,7 @@ * @return */ public List getList(Long recyclingRecordId,Long tousseDefinitionId); + public int countRecyclingBasketSequence(Long recyclingRecordId,Long tousseDefinitionId); /** * 获取对象并锁定 * @param recyclingRecordId Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/ClassifyBasketRecyclingSequenceManagerImpl.java =================================================================== diff -u -r20421 -r20422 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/ClassifyBasketRecyclingSequenceManagerImpl.java (.../ClassifyBasketRecyclingSequenceManagerImpl.java) (revision 20421) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/ClassifyBasketRecyclingSequenceManagerImpl.java (.../ClassifyBasketRecyclingSequenceManagerImpl.java) (revision 20422) @@ -57,6 +57,14 @@ String where = String.format("recyclingRecordId=%d and tousseDefinitionId=%d",recyclingRecordId,tousseDefinitionId); return getByHql(where); } + @Override + public int countRecyclingBasketSequence(Long recyclingRecordId,Long tousseDefinitionId){ + if(!DatabaseUtil.isPoIdValid(recyclingRecordId) || !DatabaseUtil.isPoIdValid(tousseDefinitionId)){ + return 0; + } + String where = String.format(" where po.recyclingRecordId=%d and po.tousseDefinitionId=%d",recyclingRecordId,tousseDefinitionId); + return objectDao.countObjectBySql(RecyclingBasketSequence.class.getSimpleName(), where); + } @Override public RecyclingBasketSequence getForUpdate(Long recyclingRecordId, Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r20421 -r20422 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 20421) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 20422) @@ -1382,6 +1382,9 @@ if(sequence == null || sequence.getSequence() == null){ continue; } + if(sequence.packed()){ + continue; + } List sequenceList = classifyBasketRecyclingSequenceManager.getList(task.getSourceId(), td.getId()); if(CollectionUtils.isEmpty(sequenceList)){ continue; @@ -3250,8 +3253,9 @@ DatabaseUtil.closeResultSetAndStatement(rs); } } + int sequenceCount = classifyBasketRecyclingSequenceManager.countRecyclingBasketSequence(task.getSourceId(), tousseDefinition.getId()); //只有一个篮筐或者没有入筐就不用拆分 - if(map.size() <= 1){ + if(map.size() <= 1 && sequenceCount <= 1){ return null; }else{ boolean nameIncludeSplitTotalAmountForSplitForeignTousse = CssdUtils.getSystemSetConfigByNameBool("nameIncludeSplitTotalAmountForSplitForeignTousse"); @@ -3290,7 +3294,7 @@ result.add(packageItem); } //验证是否连续 - if(!MathTools.continuous(splitIndexs)){ + if(!allowForeignToussePartiallyPacking && !MathTools.continuous(splitIndexs)){ throw new RuntimeException(splitIndexs + "拆包序号不连续"); } //按拆分包序号从小到大排序 @@ -3932,9 +3936,9 @@ // 将用户打包时常用的字段记录到session中 updatePackingConfigSession(session, inspector, inspectorCode, operator, operatorCode, reviewer, reviewerCode,sterileUserName,sterileUserCode,wrapper, wrapperCode, packageType, sterilingType, sterilizerName, sterileFrequency); - if(true){ - throw new RuntimeException("装配速度测试 "); - } +// if(true){ +// throw new RuntimeException("装配速度测试 "); +// } return json.toString(); } Index: ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js =================================================================== diff -u -r20416 -r20422 --- ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 20416) +++ ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 20422) @@ -1,4 +1,4 @@ -var sstsConfig = { +var sstsConfig = { // 禁用标识牌功能 disableIdCard : false, // 审核器械包必须入篮筐(一级供应室) @@ -206,6 +206,8 @@ filterSyncDisposableGoodsStorageEntryItems : true, //查找根据物质编码查找hrp一次物品信息按钮是否显示: true为启用,false为不启用 showHrpDiposableGoodByInventorySerialNumber : true, + //允许外来器械部分装配,需要开启篮筐序号 + allowForeignToussePartiallyPacking: true, //同步入库的默认查询开始时间为当天: true为启用,false为不启用 sycDefaultStartTime : true } \ No newline at end of file