创建直播商品VO,显示直播商品的库存以及店铺名称
This commit is contained in:
parent
99b9e8cf91
commit
c58524cf94
@ -61,6 +61,4 @@ public class Commodity extends BaseEntity {
|
|||||||
@ApiModelProperty(value = "规格ID")
|
@ApiModelProperty(value = "规格ID")
|
||||||
private String skuId;
|
private String skuId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "SKU库存")
|
|
||||||
private Integer quantity;
|
|
||||||
}
|
}
|
||||||
|
@ -11,9 +11,12 @@ import lombok.Data;
|
|||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class CommodityDTO {
|
public class CommodityDTO {
|
||||||
|
//商品ID
|
||||||
private Integer goods_id;
|
private Integer goods_id;
|
||||||
|
//商品名称
|
||||||
private String name;
|
private String name;
|
||||||
|
//地址
|
||||||
private String url;
|
private String url;
|
||||||
|
//审核状态
|
||||||
private Integer audit_status;
|
private Integer audit_status;
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,21 @@
|
|||||||
|
package cn.lili.modules.broadcast.entity.vos;
|
||||||
|
|
||||||
|
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 直播商品VO
|
||||||
|
*
|
||||||
|
* @author Bulbasaur
|
||||||
|
* @date: 2021/5/26 6:09 下午
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class CommodityVO extends Commodity {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "SKU库存")
|
||||||
|
private Integer quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "店铺名称")
|
||||||
|
private String storeName;
|
||||||
|
}
|
@ -2,7 +2,12 @@ package cn.lili.modules.broadcast.mapper;
|
|||||||
|
|
||||||
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
||||||
import cn.lili.modules.broadcast.entity.dto.SimpleCommodity;
|
import cn.lili.modules.broadcast.entity.dto.SimpleCommodity;
|
||||||
|
import cn.lili.modules.broadcast.entity.vos.CommodityVO;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.apache.ibatis.annotations.Select;
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -18,10 +23,13 @@ public interface CommodityMapper extends BaseMapper<Commodity> {
|
|||||||
@Select("SELECT live_goods_id FROM li_commodity WHERE audit_status='0' or audit_status='1'")
|
@Select("SELECT live_goods_id FROM li_commodity WHERE audit_status='0' or audit_status='1'")
|
||||||
List<String> getAuditCommodity();
|
List<String> getAuditCommodity();
|
||||||
|
|
||||||
@Select("SELECT * FROM li_commodity c WINNER JOIN li_studio_commodity sc ON sc.goods_id = c.live_goods_id WHERE sc.room_id =#{roomId}")
|
@Select("SELECT * FROM li_commodity c INNER JOIN li_studio_commodity sc ON sc.goods_id = c.live_goods_id WHERE sc.room_id =#{roomId}")
|
||||||
List<Commodity> getCommodityByRoomId(Integer roomId);
|
List<Commodity> getCommodityByRoomId(Integer roomId);
|
||||||
|
|
||||||
@Select("SELECT name,goods_image FROM li_commodity c WINNER JOIN li_studio_commodity sc ON sc.goods_id = c.live_goods_id WHERE sc.room_id =#{roomId}")
|
@Select("SELECT name,goods_image FROM li_commodity c INNER JOIN li_studio_commodity sc ON sc.goods_id = c.live_goods_id WHERE sc.room_id =#{roomId}")
|
||||||
List<SimpleCommodity> getSimpleCommodityByRoomId(Integer roomId);
|
List<SimpleCommodity> getSimpleCommodityByRoomId(Integer roomId);
|
||||||
|
|
||||||
|
@Select("SELECT c.*,gs.quantity,s.store_name FROM li_commodity c INNER JOIN li_goods_sku gs ON c.sku_id = gs.id INNER JOIN li_store s ON s.id=c.store_id ${ew.customSqlSegment}")
|
||||||
|
IPage<CommodityVO> commodityVOList(IPage<CommodityVO> page, @Param(Constants.WRAPPER) Wrapper<CommodityVO> queryWrapper);
|
||||||
|
|
||||||
}
|
}
|
@ -2,6 +2,7 @@ package cn.lili.modules.broadcast.service;
|
|||||||
|
|
||||||
import cn.lili.common.vo.PageVO;
|
import cn.lili.common.vo.PageVO;
|
||||||
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
||||||
|
import cn.lili.modules.broadcast.entity.vos.CommodityVO;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
@ -40,5 +41,5 @@ public interface CommodityService extends IService<Commodity> {
|
|||||||
* @param auditStatus 审核状态
|
* @param auditStatus 审核状态
|
||||||
* @return 直播商品分页
|
* @return 直播商品分页
|
||||||
*/
|
*/
|
||||||
IPage<Commodity> commodityList(PageVO pageVO,String name,String auditStatus);
|
IPage<CommodityVO> commodityList(PageVO pageVO, String name, String auditStatus);
|
||||||
}
|
}
|
||||||
|
@ -6,10 +6,12 @@ import cn.hutool.json.JSONObject;
|
|||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import cn.lili.common.exception.ServiceException;
|
import cn.lili.common.exception.ServiceException;
|
||||||
import cn.lili.common.security.context.UserContext;
|
import cn.lili.common.security.context.UserContext;
|
||||||
|
import cn.lili.common.security.enums.UserEnums;
|
||||||
import cn.lili.common.utils.PageUtil;
|
import cn.lili.common.utils.PageUtil;
|
||||||
import cn.lili.common.vo.PageVO;
|
import cn.lili.common.vo.PageVO;
|
||||||
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
||||||
import cn.lili.modules.broadcast.entity.dto.CommodityDTO;
|
import cn.lili.modules.broadcast.entity.dto.CommodityDTO;
|
||||||
|
import cn.lili.modules.broadcast.entity.vos.CommodityVO;
|
||||||
import cn.lili.modules.broadcast.mapper.CommodityMapper;
|
import cn.lili.modules.broadcast.mapper.CommodityMapper;
|
||||||
import cn.lili.modules.broadcast.service.CommodityService;
|
import cn.lili.modules.broadcast.service.CommodityService;
|
||||||
import cn.lili.modules.broadcast.util.WechatLivePlayerUtil;
|
import cn.lili.modules.broadcast.util.WechatLivePlayerUtil;
|
||||||
@ -17,6 +19,7 @@ import cn.lili.modules.goods.entity.dos.GoodsSku;
|
|||||||
import cn.lili.modules.goods.entity.enums.GoodsAuthEnum;
|
import cn.lili.modules.goods.entity.enums.GoodsAuthEnum;
|
||||||
import cn.lili.modules.goods.service.GoodsSkuService;
|
import cn.lili.modules.goods.service.GoodsSkuService;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
@ -55,6 +58,7 @@ public class CommodityServiceImpl extends ServiceImpl<CommodityMapper, Commodity
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void checkCommodity(Commodity commodity) {
|
private void checkCommodity(Commodity commodity) {
|
||||||
//商品是否审核通过
|
//商品是否审核通过
|
||||||
GoodsSku goodsSku = goodsSkuService.getById(commodity.getSkuId());
|
GoodsSku goodsSku = goodsSkuService.getById(commodity.getSkuId());
|
||||||
@ -66,6 +70,7 @@ public class CommodityServiceImpl extends ServiceImpl<CommodityMapper, Commodity
|
|||||||
throw new ServiceException(goodsSku.getGoodsName() + " 已添加规格商品,无法重复增加");
|
throw new ServiceException(goodsSku.getGoodsName() + " 已添加规格商品,无法重复增加");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean deleteCommodity(String goodsId) {
|
public boolean deleteCommodity(String goodsId) {
|
||||||
JSONObject json = wechatLivePlayerUtil.deleteGoods(goodsId);
|
JSONObject json = wechatLivePlayerUtil.deleteGoods(goodsId);
|
||||||
@ -94,11 +99,10 @@ public class CommodityServiceImpl extends ServiceImpl<CommodityMapper, Commodity
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IPage<Commodity> commodityList(PageVO pageVO, String name, String auditStatus) {
|
public IPage<CommodityVO> commodityList(PageVO pageVO, String name, String auditStatus) {
|
||||||
return this.page(PageUtil.initPage(pageVO),
|
return this.baseMapper.commodityVOList(PageUtil.initPage(pageVO),
|
||||||
new LambdaQueryWrapper<Commodity>().like(name!=null,Commodity::getName,name)
|
new QueryWrapper<CommodityVO>().like(name != null, "c.name", name)
|
||||||
.eq(auditStatus!=null,Commodity::getAuditStatus,auditStatus));
|
.eq(auditStatus != null, "c.audit_status", auditStatus)
|
||||||
|
.eq(UserContext.getCurrentUser().getRole().equals(UserEnums.STORE), "c.store_id", UserContext.getCurrentUser().getStoreId()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,7 @@ import cn.lili.common.exception.ServiceException;
|
|||||||
import cn.lili.common.vo.PageVO;
|
import cn.lili.common.vo.PageVO;
|
||||||
import cn.lili.common.vo.ResultMessage;
|
import cn.lili.common.vo.ResultMessage;
|
||||||
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
import cn.lili.modules.broadcast.entity.dos.Commodity;
|
||||||
|
import cn.lili.modules.broadcast.entity.vos.CommodityVO;
|
||||||
import cn.lili.modules.broadcast.service.CommodityService;
|
import cn.lili.modules.broadcast.service.CommodityService;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@ -37,7 +38,7 @@ public class CommodityController {
|
|||||||
@ApiImplicitParam(name = "auditStatus", value = "直播商品状态", dataType = "String", paramType = "query")
|
@ApiImplicitParam(name = "auditStatus", value = "直播商品状态", dataType = "String", paramType = "query")
|
||||||
})
|
})
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public ResultMessage<IPage<Commodity>> page(String auditStatus, String name, PageVO pageVO) {
|
public ResultMessage<IPage<CommodityVO>> page(String auditStatus, String name, PageVO pageVO) {
|
||||||
return ResultUtil.data(commodityService.commodityList(pageVO, name, auditStatus));
|
return ResultUtil.data(commodityService.commodityList(pageVO, name, auditStatus));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user