目录保存修改逻辑调整
Showing
1 changed file
with
24 additions
and
20 deletions
| ... | @@ -250,32 +250,36 @@ public class DgArchivesServiceImpl extends ServiceImpl<DgArchivesMapper, DgArchi | ... | @@ -250,32 +250,36 @@ public class DgArchivesServiceImpl extends ServiceImpl<DgArchivesMapper, DgArchi |
| 250 | List<UpdateDgArchivesCatalogRequest> updateCatalogs = requests.stream().filter(item -> !StrUtil.isNullOrUndefined(item.getBsmCatalog())).collect(Collectors.toList()); | 250 | List<UpdateDgArchivesCatalogRequest> updateCatalogs = requests.stream().filter(item -> !StrUtil.isNullOrUndefined(item.getBsmCatalog())).collect(Collectors.toList()); |
| 251 | List<UpdateDgArchivesCatalogRequest> addCatalogs = requests.stream().filter(item -> StrUtil.isNullOrUndefined(item.getBsmCatalog())).collect(Collectors.toList()); | 251 | List<UpdateDgArchivesCatalogRequest> addCatalogs = requests.stream().filter(item -> StrUtil.isNullOrUndefined(item.getBsmCatalog())).collect(Collectors.toList()); |
| 252 | 252 | ||
| 253 | boolean flag = false; | ||
| 254 | |||
| 253 | //存量数据更新. | 255 | //存量数据更新. |
| 254 | String bsmArchive = updateCatalogs.stream().map(UpdateDgArchivesCatalogRequest::getBsmArchives).findFirst().orElse(null); | 256 | if (updateCatalogs.size() != 0) { |
| 255 | QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>(); | 257 | String bsmArchive = updateCatalogs.stream().map(UpdateDgArchivesCatalogRequest::getBsmArchives).findFirst().orElse(null); |
| 256 | catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive); | 258 | QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>(); |
| 257 | List<DgArchivesCatalogDO> catalogsAlreadyExist = catalogService.list(catalogWrapper); | 259 | catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive); |
| 258 | //入参的存量数据小于数据库内数据,删除数据库内多余数据 | 260 | List<DgArchivesCatalogDO> catalogsAlreadyExist = catalogService.list(catalogWrapper); |
| 259 | if (updateCatalogs.size() < catalogsAlreadyExist.size()) { | 261 | //入参的存量数据小于数据库内数据,删除数据库内多余数据 |
| 260 | List<String> updateBsmCatalogs = updateCatalogs.stream().map(UpdateDgArchivesCatalogRequest::getBsmCatalog).collect(Collectors.toList()); | 262 | if (updateCatalogs.size() < catalogsAlreadyExist.size()) { |
| 261 | List<String> alreadyExistBsmCatalogs = catalogsAlreadyExist.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList()); | 263 | List<String> updateBsmCatalogs = updateCatalogs.stream().map(UpdateDgArchivesCatalogRequest::getBsmCatalog).collect(Collectors.toList()); |
| 262 | //过滤数据 | 264 | List<String> alreadyExistBsmCatalogs = catalogsAlreadyExist.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList()); |
| 263 | List<String> deleteBsmCatalogs = alreadyExistBsmCatalogs.stream().filter(item -> !updateBsmCatalogs.contains(item)).collect(Collectors.toList()); | 265 | //过滤数据 |
| 264 | //删除附件表数据 | 266 | List<String> deleteBsmCatalogs = alreadyExistBsmCatalogs.stream().filter(item -> !updateBsmCatalogs.contains(item)).collect(Collectors.toList()); |
| 265 | QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>(); | 267 | //删除附件表数据 |
| 266 | fileWrapper.lambda().in(DgFileDO::getBsmCatalog, deleteBsmCatalogs); | 268 | QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>(); |
| 267 | dgFileService.remove(fileWrapper); | 269 | fileWrapper.lambda().in(DgFileDO::getBsmCatalog, deleteBsmCatalogs); |
| 268 | //删除目录表多余数据 | 270 | dgFileService.remove(fileWrapper); |
| 269 | catalogWrapper.lambda().in(DgArchivesCatalogDO::getBsmCatalog,deleteBsmCatalogs); | 271 | //删除目录表多余数据 |
| 270 | catalogService.remove(catalogWrapper); | 272 | catalogWrapper.lambda().in(DgArchivesCatalogDO::getBsmCatalog,deleteBsmCatalogs); |
| 273 | catalogService.remove(catalogWrapper); | ||
| 274 | } | ||
| 275 | List<DgArchivesCatalogDO> updateCatalogDOs = catalogConverter.updateList2DO(updateCatalogs); | ||
| 276 | flag = catalogService.updateBatchById(updateCatalogDOs); | ||
| 271 | } | 277 | } |
| 272 | List<DgArchivesCatalogDO> updateCatalogDOs = catalogConverter.updateList2DO(updateCatalogs); | ||
| 273 | boolean flag = catalogService.updateBatchById(updateCatalogDOs); | ||
| 274 | 278 | ||
| 275 | if (addCatalogs.size() != 0) { | 279 | if (addCatalogs.size() != 0) { |
| 276 | //新增数据 | 280 | //新增数据 |
| 277 | List<DgArchivesCatalogDO> addCatalogDOs = catalogConverter.updateList2DO(addCatalogs); | 281 | List<DgArchivesCatalogDO> addCatalogDOs = catalogConverter.updateList2DO(addCatalogs); |
| 278 | return catalogService.saveBatch(addCatalogDOs); | 282 | flag = catalogService.saveBatch(addCatalogDOs); |
| 279 | } | 283 | } |
| 280 | return flag; | 284 | return flag; |
| 281 | 285 | ... | ... |
-
Please register or sign in to post a comment