Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r36080 -r36184 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 36080) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 36184) @@ -35,6 +35,7 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.lang3.BooleanUtils; import org.apache.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; import com.forgon.Constants; import com.forgon.databaseadapter.service.DateQueryAdapter; @@ -107,6 +108,7 @@ import com.forgon.disinfectsystem.recyclingapplication.updateLog.ApplicationLogManager; import com.forgon.disinfectsystem.recyclingapplication.vo.ApplicationItemVO; import com.forgon.disinfectsystem.recyclingapplication.vo.ReturnGoodVo; +import com.forgon.disinfectsystem.recyclingrecord.helper.DataHelperForRecyclingRecord; import com.forgon.disinfectsystem.recyclingrecord.vo.ClassifybasketVo; import com.forgon.disinfectsystem.recyclingrecord.vo.CustomIntoBasket; import com.forgon.disinfectsystem.recyclingrecord.vo.CustomIntoBasketItem; @@ -239,7 +241,8 @@ private InstrumentInstanceManager instrumentInstanceManager; private StorageRecordManager storageRecordManager; - + @Autowired + private DataHelperForRecyclingRecord dataHelperForRecyclingRecord; public void setStorageRecordManager(StorageRecordManager storageRecordManager) { this.storageRecordManager = storageRecordManager; } @@ -3826,13 +3829,7 @@ } //如果是回收数量确认,那把所有跟回收记录关联的装配任务都设置成已确认 if(recyclingContext.getRecyclingAmountConfirm() || recyclingRecord.recyclingApplicationRecord()){ - List tasks = packingManager.getUnfinishedTaskForUpdate(recyclingRecord.getId(), PackingTask.TASK_RECYCLINGRECORD); - if(CollectionUtils.isNotEmpty(tasks)){ - for(PackingTask task : tasks){ - task.setRecycleAmountNeedConfirm(Constants.STR_NO); - packingManager.save(task); - } - } + dataHelperForRecyclingRecord.updateRecycleAmountNeedConfirm(recyclingRecord.getId()); } //修改更新备注到装配任务 updatePackingTaskRemark(recyclingRecord); Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/helper/DataHelperForRecyclingRecord.java =================================================================== diff -u --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/helper/DataHelperForRecyclingRecord.java (revision 0) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/helper/DataHelperForRecyclingRecord.java (revision 36184) @@ -0,0 +1,31 @@ +package com.forgon.disinfectsystem.recyclingrecord.helper; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; + +import com.forgon.disinfectsystem.entity.packing.PackingTask; +import com.forgon.tools.db.DatabaseUtil; + +@Component +public class DataHelperForRecyclingRecord { + @Autowired + private JdbcTemplate jdbcTemplate; + /** + * 修改回收记录产生的装配任务为不需要回收确认 + * @param recyclingRecordId 回收记录id + */ + public void updateRecycleAmountNeedConfirm(Long recyclingRecordId){ + if(!DatabaseUtil.isPoIdValid(recyclingRecordId)){ + return; + } + StringBuffer sbf = new StringBuffer(); + sbf.append("update "); + sbf.append(PackingTask.class.getSimpleName()); + sbf.append(" set recycleAmountNeedConfirm='否' where sourceId="); + sbf.append(recyclingRecordId); + sbf.append(" and taskType="); + sbf.append(PackingTask.TASK_RECYCLINGRECORD); + jdbcTemplate.update(sbf.toString()); + } +}