From 4ee9e6833f738e22390c4e875fe140c2b96cfcc2 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期五, 29 十一月 2024 04:03:37 +0800 Subject: [PATCH] 项目库分页查询 --- business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java | 61 ++++++++++++++++++++---------- 1 files changed, 41 insertions(+), 20 deletions(-) diff --git a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java index 26368cf..39d69d4 100644 --- a/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java +++ b/business/src/main/java/com/ycl/service/impl/ProjectInfoServiceImpl.java @@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.common.base.Result; import com.ycl.common.enums.business.FileTypeEnum; +import com.ycl.common.utils.CopyUtils; +import com.ycl.common.utils.DateUtils; import com.ycl.common.utils.SecurityUtils; import com.ycl.domain.entity.File; import com.ycl.domain.entity.ProjectInfo; @@ -42,6 +44,7 @@ private final ProjectInfoMapper projectInfoMapper; private final FileService fileService; private final FileMapper fileMapper; + /** * 娣诲姞 * @@ -59,7 +62,7 @@ baseMapper.insert(entity); //娣诲姞鏂囦欢 List<File> fileList = form.getFileList(); - fileList.forEach(item->{ + fileList.forEach(item -> { item.setBusId(entity.getId()); item.setType(FileTypeEnum.PROJECT_INFO); }); @@ -79,20 +82,21 @@ ProjectInfo entity = baseMapper.selectById(form.getId()); // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊 Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); - ProjectInfoForm.getEntityByForm(form,entity); + ProjectInfoForm.getEntityByForm(form, entity); Long userId = SecurityUtils.getUserId(); entity.setUpdateBy(userId); //鏇存柊椤圭洰淇℃伅 baseMapper.updateById(entity); List<File> fileList = form.getFileList(); - fileList.forEach(item->{ + fileList.forEach(item -> { + item.setId(null); item.setBusId(entity.getId()); item.setType(FileTypeEnum.PROJECT_INFO); }); //鍒犻櫎鍘熸湁鏂囦欢 QueryWrapper<File> fileQueryWrapper = new QueryWrapper<>(); - fileQueryWrapper.eq("type",FileTypeEnum.PROJECT_INFO.getType()); - fileQueryWrapper.eq("bus_id",entity.getId()); + fileQueryWrapper.eq("type", FileTypeEnum.PROJECT_INFO.getType()); + fileQueryWrapper.eq("bus_id", entity.getId()); fileMapper.delete(fileQueryWrapper); //鏇挎崲鎴愮幇鏈� fileService.saveBatch(fileList); @@ -133,17 +137,33 @@ */ @Override public Result page(ProjectInfoQuery query) { - IPage<ProjectInfo> page = PageUtil.getPage(query, ProjectInfo.class); + if (query.getProjectStartTime() != null) { + query.setProjectStartTime(DateUtils.getDayStart(query.getProjectStartTime())); + } + if (query.getProjectEndTime() != null) { + query.setProjectEndTime(DateUtils.getDayEnd(query.getProjectEndTime())); + } + IPage<ProjectInfoVO> page = PageUtil.getPage(query, ProjectInfoVO.class); baseMapper.getPage(page, query); - List<ProjectInfo> records = page.getRecords(); - List<ProjectInfoVO> list = records.stream() - .map(entity -> { - ProjectInfoVO vo = ProjectInfoVO.getVoByEntity(entity, null); + List<ProjectInfoVO> records = page.getRecords(); + List<ProjectVO> list = new ArrayList<>(); + records.forEach(vo -> { + ProjectInfoVO.transform(vo); vo.setProjectColorCode("green"); - return vo; - }) - .collect(Collectors.toList()); + ProjectVO projectVO = new ProjectVO(); + copyToProjectVO(vo,projectVO); + list.add(projectVO); + }); return Result.ok().data(list).total(page.getTotal()); + } + + private void copyToProjectVO(ProjectInfoVO vo,ProjectVO projectVO) { + //蹇界暐null鍊肩殑澶嶅埗 + CopyUtils.copyNoNullProperties(vo, projectVO); + if(vo.getProjectInvestmentFunding()!=null) CopyUtils.copyNoNullProperties(vo.getProjectInvestmentFunding(),projectVO); + if(vo.getProjectInvestmentInfo()!=null) CopyUtils.copyNoNullProperties(vo.getProjectInvestmentInfo(),projectVO); + if(vo.getProjectUnitRegistrationInfo()!=null) CopyUtils.copyNoNullProperties(vo.getProjectUnitRegistrationInfo(),projectVO); + if(vo.getProjectInvestmentPolicyCompliance()!=null) CopyUtils.copyNoNullProperties(vo.getProjectInvestmentPolicyCompliance(),projectVO); } /** @@ -158,8 +178,8 @@ Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); ProjectInfoVO vo = ProjectInfoVO.getVoByEntity(entity, null); QueryWrapper<File> fileQueryWrapper = new QueryWrapper<>(); - fileQueryWrapper.eq("type",FileTypeEnum.PROJECT_INFO.getType()); - fileQueryWrapper.eq("bus_id",vo.getId()); + fileQueryWrapper.eq("type", FileTypeEnum.PROJECT_INFO.getType()); + fileQueryWrapper.eq("bus_id", vo.getId()); List<File> files = fileMapper.selectList(fileQueryWrapper); vo.setFileList(files); return Result.ok().data(vo); @@ -216,8 +236,8 @@ public Result docDetail(Integer id) { DocumentInfoForm documentInfoForm = new DocumentInfoForm(); QueryWrapper<File> fileQueryWrapper = new QueryWrapper<>(); - fileQueryWrapper.eq("type",FileTypeEnum.DOCUMENT_INFO.getType()); - fileQueryWrapper.eq("bus_id",id); + fileQueryWrapper.eq("type", FileTypeEnum.DOCUMENT_INFO.getType()); + fileQueryWrapper.eq("bus_id", id); List<File> files = fileMapper.selectList(fileQueryWrapper); documentInfoForm.setFileList(files); return Result.ok().data(documentInfoForm); @@ -226,14 +246,15 @@ @Override public Result addDoc(DocumentInfoForm form) { List<File> fileList = form.getFileList(); - fileList.forEach(item->{ + fileList.forEach(item -> { + item.setId(null); item.setBusId(form.getProjectId()); item.setType(FileTypeEnum.DOCUMENT_INFO); }); //鍒犻櫎鍘熸湁鏂囦欢 QueryWrapper<File> fileQueryWrapper = new QueryWrapper<>(); - fileQueryWrapper.eq("type",FileTypeEnum.DOCUMENT_INFO.getType()); - fileQueryWrapper.eq("bus_id",form.getProjectId()); + fileQueryWrapper.eq("type", FileTypeEnum.DOCUMENT_INFO.getType()); + fileQueryWrapper.eq("bus_id", form.getProjectId()); fileMapper.delete(fileQueryWrapper); //鏇挎崲鎴愮幇鏈� fileService.saveBatch(fileList); -- Gitblit v1.8.0