采购物料入库确认空指针错误修改
This commit is contained in:
parent
6e6d36fa07
commit
38a9d0471f
|
|
@ -10,6 +10,7 @@ import cn.hutool.core.util.IdUtil;
|
|||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.crypto.digest.DigestUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
||||
import com.nflg.wms.admin.pojo.dto.*;
|
||||
import com.nflg.wms.admin.repository.OutMaterialScanRecordRespository;
|
||||
import com.nflg.wms.admin.repository.SrmMaterialReceiptNoScanCodesRepository;
|
||||
|
|
@ -125,6 +126,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 送货单列表
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -136,6 +138,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 送货单详情
|
||||
*
|
||||
* @param orderId 订单ID
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -152,6 +155,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 获取扫码的详情信息
|
||||
*
|
||||
* @param orderItemId 订单项ID
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -166,6 +170,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 扫描送货单号获取送货单详情(PDA)
|
||||
*
|
||||
* @param orderNo 送货单号
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -179,6 +184,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 收货确认(PDA使用)
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -315,6 +321,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 普通物料的上架任务(PDA)
|
||||
*
|
||||
* @param orederNo 送货单号或是任务单号
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -342,6 +349,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 采购物料入库确认(PDA)
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -470,12 +478,34 @@ public class NormalPGIController extends BaseController {
|
|||
.setSERNR(code.getSerialNumbers()));
|
||||
|
||||
scanCodes.add(code);
|
||||
WmsQrCodeMaster wmsQrCodeMaster = new WmsQrCodeMaster()
|
||||
// WmsQrCodeMaster wmsQrCodeMaster = new WmsQrCodeMaster()
|
||||
// .setBarcodeCode(code.getCodeId())
|
||||
// .setBarcodeType((short) 1)
|
||||
// .setProcessStage(BarCodeProcessStage.InBound.getState())
|
||||
// .setLastScanBy(UserUtil.getUserId())
|
||||
// .setLastScanByname(UserUtil.getUserName())
|
||||
// .setLastScanTime(LocalDateTime.now());
|
||||
|
||||
WmsQrCodeMaster wmsQrCodeMaster = new WmsQrCodeMaster();
|
||||
WmsQrCodeMaster existCode = qrCodeMasterService.lambdaQuery()
|
||||
.eq(WmsQrCodeMaster::getBarcodeCode, code.getCodeId())
|
||||
.one();
|
||||
if (existCode != null) {
|
||||
wmsQrCodeMaster = existCode;
|
||||
} else {
|
||||
wmsQrCodeMaster.setId(IdWorker.getId());
|
||||
}
|
||||
wmsQrCodeMaster
|
||||
.setBarcodeCode(code.getCodeId())
|
||||
.setBarcodeType((short) 1)
|
||||
.setMaterialCode(item.getItemCode())
|
||||
.setMaterialDescription(item.getItemName())
|
||||
.setProcessStage(BarCodeProcessStage.InBound.getState())
|
||||
.setReceiptItemId(item.getId())
|
||||
.setLastScanBy(UserUtil.getUserId())
|
||||
.setLastScanByname(UserUtil.getUserName())
|
||||
.setLastScanTime(LocalDateTime.now());
|
||||
|
||||
qrCodeMasters.add(wmsQrCodeMaster);
|
||||
if (CollectionUtil.isNotEmpty(qo.getItems())) {
|
||||
InCostCenterBackSubmitItemQRQO qrqo = qo.getItems()
|
||||
|
|
@ -517,13 +547,26 @@ public class NormalPGIController extends BaseController {
|
|||
// .filter(qrCode -> qrCode.getPackagingType() == 1)
|
||||
.filter(qrCode -> qrCode.getPackagingType() != null && qrCode.getPackagingType() == 1)
|
||||
.toList();
|
||||
List<WmsQrCodeMaster> children = qrCodeMasterService.lambdaQuery()
|
||||
.in(WmsQrCodeMaster::getParentBarcodeId, parents
|
||||
.stream()
|
||||
// List<WmsQrCodeMaster> children = qrCodeMasterService.lambdaQuery()
|
||||
// .in(WmsQrCodeMaster::getParentBarcodeId, parents
|
||||
// .stream()
|
||||
// .map(WmsQrCodeMaster::getId)
|
||||
// .toList()
|
||||
// )
|
||||
// .list();
|
||||
|
||||
List<WmsQrCodeMaster> children;
|
||||
if (CollectionUtil.isNotEmpty(parents)) {
|
||||
children = qrCodeMasterService.lambdaQuery()
|
||||
.in(WmsQrCodeMaster::getParentBarcodeId,
|
||||
parents.stream()
|
||||
.map(WmsQrCodeMaster::getId)
|
||||
.toList()
|
||||
)
|
||||
.list();
|
||||
} else {
|
||||
children = new ArrayList<>();
|
||||
}
|
||||
|
||||
parents.forEach(p -> {
|
||||
children.stream()
|
||||
|
|
@ -540,7 +583,8 @@ public class NormalPGIController extends BaseController {
|
|||
});
|
||||
});
|
||||
qrCodeMasters.addAll(children);
|
||||
qrCodeMasterService.updateBarCode(qrCodeMasters);
|
||||
// qrCodeMasterService.updateBarCode(qrCodeMasters);
|
||||
qrCodeMasterService.saveOrUpdateBatch(qrCodeMasters);
|
||||
}
|
||||
normalPGIControllerService.takeDeliveryConfirm(receiptItems, storageLocationDTOS, inventories, zwm3A17DTOS, request.getTaskId(), scanCodes);
|
||||
return ApiResult.success();
|
||||
|
|
@ -565,6 +609,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 收货直接入库的(未启用储位管理)
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
private void setPoReceiveByIn(SrmMaterialReceiptQO item,
|
||||
|
|
@ -814,6 +859,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 一键收货查询
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -867,7 +913,7 @@ public class NormalPGIController extends BaseController {
|
|||
order.getSupplierNum(),
|
||||
item.getItemCode(), item.getPoLineNumber());
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(materialInfoInOrder)).throwMessage("当前物料信息【" + item.getItemCode() + "】,订单号【" + item.getPoNum() + "】,供应商【" + order.getSupplierName() + "】在SAP中搜索不到有效信息");
|
||||
String batchNumber =NoUtil.getBatchNo(order.getSupplierNum());
|
||||
String batchNumber = NoUtil.getBatchNo(order.getSupplierNum());
|
||||
/*
|
||||
(materialInfoInOrder.getLbprt().equals("2")
|
||||
|| materialInfoInOrder.getLbprt().equals("4")) ? NoUtil.getBatchNo(order.getSupplierNum()) : "";
|
||||
|
|
@ -990,6 +1036,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 一键收货(无码)
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1101,6 +1148,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 采购物料上架确认(无码)
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1333,7 +1381,7 @@ public class NormalPGIController extends BaseController {
|
|||
items.forEach(item -> {
|
||||
RLock lock = redissonClient.getLock(StrUtil.format("lock:inventory:{}:{}:{}", item.getDwerk(), item.getLgort2(), item.getMatnr()));
|
||||
try {
|
||||
Long itemId=IdUtil.getSnowflakeNextId();
|
||||
Long itemId = IdUtil.getSnowflakeNextId();
|
||||
// 等待5秒获取锁,10秒后自动释放
|
||||
if (lock.tryLock(5, 10, TimeUnit.SECONDS)) {
|
||||
WmsOutProduceItem data = Convert.convert(WmsOutProduceItem.class, item);
|
||||
|
|
@ -1345,13 +1393,13 @@ public class NormalPGIController extends BaseController {
|
|||
} else {
|
||||
throw new NflgException(STATE.BusinessError, "获取锁失败");
|
||||
}
|
||||
WmsOutProduceTicketItem ticketItem=new WmsOutProduceTicketItem()
|
||||
WmsOutProduceTicketItem ticketItem = new WmsOutProduceTicketItem()
|
||||
.setId(IdUtil.getSnowflakeNextId())
|
||||
.setTicketId(ticket.getId())
|
||||
.setProduceItemId(itemId)
|
||||
.setNum(item.getSqsl());
|
||||
ticketItems.add(ticketItem);
|
||||
item.getQrCodes().forEach(qr->{
|
||||
item.getQrCodes().forEach(qr -> {
|
||||
WmsQrCodeMaster qrCodeMaster = qrCodeMasters.stream()
|
||||
.filter(qit -> qit.getBarcodeCode().equals(qr.getCodeId()))
|
||||
.findFirst()
|
||||
|
|
@ -1401,6 +1449,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 通过打包码获取到打包码的信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1419,6 +1468,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 获取打包码对应的送货单信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1431,6 +1481,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 根据送货单单号和大码的ID获取到具体的物料信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1443,6 +1494,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 根据送货单单号和大码的ID获取到具体的物料信息
|
||||
*
|
||||
* @param request id= 大码的ID
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1464,6 +1516,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 通过打包码获取到物料信息
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1482,6 +1535,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 确认收货(无需扫码)
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -1684,6 +1738,7 @@ public class NormalPGIController extends BaseController {
|
|||
|
||||
/**
|
||||
* 确认收货(需扫码)
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue