rev:优化修改
This commit is contained in:
@@ -26,10 +26,7 @@ import org.nl.wms.pdm_manage.service.dto.PdmBomCallMaterialDtlDto;
|
||||
import org.nl.wms.warehouse_management.enums.IOSConstant;
|
||||
import org.nl.wms.warehouse_management.enums.IOSEnum;
|
||||
import org.nl.wms.warehouse_management.service.*;
|
||||
import org.nl.wms.warehouse_management.service.dao.GroupPlate;
|
||||
import org.nl.wms.warehouse_management.service.dao.IOStorInvDis;
|
||||
import org.nl.wms.warehouse_management.service.dao.StIvtCheckdtl;
|
||||
import org.nl.wms.warehouse_management.service.dao.StIvtMoveinvdtl;
|
||||
import org.nl.wms.warehouse_management.service.dao.*;
|
||||
import org.nl.wms.warehouse_management.service.dao.mapper.IOStorInvDisMapper;
|
||||
import org.nl.wms.warehouse_management.service.dao.mapper.IOStorInvDtlMapper;
|
||||
import org.nl.wms.warehouse_management.service.dao.mapper.StIvtCheckdtlMapper;
|
||||
@@ -325,6 +322,8 @@ public class PadLargeMaterialBoxServiceImpl implements PdaLargeMaterialBoxServic
|
||||
|
||||
// 查询分配明细
|
||||
IOStorInvDis ioStorInvDis = ioStorInvDisMapper.selectById(iostorinvdis_id);
|
||||
// 原载具
|
||||
String oldVehicle = ioStorInvDis.getStoragevehicle_code();
|
||||
// 判断是否是拣选:不是:清空仓位信息
|
||||
if (ioStorInvDis.getIs_check().equals(IOSConstant.ZERO)) {
|
||||
Structattr attrDao = structattrService.getByCode(ioStorInvDis.getStruct_code());
|
||||
@@ -398,6 +397,26 @@ public class PadLargeMaterialBoxServiceImpl implements PdaLargeMaterialBoxServic
|
||||
.eq(PdmBomCallMaterialDtl::getOut_dis_id, ioStorInvDis.getIostorinvdis_id())
|
||||
);
|
||||
}
|
||||
// 判断是否是领料出库,如果是领料出库则更组盘信息绑定工单信息
|
||||
IOStorInv iosMst = iOutBillService.getById(ioStorInvDis.getIostorinv_id());
|
||||
if (iosMst.getBill_type().equals(IOSEnum.OUT_BILL_TYPE.code("领料出库"))
|
||||
|| iosMst.getBill_type().equals(IOSEnum.OUT_BILL_TYPE.code("烘干出库"))
|
||||
) {
|
||||
String updateVehicle = oldVehicle;
|
||||
if (ObjectUtil.isNotEmpty(ts_storagevehicle_code)) {
|
||||
updateVehicle = ts_storagevehicle_code;
|
||||
}
|
||||
|
||||
IOStorInvDtl ioStorInvDtl = ioStorInvDtlMapper.selectById(ioStorInvDis.getIostorinvdtl_id());
|
||||
// 更新组盘信息
|
||||
mdPbGroupplateService.update(
|
||||
new UpdateWrapper<GroupPlate>().lambda()
|
||||
.set(GroupPlate::getBom_id, ioStorInvDtl.getSource_billdtl_id())
|
||||
.eq(GroupPlate::getStoragevehicle_code, updateVehicle)
|
||||
.eq(GroupPlate::getPcsn, ioStorInvDis.getPcsn())
|
||||
.eq(GroupPlate::getMaterial_id, ioStorInvDis.getMaterial_id())
|
||||
);
|
||||
}
|
||||
return PdaResponse.requestOk();
|
||||
}
|
||||
|
||||
@@ -425,7 +444,7 @@ public class PadLargeMaterialBoxServiceImpl implements PdaLargeMaterialBoxServic
|
||||
dtlDto.setWeigh_qty(BigDecimal.ZERO);
|
||||
} else {
|
||||
// 更新称重重量
|
||||
dtlDto.setWeigh_qty(NumberUtil.sub(groupPlate.getQty(), new BigDecimal(residue_qty)));
|
||||
dtlDto.setWeigh_qty(new BigDecimal(residue_qty));
|
||||
}
|
||||
// 更新叫料单明细
|
||||
iPdmBomCallMaterialDtlService.confirm(dtlDto);
|
||||
|
||||
@@ -5,13 +5,16 @@ import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.wms.basedata_manage.service.IMdPbStoragevehicleinfoService;
|
||||
import org.nl.wms.basedata_manage.service.IStructattrService;
|
||||
import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleinfo;
|
||||
import org.nl.wms.basedata_manage.service.dao.Structattr;
|
||||
import org.nl.wms.ext.service.WmsToAcsService;
|
||||
import org.nl.wms.ext.service.util.AcsResponse;
|
||||
import org.nl.wms.pdm_manage.enums.BomEnum;
|
||||
@@ -32,6 +35,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -76,6 +80,12 @@ public class PdmBomCallMaterialDtlServiceImpl extends ServiceImpl<PdmBomCallMate
|
||||
@Resource
|
||||
private GroupPlateMapper groupPlateMapper;
|
||||
|
||||
/*
|
||||
* 仓位信息服务
|
||||
*/
|
||||
@Resource
|
||||
private IStructattrService iStructattrService;
|
||||
|
||||
@Override
|
||||
public IPage<PdmBomCallMaterialDtlDto> queryAll(Map whereJson, PageQuery page) {
|
||||
return this.baseMapper.queryAllByPage(new Page<>(page.getPage() + 1, page.getSize()),
|
||||
@@ -136,6 +146,7 @@ public class PdmBomCallMaterialDtlServiceImpl extends ServiceImpl<PdmBomCallMate
|
||||
PdmBomCallMaterialDtl bomdtlDao = this.getById(dto.getBomdtl_id());
|
||||
bomdtlDao.setBom_status(BomEnum.CALL_BOM_DTL_STATUS.code("完成"));
|
||||
bomdtlDao.setConfirm_time(DateUtil.now());
|
||||
bomdtlDao.setWeigh_qty(dto.getWeigh_qty());
|
||||
this.updateById(bomdtlDao);
|
||||
|
||||
// 查询叫料工单
|
||||
@@ -151,6 +162,24 @@ public class PdmBomCallMaterialDtlServiceImpl extends ServiceImpl<PdmBomCallMate
|
||||
// 更新叫料单状态
|
||||
iPdmBomCallMaterialService.updateStatus(bomDao.getBom_id());
|
||||
|
||||
// 如果是大料箱出库仓位:称重重量不为0则不删除组盘信息而是清除工单信息
|
||||
Structattr attrDao = iStructattrService.getByCode(bomdtlDao.getStruct_code());
|
||||
if (attrDao.getSect_code().equals(IOSEnum.SECT_CODE.code("大料箱区"))) {
|
||||
if (bomdtlDao.getWeigh_qty().doubleValue() != 0 ) {
|
||||
// 清除工单信息
|
||||
groupPlateMapper.update(new GroupPlate(),
|
||||
new UpdateWrapper<GroupPlate>().lambda()
|
||||
.set(GroupPlate::getQty, bomdtlDao.getWeigh_qty())
|
||||
.set(GroupPlate::getStatus, IOSEnum.GROUP_PLATE_STATUS.code("组盘"))
|
||||
.set(GroupPlate::getBom_id, null)
|
||||
.set(GroupPlate::getOut_type, null)
|
||||
.set(GroupPlate::getIs_need_delete, null)
|
||||
.eq(GroupPlate::getStoragevehicle_code, dto.getVehicle_code())
|
||||
);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// 删除组盘信息
|
||||
groupPlateMapper.delete(
|
||||
new QueryWrapper<GroupPlate>().lambda()
|
||||
|
||||
Reference in New Issue
Block a user