package com.ruoyi.order.controller.miniapp; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.system.api.domain.dto.AppPageDto; import com.ruoyi.order.domain.dto.AppSearchGoodsPageDto; import com.ruoyi.order.domain.dto.AppShopGoodsPageDto; import com.ruoyi.order.domain.vo.AppSimpleActivityGoodsVo; import com.ruoyi.order.domain.vo.AppSimpleGoodsVo; import com.ruoyi.order.service.goods.GoodsService; import com.ruoyi.system.api.RemoteMemberService; import com.ruoyi.system.api.domain.poji.member.Member; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * @author jqs34 * @ClassName AppHomeController * @description: TODO * @date 2023年04月18日 * @version: 1.0 */ @Api(value = "小程序首页相关接口", tags = "小程序首页相关接口", description = "小程序首页相关接口") @RestController @RequestMapping("/app/home") public class AppHomeController extends BaseController { @Autowired private RemoteMemberService memberService; @Autowired private GoodsService goodsService; @RequestMapping(value = "/pageRecommendGoods", method = RequestMethod.POST) @ApiOperation(value = "推荐商品") public R> pageRecommendGoods(@RequestBody AppPageDto appPageDto) { Long userId = SecurityUtils.getUserId(); Long shopId = null; if(userId!=null){ Member member = memberService.getMember(userId).getData(); if(member!=null&&member.getRelationShopId()!=null){ shopId = member.getRelationShopId(); } } Page page = new Page<>(); page.setSize(appPageDto.getPageSize()); page.setCurrent(appPageDto.getPageNum()); List appSimpleGoodsVoList = goodsService.pageRecommendGoods(page,shopId); return R.ok(page.setRecords(appSimpleGoodsVoList)); } @RequestMapping(value = "/pageShopGoods", method = RequestMethod.POST) @ApiOperation(value = "商城商品") public R> pageShopGoods(@RequestBody AppShopGoodsPageDto appShopGoodsPageDto) { Long userId = SecurityUtils.getUserId(); if(userId!=null){ Member member = memberService.getMember(userId).getData(); if(member!=null&&member.getRelationShopId()!=null){ appShopGoodsPageDto.setShopId(member.getRelationShopId()); } } Page page = new Page<>(); page.setSize(appShopGoodsPageDto.getPageSize()); page.setCurrent(appShopGoodsPageDto.getPageNum()); List appSimpleGoodsVoList = goodsService.pageShopGoods(page,appShopGoodsPageDto); return R.ok(page.setRecords(appSimpleGoodsVoList)); } @RequestMapping(value = "/pageSearchGoods", method = RequestMethod.POST) @ApiOperation(value = "搜索商品") public R> pageSearchGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { Long userId = SecurityUtils.getUserId(); if(userId!=null){ Member member = memberService.getMember(userId).getData(); if(member!=null&&member.getRelationShopId()!=null){ appSearchGoodsPageDto.setShopId(member.getRelationShopId()); } } Page page = new Page<>(); page.setSize(appSearchGoodsPageDto.getPageSize()); page.setCurrent(appSearchGoodsPageDto.getPageNum()); List appSimpleGoodsVoList = goodsService.pageSearchGoods(page,appSearchGoodsPageDto); return R.ok(page.setRecords(appSimpleGoodsVoList)); } @RequestMapping(value = "/pageSearchActivityGoods", method = RequestMethod.POST) @ApiOperation(value = "搜索活动商品") public R> pageSearchActivityGoods(@RequestBody AppSearchGoodsPageDto appSearchGoodsPageDto) { Long userId = SecurityUtils.getUserId(); if(userId!=null){ Member member = memberService.getMember(userId).getData(); if(member!=null&&member.getRelationShopId()!=null){ appSearchGoodsPageDto.setShopId(member.getRelationShopId()); } } Page page = new Page<>(); page.setSize(appSearchGoodsPageDto.getPageSize()); page.setCurrent(appSearchGoodsPageDto.getPageNum()); List appSimpleGoodsVoList = goodsService.pageSearchActivityGoods(page,appSearchGoodsPageDto); return R.ok(page.setRecords(appSimpleGoodsVoList)); } }