档案修改查询列表数据去重.

档案补录新增上传文件时判断是否有卷内目录
1 parent b9e56798
package com.pashanhoo.file.controller;
import cn.hutool.core.util.StrUtil;
import com.pashanhoo.common.Result;
import com.pashanhoo.file.entity.vo.AddDgFileRequest;
import com.pashanhoo.file.entity.vo.DgCatalogWithFileVO;
import com.pashanhoo.file.entity.vo.UpdateDgFileRequest;
import com.pashanhoo.file.service.DgFileService;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
......@@ -79,6 +79,9 @@ public class DgFileController {
@RequestMapping(value = "/upload", method = RequestMethod.POST)
@ApiOperation("上传材料附件")
public Result upload(@RequestPart("file") MultipartFile file, AddDgFileRequest fileRequest) {
if (StrUtil.isNullOrUndefined(fileRequest.getBsmArchive()) && StrUtil.isNullOrUndefined(fileRequest.getBsmCatalog())) {
return Result.error("请先新增档案基本信息和目录");
}
try {
return Result.ok(dgfileService.upload(file, fileRequest));
} catch (Exception e) {
......
......@@ -16,7 +16,6 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
import java.util.stream.Collectors;
......
......@@ -25,6 +25,7 @@ import com.pashanhoo.modify.entity.DgModifyDO;
import com.pashanhoo.modify.entity.vo.*;
import com.pashanhoo.modify.mapper.DgArchivesModifyMapper;
import com.pashanhoo.modify.service.DgArchivesModifyService;
import com.pashanhoo.replenish.service.impl.DgArchivesReplenishServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -169,6 +170,9 @@ public class DgArchivesModifyServiceImpl extends ServiceImpl<DgArchivesModifyMap
public IPage<DgArchivesModifyListVO> searchDgArchivesModifyList(DgArchivesModifySearchRequest request) {
IPage<DgArchivesModifyListVO> pageParam = new Page<>(request.getCurrentPage(), request.getPageSize());
IPage<DgArchivesModifyListVO> list = dgarchivesmodifyMapper.searchDgArchivesModifyList(pageParam, request);
List<DgArchivesModifyListVO> records = list.getRecords();
List<DgArchivesModifyListVO> clean = records.stream().filter(DgArchivesReplenishServiceImpl.distinctByKey(DgArchivesModifyListVO::getBsmModify)).collect(Collectors.toList());
list.setRecords(clean).setTotal(clean.size());
return list;
}
......
......@@ -59,7 +59,7 @@ public class DgArchivesReplenishController {
}
@PostMapping("search")
@ApiOperation(value = "根据条件进行列表查询")
@ApiOperation(value = "补录列表根据条件查询")
public Result<IPage<DgArchivesReplenishListVO>> searchDgArchivesReplenishList(@RequestBody DgArchivesReplenishSearchRequest request) {
return Result.ok(dgarchivesreplenishService.searchDgArchivesReplenishList(request));
......
......@@ -19,6 +19,12 @@ import org.apache.ibatis.annotations.Param;
*/
public interface DgArchivesReplenishMapper extends BaseMapper<DgArchivesReplenishDO> {
/**
* 补录列表根据条件查询
* @param pageParam
* @param request
* @return
*/
IPage<DgArchivesReplenishListVO> search(@Param("pageParam") IPage<DgArchivesReplenishListVO> pageParam, @Param("request") DgArchivesReplenishSearchRequest request);
}
......
......@@ -33,7 +33,7 @@ public interface DgArchivesReplenishService extends IService<DgArchivesReplenish
DgArchivesReplenishDetailVO getDgArchivesReplenishDetailById(String id);
/**
* 根据条件进行列表查询
* 补录列表根据条件查询
*
* @param request
* @return
......
......@@ -44,6 +44,9 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors;
/**
......@@ -164,7 +167,7 @@ public class DgArchivesReplenishServiceImpl extends ServiceImpl<DgArchivesReplen
}
/**
* 根据条件进行列表查询
* 补录列表根据条件查询
*
* @param request
* @return
......@@ -173,7 +176,16 @@ public class DgArchivesReplenishServiceImpl extends ServiceImpl<DgArchivesReplen
public IPage<DgArchivesReplenishListVO> searchDgArchivesReplenishList(DgArchivesReplenishSearchRequest request) {
IPage<DgArchivesReplenishListVO> pageParam = new Page<>(request.getCurrentPage(), request.getPageSize());
return dgarchivesreplenishMapper.search(pageParam, request);
IPage<DgArchivesReplenishListVO> result = dgarchivesreplenishMapper.search(pageParam, request);
List<DgArchivesReplenishListVO> records = result.getRecords();
List<DgArchivesReplenishListVO> clean = records.stream().filter(distinctByKey(DgArchivesReplenishListVO::getBsmArchives)).collect(Collectors.toList());
result.setTotal(clean.size());
return result.setRecords(clean);
}
public static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
ConcurrentHashMap<Object, Boolean> hashMap = new ConcurrentHashMap<>();
return t -> hashMap.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
}
/**
......
......@@ -54,7 +54,7 @@
DM.CREATETIME,
DM.CREATER,
DM.STATE,
count(*) over (partition by BDCDY.bdcdyh) as bdcdyNum
count(1) over (partition by DM.BSM_MODIFY) as bdcdyNum
from DG_MODIFY DM
join DG_BUSINESS DB on DM.BSM_ARCHIVES = DB.BSM_ARCHIVES
join DG_BDCDY BDCDY on DM.BSM_ARCHIVES = BDCDY.BSM_ARCHIVES
......
......@@ -25,7 +25,7 @@
DGR.CREATETIME,
DGR.CREATER,
DGR.STATE,
count(*) over (partition by BDCDY.bdcdyh) as bdcdyNum
count(1) over (partition by BDCDY.BSM_ARCHIVES) as bdcdyNum
from DG_REPLENISH DGR
join DG_ARCHIVES DA on DA.BSM_ARCHIVES = DGR.BSM_ARCHIVES
join DG_BDCDY BDCDY on BDCDY.BSM_ARCHIVES = DGR.BSM_ARCHIVES
......