feat(wms): 新增入库单打印条码的待入库列表功能

- 在 WmsInstockPrint 模型中添加 locationId、inboundStatus 和 actualInboundTime 字段
- 更新 WmsInstockPrintBo 和 WmsInstockPrintVo 以包含新字段
- 修改 WmsInstockPrintServiceImpl 以支持待入库列表的查询
- 在 WmsInstockRecordServiceImpl 中更新入库状态和实际入库时间
master
zangch@mesnac.com 9 hours ago
parent 9dbd6ed1c2
commit 6c7a88110f

@ -1,9 +1,7 @@
package org.dromara.wms.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
@ -112,10 +110,26 @@ public class WmsInstockPrint{
*/
private String tenantId;
/**
* id
*/
private Long locationId;
/**
* (0-,1-,2-)
*/
private String inboundStatus;
/**
*
*/
private Date actualInboundTime;
/**
*
*/
@TableField(exist = false)
private String materialCategoryName;//字段映射
}

@ -1,16 +1,14 @@
package org.dromara.wms.domain.bo;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.wms.domain.WmsInstockPrint;
import org.dromara.wms.domain.vo.WmsInstockPrintVo;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
@ -98,5 +96,19 @@ public class WmsInstockPrintBo extends BaseEntity {
private String tenantId;
private List<WmsInstockPrintVo> vos;
/**
* id
*/
private Long locationId;
/**
* (0-,1-,2-)
*/
private String inboundStatus;
/**
*
*/
private Date actualInboundTime;
}

@ -10,7 +10,7 @@ import org.dromara.wms.domain.WmsInstockPrint;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
@ -103,6 +103,21 @@ public class WmsInstockPrintVo implements Serializable {
*/
private String tenantId;
/**
* id
*/
private Long locationId;
/**
* (0-,1-,2-)
*/
private String inboundStatus;
/**
*
*/
private Date actualInboundTime;
/**
*
*/

@ -244,6 +244,7 @@ public class WmsInstockDetailServiceImpl implements IWmsInstockDetailService {
print.setBatchCode(batchCode);
print.setApportionQty(per);
print.setMaterialQty(1L); // 每个包打印1份使用Long类型
print.setInboundStatus("0");//入库状态(0-待入库,1-已入库,2-入库中)
wmsInstockPrintService.insertWmsInstockPrint(print);
@ -263,6 +264,7 @@ public class WmsInstockDetailServiceImpl implements IWmsInstockDetailService {
print.setBatchCode(batchCode);
print.setApportionQty(remaining);
print.setMaterialQty(copies.longValue()); // 转换为Long
print.setInboundStatus("0");//入库状态(0-待入库,1-已入库,2-入库中)
wmsInstockPrintService.insertWmsInstockPrint(print);

@ -1,19 +1,16 @@
package org.dromara.wms.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.wms.domain.BaseMaterialCategory;
import org.dromara.wms.domain.WmsBaseWarehouse;
import org.dromara.wms.domain.WmsInstockDetail;
import org.dromara.wms.domain.WmsInstockPrint;
import org.dromara.wms.domain.bo.WmsInstockDetailBo;
import org.dromara.wms.domain.bo.WmsInstockPrintBo;
@ -22,10 +19,9 @@ import org.dromara.wms.mapper.WmsInstockPrintMapper;
import org.dromara.wms.service.IWmsInstockPrintService;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* -Service
@ -95,6 +91,11 @@ public class WmsInstockPrintServiceImpl implements IWmsInstockPrintService {
.select(BaseMaterialCategory::getMaterialCategoryName)
.leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsInstockPrint::getMaterialCategoryId)
//待入库列表新增
.eq(bo.getActualInboundTime() != null, WmsInstockPrint::getActualInboundTime, bo.getActualInboundTime())
.eq(StringUtils.isNotBlank(bo.getInboundStatus()), WmsInstockPrint::getInboundStatus, bo.getInboundStatus())
.eq(bo.getLocationId() != null, WmsInstockPrint::getLocationId, bo.getLocationId())
//条码打印原有
.eq(bo.getInstockPrintId() != null, WmsInstockPrint::getInstockPrintId, bo.getInstockPrintId())
.eq(StringUtils.isNotBlank(bo.getInstockCode()), WmsInstockPrint::getInstockCode, bo.getInstockCode())
.eq(StringUtils.isNotBlank(bo.getBatchCode()), WmsInstockPrint::getBatchCode, bo.getBatchCode())

@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -212,6 +213,13 @@ public class WmsInstockRecordServiceImpl implements IWmsInstockRecordService {
// 插入入库记录
insertByBo(recordBo);
// 更新入库打印(待入库列表)的入库状态和实际入库时间
WmsInstockPrintBo newPrintBo = MapstructUtils.convert(print, WmsInstockPrintBo.class);
newPrintBo.setInboundStatus("1");//入库状态(0-待入库,1-已入库,2-入库中)
newPrintBo.setActualInboundTime(new Date());
instockPrintService.updateByBo(newPrintBo);
// 更新库存信息
WmsInventoryVo inventoryVo = inventoryService.queryByBatchAndLocation(recordBo.getBatchCode(), recordBo.getLocationCode());
double qty = recordBo.getInstockQty();

Loading…
Cancel
Save