From b61646b5725e2d2a318c9404da81d84144da99c5 Mon Sep 17 00:00:00 2001 From: luogw <3132758203@qq.com> Date: Thu, 29 Jan 2026 19:10:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=BA=A7=E5=93=81=E7=BA=BF?= =?UTF-8?q?=E7=9A=84=E8=B5=84=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InformationApplicationService.java | 8 ++++ .../InformationApplicationServiceImpl.java | 12 ++++++ .../controller/InformationController.java | 8 ++++ .../domain/dto/ProductLineDTO.java | 1 + .../domain/entity/ProductLineEntity.java | 7 +++- .../domain/param/InformationParam.java | 1 + .../domain/param/ProductLineParam.java | 2 +- .../SearchInformationDomainService.java | 12 ++++++ ...tTreeListProductLineDomainServiceImpl.java | 8 ++-- .../SearchInformationDomainServiceImpl.java | 42 +++++++++++++++++++ 10 files changed, 96 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/project/information/domain/service/SearchInformationDomainService.java create mode 100644 src/main/java/com/project/information/domain/service/impl/SearchInformationDomainServiceImpl.java diff --git a/src/main/java/com/project/information/application/InformationApplicationService.java b/src/main/java/com/project/information/application/InformationApplicationService.java index fd0f36e..9e9e801 100644 --- a/src/main/java/com/project/information/application/InformationApplicationService.java +++ b/src/main/java/com/project/information/application/InformationApplicationService.java @@ -1,7 +1,10 @@ package com.project.information.application; +import com.project.base.domain.result.PageResult; import com.project.base.domain.result.Result; +import com.project.information.domain.dto.InformationDTO; import com.project.information.domain.param.FileCheckItem; +import com.project.information.domain.param.InformationParam; import org.springframework.web.multipart.MultipartFile; import java.util.List; @@ -11,4 +14,9 @@ public interface InformationApplicationService { Result batchUploadAndOverwrite(MultipartFile[] files, Long subLineId) throws Exception; + + /** + * 查询资料列表 + */ + Result> list(InformationParam informationParam); } diff --git a/src/main/java/com/project/information/application/impl/InformationApplicationServiceImpl.java b/src/main/java/com/project/information/application/impl/InformationApplicationServiceImpl.java index ab6d93c..70bcc55 100644 --- a/src/main/java/com/project/information/application/impl/InformationApplicationServiceImpl.java +++ b/src/main/java/com/project/information/application/impl/InformationApplicationServiceImpl.java @@ -1,8 +1,13 @@ package com.project.information.application.impl; +import com.project.base.domain.result.PageResult; import com.project.base.domain.result.Result; import com.project.information.application.InformationApplicationService; +import com.project.information.domain.dto.InformationDTO; import com.project.information.domain.param.FileCheckItem; +import com.project.information.domain.param.InformationParam; +import com.project.information.domain.service.InformationBaseService; +import com.project.information.domain.service.SearchInformationDomainService; import com.project.information.domain.service.UploadInformationDomainService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -15,6 +20,8 @@ public class InformationApplicationServiceImpl implements InformationApplication @Autowired private UploadInformationDomainService uploadInformationDomainService; + @Autowired + private SearchInformationDomainService searchInformationDomainService; @Override public Result checkDuplicates(Long subLineId, List files) throws Exception { @@ -25,4 +32,9 @@ public class InformationApplicationServiceImpl implements InformationApplication public Result batchUploadAndOverwrite(MultipartFile[] files, Long subLineId) throws Exception { return uploadInformationDomainService.batchUploadAndOverwrite(files , subLineId); } + + @Override + public Result> list(InformationParam informationParam) { + return searchInformationDomainService.list(informationParam); + } } diff --git a/src/main/java/com/project/information/controller/InformationController.java b/src/main/java/com/project/information/controller/InformationController.java index 4d84e60..e8492bf 100644 --- a/src/main/java/com/project/information/controller/InformationController.java +++ b/src/main/java/com/project/information/controller/InformationController.java @@ -1,12 +1,15 @@ package com.project.information.controller; +import com.project.base.domain.result.PageResult; import com.project.base.domain.result.Result; import com.project.information.application.InformationApplicationService; import com.project.information.application.ProductLineApplicationService; +import com.project.information.domain.dto.InformationDTO; import com.project.information.domain.dto.ProductLineDTO; import com.project.information.domain.param.CheckDuplicatesParam; import com.project.information.domain.param.FileCheckItem; +import com.project.information.domain.param.InformationParam; import com.project.information.domain.param.ProductLineParam; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -31,4 +34,9 @@ public class InformationController { public Result batchUploadAndOverwrite(MultipartFile[] files, Long subLineId) throws Exception { return informationApplicationService.batchUploadAndOverwrite(files , subLineId); } + + @GetMapping("/list") + public Result> list(InformationParam informationParam) throws Exception { + return informationApplicationService.list(informationParam); + } } diff --git a/src/main/java/com/project/information/domain/dto/ProductLineDTO.java b/src/main/java/com/project/information/domain/dto/ProductLineDTO.java index 4524cfc..ef1f764 100644 --- a/src/main/java/com/project/information/domain/dto/ProductLineDTO.java +++ b/src/main/java/com/project/information/domain/dto/ProductLineDTO.java @@ -14,6 +14,7 @@ public class ProductLineDTO extends BaseDTO { private Integer sort = 0; private Boolean leaf; private String business; + private String businessId; private Long parentId; private String parentName; diff --git a/src/main/java/com/project/information/domain/entity/ProductLineEntity.java b/src/main/java/com/project/information/domain/entity/ProductLineEntity.java index e294f2f..c15390a 100644 --- a/src/main/java/com/project/information/domain/entity/ProductLineEntity.java +++ b/src/main/java/com/project/information/domain/entity/ProductLineEntity.java @@ -21,7 +21,7 @@ public class ProductLineEntity extends BaseEntity { @Id private Long id; - @Column(name = "name" , columnDefinition="varchar(550) comment '部门名称'") + @Column(name = "name" , columnDefinition="varchar(550) comment '产品线名称'") private String name; @Column(name = "sort", nullable = false) @@ -35,6 +35,11 @@ public class ProductLineEntity extends BaseEntity { @Column(name = "business", columnDefinition="varchar(100) comment '所属BG名称'") private String business; + @Column(name = "business_id") + @TableField("business_id") + @Comment("事业部ID") + private Long businessId; + @Column(name = "parent_id") @TableField("parent_id") @Comment("父级ID") diff --git a/src/main/java/com/project/information/domain/param/InformationParam.java b/src/main/java/com/project/information/domain/param/InformationParam.java index 49a6cfa..d286324 100644 --- a/src/main/java/com/project/information/domain/param/InformationParam.java +++ b/src/main/java/com/project/information/domain/param/InformationParam.java @@ -5,4 +5,5 @@ import lombok.Data; @Data public class InformationParam extends BaseParam { + private Long subLineId; } diff --git a/src/main/java/com/project/information/domain/param/ProductLineParam.java b/src/main/java/com/project/information/domain/param/ProductLineParam.java index 1af30ac..2cc6a3e 100644 --- a/src/main/java/com/project/information/domain/param/ProductLineParam.java +++ b/src/main/java/com/project/information/domain/param/ProductLineParam.java @@ -5,6 +5,6 @@ import lombok.Data; @Data public class ProductLineParam extends BaseParam { - private String business; + private Long businessId; } diff --git a/src/main/java/com/project/information/domain/service/SearchInformationDomainService.java b/src/main/java/com/project/information/domain/service/SearchInformationDomainService.java new file mode 100644 index 0000000..37efea6 --- /dev/null +++ b/src/main/java/com/project/information/domain/service/SearchInformationDomainService.java @@ -0,0 +1,12 @@ +package com.project.information.domain.service; + +import com.project.base.domain.result.PageResult; +import com.project.base.domain.result.Result; +import com.project.information.domain.dto.InformationDTO; +import com.project.information.domain.param.InformationParam; + +import java.util.List; + +public interface SearchInformationDomainService { + Result> list(InformationParam informationParam); +} diff --git a/src/main/java/com/project/information/domain/service/impl/GetTreeListProductLineDomainServiceImpl.java b/src/main/java/com/project/information/domain/service/impl/GetTreeListProductLineDomainServiceImpl.java index b68d68e..d7b3414 100644 --- a/src/main/java/com/project/information/domain/service/impl/GetTreeListProductLineDomainServiceImpl.java +++ b/src/main/java/com/project/information/domain/service/impl/GetTreeListProductLineDomainServiceImpl.java @@ -1,5 +1,6 @@ package com.project.information.domain.service.impl; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.project.base.domain.exception.BusinessErrorException; @@ -14,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; @Service @@ -22,11 +24,11 @@ public class GetTreeListProductLineDomainServiceImpl implements GetTreeListProdu private ProductLineBaseService productLineBaseService; @Override public Result> treeList(ProductLineParam param) throws Exception { - if (StrUtil.isBlank(param.getBusiness())) { - throw new BusinessErrorException("所属 BG 不能为空"); + if (ObjectUtil.isEmpty(param.getBusinessId())) { + throw new BusinessErrorException("事业部ID不能为空"); } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ProductLineEntity::getBusiness , param.getBusiness()); + queryWrapper.eq(ProductLineEntity::getBusinessId , param.getBusinessId()); List res = productLineBaseService.list(queryWrapper) .stream().map(entity -> entity.toDTO(ProductLineDTO::new)) .collect(Collectors.toList()); diff --git a/src/main/java/com/project/information/domain/service/impl/SearchInformationDomainServiceImpl.java b/src/main/java/com/project/information/domain/service/impl/SearchInformationDomainServiceImpl.java new file mode 100644 index 0000000..3f5e977 --- /dev/null +++ b/src/main/java/com/project/information/domain/service/impl/SearchInformationDomainServiceImpl.java @@ -0,0 +1,42 @@ +package com.project.information.domain.service.impl; + +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.project.base.domain.exception.BusinessErrorException; +import com.project.base.domain.result.PageResult; +import com.project.base.domain.result.Result; +import com.project.base.domain.utils.PageConverter; +import com.project.ding.domain.dto.UserDTO; +import com.project.ding.domain.entity.UserEntity; +import com.project.information.domain.dto.InformationDTO; +import com.project.information.domain.entity.InformationEntity; +import com.project.information.domain.param.InformationParam; +import com.project.information.domain.service.SearchInformationDomainService; +import com.project.information.mapper.InformationMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.List; + +@Service +public class SearchInformationDomainServiceImpl implements SearchInformationDomainService { + @Autowired + private InformationMapper informationMapper; + + @Override + public Result> list(InformationParam informationParam) { + if (ObjectUtil.isEmpty(informationParam.getSubLineId())){ + throw new BusinessErrorException("产品线ID不能为空"); + } + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.orderByDesc(InformationEntity::getCreateTime); + queryWrapper.eq(InformationEntity::getSubLineId, informationParam.getSubLineId()); + IPage informationEntityIPage = informationMapper.selectPage( + PageConverter.toMpPage(informationParam), + queryWrapper); + IPage informationDTOIPage = informationEntityIPage.convert(entity -> entity.toDTO(InformationDTO::new)); + + return Result.page(informationDTOIPage); + } +}