buyer-api/src/main/java/cn/lili/controller/lmk/KitchenController.java
@@ -1,6 +1,7 @@ package cn.lili.controller.lmk; import cn.lili.base.Result; import cn.lili.modules.lmk.domain.vo.KitchenGoodsQuery; import cn.lili.modules.lmk.service.AdCoverService; import cn.lili.modules.lmk.service.AdImgService; import cn.lili.modules.lmk.service.KitchenCustomizeService; @@ -50,8 +51,8 @@ * @return 私厨商品 */ @GetMapping("/kitchenGoods") public Result getKitchenGoods(String id){ return kitchenCustomizeService.getKitchenGoods(id); public Result getKitchenGoods(KitchenGoodsQuery query){ return kitchenCustomizeService.getKitchenGoods(query); } /** framework/src/main/java/cn/lili/modules/lmk/domain/vo/KitchenGoodsQuery.java
New file @@ -0,0 +1,19 @@ package cn.lili.modules.lmk.domain.vo; import cn.lili.base.AbsQuery; import lombok.Data; /** * lmk-shop-java * 私厨商品 * * @author : zxl * @date : 2026-01-05 16:10 **/ @Data public class KitchenGoodsQuery extends AbsQuery { private String tagId; private String comboName; } framework/src/main/java/cn/lili/modules/lmk/mapper/KitchenCustomizeMapper.java
@@ -1,6 +1,7 @@ package cn.lili.modules.lmk.mapper; import cn.lili.modules.lmk.domain.entity.KitchenCustomize; import cn.lili.modules.lmk.domain.vo.KitchenGoodsQuery; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import cn.lili.modules.lmk.domain.vo.KitchenCustomizeVO; @@ -31,4 +32,6 @@ */ IPage getPage(IPage page, @Param("query") KitchenCustomizeQuery query); IPage getPageByGoodsQuery(IPage page, @Param("query") KitchenGoodsQuery query); } framework/src/main/java/cn/lili/modules/lmk/service/KitchenCustomizeService.java
@@ -1,6 +1,7 @@ package cn.lili.modules.lmk.service; import cn.lili.modules.lmk.domain.entity.KitchenCustomize; import cn.lili.modules.lmk.domain.vo.KitchenGoodsQuery; import com.baomidou.mybatisplus.extension.service.IService; import cn.lili.base.Result; import cn.lili.modules.lmk.domain.form.KitchenCustomizeForm; @@ -66,5 +67,5 @@ */ Result all(); Result getKitchenGoods(String id); Result getKitchenGoods(KitchenGoodsQuery query); } framework/src/main/java/cn/lili/modules/lmk/service/impl/AdCoverServiceImpl.java
@@ -140,6 +140,12 @@ adCovers = new ArrayList<>(); adCovers.add(adImg); } for(AdCover adCover : adCovers) { if (StringUtils.isNotBlank(adCover.getCoverUrl())&&!adCover.getCoverUrl().contains("http")) { adCover.setCoverUrl(cosUtil.getPreviewUrl(adCover.getCoverUrl())); } } return Result.ok().data(adCovers); } } framework/src/main/java/cn/lili/modules/lmk/service/impl/AdImgServiceImpl.java
@@ -135,9 +135,12 @@ @Override public Result getKitchenBanner() { List<AdImg> adImgs = baseMapper.selectList(null); if (adImgs.size()>1) { if (!adImgs.isEmpty()) { AdImg adImg = adImgs.get(0); adImgs = new ArrayList<>(); if (StringUtils.isNotBlank(adImg.getCoverUrl())&&!adImg.getCoverUrl().contains("http")) { adImg.setCoverUrl(cosUtil.getPreviewUrl(adImg.getCoverUrl())); } adImgs.add(adImg); } return Result.ok().data(adImgs); framework/src/main/java/cn/lili/modules/lmk/service/impl/KitchenCustomizeServiceImpl.java
@@ -4,6 +4,7 @@ import cn.lili.common.utils.StringUtils; import cn.lili.modules.lmk.domain.entity.KitchenTag; import cn.lili.modules.lmk.domain.vo.AdImgVO; import cn.lili.modules.lmk.domain.vo.KitchenGoodsQuery; import cn.lili.modules.lmk.enums.general.StoreCouponStausEnum; import cn.lili.utils.COSUtil; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -148,11 +149,17 @@ } @Override public Result getKitchenGoods(String id) { if (StringUtils.isBlank(id)) { return Result.ok().data(new ArrayList<>()); public Result getKitchenGoods(KitchenGoodsQuery query) { IPage<KitchenCustomizeVO> page = PageUtil.getPage(query, KitchenCustomizeVO.class); baseMapper.getPageByGoodsQuery(page, query); for (KitchenCustomizeVO record : page.getRecords()) { if (StringUtils.isNotBlank(record.getThumbnail())&&!record.getThumbnail().contains("http")) { record.setThumbnail(cosUtil.getPreviewUrl(record.getThumbnail())); } if (StringUtils.isNotBlank(record.getCoverImg())&&!record.getCoverImg().contains("http")) { record.setCoverImg(cosUtil.getPreviewUrl(record.getCoverImg())); } } // kitchenCustomizeMapper.getKitchenGoods(); return null; return Result.ok().total(page.getTotal()).data(page.getRecords()); } } framework/src/main/resources/mapper/lmk/KitchenCustomizeMapper.xml
@@ -78,4 +78,38 @@ order by LKC.create_time desc </select> <select id="getPageByGoodsQuery" resultMap="BaseResultMap" > SELECT LKC.goods_id, LKC.sku_id, LKC.combo_name, LKC.remark, LKC.num, LKC.cover_img, LKC.orgin_price, LKC.tag_id, LKC.STATUS, LKC.sort, LKC.id, lgs.goods_name, lgs.price, lgs.thumbnail FROM lmk_kitchen_customize LKC JOIN li_goods_sku lgs ON lgs.id = LKC.sku_id AND lgs.delete_flag = 0 JOIN li_goods lg ON lg.id = LKC.goods_id AND lg.delete_flag = 0 AND lg.market_enable = 'UPPER' WHERE LKC.delete_flag = 0 AND LKC.STATUS = 'ENABLE' AND LKC.tag_id = #{query.tagId} <if test="query.comboName !='' and query.comboName != null"> AND LKC.combo_name like concat('%',#{query.comboName},'%') </if> ORDER BY lgs.price ASC </select> </mapper>