no message

main
HUOJIN\92525 2026-02-06 11:02:36 +08:00
parent 70692c511a
commit ee6370447c
2 changed files with 26 additions and 2 deletions

View File

@ -94,6 +94,12 @@ public class Inventory implements Serializable {
@Dict(dicCode = "inventory_status")
private java.lang.Integer status;
/**
*
*/
@TableField(exist = false)
private String status_MultiString;
/**
*
*/

View File

@ -1,12 +1,15 @@
package org.cpte.modules.inventory.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.collections4.CollectionUtils;
import org.cpte.modules.base.entity.ItemKey;
import org.cpte.modules.base.entity.Point;
import org.cpte.modules.base.entity.Stock;
import org.cpte.modules.base.mapper.ItemKeyMapper;
import org.cpte.modules.base.mapper.PointMapper;
import org.cpte.modules.base.mapper.StockMapper;
import org.cpte.modules.constant.enums.CommonStatusEnum;
@ -39,6 +42,9 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
@Autowired
private StockMapper stockMapper;
@Autowired
private ItemKeyMapper itemKeyMapper;
@Override
public IPage<Inventory> selectInventoryWithItemKey(Page<Inventory> page, Inventory inventory) {
QueryWrapper<Inventory> queryWrapper = new QueryWrapper<>();
@ -52,8 +58,20 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
if (oConvertUtils.isNotEmpty(inventory.getStockId())) {
queryWrapper.eq("inventory.stock_id", inventory.getStockId());
}
if (oConvertUtils.isNotEmpty(inventory.getStatus())) {
queryWrapper.eq("inventory.status", inventory.getStatus());
if (oConvertUtils.isNotEmpty(inventory.getStatus_MultiString())) {
List<Integer> status = Arrays.stream(inventory.getStatus_MultiString().split(","))
.map(Integer::parseInt)
.toList();
queryWrapper.in("inventory.status", status);
}
if (oConvertUtils.isNotEmpty(inventory.getWhCode())) {
LambdaQueryWrapper<ItemKey> itemKeyQueryWrapper = new LambdaQueryWrapper<>();
itemKeyQueryWrapper.eq(ItemKey::getWhCode, inventory.getWhCode());
List<ItemKey> itemKeys=itemKeyMapper.selectList(itemKeyQueryWrapper);
if(CollectionUtils.isNotEmpty(itemKeys)){
List<Long> itemKeyIds = itemKeys.stream().map(ItemKey::getId).distinct().toList();
queryWrapper.in("inventory.item_key_id", itemKeyIds);
}
}
return baseMapper.selectInventoryWithItemKey(page, inventory, queryWrapper);