提交 6f8d33ea 作者: xiaowang

新增:产品管理列表目录

上级 dc418fff
package com.mmc.pms.controller; package com.mmc.pms.controller;
import com.mmc.pms.common.ResultBody; import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.categories.vo.DirectoryInfoVO;
import com.mmc.pms.model.group.Create; import com.mmc.pms.model.group.Create;
import com.mmc.pms.model.group.Update; import com.mmc.pms.model.group.Update;
import com.mmc.pms.model.lease.vo.PriceAcquisition; import com.mmc.pms.model.lease.vo.PriceAcquisition;
...@@ -49,6 +50,13 @@ public class BackstageProductSpecController { ...@@ -49,6 +50,13 @@ public class BackstageProductSpecController {
return productSkuService.editProductSku(param); return productSkuService.editProductSku(param);
} }
@ApiOperation(value = "产品目录列表")
@GetMapping("productDirectoryList")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = DirectoryInfoVO.class)})
public ResultBody<DirectoryInfoVO> productDirectoryList() {
return productSkuService.productDirectoryList();
}
@ApiOperation(value = "产品sku分页列表") @ApiOperation(value = "产品sku分页列表")
@PostMapping("listPageProductSku") @PostMapping("listPageProductSku")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ProductSkuDTO.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ProductSkuDTO.class)})
......
...@@ -116,4 +116,6 @@ public interface ProductDao { ...@@ -116,4 +116,6 @@ public interface ProductDao {
List<ProductSpecPriceDO> getProductSpecPriceList(List<Integer> specIds); List<ProductSpecPriceDO> getProductSpecPriceList(List<Integer> specIds);
ProductSpecPriceDO getProductSpecPriceById(Integer id); ProductSpecPriceDO getProductSpecPriceById(Integer id);
List<DirectoryDO> productDirectoryList();
} }
...@@ -15,30 +15,34 @@ import java.io.Serializable; ...@@ -15,30 +15,34 @@ import java.io.Serializable;
/** /**
* @Author LW * @Author LW
* @date 2023/5/25 11:25 *
* 概要: * @date 2023/5/25 11:25 概要:
*/ */
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class QueryClassifyVO implements Serializable { public class QueryClassifyVO implements Serializable {
@ApiModelProperty(value = "所属目录id") @ApiModelProperty(value = "所属目录id")
@NotNull(message = "所属目录id不能为空", groups = {Update.class, Create.class}) @NotNull(
private Integer directoryId; message = "所属目录id不能为空",
groups = {Update.class, Create.class})
private Integer directoryId;
@ApiModelProperty(value = "分类所属模块id(0:通用分类 1:作业服务分类 2:设备租赁分类 3:飞手培训分类 4:产品商城分类)") @ApiModelProperty(value = "页码", required = true)
private Integer type; @NotNull(
@ApiModelProperty(value = "页码", required = true) message = "页码不能为空",
@NotNull(message = "页码不能为空", groups = {Page.class, Freeze.class}) groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class) @Min(value = 1, groups = Page.class)
private Integer pageNo; private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true)
@NotNull(message = "每页显示数不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() { @ApiModelProperty(value = "每页显示数", required = true)
this.pageNo = (pageNo - 1) * pageSize; @NotNull(
} message = "每页显示数不能为空",
groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
} }
...@@ -11,9 +11,9 @@ import com.mmc.pms.model.sale.dto.*; ...@@ -11,9 +11,9 @@ import com.mmc.pms.model.sale.dto.*;
import com.mmc.pms.model.sale.vo.ProductSpecCPQVO; import com.mmc.pms.model.sale.vo.ProductSpecCPQVO;
import com.mmc.pms.page.PageResult; import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.ProductSkuService; import com.mmc.pms.service.ProductSkuService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -304,4 +304,16 @@ public class ProductServiceImpl implements ProductSkuService { ...@@ -304,4 +304,16 @@ public class ProductServiceImpl implements ProductSkuService {
priceAcquisition.setDay(dayRange); priceAcquisition.setDay(dayRange);
return productDao.feignGetUnitPriceByTag(priceAcquisition); return productDao.feignGetUnitPriceByTag(priceAcquisition);
} }
@Override
public ResultBody productDirectoryList() {
List<DirectoryDO> directoryList = productDao.productDirectoryList();
if (CollectionUtils.isNotEmpty(directoryList)) {
return ResultBody.success(
directoryList.stream()
.map(DirectoryDO::buildDirectoryInfoVO)
.collect(Collectors.toList()));
}
return ResultBody.success();
}
} }
...@@ -2,6 +2,7 @@ package com.mmc.pms.service; ...@@ -2,6 +2,7 @@ package com.mmc.pms.service;
import com.mmc.pms.common.ResultBody; import com.mmc.pms.common.ResultBody;
import com.mmc.pms.entity.ProductSpecPriceDO; import com.mmc.pms.entity.ProductSpecPriceDO;
import com.mmc.pms.model.categories.vo.DirectoryInfoVO;
import com.mmc.pms.model.lease.vo.PriceAcquisition; import com.mmc.pms.model.lease.vo.PriceAcquisition;
import com.mmc.pms.model.qo.ProductSkuQO; import com.mmc.pms.model.qo.ProductSkuQO;
import com.mmc.pms.model.sale.dto.ProductSkuVO; import com.mmc.pms.model.sale.dto.ProductSkuVO;
...@@ -46,4 +47,6 @@ public interface ProductSkuService { ...@@ -46,4 +47,6 @@ public interface ProductSkuService {
ResultBody removeProductSpec(Integer id); ResultBody removeProductSpec(Integer id);
BigDecimal feignGetUnitPriceByTag(PriceAcquisition priceAcquisition); BigDecimal feignGetUnitPriceByTag(PriceAcquisition priceAcquisition);
ResultBody<DirectoryInfoVO> productDirectoryList();
} }
...@@ -148,7 +148,6 @@ ...@@ -148,7 +148,6 @@
FROM categories FROM categories
WHERE is_deleted = 0 WHERE is_deleted = 0
AND directory_id = #{directoryId} AND directory_id = #{directoryId}
AND type = #{type}
ORDER BY sort asc ORDER BY sort asc
LIMIT #{pageNo}, #{pageSize} LIMIT #{pageNo}, #{pageSize}
</select> </select>
...@@ -157,7 +156,6 @@ ...@@ -157,7 +156,6 @@
FROM categories FROM categories
WHERE is_deleted = 0 WHERE is_deleted = 0
AND directory_id = #{directoryId} AND directory_id = #{directoryId}
AND `type` = #{type}
</select> </select>
<select id="getDirectoryList" resultType="com.mmc.pms.entity.DirectoryDO"> <select id="getDirectoryList" resultType="com.mmc.pms.entity.DirectoryDO">
SELECT d.id, SELECT d.id,
......
...@@ -511,4 +511,14 @@ ...@@ -511,4 +511,14 @@
AND cooperation_tag = 0 AND cooperation_tag = 0
AND type = 1 AND type = 1
</select> </select>
<select id="productDirectoryList" resultType="com.mmc.pms.entity.DirectoryDO">
SELECT id,
directory_name,
`type`
FROM `directory`
WHERE type IN (2, 4)
OR (`type` = 0 AND `show` LIKE '%2%')
OR (`type` = 0 AND `show` LIKE '%4%')
AND is_deleted = 0
</select>
</mapper> </mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论