refactor(service):优化库存查找逻辑并移除冗余代码

- 修改 findOrCreateStock 方法返回类型为 void- 移除 warehouseId 的重复设置逻辑
- 简化库存存在时的处理流程- 删除多个与出入库及库存流水相关的实体类和业务对象- 清理无用的业务逻辑代码,提升代码可维护性
This commit is contained in:
2025-10-31 17:33:33 +08:00
parent 3f5f4a9479
commit 2283033b71
9 changed files with 6 additions and 618 deletions

View File

@@ -1,61 +0,0 @@
package com.klp.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
/**
* 出入库单主业务对象 wms_stock_io
*
* @author Joshi
* @date 2025-07-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsStockIoBo extends BaseEntity {
/**
* 出入库单ID
*/
private Long stockIoId;
/**
* 出入库单号
*/
@NotBlank(message = "出入库单号不能为空", groups = { AddGroup.class, EditGroup.class })
private String stockIoCode;
/**
* 类型in=入库out=出库)
*/
@NotBlank(message = "类型in=入库out=出库)不能为空", groups = { AddGroup.class, EditGroup.class })
private String ioType;
/**
* 业务类型(采购、销售、退货、调拨等)
*/
@NotBlank(message = "业务类型(采购、销售、退货、调拨等)不能为空", groups = { AddGroup.class, EditGroup.class })
private String bizType;
/**
* 单据状态0=草稿1=已提交2=已审核3=已完成)
*/
@NotNull(message = "单据状态0=草稿1=已提交2=已审核3=已完成)不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer status;
/**
* 备注
*/
private String remark;
/**
* 父级ID用于退库时关联原出库单
*/
private Long parentId;
}

View File

@@ -1,85 +0,0 @@
package com.klp.domain.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.util.Date;
/**
* 库存流水业务对象 wms_stock_log
*
* @author JR
* @date 2025-08-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class WmsStockLogBo extends BaseEntity {
/**
* 主键ID
*/
private Long id;
/**
* 仓库/库区/库位ID
*/
private Long warehouseId;
/**
* 物品ID指向原材料或产品主键
*/
private Long itemId;
/**
* 物品类型raw_material/product
*/
private String itemType;
/**
* 变动数量(正=入库,负=出库)
*/
private BigDecimal changeQty;
/**
* 变动后的库存数量
*/
private BigDecimal afterQty;
/**
* 变动类型(入库/出库等)
*/
private String changeType;
/**
* 实际库存变动时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date changeTime;
/**
* 备注
*/
private String remark;
/**
* 开始时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startTime;
/**
* 结束时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime;
//批次号
private String batchNo;
}