From 88cfd1df743423df9e6c6a5e89770e48700f9654 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Wed, 11 Jun 2025 10:45:01 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BA=A7=E5=93=81=E4=B8=AD=E5=BF=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/vo/FrontendProductModelSearchVO.java | 7 +++++++ .../pojo/vo/FrontendProductTypeSearchVO.java | 7 +++++++ .../common/pojo/vo/ProductModelSimpleVO.java | 15 +++++++++++++++ .../common/pojo/vo/ProductTypeVO.java | 12 ++++++++++++ .../repository/mapper/ProductModelMapper.java | 7 +++---- .../repository/service/IProductModelService.java | 2 ++ .../service/impl/ProductModelServiceImpl.java | 11 ++++++++++- .../service/impl/ProductTypeServiceImpl.java | 12 ++++++++++-- .../main/resources/mapper/ProductModelMapper.xml | 8 ++++++++ .../main/resources/mapper/ProductTypeMapper.xml | 2 +- 10 files changed, 75 insertions(+), 8 deletions(-) diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductModelSearchVO.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductModelSearchVO.java index edf439eb..26854bb2 100644 --- a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductModelSearchVO.java +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductModelSearchVO.java @@ -3,6 +3,8 @@ package com.nflg.mobilebroken.common.pojo.vo; import lombok.Data; import lombok.experimental.Accessors; +import java.util.List; + @Data @Accessors public class FrontendProductModelSearchVO { @@ -53,4 +55,9 @@ public class FrontendProductModelSearchVO { * 机型特点 */ private String feature; + + /** + * 主要参数列表 + */ + private List params; } diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductTypeSearchVO.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductTypeSearchVO.java index 09e2a4c0..55fb1dab 100644 --- a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductTypeSearchVO.java +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductTypeSearchVO.java @@ -3,6 +3,8 @@ package com.nflg.mobilebroken.common.pojo.vo; import lombok.Data; import lombok.experimental.Accessors; +import java.util.List; + @Data @Accessors(chain = true) public class FrontendProductTypeSearchVO extends FrontendProductSeriesSearchVO{ @@ -16,4 +18,9 @@ public class FrontendProductTypeSearchVO extends FrontendProductSeriesSearchVO{ * 机型说明 */ private String modelDesc; + + /** + * 机型列表 + */ + private List models; } diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductModelSimpleVO.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductModelSimpleVO.java index 8f35b319..755bc124 100644 --- a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductModelSimpleVO.java +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductModelSimpleVO.java @@ -9,6 +9,21 @@ public class ProductModelSimpleVO { private Integer id; + /** + * 模块ID + */ + private Integer moduleId; + + /** + * 系列名称 + */ + private String seriesName; + + /** + * 类型名称 + */ + private String typeName; + /** * 机型型号 */ diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductTypeVO.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductTypeVO.java index e4f3ef87..e2be0ac0 100644 --- a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductTypeVO.java +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/ProductTypeVO.java @@ -2,11 +2,18 @@ package com.nflg.mobilebroken.common.pojo.vo; import lombok.Data; +import java.util.List; + @Data public class ProductTypeVO { private Integer id; + /** + * 系列名称 + */ + private String seriesName; + /** * 类型编号 */ @@ -26,4 +33,9 @@ public class ProductTypeVO { * 类型介绍 */ private String content; + + /** + * 机型列表 + */ + private List models; } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductModelMapper.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductModelMapper.java index 460a3363..1646d4a1 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductModelMapper.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductModelMapper.java @@ -3,10 +3,7 @@ package com.nflg.mobilebroken.repository.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.nflg.mobilebroken.common.pojo.request.ProductModelSearchRequest; -import com.nflg.mobilebroken.common.pojo.vo.FrontendProductModelSearchVO; -import com.nflg.mobilebroken.common.pojo.vo.ProductModelInfoVO; -import com.nflg.mobilebroken.common.pojo.vo.ProductModelSearchVO; -import com.nflg.mobilebroken.common.pojo.vo.ProductModelVO; +import com.nflg.mobilebroken.common.pojo.vo.*; import com.nflg.mobilebroken.repository.entity.ProductModel; import java.util.List; @@ -28,4 +25,6 @@ public interface ProductModelMapper extends BaseMapper { ProductModelInfoVO getInfo(Integer modelId, String language); Page search(String name, String language, Page page); + + List getSimpleList(Integer moduleId, String seriesName, String typeNo); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelService.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelService.java index da602624..90f1e93a 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelService.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductModelService.java @@ -48,4 +48,6 @@ public interface IProductModelService extends IService { void saveSort(@NotEmpty List ids); Page search(@Valid ProductSeriesSearchRequest request, String language); + + List getSimpleList(Integer moduleId, String seriesName, String typeNo); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelServiceImpl.java index 1c5b497c..2d6b7121 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductModelServiceImpl.java @@ -329,7 +329,16 @@ public class ProductModelServiceImpl extends ServiceImpl search(ProductSeriesSearchRequest request, String language) { - return baseMapper.search(request.getName(),language,new Page<>(request.getPage(), request.getPageSize())); + Page datas=baseMapper.search(request.getName(),language,new Page<>(request.getPage(), request.getPageSize())); + datas.getRecords().forEach(it->{ + it.setParams(productPartParamsService.getListByLanguage(it.getId(), language,true)); + }); + return datas; + } + + @Override + public List getSimpleList(Integer moduleId, String seriesName, String typeNo) { + return baseMapper.getSimpleList(moduleId,seriesName,typeNo); } private ProductModelCompareInfoVO getModelCompareInfo(Integer modelId, String language){ diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductTypeServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductTypeServiceImpl.java index 66ba05ab..0f4bbe9c 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductTypeServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductTypeServiceImpl.java @@ -101,7 +101,11 @@ public class ProductTypeServiceImpl extends ServiceImpl get(Integer moduleId,String seriesNo,String language) { - return baseMapper.get(moduleId,seriesNo,language); + List vos=baseMapper.get(moduleId,seriesNo,language); + vos.forEach(vo->{ + vo.setModels(productModelService.getSimpleList(moduleId,vo.getSeriesName(),vo.getTypeNo())); + }); + return vos; } @Override @@ -252,7 +256,11 @@ public class ProductTypeServiceImpl extends ServiceImpl search(ProductSeriesSearchRequest request, String language) { - return baseMapper.search(request.getName(), language, new Page<>(request.getPage(), request.getPageSize())); + Page datas=baseMapper.search(request.getName(), language, new Page<>(request.getPage(), request.getPageSize())); + datas.getRecords().forEach(it->{ + it.setModels(productModelService.getSimpleList(it.getModuleId(), it.getSeriesName(), it.getName())); + }); + return datas; } private void delete(Integer typeId){ diff --git a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml index 35abe0a5..0c458889 100644 --- a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml +++ b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml @@ -66,4 +66,12 @@ AND (pm.`no` LIKE CONCAT('%', #{name}, '%') OR pmii.`desc` LIKE CONCAT('%', #{name}, '%') OR pmii.feature LIKE CONCAT('%', #{name}, '%')) + + diff --git a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml index 13597b98..2dcf1b40 100644 --- a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml +++ b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml @@ -33,7 +33,7 @@