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 new file mode 100644 index 00000000..edf439eb --- /dev/null +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductModelSearchVO.java @@ -0,0 +1,56 @@ +package com.nflg.mobilebroken.common.pojo.vo; + +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors +public class FrontendProductModelSearchVO { + + private Integer id; + + /** + * 模块id + */ + private Integer moduleId; + + /** + * 系列名称 + */ + private String seriesName; + + /** + * 类型名称 + */ + private String typeName; + + /** + * 名称 + */ + private String name; + + /** + * 型号 + */ + private String no; + + /** + * 图片地址 + */ + private String image; + + /** + * 是否新品 + */ + private Boolean recommend; + + /** + * 机型介绍 + */ + private String desc; + + /** + * 机型特点 + */ + private String feature; +} diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductSeriesSearchVO.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductSeriesSearchVO.java new file mode 100644 index 00000000..766b7f8c --- /dev/null +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductSeriesSearchVO.java @@ -0,0 +1,29 @@ +package com.nflg.mobilebroken.common.pojo.vo; + +import lombok.Data; + +@Data +public class FrontendProductSeriesSearchVO { + + private Integer id; + + /** + * 模块id + */ + private Integer moduleId; + + /** + * 名称 + */ + private String name; + + /** + * 图片地址 + */ + private String image; + + /** + * 内容 + */ + private String content; +} \ No newline at end of file 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 new file mode 100644 index 00000000..09e2a4c0 --- /dev/null +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/pojo/vo/FrontendProductTypeSearchVO.java @@ -0,0 +1,19 @@ +package com.nflg.mobilebroken.common.pojo.vo; + +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class FrontendProductTypeSearchVO extends FrontendProductSeriesSearchVO{ + + /** + * 系列名称 + */ + private String seriesName; + + /** + * 机型说明 + */ + private String modelDesc; +} diff --git a/nflg-mobilebroken-product/src/main/java/com/nflg/mobilebroken/product/controller/InfoController.java b/nflg-mobilebroken-product/src/main/java/com/nflg/mobilebroken/product/controller/InfoController.java index ffa9fe2c..625dce0b 100644 --- a/nflg-mobilebroken-product/src/main/java/com/nflg/mobilebroken/product/controller/InfoController.java +++ b/nflg-mobilebroken-product/src/main/java/com/nflg/mobilebroken/product/controller/InfoController.java @@ -1,19 +1,16 @@ package com.nflg.mobilebroken.product.controller; import com.nflg.mobilebroken.common.pojo.ApiResult; -import com.nflg.mobilebroken.common.pojo.vo.ProductCaseVO; -import com.nflg.mobilebroken.common.pojo.vo.ProductHonorVO; -import com.nflg.mobilebroken.common.pojo.vo.ProductIntroVO; +import com.nflg.mobilebroken.common.pojo.PageData; +import com.nflg.mobilebroken.common.pojo.request.ProductSeriesSearchRequest; +import com.nflg.mobilebroken.common.pojo.vo.*; import com.nflg.mobilebroken.common.util.MultilingualUtil; -import com.nflg.mobilebroken.repository.service.IProductCaseService; -import com.nflg.mobilebroken.repository.service.IProductHonorService; -import com.nflg.mobilebroken.repository.service.IProductIntroService; +import com.nflg.mobilebroken.repository.service.*; import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.validation.Valid; import java.util.List; /** @@ -33,6 +30,15 @@ public class InfoController extends BaseController{ @Resource private IProductCaseService productCaseService; + @Resource + private IProductSeriesService productSeriesService; + + @Resource + private IProductTypeService productTypeService; + + @Resource + private IProductModelService productModelService; + /** * 获取介绍列表 */ @@ -56,4 +62,28 @@ public class InfoController extends BaseController{ public ApiResult> getCase(){ return ApiResult.success(productCaseService.get(MultilingualUtil.getLanguage())); } + + /** + * 搜索产品系列 + */ + @PostMapping("/searchProductSeries") + public ApiResult> searchProductSeries(@Valid @RequestBody ProductSeriesSearchRequest request) { + return ApiResult.success(productSeriesService.search(request, MultilingualUtil.getLanguage())); + } + + /** + * 搜索产品类型 + */ + @PostMapping("/searchProductType") + public ApiResult> searchProductType(@Valid @RequestBody ProductSeriesSearchRequest request) { + return ApiResult.success(productTypeService.search(request, MultilingualUtil.getLanguage())); + } + + /** + * 搜索产品机型 + */ + @PostMapping("/searchProductModel") + public ApiResult> searchProductModel(@Valid @RequestBody ProductSeriesSearchRequest request) { + return ApiResult.success(productModelService.search(request, MultilingualUtil.getLanguage())); + } } 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 23fe40ef..460a3363 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,6 +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; @@ -25,4 +26,6 @@ public interface ProductModelMapper extends BaseMapper { List get(String typeNo, String language); ProductModelInfoVO getInfo(Integer modelId, String language); + + Page search(String name, String language, Page page); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductSeriesMapper.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductSeriesMapper.java index 6ea9dc1d..f0be9b58 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductSeriesMapper.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductSeriesMapper.java @@ -3,6 +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.ProductSeriesSearchRequest; +import com.nflg.mobilebroken.common.pojo.vo.FrontendProductSeriesSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesVO; import com.nflg.mobilebroken.repository.entity.ProductSeries; @@ -25,4 +26,6 @@ public interface ProductSeriesMapper extends BaseMapper { List get(Integer moduleId,String language); void copyItems(@NotNull Integer oldId, Integer newId); + + Page search(String name, String language, Page page); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductTypeMapper.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductTypeMapper.java index a085901f..1a6cc8a6 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductTypeMapper.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/mapper/ProductTypeMapper.java @@ -3,6 +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.ProductTypeSearchRequest; +import com.nflg.mobilebroken.common.pojo.vo.FrontendProductTypeSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeVO; import com.nflg.mobilebroken.repository.entity.ProductType; @@ -25,4 +26,6 @@ public interface ProductTypeMapper extends BaseMapper { List get(Integer moduleId,String seriesNo, String language); void copyItems(@NotNull Integer oldId, Integer newId); + + Page search(String name, String language, Page page); } 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 94239cba..da602624 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 @@ -46,4 +46,6 @@ public interface IProductModelService extends IService { List getListForSort(); void saveSort(@NotEmpty List ids); + + Page search(@Valid ProductSeriesSearchRequest request, String language); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductSeriesService.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductSeriesService.java index 7497d3c8..97cc6e57 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductSeriesService.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductSeriesService.java @@ -3,6 +3,7 @@ package com.nflg.mobilebroken.repository.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.nflg.mobilebroken.common.pojo.request.*; +import com.nflg.mobilebroken.common.pojo.vo.FrontendProductSeriesSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesInfoVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesVO; @@ -45,4 +46,6 @@ public interface IProductSeriesService extends IService { List getListForSort(); void saveSort(@NotEmpty List ids); + + Page search(ProductSeriesSearchRequest request, String language); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductTypeService.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductTypeService.java index ddaea626..939c4ac0 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductTypeService.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IProductTypeService.java @@ -3,6 +3,7 @@ package com.nflg.mobilebroken.repository.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.nflg.mobilebroken.common.pojo.request.*; +import com.nflg.mobilebroken.common.pojo.vo.FrontendProductTypeSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeInfoVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeVO; @@ -47,4 +48,6 @@ public interface IProductTypeService extends IService { List getListForSort(); void saveSort(@NotEmpty List ids); + + Page search(@Valid ProductSeriesSearchRequest request, String language); } 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 0b9405fa..1c5b497c 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 @@ -327,6 +327,11 @@ public class ProductModelServiceImpl extends ServiceImpl search(ProductSeriesSearchRequest request, String language) { + return baseMapper.search(request.getName(),language,new Page<>(request.getPage(), request.getPageSize())); + } + private ProductModelCompareInfoVO getModelCompareInfo(Integer modelId, String language){ ProductModel productModel = getById(modelId); VUtils.trueThrowBusinessError(Objects.isNull(productModel)).throwMessage("无效的数据"); diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductSeriesServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductSeriesServiceImpl.java index f300a92e..43b22841 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductSeriesServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/ProductSeriesServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.nflg.mobilebroken.common.constant.Constant; import com.nflg.mobilebroken.common.constant.PublishState; import com.nflg.mobilebroken.common.pojo.request.*; +import com.nflg.mobilebroken.common.pojo.vo.FrontendProductSeriesSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesInfoVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductSeriesVO; @@ -227,4 +228,9 @@ public class ProductSeriesServiceImpl extends ServiceImpl search(ProductSeriesSearchRequest request, String language) { + return baseMapper.search(request.getName(),language,new Page<>(request.getPage(),request.getPageSize())); + } } \ No newline at end of file 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 03038a75..66ba05ab 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 @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.nflg.mobilebroken.common.constant.Constant; import com.nflg.mobilebroken.common.constant.PublishState; import com.nflg.mobilebroken.common.pojo.request.*; +import com.nflg.mobilebroken.common.pojo.vo.FrontendProductTypeSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeInfoVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeSearchVO; import com.nflg.mobilebroken.common.pojo.vo.ProductTypeVO; @@ -249,6 +250,11 @@ public class ProductTypeServiceImpl extends ServiceImpl search(ProductSeriesSearchRequest request, String language) { + return baseMapper.search(request.getName(), language, new Page<>(request.getPage(), request.getPageSize())); + } + private void delete(Integer typeId){ ProductType info=getById(typeId); removeById(typeId); diff --git a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml index 19758a9f..35abe0a5 100644 --- a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml +++ b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductModelMapper.xml @@ -36,17 +36,34 @@ + + diff --git a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductSeriesMapper.xml b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductSeriesMapper.xml index 4e9c8113..9e749bcb 100644 --- a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductSeriesMapper.xml +++ b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductSeriesMapper.xml @@ -48,4 +48,15 @@ FROM product_series_info WHERE series_id = #{oldId} + + diff --git a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml index 8fa8ab24..13597b98 100644 --- a/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml +++ b/nflg-mobilebroken-repository/src/main/resources/mapper/ProductTypeMapper.xml @@ -50,4 +50,15 @@ FROM product_type_file WHERE type_id=#{oldId} + +