refactor(goods):优化商品查询逻辑并调整权限注解
- 移除了 AppProductController 中不必要的具体实现类引用 - 修改了商品查询方法名,统一为 getProduct - 在 AppSearchController 中更新了商品查询调用 -为 AppVlogController 的 indexList 方法添加了 @SaIgnore 注解 -优化了 ProductMapper.xml 中的查询条件,增加租户状态过滤 - 格式化了 Java 代码中的空格和括号问题 - 移除了冗余的注释和无用的方法定义
This commit is contained in:
parent
312598220c
commit
85dbab8f22
@ -1,13 +1,10 @@
|
||||
package org.dromara.app;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.goods.convert.ProductConvert;
|
||||
import com.wzj.soopin.goods.domain.bo.ProductBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductVO;
|
||||
import com.wzj.soopin.goods.service.ProductService;
|
||||
import com.wzj.soopin.goods.service.impl.ProductServiceImpl;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@ -20,7 +17,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
@RequiredArgsConstructor
|
||||
public class AppProductController {
|
||||
|
||||
private final ProductServiceImpl service;
|
||||
private final ProductService service;
|
||||
private final ProductConvert convert;
|
||||
private final ProductService productService;
|
||||
|
||||
|
@ -59,7 +59,7 @@ public class AppSearchController {
|
||||
} else if (Objects.nonNull(searchBO) && Objects.nonNull(searchBO.getType()) && (SearchTypeEnum.PRODUCT.type.intValue() == searchBO.getType().intValue())) {
|
||||
ProductBo productBo = new ProductBo();
|
||||
productBo.setNameLike(searchBO.getTitle());
|
||||
pages = productService.getProductPageList(productBo, page);
|
||||
pages = productService.getProduct(page, productBo);
|
||||
// 用户检索信息
|
||||
} else if (Objects.nonNull(searchBO) && Objects.nonNull(searchBO.getType()) && (SearchTypeEnum.MEMBER.type.intValue() == searchBO.getType().intValue())) {
|
||||
MemberBO memberBO = new MemberBO();
|
||||
|
@ -1,5 +1,6 @@
|
||||
package org.dromara.app;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaIgnore;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.content.domain.bo.*;
|
||||
import com.wzj.soopin.content.domain.vo.IndexVlogVO;
|
||||
@ -36,8 +37,8 @@ public class AppVlogController {
|
||||
|
||||
@Operation(summary = "首页视频列表")
|
||||
@PostMapping("/indexList")
|
||||
@SaIgnore
|
||||
public R<Page<IndexVlogVO>> indexList(@RequestBody IndexListBO bo, @RequestBody Page page) {
|
||||
|
||||
Page<IndexVlogVO> pages = pullService.pullFromMq(page);
|
||||
return R.ok(pages);
|
||||
}
|
||||
@ -69,7 +70,7 @@ public class AppVlogController {
|
||||
public R<Page<IndexVlogVO>> myPrivateList(@RequestBody MyListBO bo, @RequestBody Page page) {
|
||||
LoginUser loginUser = LoginHelper.getLoginUser();
|
||||
if (loginUser == null) {
|
||||
return R.notLogin();
|
||||
return R.notLogin();
|
||||
}
|
||||
bo.setUserId(String.valueOf(loginUser.getUserId()));
|
||||
Page<IndexVlogVO> pages = vlogService.queryMyVlogList(bo, page);
|
||||
@ -133,12 +134,11 @@ public class AppVlogController {
|
||||
String userId = String.valueOf(loginUser.getUserId());
|
||||
String vlogId = vlogBO.getId();
|
||||
|
||||
vlogService.userLikeVlog(userId,vlogId );
|
||||
vlogService.userLikeVlog(userId, vlogId);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Operation(summary = "取消点赞")
|
||||
@PostMapping("/unlike")
|
||||
public R<Void> unlike(@RequestBody VlogBO vlogBO) {
|
||||
@ -167,12 +167,12 @@ public class AppVlogController {
|
||||
@Operation(summary = "视频列表")
|
||||
@PostMapping("/page")
|
||||
public R<Page<IndexVlogVO>> page(@RequestBody VlogBO vlogBO) {
|
||||
if(vlogBO.getMemberId()==null){
|
||||
if (vlogBO.getMemberId() == null) {
|
||||
throw new ServiceException("用户id不能为空");
|
||||
}
|
||||
vlogBO.setStatus(VlogStatusEnum.APPROVED.type);
|
||||
vlogBO.setIsPrivate(YesOrNo.NO.type);
|
||||
return R.ok(vlogService.getIndexVlogList(vlogBO,vlogBO.getPage()));
|
||||
return R.ok(vlogService.getIndexVlogList(vlogBO, vlogBO.getPage()));
|
||||
}
|
||||
|
||||
|
||||
|
@ -25,7 +25,6 @@ public interface ProductMapper extends BaseMapper<Product> {
|
||||
Page<ProductVO> getlist(@Param("page") Page<Product> page, @Param("query") ProductBo query);
|
||||
|
||||
|
||||
|
||||
@Select("SELECT " +
|
||||
"name, " +
|
||||
"sales, " +
|
||||
|
@ -13,14 +13,7 @@ public interface ProductService extends IService<Product> {
|
||||
|
||||
IPage<ProductVO> getRecommendPage(Page<Product> page);
|
||||
|
||||
/**
|
||||
* 不带租户的获取商品信息
|
||||
*
|
||||
* @param query
|
||||
* @param page
|
||||
* @return
|
||||
*/
|
||||
IPage<ProductVO> getProductPageList(ProductBo query, Page<Product> page);
|
||||
|
||||
ProductVO selectById(Long id);
|
||||
|
||||
IPage<ProductVO> getProduct(Page<Product> page, ProductBo query);
|
||||
}
|
||||
|
@ -98,17 +98,4 @@ public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> impl
|
||||
query.setPublishStatus(Constants.PublishStatus.GROUNDING);
|
||||
return TenantHelper.ignore(() -> productMapper.getProduct(page, query));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 不带租户的获取商品信息
|
||||
*
|
||||
* @param query
|
||||
* @param page
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage<ProductVO> getProductPageList(ProductBo query, Page<Product> page) {
|
||||
return TenantHelper.ignore(() -> productMapper.getProduct(page, query));
|
||||
}
|
||||
}
|
||||
|
@ -86,20 +86,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
pms_product p
|
||||
LEFT JOIN
|
||||
sys_tenant t ON p.tenant_id = t.tenant_id
|
||||
<where>
|
||||
<if test="query.nameLike != null and query.nameLike != ''">
|
||||
AND p.name LIKE CONCAT('%', #{query.nameLike}, '%')
|
||||
</if>
|
||||
<if test="query.publishStatus != null">
|
||||
AND p.publish_status = #{query.publishStatus}
|
||||
</if>
|
||||
<if test="query.categoryIds != null and query.categoryIds.size() > 0">
|
||||
AND p.category_id IN
|
||||
<foreach collection="query.categoryIds" item="categoryId" open="(" separator="," close=")">
|
||||
#{categoryId}
|
||||
</foreach>
|
||||
</if>
|
||||
</where>
|
||||
WHERE p.del_flag = 0
|
||||
AND t.status = 0
|
||||
<if test="query.nameLike != null and query.nameLike != ''">
|
||||
AND (p.`name` LIKE CONCAT('%', #{query.nameLike}, '%') OR t.store_name LIKE CONCAT('%', #{query.nameLike}, '%'))
|
||||
</if>
|
||||
<if test="query.publishStatus != null">
|
||||
AND p.publish_status = #{query.publishStatus}
|
||||
</if>
|
||||
<if test="query.categoryIds != null and query.categoryIds.size() > 0">
|
||||
AND p.category_id IN
|
||||
<foreach collection="query.categoryIds" item="categoryId" open="(" separator="," close=")">
|
||||
#{categoryId}
|
||||
</foreach>
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<resultMap id="ProductWithSkusResultMap" type="ProductVO">
|
||||
|
Loading…
x
Reference in New Issue
Block a user