Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r19584 -r19585 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 19584) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 19585) @@ -576,6 +576,18 @@ return null; } + @Override + public List getUnfinishedTaskForUpdate(Long sourceId,Integer taskType){ + if(DatabaseUtil.isPoIdValid(sourceId) && taskType != null){ + String where = "sourceId=:sourceId and taskType=:taskType"; + Map params = new HashMap<>(); + params.put("sourceId", sourceId); + params.put("taskType", taskType); + return getCollectionForUpdate(where, params); + } + return null; + } + /** * 查询今天本组已审核的器械包(器械包、消毒物品、敷料包、外来器械包、外来器械拆分小包、自定义器械包、外部代理灭菌) */ Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r19570 -r19585 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 19570) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 19585) @@ -1572,6 +1572,27 @@ }}); } /** + * 更新回收记录关联的装配任务的备注信息。包括回收备注、丢失报损备注 + * @param recyclingRecord + */ + private void updatePackingTaskRemark(RecyclingRecord recyclingRecord){ + if(recyclingRecord == null || CollectionUtils.isEmpty(recyclingRecord.getItems())){ + return; + } + List list = packingManager.getUnfinishedTaskForUpdate(recyclingRecord.getId(), PackingTask.TASK_RECYCLINGRECORD); + if(CollectionUtils.isNotEmpty(list)){ + for(PackingTask task : list){ + RecyclingItem ri = findRecyclingItem(recyclingRecord, task.getTousseDefinition().getId()); + if(ri != null){ + task.setErrorRemark(ri.getErrorRemark()); + task.setDamageRemark(ri.getDamageRemark()); + task.setRecyclingItemRemark(ri.getRemark()); + packingManager.save(task); + } + } + } + } + /** * 说明:清洗完成后篮筐追加的包生成的装配任务清洗记录信息冗余字段并没有赋值 * @param recyclingRecord * @param itemJsonList @@ -1741,7 +1762,8 @@ } } } - + //修改更新备注到装配任务 + updatePackingTaskRemark(recyclingRecord); setIdCardBarcodeForPackingTask(idCardTaskMap); //报损、丢失关联装配任务 setRecyclingErrorAndDamagePackingTaskId(recyclingRecord,idToTDMap,confirmation); Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManager.java =================================================================== diff -u -r19154 -r19585 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManager.java (.../PackingManager.java) (revision 19154) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManager.java (.../PackingManager.java) (revision 19585) @@ -76,6 +76,13 @@ * @return */ public List getUnfinishedTaskForUpdate(Long sourceId,Long tousseDefinitionId,Integer taskType); + /** + * 获取未装配的装配任务。用于更新 + * @param sourceId + * @param taskType + * @return + */ + public List getUnfinishedTaskForUpdate(Long sourceId,Integer taskType); public List getPackingTask(Long sourceId,Long tousseDefinitionId,Integer taskType);