Commit 774264026d20a539dc2957d545adfd98a9d1257a
1 parent
15d6ca18
feat(wms):优化 onlyPositiveQuantity 只查询库存非空的处理。
Showing
2 changed files
with
7 additions
and
0 deletions
yudao-module-wms/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/inventory/vo/WmsInventoryPageReqVO.java
| @@ -48,4 +48,7 @@ public class WmsInventoryPageReqVO extends PageParam { | @@ -48,4 +48,7 @@ public class WmsInventoryPageReqVO extends PageParam { | ||
| 48 | @Schema(description = "最小库存数量", example = "0.01") | 48 | @Schema(description = "最小库存数量", example = "0.01") |
| 49 | private BigDecimal minQuantity; | 49 | private BigDecimal minQuantity; |
| 50 | 50 | ||
| 51 | + @Schema(description = "是否只查询正库存", example = "true") | ||
| 52 | + private Boolean onlyPositiveQuantity; | ||
| 53 | + | ||
| 51 | } | 54 | } |
yudao-module-wms/src/main/java/cn/iocoder/yudao/module/wms/dal/mysql/inventory/WmsInventoryMapper.java
| @@ -12,6 +12,7 @@ import cn.iocoder.yudao.module.wms.dal.dataobject.md.item.WmsItemDO; | @@ -12,6 +12,7 @@ import cn.iocoder.yudao.module.wms.dal.dataobject.md.item.WmsItemDO; | ||
| 12 | import cn.iocoder.yudao.module.wms.dal.dataobject.md.item.WmsItemSkuDO; | 12 | import cn.iocoder.yudao.module.wms.dal.dataobject.md.item.WmsItemSkuDO; |
| 13 | import org.apache.ibatis.annotations.Mapper; | 13 | import org.apache.ibatis.annotations.Mapper; |
| 14 | 14 | ||
| 15 | +import java.math.BigDecimal; | ||
| 15 | import java.util.Collection; | 16 | import java.util.Collection; |
| 16 | import java.util.Collections; | 17 | import java.util.Collections; |
| 17 | import java.util.List; | 18 | import java.util.List; |
| @@ -36,6 +37,9 @@ public interface WmsInventoryMapper extends BaseMapperX<WmsInventoryDO> { | @@ -36,6 +37,9 @@ public interface WmsInventoryMapper extends BaseMapperX<WmsInventoryDO> { | ||
| 36 | .likeIfPresent(WmsItemSkuDO::getName, reqVO.getSkuName()) | 37 | .likeIfPresent(WmsItemSkuDO::getName, reqVO.getSkuName()) |
| 37 | .eqIfPresent(WmsInventoryDO::getWarehouseId, reqVO.getWarehouseId()) | 38 | .eqIfPresent(WmsInventoryDO::getWarehouseId, reqVO.getWarehouseId()) |
| 38 | .geIfPresent(WmsInventoryDO::getQuantity, reqVO.getMinQuantity()); | 39 | .geIfPresent(WmsInventoryDO::getQuantity, reqVO.getMinQuantity()); |
| 40 | + if (Boolean.TRUE.equals(reqVO.getOnlyPositiveQuantity())) { | ||
| 41 | + query.gt(WmsInventoryDO::getQuantity, BigDecimal.ZERO); | ||
| 42 | + } | ||
| 39 | appendDimensionOrder(query, reqVO.getType()); | 43 | appendDimensionOrder(query, reqVO.getType()); |
| 40 | return selectJoinPage(reqVO, WmsInventoryDO.class, query); | 44 | return selectJoinPage(reqVO, WmsInventoryDO.class, query); |
| 41 | } | 45 | } |