Commit 6ffdc77a by huluobin

update

parent bd702d87
......@@ -20,6 +20,7 @@ public interface BaseFeaturesService extends IService<BaseFeatures> {
* 查询款式标签
*
* @return
* @param serveTypeId
*/
List<ProduceFeaturesDTO> queryProduceFeatures();
List<ProduceFeaturesDTO> queryProduceFeatures(Integer serveTypeId);
}
......@@ -36,16 +36,16 @@ public class BaseFeaturesServiceImpl extends ServiceImpl<BaseFeaturesMapper, Bas
}
@Override
public List<ProduceFeaturesDTO> queryProduceFeatures() {
List<ProduceFeaturesDTO> list = baseFeaturesMapper.queryProduceFeatures()
public List<ProduceFeaturesDTO> queryProduceFeatures(Integer serveTypeId) {
List<ProduceFeaturesDTO> list = baseFeaturesMapper.queryProduceFeatures(serveTypeId)
.stream()
.map(baseFeatures -> {
ProduceFeaturesDTO produceFeaturesDTO = new ProduceFeaturesDTO();
produceFeaturesDTO.setId(baseFeatures.getId());
produceFeaturesDTO.setLabelEnName(baseFeatures.getEnName());
produceFeaturesDTO.setLabelName(baseFeatures.getName());
produceFeaturesDTO.setPicturePath(baseFeatures.getPicturePath());
return produceFeaturesDTO;
ProduceFeaturesDTO produceLabelDTO = new ProduceFeaturesDTO();
produceLabelDTO.setId(baseFeatures.getId());
produceLabelDTO.setLabelEnName(baseFeatures.getEnName());
produceLabelDTO.setLabelName(baseFeatures.getName());
produceLabelDTO.setPicturePath(baseFeatures.getPicturePath());
return produceLabelDTO;
})
.collect(Collectors.toList());
return list;
......
......@@ -52,6 +52,7 @@ public class BaseProduceServiceImpl extends ServiceImpl<BaseProduceMapper, BaseP
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);
//排序条件 1-saleNum 2-index_sort
Integer sort = baseFeatures != null && baseFeatures.getName().equals("热销款") ? 1 : 2;
page = baseProduceMapper.queryProducePage(page, featuresId, serveTypeId, sort);
......
......@@ -9,7 +9,7 @@ import java.util.List;
public interface BaseFeaturesMapper extends BaseMapper<BaseFeatures> {
List<BaseFeatures> queryProduceFeatures();
List<BaseFeatures> queryProduceFeatures(@Param("serveTypeId") Integer serveTypeId);
List<BaseFeatures> queryServeFeatures(@Param("typeId") Integer typeId);
}
......
......@@ -13,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.stream.Collectors;
@RestController
@AllArgsConstructor
......@@ -33,8 +32,8 @@ public class LabelController {
@ApiOperation("查询首页款式标签")
@GetMapping("/customer/label/no_queryProduceLabel")
public JsonResult<List<ProduceFeaturesDTO>> queryProduceFeatures() {
List<ProduceFeaturesDTO> produceFeaturesDTOList = baseFeaturesService.queryProduceFeatures();
public JsonResult<List<ProduceFeaturesDTO>> queryProduceFeatures(@RequestParam(required = false) Integer serveTypeId) {
List<ProduceFeaturesDTO> produceFeaturesDTOList = baseFeaturesService.queryProduceFeatures(serveTypeId);
return JsonResult.success(produceFeaturesDTOList);
}
......
......@@ -2,31 +2,38 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.gogirl.infrastructure.mapper.product.serve.BaseFeaturesMapper">
<select id="queryProduceFeatures" resultType="com.gogirl.domain.product.serve.BaseFeatures">
SELECT t1.*
from base_features t1
INNER JOIN features_mapping t2 on t1.id = t2.features_id
LEFT JOIN base_serve t3 on t2.data_id = t3.id
where t2.data_type = 2
GROUP BY t1.id
HAVING count(t1.id) > 0
and t1.has_index_show = 1
order by t1.index_sort ASC
</select>
<select id="queryServeFeatures" resultType="com.gogirl.domain.product.serve.BaseFeatures">
SELECT t1.*
from base_features t1
INNER JOIN features_mapping t2 on t1.id = t2.features_id
LEFT JOIN base_serve t3 on t2.data_id = t3.id
where t2.data_type = 1
LEFT JOIN base_produce t3 on t2.data_id = t3.id
left join base_serve bs on t3.service_id = bs.id
where t2.data_type = 2
<if test="serveTypeId != null">
and bs.type_id=#{serveTypeId}
</if>
and t1.has_index_show = 1
and t3.has_purchase_show = 1
<if test="typeId != null">
and t3.type_id = #{typeId}
GROUP BY t1.id
HAVING count(t1.id) > 0
order by t1.index_sort asc
</select>
<select id="queryProduceFeatures" resultType="com.gogirl.domain.product.serve.BaseFeatures">
SELECT t.*
from (
SELECT t1.*, count(t1.id) as counts
from base_features t1
INNER JOIN features_mapping t2 on t1.id = t2.features_id
LEFT JOIN base_produce t3 on t2.data_id = t3.id
left join base_serve bs on t3.service_id = bs.id
where t2.data_type = 2
<if test="serveTypeId != null">
and bs.type_id=#{serveTypeId}
</if>
GROUP BY t1.id
HAVING count(t1.id) >0
order by t1.index_sort ASC
) t
where t.counts > 0
and t.has_index_show = 1
order by index_sort ASC
</select>
</mapper>
\ No newline at end of file
......@@ -138,7 +138,7 @@
<if test="featuresId !=null ">
left join features_mapping t2 on t1.id =t2.data_id and t2.data_type =2
</if>
where has_index_show =1
where t1.has_index_show =1
<if test="featuresId !=null ">
and t2.features_id=#{featuresId}
</if>
......
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