|
|
|
@ -138,6 +138,79 @@ public class InvPlaceServiceImpl implements InvPlaceService {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public BaseResponse changeInvSpace(BindInvSpaceRequest bindInvSpaceRequest) {
|
|
|
|
|
//查询仓库的部门ID
|
|
|
|
|
String deptCode = invWarehouseDao.selectParentIdByCode(bindInvSpaceRequest.getInvCode());
|
|
|
|
|
InvWarehouseEntity invWarehouseEntity = invWarehouseDao.filterGroupInvSubAndcode(bindInvSpaceRequest.getInvCode());
|
|
|
|
|
|
|
|
|
|
List<InvProductDetailEntity> list = new ArrayList<>();
|
|
|
|
|
if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_PREIN) {
|
|
|
|
|
List<InvPreInProductDetailEntity> invPreInProductDetailEntities = invPreInProductDetailDao.selectList(new QueryWrapper<InvPreInProductDetailEntity>()
|
|
|
|
|
.select("id", "code", "relId", "batchNo")
|
|
|
|
|
.eq("deptCode", deptCode)
|
|
|
|
|
.eq("invCode", bindInvSpaceRequest.getInvCode())
|
|
|
|
|
.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode())
|
|
|
|
|
.in("code", bindInvSpaceRequest.getCodeArray())
|
|
|
|
|
);
|
|
|
|
|
for (InvPreInProductDetailEntity invPreInProductDetailEntity : invPreInProductDetailEntities) {
|
|
|
|
|
InvProductDetailEntity invProductDetailEntity = new InvProductDetailEntity();
|
|
|
|
|
BeanCopyUtils.copy(invPreInProductDetailEntity, invProductDetailEntity);
|
|
|
|
|
list.add(invProductDetailEntity);
|
|
|
|
|
}
|
|
|
|
|
} else if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_ADVANCE) {
|
|
|
|
|
|
|
|
|
|
List<InvPreProductDetailEntity> invPreProductDetailEntities = invPreProductDetailDao.selectList(new QueryWrapper<InvPreProductDetailEntity>()
|
|
|
|
|
.select("id", "code", "relId", "batchNo")
|
|
|
|
|
.eq("deptCode", deptCode)
|
|
|
|
|
.eq("invCode", bindInvSpaceRequest.getInvCode())
|
|
|
|
|
.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode())
|
|
|
|
|
.in("code", bindInvSpaceRequest.getCodeArray())
|
|
|
|
|
);
|
|
|
|
|
for (InvPreProductDetailEntity invPreInProductDetailEntity : invPreProductDetailEntities) {
|
|
|
|
|
InvProductDetailEntity invProductDetailEntity = new InvProductDetailEntity();
|
|
|
|
|
BeanCopyUtils.copy(invPreInProductDetailEntity, invProductDetailEntity);
|
|
|
|
|
list.add(invProductDetailEntity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
list = invProductDetailDao.selectList(new QueryWrapper<InvProductDetailEntity>()
|
|
|
|
|
.select("id", "code", "relId", "batchNo")
|
|
|
|
|
.eq("deptCode", deptCode)
|
|
|
|
|
.eq("invCode", bindInvSpaceRequest.getInvCode())
|
|
|
|
|
.eq("invSpaceCode", bindInvSpaceRequest.getInvSpaceCode())
|
|
|
|
|
.in("code", bindInvSpaceRequest.getCodeArray())
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(list)) {
|
|
|
|
|
List<Integer> ids = list.stream().map(InvProductDetailEntity::getId).collect(Collectors.toList());
|
|
|
|
|
log.info("本次更换货位的库存详情数量为:{} 条", ids.size());
|
|
|
|
|
|
|
|
|
|
if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_PREIN) {
|
|
|
|
|
invPreInProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getChangeSpaceCode());
|
|
|
|
|
} else if (invWarehouseEntity.getAdvanceType() == ConstantStatus.ACTION_TYPE_ADVANCE) {
|
|
|
|
|
invPreProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getChangeSpaceCode());
|
|
|
|
|
} else {
|
|
|
|
|
invProductDetailDao.batchBindSpace(ids, bindInvSpaceRequest.getChangeSpaceCode());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//添加物资上架记录
|
|
|
|
|
AddInvPlaceOrderRequest addInvPlaceOrderRequest = new AddInvPlaceOrderRequest();
|
|
|
|
|
addInvPlaceOrderRequest.setType(bindInvSpaceRequest.getType());
|
|
|
|
|
addInvPlaceOrderRequest.setOrderId(bindInvSpaceRequest.getOrderId());
|
|
|
|
|
addInvPlaceOrderRequest.setCodeList(list);
|
|
|
|
|
addInvPlaceOrderRequest.setInvCode(bindInvSpaceRequest.getInvCode());
|
|
|
|
|
addInvPlaceOrderRequest.setInvSpaceCode(bindInvSpaceRequest.getInvSpaceCode());
|
|
|
|
|
invPlaceOrderService.addInvPlaceOrder(addInvPlaceOrderRequest);
|
|
|
|
|
return ResultVOUtils.success("绑定成功!本次绑定货位的库存详情数量为:" + ids.size() + "条");
|
|
|
|
|
} else {
|
|
|
|
|
log.info("绑定货位列表查询无数据");
|
|
|
|
|
return ResultVOUtils.error(500, "绑定货位列表查询无数据");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public BaseResponse checkCodeSpace(BindInvSpaceRequest bindInvSpaceRequest) {
|
|
|
|
|
//查询仓库的部门ID
|
|
|
|
|