diff --git a/crmeb/crmeb-admin/src/main/resources/application.yml b/crmeb/crmeb-admin/src/main/resources/application.yml index 02720d8..ee6e134 100644 --- a/crmeb/crmeb-admin/src/main/resources/application.yml +++ b/crmeb/crmeb-admin/src/main/resources/application.yml @@ -39,13 +39,13 @@ spring: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/crmeb?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimeZone=GMT+8 - username: crmeb - password: 111111 + username: zack + password: zack0430 redis: host: 127.0.0.1 #地址 port: 6379 #端口 - password: 111111 + password: hat123 timeout: 30000 # 连接超时时间(毫秒) database: 15 #默认数据库 jedis: diff --git a/crmeb/crmeb-common/src/main/java/com/zbkj/common/model/product/StoreProduct.java b/crmeb/crmeb-common/src/main/java/com/zbkj/common/model/product/StoreProduct.java index e15c161..375a978 100644 --- a/crmeb/crmeb-common/src/main/java/com/zbkj/common/model/product/StoreProduct.java +++ b/crmeb/crmeb-common/src/main/java/com/zbkj/common/model/product/StoreProduct.java @@ -1,17 +1,19 @@ package com.zbkj.common.model.product; -import java.math.BigDecimal; - -import com.baomidou.mybatisplus.annotation.*; - -import java.io.Serializable; - +import cn.hutool.core.date.DateTime; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import java.io.Serializable; +import java.math.BigDecimal; + /** * 商品表 * +---------------------------------------------------------------------- @@ -130,7 +132,8 @@ public class StoreProduct implements Serializable { @ApiModelProperty(value = "砍价状态 0未开启 1开启") private Boolean isBargain; - @ApiModelProperty(value = "是否优品推荐") + //为你推荐使用该字段 + @ApiModelProperty(value = "是否优品推荐 0false不推荐 1true推荐") private Boolean isGood; @ApiModelProperty(value = "是否单独分佣") @@ -166,4 +169,22 @@ public class StoreProduct implements Serializable { @ApiModelProperty(value = "商品详情") @TableField(exist = false) private String content; + + //新增字段 + @ApiModelProperty(value = "开始售卖时间") + private DateTime beginTime; + + @ApiModelProperty(value = "结束售卖时间") + private DateTime endTime; + + @ApiModelProperty(value = "搜索状态:0=售卖中,1=上新预告,2=团购结束") + private String searchStatus; + + @ApiModelProperty(value = "水果规格") + private String size; + + @ApiModelProperty(value = "水果尺寸") + private String dimensions; + + } diff --git a/crmeb/crmeb-common/src/main/java/com/zbkj/common/vo/ProductSuggestPage.java b/crmeb/crmeb-common/src/main/java/com/zbkj/common/vo/ProductSuggestPage.java new file mode 100644 index 0000000..167782b --- /dev/null +++ b/crmeb/crmeb-common/src/main/java/com/zbkj/common/vo/ProductSuggestPage.java @@ -0,0 +1,18 @@ +package com.zbkj.common.vo; + +import lombok.Data; + +/** + * @Description: 为你推荐分页查询 + * @Author Administrator + * @Date 2025/4/28 11:35 + */ +@Data +public class ProductSuggestPage { + //当前页 + private Long currentPage; + //页容 + private Long pageSize; + //搜索词商品名 + private String storeName; +} diff --git a/crmeb/crmeb-front/src/main/java/com/zbkj/front/controller/ProductController.java b/crmeb/crmeb-front/src/main/java/com/zbkj/front/controller/ProductController.java index 85771c5..8306908 100644 --- a/crmeb/crmeb-front/src/main/java/com/zbkj/front/controller/ProductController.java +++ b/crmeb/crmeb-front/src/main/java/com/zbkj/front/controller/ProductController.java @@ -1,6 +1,7 @@ package com.zbkj.front.controller; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zbkj.common.model.product.StoreProduct; import com.zbkj.common.page.CommonPage; import com.zbkj.common.request.PageParamRequest; @@ -8,6 +9,7 @@ import com.zbkj.common.request.ProductListRequest; import com.zbkj.common.request.ProductRequest; import com.zbkj.common.response.*; import com.zbkj.common.vo.CategoryTreeVo; +import com.zbkj.common.vo.ProductSuggestPage; import com.zbkj.front.service.ProductService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -42,11 +44,13 @@ public class ProductController { /** * 为你推荐 + * 参数暂定分页对象 */ - @ApiOperation(value = "热门商品推荐") + @ApiOperation(value = "为你推荐") @RequestMapping(value = "/pageList/suggest", method = RequestMethod.GET) - public CommonResult> getProductSuggestionList(@RequestParam String searchWord) { - return CommonResult.success(productService.getProductSuggestionList(searchWord)); + public CommonResult getProductSuggestionList(ProductSuggestPage param) { + IPage list = productService.getProductSuggestionList(param); + return CommonResult.success(list,"查询成功!"); } diff --git a/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/ProductService.java b/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/ProductService.java index 14af5ac..38dd797 100644 --- a/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/ProductService.java +++ b/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/ProductService.java @@ -1,13 +1,16 @@ package com.zbkj.front.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.github.pagehelper.PageInfo; import com.zbkj.common.model.product.StoreProduct; import com.zbkj.common.page.CommonPage; import com.zbkj.common.request.PageParamRequest; import com.zbkj.common.request.ProductListRequest; import com.zbkj.common.request.ProductRequest; -import com.github.pagehelper.PageInfo; import com.zbkj.common.response.*; import com.zbkj.common.vo.CategoryTreeVo; +import com.zbkj.common.vo.ProductSuggestPage; import java.util.List; @@ -23,7 +26,14 @@ import java.util.List; * | Author: CRMEB Team * +---------------------------------------------------------------------- */ -public interface ProductService { +public interface ProductService extends IService { + + /* + * 为你推荐 + * @return List + */ + //为你推荐 + IPage getProductSuggestionList(ProductSuggestPage param); /** * 商品分类 @@ -104,10 +114,5 @@ public interface ProductService { */ List getLeaderboard(); - /** - * !!!wby cc!!! - * 为你推荐 - * @return List - */ - CommonPage getProductSuggestionList(String searchWord); + } diff --git a/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/impl/ProductServiceImpl.java b/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/impl/ProductServiceImpl.java index b34a1fa..e85909d 100644 --- a/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/impl/ProductServiceImpl.java +++ b/crmeb/crmeb-front/src/main/java/com/zbkj/front/service/impl/ProductServiceImpl.java @@ -3,11 +3,13 @@ package com.zbkj.front.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageInfo; import com.zbkj.common.constants.CategoryConstants; import com.zbkj.common.constants.Constants; -import com.zbkj.common.constants.RedisConstatns; import com.zbkj.common.constants.SysConfigConstants; import com.zbkj.common.model.product.StoreProduct; import com.zbkj.common.model.product.StoreProductAttr; @@ -24,9 +26,12 @@ import com.zbkj.common.utils.CrmebUtil; import com.zbkj.common.utils.RedisUtil; import com.zbkj.common.vo.CategoryTreeVo; import com.zbkj.common.vo.MyRecord; +import com.zbkj.common.vo.ProductSuggestPage; import com.zbkj.front.service.ProductService; +import com.zbkj.service.dao.StoreProductDao; import com.zbkj.service.delete.ProductUtils; import com.zbkj.service.service.*; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -50,7 +55,7 @@ import java.util.List; * +---------------------------------------------------------------------- */ @Service -public class ProductServiceImpl implements ProductService { +public class ProductServiceImpl extends ServiceImpl implements ProductService { @Autowired private StoreProductService storeProductService; @@ -91,6 +96,24 @@ public class ProductServiceImpl implements ProductService { @Autowired private UserVisitRecordService userVisitRecordService; + /** + * 为你推荐 + * @return List + */ + @Override + public IPage getProductSuggestionList(ProductSuggestPage param) { + //分页查询 + IPage page = new Page<>(param.getCurrentPage(), param.getPageSize()); + //构造查询条件 + QueryWrapper query = new QueryWrapper<>(); + if(StringUtils.isNotEmpty(param.getStoreName())){ + query.lambda().like(StoreProduct::getStoreName, param.getStoreName()); + } + //按照上架时间降序排列 + query.lambda().orderByDesc(StoreProduct::getBeginTime); + return this.baseMapper.selectPage(page, query); + } + /** * 获取分类 * @return List @@ -538,5 +561,8 @@ public class ProductServiceImpl implements ProductService { return storeProductService.getLeaderboard(); } + + + } diff --git a/crmeb/crmeb-front/src/main/resources/application.yml b/crmeb/crmeb-front/src/main/resources/application.yml index f4d78b4..a39e7f7 100644 --- a/crmeb/crmeb-front/src/main/resources/application.yml +++ b/crmeb/crmeb-front/src/main/resources/application.yml @@ -34,12 +34,12 @@ spring: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/crmeb?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimeZone=GMT+8 - username: crmeb - password: 111111 + username: zack + password: zack0430 redis: host: 127.0.0.1 #地址 port: 6379 #端口 - password: 111111 + password: hat123 timeout: 30000 # 连接超时时间(毫秒) database: 3 #默认数据库 jedis: diff --git a/crmeb/crmeb-service/src/main/java/com/zbkj/service/dao/StoreProductDao.java b/crmeb/crmeb-service/src/main/java/com/zbkj/service/dao/StoreProductDao.java index fee8a38..0cbb655 100644 --- a/crmeb/crmeb-service/src/main/java/com/zbkj/service/dao/StoreProductDao.java +++ b/crmeb/crmeb-service/src/main/java/com/zbkj/service/dao/StoreProductDao.java @@ -1,7 +1,10 @@ package com.zbkj.service.dao; -import com.zbkj.common.model.product.StoreProduct; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.zbkj.common.model.product.StoreProduct; +import com.zbkj.common.vo.ProductSuggestPage; +import org.apache.ibatis.annotations.Param; /** * 商品表 Mapper 接口 @@ -16,5 +19,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; * +---------------------------------------------------------------------- */ public interface StoreProductDao extends BaseMapper { + /* + * 为你推荐 + * @return List + */ + //为你推荐 + IPage getProductSuggestionList(IPage page,@Param("parm") ProductSuggestPage param); } diff --git a/crmeb/crmeb-service/src/main/resources/mapper/store/StoreProductMapper.xml b/crmeb/crmeb-service/src/main/resources/mapper/store/StoreProductMapper.xml index 04cc031..7568435 100644 --- a/crmeb/crmeb-service/src/main/resources/mapper/store/StoreProductMapper.xml +++ b/crmeb/crmeb-service/src/main/resources/mapper/store/StoreProductMapper.xml @@ -2,4 +2,12 @@ + +