refactor(wms): 完善returnSelectCode方法,现在的关系是仓库→区域→库位关系,出库记录WmsOutstockRecord关联到库位WmsBaseLocation,再根据WmsBaseLocation库位关联到区域WmsBaseArea,查询到区域的warehouseId

- 在 WmsBaseLocation 模型中重新添加 warehouseId 字段,但不存入数据库
- 修改 WmsBaseLocationServiceImpl 中的查询逻辑,通过区域关联仓库
- 更新 WmsBaseLocationVo 中的 warehouseId 字段,用于展示所属仓库
- 调整 WmsPdaApiController 和 WmsPdaApiServiceImpl 中的逻辑,以适应新的仓库关联方式
master
zangch@mesnac.com 2 weeks ago
parent 5a48925a97
commit 1670de4eaf

@ -72,7 +72,7 @@ public class WmsPdaApiController extends BaseController {
if (wmsBaseLocationVo == null) {
return R.fail("库位条码扫描错误");
}
vo.setWarehouseId(wmsBaseLocationVo.getWarehouseId());
vo.setWarehouseId(wmsBaseLocationVo.getWarehouseId());
Boolean result = apiService.inSubmit(vo);
return result ? R.ok() : R.fail();
}

@ -27,10 +27,11 @@ public class WmsBaseLocation extends TenantEntity {
@TableId(type = IdType.AUTO,value = "location_id")
private Long locationId;
// /**
// * 所属仓库
// */
// private Long warehouseId;
/**
*
*/
@TableField(exist = false)
private Long warehouseId;
/**
*
*/

@ -32,11 +32,10 @@ public class WmsBaseLocationVo implements Serializable {
@ExcelProperty(value = "表主键")
private Long locationId;
// /**
// * 所属仓库
// */
// @ExcelProperty(value = "所属仓库")
// private Long warehouseId;
/**
*
*/
private Long warehouseId;//join
/**
*
*/

@ -155,8 +155,8 @@ public class WmsBaseLocationServiceImpl implements IWmsBaseLocationService {
// .select(WmsBaseWarehouse::getWarehouseName,WmsBaseWarehouse::getWarehouseCode)
// .leftJoin(WmsBaseWarehouse.class,WmsBaseWarehouse::getWarehouseId,WmsBaseLocation::getWarehouseId)
//关联仓库改为关联区域
.select(WmsBaseArea::getAreaName, WmsBaseArea::getAreaCode)
//关联仓库改为关联区域,通过区域查仓库
.select(WmsBaseArea::getAreaName, WmsBaseArea::getAreaCode, WmsBaseArea::getWarehouseId)
.leftJoin(WmsBaseArea.class,WmsBaseArea::getAreaId,WmsBaseLocation::getAreaId)
.eq( WmsBaseLocation::getLocationCode, code);

@ -44,7 +44,26 @@ public class WmsPdaApiServiceImpl implements IWmsPdaApiService {
@Override
public WmsOutstockRecordVo returnSelectCode(String code) {
MPJLambdaWrapper<WmsOutstockRecord> lqw = JoinWrappers.lambda(WmsOutstockRecord.class).selectAll(WmsOutstockRecord.class).select(BaseMaterialInfo::getMaterialCode, BaseMaterialInfo::getMaterialName, BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec).leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockRecord::getMaterialId).select(WmsBaseLocation::getWarehouseId).leftJoin(WmsBaseLocation.class, WmsBaseLocation::getLocationCode, WmsOutstockRecord::getLocationCode).eq(WmsOutstockRecord::getBatchCode, code).eq(WmsOutstockRecord::getReturnFlag, 0).orderByDesc(WmsOutstockRecord::getCreateTime);
MPJLambdaWrapper<WmsOutstockRecord> lqw = JoinWrappers.lambda(WmsOutstockRecord.class)
.selectAll(WmsOutstockRecord.class)
.select(BaseMaterialInfo::getMaterialCode, BaseMaterialInfo::getMaterialName, BaseMaterialInfo::getMaterialUnit, BaseMaterialInfo::getMaterialSpec)
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, WmsOutstockRecord::getMaterialId)
// .select(WmsBaseLocation::getWarehouseId)
// .leftJoin(WmsBaseLocation.class, WmsBaseLocation::getLocationCode, WmsOutstockRecord::getLocationCode)
/* 关联仓库改为关联区域,先查区域再查仓库 */
// 关联库位信息获取区域ID
.select(WmsBaseLocation::getAreaId)
.leftJoin(WmsBaseLocation.class, WmsBaseLocation::getLocationCode, WmsOutstockRecord::getLocationCode)
// 关联区域信息获取仓库ID
.select(WmsBaseArea::getWarehouseId)
.leftJoin(WmsBaseArea.class, WmsBaseArea::getAreaId, WmsBaseLocation::getAreaId)
.eq(WmsOutstockRecord::getBatchCode, code)
.eq(WmsOutstockRecord::getReturnFlag, 0)
.orderByDesc(WmsOutstockRecord::getCreateTime);
return wmsOutstockRecordMapper.selectVoOne(lqw);
}

Loading…
Cancel
Save