|
@@ -1466,6 +1466,7 @@ public class WmsDocOrderHeaderServiceImpl implements IWmsDocOrderHeaderService {
|
|
|
boolean isAllUpdate = false;
|
|
|
boolean isStockPalletNoTo = groupDiskFrom.isStockPalletNoTo();
|
|
|
final Double toQty;
|
|
|
+ boolean isAllocation = false;
|
|
|
Long currentVirtualZone;
|
|
|
if (StringUtils.isNotEmpty(groupDiskFrom.getOrderNo())) {
|
|
|
orderNo = groupDiskFrom.getOrderNo();
|
|
@@ -1507,6 +1508,10 @@ public class WmsDocOrderHeaderServiceImpl implements IWmsDocOrderHeaderService {
|
|
|
if (endLotattVO == null) {
|
|
|
return AjaxResult.error("组盘数量大于单条库存数量!");
|
|
|
}
|
|
|
+
|
|
|
+ if (endLotattVO.getQtyallocated().compareTo(BigDecimal.ONE.doubleValue()) == 0) {
|
|
|
+ isAllocation = true;
|
|
|
+ }
|
|
|
currentVirtualZone = endLotattVO.getLocationId();
|
|
|
invLotLocIdLotattVOList.add(endLotattVO);
|
|
|
|
|
@@ -1549,12 +1554,36 @@ public class WmsDocOrderHeaderServiceImpl implements IWmsDocOrderHeaderService {
|
|
|
if (invLotAttMapper.insertInvLotAtt(invLotAtt) > 0) {
|
|
|
for (InvLotLocIdLotattVO v : invLocIdList) {
|
|
|
if (isAllUpdate) {
|
|
|
+
|
|
|
+ if (!isAllocation) {
|
|
|
+
|
|
|
+ InvLocIdSearchFrom locIdSearchFrom01 = new InvLocIdSearchFrom();
|
|
|
+ LotattDTO lotattDTO01 = new LotattDTO();
|
|
|
+ lotattDTO01.setLotatt07(palletNoFrom);
|
|
|
+ lotattDTO01.setLotatt15(orderNo);
|
|
|
+ locIdSearchFrom01.setLotattDTO(lotattDTO01);
|
|
|
+ List<InvLotLocIdLotattVO> invLotLocIdLotattList01 = invLotLocIdService.selectInvLocIdLotattList(locIdSearchFrom01);
|
|
|
+ for (InvLotLocIdLotattVO locIdLotattVO : invLotLocIdLotattList01) {
|
|
|
+
|
|
|
+ if (StringUtils.isEmpty(locIdLotattVO.getLotatt14())
|
|
|
+ && locIdLotattVO.getQtyallocated().compareTo(BigDecimal.ONE.doubleValue()) == 0) {
|
|
|
+ InvLotLocIdForm invLotLocIdUpdate = new InvLotLocIdForm();
|
|
|
+ invLotLocIdUpdate.setLotnum(locIdLotattVO.getLotnum());
|
|
|
+ invLotLocIdUpdate.setLocationId(locIdLotattVO.getLocationId().toString());
|
|
|
+ invLotLocIdUpdate.setCustomerId(locIdLotattVO.getCustomerId());
|
|
|
+ invLotLocIdUpdate.setSku(locIdLotattVO.getSku());
|
|
|
+ invLotLocIdUpdate.setQtyallocated(BigDecimal.ZERO);
|
|
|
+ invLotLocIdService.updateInvLotLocId(invLotLocIdUpdate);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
InvLotLocIdForm invLotLocIdUpdate = new InvLotLocIdForm();
|
|
|
invLotLocIdUpdate.setLotnum(lotnum);
|
|
|
invLotLocIdUpdate.setLocationId(v.getLocationId().toString());
|
|
|
invLotLocIdUpdate.setCustomerId(v.getCustomerId());
|
|
|
invLotLocIdUpdate.setSku(v.getSku());
|
|
|
- invLotLocIdUpdate.setQtyallocated(invLotLocIdUpdate.getQty());
|
|
|
+ invLotLocIdUpdate.setQtyallocated(BigDecimal.ONE);
|
|
|
invLotLocIdUpdate.setLotnumTo(newLotnum);
|
|
|
invLotLocIdService.updateInvLotLocId(invLotLocIdUpdate);
|
|
|
}
|
|
@@ -1863,7 +1892,7 @@ public class WmsDocOrderHeaderServiceImpl implements IWmsDocOrderHeaderService {
|
|
|
InvLocIdSearchFrom invLocIdSearchFrom = new InvLocIdSearchFrom();
|
|
|
LotattDTO lotattDTO = new LotattDTO();
|
|
|
lotattDTO.setLotatt07(snCheckSoForm.getPalletNo());
|
|
|
- lotattDTO.setLotatt15(snCheckSoForm.getOrderNo());
|
|
|
+
|
|
|
lotattDTO.setLotatt02(snCheckSoForm.getSn());
|
|
|
invLocIdSearchFrom.setLotattDTO(lotattDTO);
|
|
|
List<InvLotLocIdLotattVO> invLotLocIdLotattVOList = invLotLocIdService.selectInvLocIdLotattList(invLocIdSearchFrom);
|
|
@@ -1953,6 +1982,8 @@ public class WmsDocOrderHeaderServiceImpl implements IWmsDocOrderHeaderService {
|
|
|
details.setdEdi07(erpOrderNo);
|
|
|
details.setdEdi08(erpOrder.getOrderType());
|
|
|
details.setdEdi09(erpOrder.getInout());
|
|
|
+ details.setdEdi10(erpOrder.getCreateDate());
|
|
|
+ details.setdEdi11(erpOrder.getCreateUser());
|
|
|
details.setLineStatus("00");
|
|
|
details.setCreateTime(new Date());
|
|
|
details.setCreateBy(erpOrder.getCreateUser());
|