diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java index d2e5f66e5..f0a3565de 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java @@ -134,11 +134,39 @@ public class InvestigationManageImpl extends ServiceImpl investigetionManageDetailList = investigationManage.getInvestigetionManageDetailList(); - Long[] ids = new Long[investigetionManageDetailList.size()]; - for (int i = 0; i < investigetionManageDetailList.size(); i++) { - ids[i] = investigetionManageDetailList.get(i).getInvestigationManageDetailId(); - } - investigetionManageDetailService.delete(ids); +// Long[] ids = new Long[investigetionManageDetailList.size()]; +// for (int i = 0; i < investigetionManageDetailList.size(); i++) { +// ids[i] = investigetionManageDetailList.get(i).getInvestigationManageDetailId(); +// } +// investigetionManageDetailService.delete(ids); + List updateList = investigetionManageDetailList.stream().filter(detail -> + detail.getInvestigationManageDetailId() != null).collect(Collectors.toList()); + investigetionManageDetailService.updateBatchById(updateList); + + List saveList = investigetionManageDetailList.stream() + .filter(detail -> detail.getInvestigationManageDetailId() == null) + .collect(Collectors.toList()); + LoginUser loginUser = SecurityUtils.getLoginUser(); + UserPo userPo = loginUser.getUserPo(); + saveList.forEach(e -> { + e.setWarehouseCode(e.getWarehouseCode()); + e.setWarehouseId(e.getWarehouseId()); + e.setWarehouseName(e.getWarehouseName()); + e.setOrganizationId(userPo.getOrganizationId()); + e.setOrganizationName(userPo.getOrganizationName()); + e.setTopOrganizationId(userPo.getTopOrganizationId()); + e.setCreateByName(loginUser.getUsername()); + e.setCreateBy(loginUser.getUserid()); + e.setCreateTime(new Date()); + e.setUpdateByName(loginUser.getUsername()); + e.setUpdateBy(loginUser.getUserid()); + e.setUpdateTime(new Date()); + e.setInvestigationNumber(investigationManage.getInvestigationNumber()); + e.setInvestigationFrequency(1); + InvestigetionManageDetailDO investigetionManageDetailDO = new InvestigetionManageDetailDO(); + BeanUtils.copyProperties(e, investigetionManageDetailDO); + investigetionManageDetailService.insert(investigetionManageDetailDO); + }); return this.updateById(investigationManage); }