BUG
jiangqs
2023-04-24 aa2eae024f8f251c8e2b9eace5351dea7e315ed7
hrt-modules/hrt-system/src/main/java/com/hrt/system/service/impl/GoodsServiceImpl.java
@@ -5,14 +5,17 @@
import com.hrt.system.domain.dto.AppGoodsInfoGetDto;
import com.hrt.system.domain.dto.AppSearchGoodsPageDto;
import com.hrt.system.domain.dto.AppShopGoodsPageDto;
import com.hrt.system.domain.poji.activity.ActivityGoods;
import com.hrt.system.domain.poji.goods.Goods;
import com.hrt.system.domain.poji.shop.ShopGoods;
import com.hrt.system.domain.vo.AppGoodsInfoVo;
import com.hrt.system.domain.vo.AppSimpleActivityGoodsVo;
import com.hrt.system.domain.vo.AppSimpleGoodsVo;
import com.hrt.system.mapper.goods.GoodsMapper;
import com.hrt.system.service.activity.ActivityGoodsService;
import com.hrt.system.service.goods.GoodsService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hrt.system.service.shop.ShopGoodsService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -32,6 +35,12 @@
    @Resource
    private GoodsMapper goodsMapper;
    @Resource
    private ActivityGoodsService activityGoodsService;
    @Resource
    private ShopGoodsService shopGoodsService;
    /**
     * 获取推荐商品列表
@@ -103,8 +112,31 @@
        AppGoodsInfoVo appGoodsInfoVo = new AppGoodsInfoVo();
        Goods goods = this.getById(appGoodsInfoGetDto.getId());
        BeanUtils.copyProperties(goods, appGoodsInfoVo);
        //商户定制价格
        ShopGoods shopGoods = shopGoodsService.getByShopIdAndGoodsId(appGoodsInfoGetDto.getShopId(),goods.getGoodsId());
        if(shopGoods!=null){
            appGoodsInfoVo.setSalesPrice(shopGoods.getSalesPrice());
            appGoodsInfoVo.setSalesNum(shopGoods.getServiceNum());
        }
        //活动商品判断
        if(appGoodsInfoGetDto.getActivityFlag()==1){
            ActivityGoods activityGoods = activityGoodsService.getByGoodsId(goods.getGoodsId());
            //原价取较大值
            if(shopGoods!=null&&goods.getSalesPrice().compareTo(shopGoods.getSalesPrice())>0){
                appGoodsInfoVo.setSalesPrice(goods.getSalesPrice());
            }
            appGoodsInfoVo.setActivityFlag(1);
            appGoodsInfoVo.setActivityPrice(activityGoods.getActivityPrice());
            appGoodsInfoVo.setSalesNum(activityGoods.getSalesNumber());
            appGoodsInfoVo.setActivityDeadline(activityGoods.getActivityDeadline());
            //售罄判断
            if(activityGoods.getActivityNumber()==activityGoods.getSalesNumber()){
                appGoodsInfoVo.setSellOutFlag(1);
            }else{
                appGoodsInfoVo.setSellOutFlag(0);
            }
        }else{
            appGoodsInfoVo.setActivityFlag(0);
        }
        return appGoodsInfoVo;
    }