Commit 335bd010 by huluobin

分页查询款式列表

parent 70a35a32
......@@ -3,11 +3,8 @@ package com.gogirl.application.product.serve;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gogirl.domain.product.serve.BaseFeatures;
import com.gogirl.domain.product.serve.BaseProduce;
import com.gogirl.domain.product.serve.BaseServe;
import java.util.List;
import com.gogirl.shared.product.serve.QueryProducePageRequest;
/**
* Created by yinyong on 2018/8/23.
......@@ -22,17 +19,7 @@ public interface BaseProduceService extends IService<BaseProduce> {
* @return 款式详情
*/
BaseProduce getProduceForDetail(Integer id);
/**
* 分页查询款式列表
*
* @param featuresId
* @param featuresId 款式特性id
* @param colorSystemId
* @param pageNum
* @param pageSize
* @return
*/
IPage<BaseProduce> queryProducePage(Integer featuresId, Integer serveTypeId, Integer colorSystemId, Integer pageNum, Integer pageSize);
/**
* 点赞款式
......@@ -40,4 +27,12 @@ public interface BaseProduceService extends IService<BaseProduce> {
* @param produceId
*/
void praiseProduce(Integer produceId);
/**
* 分页查询款式列表
*
* @param request
* @return
*/
IPage<BaseProduce> queryProducePage(QueryProducePageRequest request);
}
......@@ -8,7 +8,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gogirl.application.product.serve.BaseProduceService;
import com.gogirl.domain.product.serve.BaseFeatures;
import com.gogirl.domain.product.serve.BaseProduce;
import com.gogirl.domain.product.serve.BaseServe;
import com.gogirl.domain.product.serve.PraiseRecord;
import com.gogirl.infrastructure.common.exception.RRException;
import com.gogirl.infrastructure.common.util.ListUtil;
......@@ -16,6 +15,7 @@ import com.gogirl.infrastructure.mapper.product.serve.BaseFeaturesMapper;
import com.gogirl.infrastructure.mapper.product.serve.BaseProduceMapper;
import com.gogirl.infrastructure.mapper.product.serve.PraiseRecordMapper;
import com.gogirl.infrastructure.util.SessionUtils;
import com.gogirl.shared.product.serve.QueryProducePageRequest;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
......@@ -39,13 +39,15 @@ public class BaseProduceServiceImpl extends ServiceImpl<BaseProduceMapper, BaseP
@Override
public IPage<BaseProduce> queryProducePage(Integer featuresId, Integer serveTypeId, Integer colorSystemId, Integer pageNum, Integer pageSize) {
BaseFeatures baseFeatures = baseFeaturesMapper.selectById(featuresId);
IPage<BaseProduce> page = new Page<>(pageNum, pageSize);
public IPage<BaseProduce> queryProducePage(QueryProducePageRequest request) {
BaseFeatures baseFeatures = baseFeaturesMapper.selectById(request.getLabelId());
IPage<BaseProduce> page = new Page<>(request.getPageNum(), request.getPageSize());
//排序条件 1-saleNum 2-index_sort
Integer sort = baseFeatures != null && baseFeatures.getName().equals("热销款") ? 1 : 2;
page = baseProduceMapper.queryProducePage(page, colorSystemId, featuresId, serveTypeId, sort);
request.setSort(sort);
page = baseProduceMapper.queryProducePage(page, request);
List<Integer> produceIds = page.getRecords().stream().map(BaseProduce::getId).collect(Collectors.toList());
......
......@@ -8,10 +8,11 @@ import lombok.Data;
*/
@Data
public class PageRequest {
/**
* 当前页
*/
protected int pageIndex = 1;
protected int pageNum = 1;
/**
* 每页大小
......
......@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.gogirl.domain.product.serve.BaseProduce;
import com.gogirl.shared.product.CalcServiceDuration;
import com.gogirl.shared.product.serve.QueryProducePageRequest;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
......@@ -30,16 +31,11 @@ public interface BaseProduceMapper extends BaseMapper<BaseProduce> {
* 分页查询款式
*
* @param page
* @param featuresId
* @param serveTypeId
* @param sort
* @param request
* @return
*/
IPage<BaseProduce> queryProducePage(IPage<BaseProduce> page,
@Param("colorSystemId") Integer colorSystemId,
@Param("featuresId") Integer featuresId,
@Param("serveTypeId") Integer serveTypeId,
@Param("sort") Integer sort);
@Param("request") QueryProducePageRequest request);
/**
* 同步款式服务类型id
......
......@@ -5,6 +5,7 @@ import com.gogirl.application.product.serve.BaseProduceService;
import com.gogirl.domain.product.serve.BaseProduce;
import com.gogirl.infrastructure.common.base.JsonResult;
import com.gogirl.shared.product.QueryProduceDetailResp;
import com.gogirl.shared.product.serve.QueryProducePageRequest;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
......@@ -21,13 +22,8 @@ public class ProduceController {
@GetMapping("/customer/serve/no_queryProducePage")
@ApiOperation(value = "款式列表")
public JsonResult<IPage<BaseProduce>> queryProducePage(@RequestParam String token,
@RequestParam(required = false) Integer labelId,
@RequestParam(required = false) Integer serveTypeId,
@RequestParam(required = false) Integer colorSystemId,
@RequestParam(required = false, defaultValue = "1") Integer pageNum,
@RequestParam(required = false, defaultValue = "10") Integer pageSize) {
IPage<BaseProduce> page = baseProduceService.queryProducePage(labelId, serveTypeId, colorSystemId, pageNum, pageSize);
public JsonResult<IPage<BaseProduce>> queryProducePage(@RequestBody QueryProducePageRequest request) {
IPage<BaseProduce> page = baseProduceService.queryProducePage(request);
return JsonResult.success(page);
}
......
package com.gogirl.shared.product.serve;
import com.gogirl.infrastructure.common.base.PageRequest;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author robbendev
* @since 2020/7/3 11:57 上午
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class QueryProducePageRequest extends PageRequest {
@ApiModelProperty("标签id")
private Integer labelId;
@ApiModelProperty("服务类型id")
private Integer serveTypeId;
@ApiModelProperty("色系id")
private Integer colorSystemId;
private Integer serveId;
private Integer sort;
}
......@@ -101,21 +101,24 @@
<select id="queryProducePage" resultType="com.gogirl.domain.product.serve.BaseProduce">
select * from base_produce t1
<if test="featuresId !=null ">
<if test="request.featuresId !=null ">
left join features_mapping t2 on t1.id =t2.data_id and t2.data_type =2
</if>
<if test="colorSystemId !=null ">
<if test="request.colorSystemId !=null ">
left join color_system_product_map t3 on t1.id = t3.product_id
</if>
where t1.has_index_show =1
<if test="featuresId !=null ">
and t2.features_id=#{featuresId}
<if test="request.featuresId !=null ">
and t2.features_id=#{request.featuresId}
</if>
<if test="serveTypeId !=null ">
and t1.serve_type_id = #{serveTypeId}
<if test="request.serveTypeId !=null ">
and t1.serve_type_id = #{request.serveTypeId}
</if>
<if test="colorSystemId !=null ">
and t3.color_system_id =#{colorSystemId}
<if test="request.colorSystemId !=null ">
and t3.color_system_id =#{request.colorSystemId}
</if>
<if test="request.serveId !=null ">
and t1.service_id =#{request.serveId}
</if>
and t1.`status` =1
<choose>
......@@ -128,9 +131,10 @@
</choose>
</select>
<select id="queryProduceServiceDuration" resultType="com.gogirl.shared.product.CalcServiceDuration">
SELECT t1.bargain_price,t1.`name` ,t1.service_duration ,t1.id,t2.quantity,t3.price,t3.duration from base_produce t1
LEFT JOIN produce_technique_sku t2 on t1.id= t2.produce_id
LEFT JOIN technique_sku t3 on t2.technique_sku_id = t3.id
SELECT t1.bargain_price, t1.`name`, t1.service_duration, t1.id, t2.quantity, t3.price, t3.duration
from base_produce t1
LEFT JOIN produce_technique_sku t2 on t1.id = t2.produce_id
LEFT JOIN technique_sku t3 on t2.technique_sku_id = t3.id
where t3.duration is not null
</select>
......
......@@ -159,9 +159,6 @@
</sql>
<select id="listServeForPage" resultType="com.gogirl.domain.product.serve.BaseServe">
select
ser.*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment