rev: 半成品损溢载具物料关系维护
This commit is contained in:
@@ -21,6 +21,8 @@ import org.nl.modules.common.exception.BadRequestException;
|
||||
import org.nl.modules.system.util.CodeUtil;
|
||||
import org.nl.wms.masterdata_manage.service.material.IMdMeMaterialbaseService;
|
||||
import org.nl.wms.masterdata_manage.service.material.dao.MdMeMaterialbase;
|
||||
import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService;
|
||||
import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext;
|
||||
import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService;
|
||||
import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService;
|
||||
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr;
|
||||
@@ -70,6 +72,9 @@ public class StIvtMoreorlessmstBcpServiceImpl extends ServiceImpl<StIvtMoreorles
|
||||
@Autowired
|
||||
private IMdMeMaterialbaseService iMdMeMaterialbaseService; // 物料服务
|
||||
|
||||
@Autowired
|
||||
protected IMdPbStoragevehicleextService iMdPbStoragevehicleextService; // 载具扩展属性信息表服务
|
||||
|
||||
@Override
|
||||
public Object pageQuery(MoreOrlessQuery query, PageQuery pageQuery) {
|
||||
Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
|
||||
@@ -170,10 +175,31 @@ public class StIvtMoreorlessmstBcpServiceImpl extends ServiceImpl<StIvtMoreorles
|
||||
BigDecimal canuse_qty = ivt.getCanuse_qty();
|
||||
BigDecimal mol_qty = dtl.getMol_qty();
|
||||
ivt.setCanuse_qty(NumberUtil.sub(canuse_qty, mol_qty));
|
||||
|
||||
// 更新载具扩展属性重量
|
||||
MdPbStoragevehicleext vehicleDao = iMdPbStoragevehicleextService.getOne(
|
||||
new QueryWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code, dtl.getStoragevehicle_code())
|
||||
);
|
||||
if (ObjectUtil.isNotEmpty(vehicleDao)) {
|
||||
vehicleDao.setStorage_qty(NumberUtil.sub(vehicleDao.getStorage_qty(),mol_qty));
|
||||
iMdPbStoragevehicleextService.updateById(vehicleDao);
|
||||
}
|
||||
|
||||
//如果库存变为0则删除记录
|
||||
if (canuse_qty.compareTo(mol_qty) == 0 ) {
|
||||
iStIvtStructivtBcpService.removeById(ivt.getStruct_id());
|
||||
|
||||
|
||||
// 更新载具扩展属性 - 释放载具对应物料关系 清空数量
|
||||
iMdPbStoragevehicleextService.update(
|
||||
new MdPbStoragevehicleext()
|
||||
.setMaterial_id("")
|
||||
.setStorage_qty(BigDecimal.valueOf(0)),
|
||||
new QueryWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code,dtl.getStoragevehicle_code())
|
||||
);
|
||||
|
||||
// 更新货位 -- 清除载具号
|
||||
structattrService.update(
|
||||
new StIvtStructattr()
|
||||
@@ -222,9 +248,32 @@ public class StIvtMoreorlessmstBcpServiceImpl extends ServiceImpl<StIvtMoreorles
|
||||
struct_jo.setStoragevehicle_code(dtl.getStoragevehicle_code());
|
||||
structattrService.updateById(struct_jo);
|
||||
|
||||
// 更新载具对应物料关系、数量
|
||||
MdPbStoragevehicleext vehicleDao = iMdPbStoragevehicleextService.getOne(
|
||||
new QueryWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code, dtl.getStoragevehicle_code())
|
||||
);
|
||||
if (ObjectUtil.isNotEmpty(vehicleDao)) {
|
||||
vehicleDao.setStorage_qty(mol_qty);
|
||||
vehicleDao.setMaterial_id(dtl.getMaterial_id());
|
||||
iMdPbStoragevehicleextService.updateById(vehicleDao);
|
||||
}
|
||||
|
||||
} else {
|
||||
BigDecimal canuse_qty = ivt.getCanuse_qty();
|
||||
ivt.setCanuse_qty(NumberUtil.add(canuse_qty, mol_qty));
|
||||
|
||||
// 更新载具扩展属性 - 数量
|
||||
MdPbStoragevehicleext vehicleDao = iMdPbStoragevehicleextService.getOne(
|
||||
new QueryWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code, dtl.getStoragevehicle_code())
|
||||
);
|
||||
|
||||
if (ObjectUtil.isNotEmpty(vehicleDao)) {
|
||||
vehicleDao.setStorage_qty(NumberUtil.add(vehicleDao.getStorage_qty(), dtl.getMol_qty()));
|
||||
iMdPbStoragevehicleextService.updateById(vehicleDao);
|
||||
}
|
||||
|
||||
iStIvtStructivtBcpService.updateById(ivt);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user