Merge remote-tracking branch 'origin/feature/NoScanning' into feature/NoScanning
This commit is contained in:
commit
dd57c80551
|
|
@ -24,11 +24,13 @@ import com.nflg.wms.common.pojo.qo.*;
|
|||
import com.nflg.wms.common.pojo.vo.ComponentOutboundEditVO;
|
||||
import com.nflg.wms.common.pojo.vo.ComponentOutboundItemVO;
|
||||
import com.nflg.wms.common.pojo.vo.ComponentOutboundVO;
|
||||
import com.nflg.wms.common.pojo.vo.NoScanItemVO;
|
||||
import com.nflg.wms.common.util.UserUtil;
|
||||
import com.nflg.wms.common.util.VUtil;
|
||||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.validation.Valid;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
|
|
@ -402,6 +404,34 @@ public class ComponentOutboundController extends BaseController {
|
|||
return ApiResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsComponentPacking order = wmscomponentPackingService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsComponentPackingItem> items = wmsComponentPackingItemService.lambdaQuery()
|
||||
.eq(WmsComponentPackingItem::getPackingId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getOutQty().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getIdnrk()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(String.valueOf(item.getPosnr()))
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getIdnrk())
|
||||
.setMaterialDesc(item.getOjtxb())
|
||||
.setFactoryNo(order.getFactoryNo())
|
||||
.setWarehouseNo(item.getLgort())
|
||||
.setNum(item.getOutQty())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码确认出库单
|
||||
* @param request 无码确认出库参数
|
||||
|
|
@ -440,7 +470,7 @@ public class ComponentOutboundController extends BaseController {
|
|||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.existsQrCode(packingItem.getIdnrk()))
|
||||
.throwMessage("物料" + packingItem.getIdnrk() + "已生成二维码,不允许无码出库");
|
||||
|
||||
WmsComponentOutboundItem outboundItem = setWmsComponentOutboundItem(packing, packingItem, outbound, request.getWarehouseNo());
|
||||
WmsComponentOutboundItem outboundItem = setWmsComponentOutboundItem(packing, packingItem, outbound, item.getWarehouseNo());
|
||||
outboundItems.add(outboundItem);
|
||||
|
||||
BigDecimal totalNum = item.getDatas().stream()
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -202,6 +203,33 @@ public class InCostCenterBackController extends BaseController {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码收货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsInCostcenterBack order = inCostcenterBackService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsInCostcenterBackItem> items = inCostcenterBackItemService.lambdaQuery()
|
||||
.eq(WmsInCostcenterBackItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getRspos())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(order.getLgort())
|
||||
.setNum(item.getLeft()))
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码入库
|
||||
*/
|
||||
|
|
@ -220,7 +248,7 @@ public class InCostCenterBackController extends BaseController {
|
|||
.setId(IdUtil.getSnowflakeNextId())
|
||||
.setNo(serialNumberControllerService.generateSerialNumber(11))
|
||||
.setOrderId(order.getId())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(request.getItems().get(0).getWarehouseNo())
|
||||
.setCreateBy(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now());
|
||||
List<WmsInCostcenterBackItem> datas = inCostcenterBackItemService.getList(order.getId());
|
||||
|
|
@ -255,19 +283,19 @@ public class InCostCenterBackController extends BaseController {
|
|||
.setResbRspos(item.getRspos())
|
||||
.setResbMatnr(item.getMatnr())
|
||||
.setMaktx(item.getMaktx())
|
||||
.setResbLgort(request.getWarehouseNo())
|
||||
.setResbLgort(ri.getWarehouseNo())
|
||||
.setResbWerks(order.getWerks())
|
||||
.setResbMeins(item.getMeins())
|
||||
.setErfmg(num)
|
||||
);
|
||||
ri.getDatas().forEach(data -> {
|
||||
String key9 = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getWerks() + "|" + request.getWarehouseNo() + "|" + data.getBinNo();
|
||||
String key9 = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getWerks() + "|" + ri.getWarehouseNo() + "|" + data.getBinNo();
|
||||
inventoryMap.merge(key9, new InventoryInDTO()
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setBatchNo(data.getBatchNo())
|
||||
.setSerialNo(data.getSerialNo())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ri.getWarehouseNo())
|
||||
.setBinLocation(data.getBinNo())
|
||||
.setNum(data.getNum()), (e, i) -> e.setNum(e.getNum().add(i.getNum())));
|
||||
});
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -211,6 +212,33 @@ public class InProduceBackController extends BaseController {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码收货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsInProduceBack order = inProduceBackService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsInProduceBackItem> items = inProduceBackItemService.lambdaQuery()
|
||||
.eq(WmsInProduceBackItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getSqsl().subtract(item.getNum()).compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getRspos())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx2())
|
||||
.setFactoryNo(order.getDwerk())
|
||||
.setWarehouseNo(order.getLgort2())
|
||||
.setNum(item.getSqsl().subtract(item.getNum())))
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码入库
|
||||
*/
|
||||
|
|
@ -257,13 +285,13 @@ public class InProduceBackController extends BaseController {
|
|||
.setNum(num);
|
||||
ticketItems.add(ti);
|
||||
ri.getDatas().forEach(data -> {
|
||||
String key9 = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getDwerk() + "|" + request.getWarehouseNo() + "|" + data.getBinNo();
|
||||
String key9 = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getDwerk() + "|" + ri.getWarehouseNo() + "|" + data.getBinNo();
|
||||
inventoryMap.merge(key9, new InventoryInDTO()
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setBatchNo(data.getBatchNo())
|
||||
.setSerialNo(data.getSerialNo())
|
||||
.setFactoryNo(order.getDwerk())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ri.getWarehouseNo())
|
||||
.setBinLocation(data.getBinNo())
|
||||
.setNum(data.getNum()), (e, i) -> e.setNum(e.getNum().add(i.getNum())));
|
||||
String key7 = item.getMatnr() + "|" + data.getBatchNo();
|
||||
|
|
@ -273,7 +301,7 @@ public class InProduceBackController extends BaseController {
|
|||
.setMatnr(item.getMatnr())
|
||||
.setMaktx(item.getMaktx2())
|
||||
.setWerks(order.getDwerk())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(ri.getWarehouseNo())
|
||||
.setMenge(data.getNum())
|
||||
.setMenge_T(item.getEnmng())
|
||||
.setMeins(item.getMeins()), (e, i) -> { e.setMenge(e.getMenge().add(i.getMenge())); return e; });
|
||||
|
|
|
|||
|
|
@ -24,15 +24,14 @@ import com.nflg.wms.common.pojo.qo.*;
|
|||
import com.nflg.wms.common.pojo.vo.InProduceOrderItemVO;
|
||||
import com.nflg.wms.common.pojo.vo.InProduceOrderMaterialVO;
|
||||
import com.nflg.wms.common.pojo.vo.InProduceOrderVO;
|
||||
import com.nflg.wms.common.pojo.vo.NoScanItemVO;
|
||||
import com.nflg.wms.common.util.DateTimeUtil;
|
||||
import com.nflg.wms.common.util.NumberUtil;
|
||||
import com.nflg.wms.common.util.UserUtil;
|
||||
import com.nflg.wms.common.util.VUtil;
|
||||
import com.nflg.wms.repository.entity.WmsBom;
|
||||
import com.nflg.wms.repository.entity.WmsInProduceOrder;
|
||||
import com.nflg.wms.repository.entity.WmsInProduceOrderItem;
|
||||
import com.nflg.wms.repository.entity.WmsQrCodeMaster;
|
||||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -419,6 +418,34 @@ public class InProduceOrderController extends BaseController {
|
|||
return ApiResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码收货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsInProduceOrder order = produceOrderService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsInProduceOrderItem> items = produceOrderItemService.lambdaQuery()
|
||||
.eq(WmsInProduceOrderItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getNum().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMaterialNo()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo("")
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMaterialNo())
|
||||
.setMaterialDesc(item.getMaterialDesc())
|
||||
.setFactoryNo(item.getFactoryNo())
|
||||
.setWarehouseNo(item.getWarehouseNo())
|
||||
.setNum(item.getNum())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码入库
|
||||
*/
|
||||
|
|
@ -451,35 +478,35 @@ public class InProduceOrderController extends BaseController {
|
|||
VUtil.trueThrowBusinessError(item.getNum().compareTo(num) != 0)
|
||||
.throwMessage("物料" + item.getMaterialNo() + "的收货数量与入库数量不一致");
|
||||
item.setNum(BigDecimal.ZERO);
|
||||
if (!StrUtil.equals(item.getWarehouseNo(), request.getWarehouseNo())) {
|
||||
if (!StrUtil.equals(item.getWarehouseNo(), ri.getWarehouseNo())) {
|
||||
warehouseNoChange.put(item.getId(), item.getWarehouseNo());
|
||||
item.setWarehouseNo(request.getWarehouseNo());
|
||||
item.setWarehouseNo(ri.getWarehouseNo());
|
||||
if (item.getParentId() > 0) {
|
||||
InProduceOrderItemVO pit = list.stream()
|
||||
.filter(l -> Objects.equals(l.getId(), item.getParentId()))
|
||||
.findFirst().get();
|
||||
warehouseNoChange.put(pit.getId(), pit.getWarehouseNo());
|
||||
pit.setWarehouseNo(request.getWarehouseNo());
|
||||
pit.setWarehouseNo(ri.getWarehouseNo());
|
||||
}
|
||||
}
|
||||
ri.getDatas().forEach(data -> {
|
||||
if (Objects.equals(item.getParentId(), 0L)) {
|
||||
String key9 = item.getMaterialNo() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + item.getFactoryNo() + "|" + request.getWarehouseNo() + "|" + data.getBinNo();
|
||||
String key9 = item.getMaterialNo() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + item.getFactoryNo() + "|" + ri.getWarehouseNo() + "|" + data.getBinNo();
|
||||
inventoryMap.merge(key9, new InventoryInDTO()
|
||||
.setMaterialNo(item.getMaterialNo())
|
||||
.setBatchNo(data.getBatchNo())
|
||||
.setSerialNo(data.getSerialNo())
|
||||
.setFactoryNo(item.getFactoryNo())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ri.getWarehouseNo())
|
||||
.setBinLocation(data.getBinNo())
|
||||
.setNum(data.getNum()), (e, i) -> e.setNum(e.getNum().add(i.getNum())));
|
||||
}
|
||||
String key8 = data.getBatchNo() + "|" + item.getFactoryNo() + "|" + item.getUnit() + "|" + request.getWarehouseNo();
|
||||
String key8 = data.getBatchNo() + "|" + item.getFactoryNo() + "|" + item.getUnit() + "|" + ri.getWarehouseNo();
|
||||
input1Map.merge(key8, new Zwm00Mb107QO()
|
||||
.setPWERK(item.getFactoryNo())
|
||||
.setPSMNG(data.getNum())
|
||||
.setAMEIN(item.getUnit())
|
||||
.setLGORT(request.getWarehouseNo())
|
||||
.setLGORT(ri.getWarehouseNo())
|
||||
.setCHARG(data.getBatchNo()), (e, i) -> { e.setPSMNG(e.getPSMNG().add(i.getPSMNG())); return e; });
|
||||
if (StrUtil.isNotBlank(data.getSerialNo())) {
|
||||
sernrs.add(data.getSerialNo());
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ import com.nflg.wms.common.util.UserUtil;
|
|||
import com.nflg.wms.common.util.VUtil;
|
||||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -476,6 +477,34 @@ public class InProduceOrderSurplusController extends BaseController {
|
|||
return ApiResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码收货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsInProduceOrder order = produceOrderService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsInProduceOrderItem> items = produceOrderItemService.lambdaQuery()
|
||||
.eq(WmsInProduceOrderItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getNum().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMaterialNo()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo("")
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMaterialNo())
|
||||
.setMaterialDesc(item.getMaterialDesc())
|
||||
.setFactoryNo(item.getFactoryNo())
|
||||
.setWarehouseNo(item.getWarehouseNo())
|
||||
.setNum(item.getNum())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码收货和入库
|
||||
* @param requests 请求参数
|
||||
|
|
|
|||
|
|
@ -192,8 +192,9 @@ public class NormalPGIController extends BaseController {
|
|||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
@ApiMark(moduleName = "送货单管理", apiName = "获取可无码收货单项列表")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsSrmOrder order = wmsSrmOrderService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("收货单不存在");
|
||||
List<WmsSrmOrderItem> items = wmsSrmOrderItemService.lambdaQuery()
|
||||
.eq(WmsSrmOrderItem::getOrderId, orderId)
|
||||
.list();
|
||||
|
|
@ -201,12 +202,18 @@ public class NormalPGIController extends BaseController {
|
|||
|| noScanningBaseControllerService.existsQrCode(item.getItemCode()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getLineNumber())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getItemCode())
|
||||
.setMaterialDesc(item.getItemName())
|
||||
.setNum(item.getDeliveryQty().subtract(item.getReceiptQty())))
|
||||
.map(item -> {
|
||||
SAPSyncParamsDTO syncParamsDTO = sapCommonService.getMaterialInfoInOrder(item.getPoNum(),
|
||||
order.getSupplierNum(), item.getItemCode(), item.getPoLineNumber());
|
||||
return new NoScanItemVO()
|
||||
.setRowNo(item.getLineNumber())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getItemCode())
|
||||
.setMaterialDesc(item.getItemName())
|
||||
.setFactoryNo(order.getIuCode())
|
||||
.setWarehouseNo(syncParamsDTO.getWarehouseNo())
|
||||
.setNum(item.getDeliveryQty().subtract(item.getReceiptQty()));
|
||||
})
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
|
@ -306,7 +313,7 @@ public class NormalPGIController extends BaseController {
|
|||
.setCreateUserName(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now())
|
||||
.setReceiptNum(totalQty)
|
||||
.setReceivedWarehouse(request.getWarehouseNo())
|
||||
.setReceivedWarehouse(item.getWarehouseNo())
|
||||
.setStorageLocation(materialInfoInOrder.getBinNos())
|
||||
.setInQty(BigDecimal.ZERO)
|
||||
.setNoteNum(order.getNoteNum())
|
||||
|
|
@ -389,7 +396,7 @@ public class NormalPGIController extends BaseController {
|
|||
String codeContent = item.getMaterialNo() + "&" + orderItem.getPoNum() + "&" + orderItem.getPoLineNumber()
|
||||
+ "&" + orderItem.getLineNumber() + "&" + order.getNoteNum() + "&" + order.getIuCode()
|
||||
+ "&" + order.getSupplierNum() + "&" + data.getNum()
|
||||
+ "&" + materialInfoInOrder.getMeins() + "&" + request.getWarehouseNo() + "&" + batchNo
|
||||
+ "&" + materialInfoInOrder.getMeins() + "&" + item.getWarehouseNo() + "&" + batchNo
|
||||
+ "&" + serialNo + "&" + LocalDateTime.now();
|
||||
String codeId = DigestUtil.md5Hex(codeContent);
|
||||
allCodeIds.add(codeId);
|
||||
|
|
@ -419,7 +426,7 @@ public class NormalPGIController extends BaseController {
|
|||
.setCreateUserName(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now())
|
||||
.setReceiptNum(totalQty)
|
||||
.setReceivedWarehouse(request.getWarehouseNo())
|
||||
.setReceivedWarehouse(item.getWarehouseNo())
|
||||
.setStorageLocation(materialInfoInOrder.getBinNos())
|
||||
.setInQty(BigDecimal.ZERO)
|
||||
.setNoteNum(order.getNoteNum())
|
||||
|
|
@ -440,7 +447,7 @@ public class NormalPGIController extends BaseController {
|
|||
String codeContent = item.getMaterialNo() + "&" + orderItem.getPoNum() + "&" + orderItem.getPoLineNumber()
|
||||
+ "&" + orderItem.getLineNumber() + "&" + order.getNoteNum() + "&" + order.getIuCode()
|
||||
+ "&" + order.getSupplierNum() + "&" + data.getNum()
|
||||
+ "&" + materialInfoInOrder.getMeins() + "&" + request.getWarehouseNo() + "&" + batchNo
|
||||
+ "&" + materialInfoInOrder.getMeins() + "&" + item.getWarehouseNo() + "&" + batchNo
|
||||
+ "&" + serialNo + "&" + LocalDateTime.now();
|
||||
String codeId = DigestUtil.md5Hex(codeContent);
|
||||
allCodeIds.add(codeId);
|
||||
|
|
@ -466,7 +473,7 @@ public class NormalPGIController extends BaseController {
|
|||
.setCreateUserName(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now())
|
||||
.setReceiptNum(totalQty)
|
||||
.setReceivedWarehouse(request.getWarehouseNo())
|
||||
.setReceivedWarehouse(item.getWarehouseNo())
|
||||
.setStorageLocation("")
|
||||
.setInQty(totalQty)
|
||||
.setNoteNum(order.getNoteNum())
|
||||
|
|
@ -490,7 +497,7 @@ public class NormalPGIController extends BaseController {
|
|||
String codeContent = item.getMaterialNo() + "&" + orderItem.getPoNum() + "&" + orderItem.getPoLineNumber()
|
||||
+ "&" + orderItem.getLineNumber() + "&" + order.getNoteNum() + "&" + order.getIuCode()
|
||||
+ "&" + order.getSupplierNum() + "&" + data.getNum()
|
||||
+ "&" + materialInfoInOrder.getMeins() + "&" + request.getWarehouseNo() + "&" + batchNo
|
||||
+ "&" + materialInfoInOrder.getMeins() + "&" + item.getWarehouseNo() + "&" + batchNo
|
||||
+ "&" + serialNo + "&" + LocalDateTime.now();
|
||||
String codeId = DigestUtil.md5Hex(codeContent);
|
||||
allCodeIds.add(codeId);
|
||||
|
|
@ -511,7 +518,7 @@ public class NormalPGIController extends BaseController {
|
|||
&& inv.getBatchNo().equals(batchNo)
|
||||
&& inv.getSerialNo().equals(serialNo)
|
||||
&& inv.getFactoryNo().equals(order.getIuCode())
|
||||
&& inv.getWarehouseNo().equals(request.getWarehouseNo())
|
||||
&& inv.getWarehouseNo().equals(item.getWarehouseNo())
|
||||
&& StrUtil.equals(inv.getBinLocation(), binNo))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
|
|
@ -519,7 +526,7 @@ public class NormalPGIController extends BaseController {
|
|||
inventoryDTO = new InventoryInDTO()
|
||||
.setMaterialNo(item.getMaterialNo())
|
||||
.setFactoryNo(order.getIuCode())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(item.getWarehouseNo())
|
||||
.setBinLocation(binNo)
|
||||
.setBatchNo(batchNo)
|
||||
.setSerialNo(serialNo)
|
||||
|
|
@ -549,7 +556,7 @@ public class NormalPGIController extends BaseController {
|
|||
&& dto1.getMeins().equals(materialInfoInOrder.getMeins())
|
||||
&& dto1.getCHARG().equals(batchNo)
|
||||
&& dto1.getWERKS().equals(order.getIuCode())
|
||||
&& dto1.getLGORT().equals(request.getWarehouseNo()))
|
||||
&& dto1.getLGORT().equals(item.getWarehouseNo()))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
if (Objects.isNull(item1Dto)) {
|
||||
|
|
@ -560,7 +567,7 @@ public class NormalPGIController extends BaseController {
|
|||
.setMEINS(materialInfoInOrder.getMeins())
|
||||
.setCHARG(batchNo)
|
||||
.setWERKS(order.getIuCode())
|
||||
.setLGORT(request.getWarehouseNo())
|
||||
.setLGORT(item.getWarehouseNo())
|
||||
.setKZKRI(""));
|
||||
} else {
|
||||
item1Dto.setERFMG(item1Dto.getERFMG().add(data.getNum()));
|
||||
|
|
@ -1188,7 +1195,7 @@ public class NormalPGIController extends BaseController {
|
|||
content.setReceiveType("BY_DELIVERY");
|
||||
content.setLineVOList(new ArrayList<>());
|
||||
dto.setContent(content);
|
||||
dto.setCode("SCAN_RCV_RECEIVE_TO_SRM");
|
||||
dto.setCode("WMS_RCV_RECEIVE_TO_SRM");
|
||||
qcDto.setPushDto(dto);
|
||||
}
|
||||
srmPushDto = qcDto.getPushDto();
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -97,6 +98,7 @@ public class OutAssistanceController extends BaseController {
|
|||
|
||||
@Resource
|
||||
private IOptRecordService optRecordService;
|
||||
|
||||
@Resource
|
||||
private IWmsOutProduceService outProduceService;
|
||||
|
||||
|
|
@ -279,6 +281,34 @@ public class OutAssistanceController extends BaseController {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsOutAssistance order = outAssistanceService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsOutAssistanceItem> items = outAssistanceItemService.lambdaQuery()
|
||||
.eq(WmsOutAssistanceItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr1()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getEbelp())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr1())
|
||||
.setMaterialDesc(item.getMaktx1())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(order.getLgort1())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码出库
|
||||
*/
|
||||
|
|
@ -289,14 +319,14 @@ public class OutAssistanceController extends BaseController {
|
|||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
request.getItems()
|
||||
.forEach(data ->
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(data.getMaterialNo(),order.getWerks(),request.getWarehouseNo()))
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(data.getMaterialNo(),order.getWerks(),data.getWarehouseNo()))
|
||||
.throwMessage("物料" + data.getMaterialNo() + "不支持无码出库")
|
||||
);
|
||||
WmsOutAssistanceTicket ticket = new WmsOutAssistanceTicket()
|
||||
.setId(IdUtil.getSnowflakeNextId())
|
||||
.setNo(serialNumberControllerService.generateSerialNumber(17))
|
||||
.setOrderId(order.getId())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(request.getItems().get(0).getWarehouseNo())
|
||||
.setFinish(true)
|
||||
.setCreateBy(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now());
|
||||
|
|
@ -325,13 +355,13 @@ public class OutAssistanceController extends BaseController {
|
|||
.setNum(num);
|
||||
ticketItems.add(ti);
|
||||
ri.getDatas().forEach(data -> {
|
||||
String key = item.getMatnr1() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getWerks() + "|" + request.getWarehouseNo();
|
||||
String key = item.getMatnr1() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getWerks() + "|" + ri.getWarehouseNo();
|
||||
inventoryOutMap.merge(key, new InventoryOutDTO()
|
||||
.setMaterialNo(item.getMatnr1())
|
||||
.setBatchNo(data.getBatchNo())
|
||||
.setSerialNo(data.getSerialNo())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ri.getWarehouseNo())
|
||||
.setBinLocation(data.getBinNo())
|
||||
.setNum(data.getNum()), (e, i) -> e.setNum(e.getNum().add(i.getNum())));
|
||||
String key7 = item.getMatnr1() + "|" + data.getBatchNo();
|
||||
|
|
@ -343,7 +373,7 @@ public class OutAssistanceController extends BaseController {
|
|||
.setBdmng(item.getErfmg())
|
||||
.setWerks(order.getWerks())
|
||||
.setCharg(data.getBatchNo())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(ri.getWarehouseNo())
|
||||
.setMaktx(item.getMaktx())
|
||||
.setEbeln(order.getEbeln())
|
||||
.setMeins(item.getMeins())
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -281,6 +282,34 @@ public class OutCostCenterController extends BaseController {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsOutCostcenter order = outCostcenterService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsOutCostcenterItem> items = outCostcenterItemService.lambdaQuery()
|
||||
.eq(WmsOutCostcenterItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getRspos())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(item.getLgort())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码出库
|
||||
*/
|
||||
|
|
@ -291,14 +320,14 @@ public class OutCostCenterController extends BaseController {
|
|||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
request.getItems()
|
||||
.forEach(data ->
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(data.getMaterialNo(), order.getWerks(), request.getWarehouseNo()))
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(data.getMaterialNo(), order.getWerks(), data.getWarehouseNo()))
|
||||
.throwMessage("物料" + data.getMaterialNo() + "不支持无码出库")
|
||||
);
|
||||
WmsOutCostcenterTicket ticket = new WmsOutCostcenterTicket()
|
||||
.setId(IdUtil.getSnowflakeNextId())
|
||||
.setNo(serialNumberControllerService.generateSerialNumber(15))
|
||||
.setOrderId(order.getId())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(request.getItems().get(0).getWarehouseNo())
|
||||
.setFinish(true)
|
||||
.setCreateBy(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now());
|
||||
|
|
@ -327,13 +356,13 @@ public class OutCostCenterController extends BaseController {
|
|||
.setNum(num);
|
||||
ticketItems.add(ti);
|
||||
ri.getDatas().forEach(data -> {
|
||||
String key = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getWerks() + "|" + request.getWarehouseNo();
|
||||
String key = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getWerks() + "|" + ri.getWarehouseNo();
|
||||
inventoryOutMap.merge(key, new InventoryOutDTO()
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setBatchNo(data.getBatchNo())
|
||||
.setSerialNo(data.getSerialNo())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ri.getWarehouseNo())
|
||||
.setBinLocation(data.getBinNo())
|
||||
.setNum(data.getNum()), (e, i) -> e.setNum(e.getNum().add(i.getNum())));
|
||||
String key7 = item.getMatnr() + "|" + data.getBatchNo();
|
||||
|
|
@ -344,7 +373,7 @@ public class OutCostCenterController extends BaseController {
|
|||
.setResbMatnr(item.getMatnr())
|
||||
.setMaktx(item.getMaktx())
|
||||
.setResbWerks(order.getWerks())
|
||||
.setResbLgort(request.getWarehouseNo())
|
||||
.setResbLgort(ri.getWarehouseNo())
|
||||
.setResbMeins(item.getMeins())
|
||||
.setQty(data.getNum())
|
||||
.setResbErfmg(item.getBdmng())
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -408,6 +409,34 @@ public class OutProduceController extends BaseController {
|
|||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsOutProduce order = outProduceService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsOutProduceItem> items = outProduceItemService.lambdaQuery()
|
||||
.eq(WmsOutProduceItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getSqsl().subtract(item.getNum()).compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getRspos())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx2())
|
||||
.setFactoryNo(order.getDwerk())
|
||||
.setWarehouseNo(order.getLgort2())
|
||||
.setNum(item.getSqsl().subtract(item.getNum()))
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码出库
|
||||
*/
|
||||
|
|
@ -418,14 +447,14 @@ public class OutProduceController extends BaseController {
|
|||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
request.getItems()
|
||||
.forEach(data ->
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(data.getMaterialNo(),order.getDwerk(),request.getWarehouseNo()))
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(data.getMaterialNo(),order.getDwerk(),data.getWarehouseNo()))
|
||||
.throwMessage("物料" + data.getMaterialNo() + "不支持无码出库")
|
||||
);
|
||||
WmsOutProduceTicket ticket = new WmsOutProduceTicket()
|
||||
.setId(IdUtil.getSnowflakeNextId())
|
||||
.setNo(serialNumberControllerService.generateSerialNumber(21))
|
||||
.setProduceId(order.getId())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(request.getItems().get(0).getWarehouseNo())
|
||||
.setFinish(true)
|
||||
.setCreateBy(UserUtil.getUserName())
|
||||
.setCreateTime(LocalDateTime.now());
|
||||
|
|
@ -458,13 +487,13 @@ public class OutProduceController extends BaseController {
|
|||
.setNum(num);
|
||||
ticketItems.add(ti);
|
||||
ri.getDatas().forEach(data -> {
|
||||
String key = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getDwerk() + "|" + request.getWarehouseNo();
|
||||
String key = item.getMatnr() + "|" + data.getBatchNo() + "|" + data.getSerialNo() + "|" + order.getDwerk() + "|" + ri.getWarehouseNo();
|
||||
inventoryOutMap.merge(key, new InventoryOutDTO()
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setBatchNo(data.getBatchNo())
|
||||
.setSerialNo(data.getSerialNo())
|
||||
.setFactoryNo(order.getDwerk())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ri.getWarehouseNo())
|
||||
.setBinLocation(data.getBinNo())
|
||||
.setNum(data.getNum()), (e, i) -> e.setNum(e.getNum().add(i.getNum())));
|
||||
String key7 = item.getMatnr() + "|" + data.getBatchNo();
|
||||
|
|
@ -474,7 +503,7 @@ public class OutProduceController extends BaseController {
|
|||
.setMatnr(item.getMatnr())
|
||||
.setMaktx(item.getMaktx2())
|
||||
.setWerks(order.getDwerk())
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(ri.getWarehouseNo())
|
||||
.setMenge(data.getNum())
|
||||
.setMenge_t(BigDecimal.ZERO)
|
||||
.setMeins(item.getMeins()), (e, i) -> { e.setMenge(e.getMenge().add(i.getMenge())); return e; });
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ import com.nflg.wms.common.pojo.dto.ZWM3A06Input1DTO;
|
|||
import com.nflg.wms.common.pojo.dto.ZWM3A06Input2DTO;
|
||||
import com.nflg.wms.common.pojo.qo.OutPurchaseSearchQO;
|
||||
import com.nflg.wms.common.pojo.qo.QRCodeQO;
|
||||
import com.nflg.wms.common.pojo.vo.NoScanItemVO;
|
||||
import com.nflg.wms.common.pojo.vo.OutPurchaseVO;
|
||||
import com.nflg.wms.common.pojo.vo.ZWM3A05ItemVO;
|
||||
import com.nflg.wms.common.pojo.vo.ZWM3A05VO;
|
||||
|
|
@ -30,6 +31,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.validation.Valid;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
|
|
@ -138,6 +140,34 @@ public class OutPurchaseController extends BaseController {
|
|||
return ApiResult.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScan")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
|
||||
WmsReturnRequest order = returnRequestService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsReturnRequestItem> items = returnRequestItemService.lambdaQuery()
|
||||
.eq(WmsReturnRequestItem::getApplicationId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMaterialCode()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getPoLineNumber())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMaterialCode())
|
||||
.setMaterialDesc(item.getMaterialDescription())
|
||||
.setFactoryNo(item.getFactoryCode())
|
||||
.setWarehouseNo(item.getStorageLocation())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码出库
|
||||
*/
|
||||
|
|
@ -156,7 +186,7 @@ public class OutPurchaseController extends BaseController {
|
|||
request.getItems().forEach(ri -> {
|
||||
WmsReturnRequestItem rrItem = returnRequestItemService.getById(ri.getOrderItemId());
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(rrItem)).throwMessage("申请单项无效:" + ri.getOrderItemId());
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(rrItem.getMaterialCode(), rrItem.getFactoryCode(), request.getWarehouseNo()))
|
||||
VUtil.trueThrowBusinessError(noScanningBaseControllerService.quantityConsistencyCheck(rrItem.getMaterialCode(), rrItem.getFactoryCode(), ri.getWarehouseNo()))
|
||||
.throwMessage("物料" + rrItem.getMaterialCode() + "不支持无码出库");
|
||||
VUtil.trueThrowBusinessError(rrItem.getLeft().compareTo(BigDecimal.ZERO) <= 0)
|
||||
.throwMessage("物料" + ri.getMaterialNo() + "已全部退库");
|
||||
|
|
|
|||
|
|
@ -452,9 +452,9 @@ public class StructuralPackageOrderController extends BaseController {
|
|||
// 获取托盘号:如果物料项有关联的托盘,则使用托盘号;否则为空
|
||||
if (item.getTrayId() != null) {
|
||||
WmsStructuralPackageOrderTray tray = trays.stream()
|
||||
.filter(t -> t.getId().equals(item.getTrayId()))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
.filter(t -> t.getId().equals(item.getTrayId()))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
if (tray != null) {
|
||||
ivo.setNo(tray.getNo());
|
||||
} else {
|
||||
|
|
@ -519,6 +519,7 @@ public class StructuralPackageOrderController extends BaseController {
|
|||
|
||||
/**
|
||||
* 获取托盘零件列表
|
||||
*
|
||||
* @param id 订单id
|
||||
*/
|
||||
@GetMapping("getItems")
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -489,6 +490,34 @@ public class TransferCompanyController extends BaseController {
|
|||
return ApiResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScanOut")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScanOut(@RequestParam Long orderId) {
|
||||
WmsTransferCompany order = transferCompanyService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsTransferCompanyItem> items = transferCompanyItemService.lambdaQuery()
|
||||
.eq(WmsTransferCompanyItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getEbelp())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx())
|
||||
.setFactoryNo(order.getReswk())
|
||||
.setWarehouseNo(item.getLgpro())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无扫码出库
|
||||
*/
|
||||
|
|
@ -560,7 +589,7 @@ public class TransferCompanyController extends BaseController {
|
|||
.setUniqNo("")
|
||||
.setQiTao(false)
|
||||
.setFactoryNo(order.getReswk())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(item.getWarehouseNo())
|
||||
.setNum(data.getNum())
|
||||
.setEbelp(orderItem.getEbelp())
|
||||
.setEbeln(order.getEbeln())
|
||||
|
|
@ -918,6 +947,32 @@ public class TransferCompanyController extends BaseController {
|
|||
return ApiResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码收货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScanIn")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScanIn(@RequestParam Long orderId) {
|
||||
WmsTransferCompanyTicket order = transferCompanyTicketService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<TransferCompanyItemVO> items = transferCompanyTicketItemService.getList(orderId);
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getEbelp())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx())
|
||||
.setFactoryNo(item.getWerks())
|
||||
.setWarehouseNo(item.getLgpbe1())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无扫码入库
|
||||
*/
|
||||
|
|
@ -970,7 +1025,7 @@ public class TransferCompanyController extends BaseController {
|
|||
.setMaterialNo(ticketItem.getMatnr())
|
||||
.setMaterialDesc(ticketItem.getMaktx())
|
||||
.setFactoryNo(ticket.getWerks())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(item.getWarehouseNo())
|
||||
.setBinNo(binNo)
|
||||
.setContent("")
|
||||
.setBatchNo(batchNo)
|
||||
|
|
@ -1017,7 +1072,7 @@ public class TransferCompanyController extends BaseController {
|
|||
.map(ls -> new ZWM3A17Item1DTO()
|
||||
.setMATNR(ls.get(0).getMaterialNo())
|
||||
.setCHARG(ls.get(0).getBatchNo())
|
||||
.setLGORT(request.getWarehouseNo())
|
||||
.setLGORT(ls.get(0).getWarehouseNo())
|
||||
.setERFMG(ls.stream().map(InMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add))
|
||||
.setWERKS(ticket.getWerks())
|
||||
.setEBELP(ls.get(0).getEbelp())
|
||||
|
|
@ -1041,7 +1096,7 @@ public class TransferCompanyController extends BaseController {
|
|||
.set(WmsTransferCompanyTicket::getDocYear, vos.getKey().getValue())
|
||||
.set(WmsTransferCompanyTicket::getUpdateBy, UserUtil.getUserName())
|
||||
.set(WmsTransferCompanyTicket::getUpdateTime, LocalDateTime.now())
|
||||
.set(WmsTransferCompanyTicket::getLgort1, request.getWarehouseNo())
|
||||
.set(WmsTransferCompanyTicket::getLgort1, request.getItems().get(0).getWarehouseNo())
|
||||
.set(WmsTransferCompanyTicket::getState, 1)
|
||||
.eq(WmsTransferCompanyTicket::getId, ticket.getId())
|
||||
.update();
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ import com.nflg.wms.common.util.VUtil;
|
|||
import com.nflg.wms.repository.entity.*;
|
||||
import com.nflg.wms.repository.service.*;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import com.nflg.wms.starter.annotation.ApiMark;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.Valid;
|
||||
|
|
@ -515,6 +516,34 @@ public class TransferFactoryController extends BaseController {
|
|||
return ApiResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码发货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScanOut")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScanOut(@RequestParam Long orderId) {
|
||||
WmsTransferFactory order = transferFactoryService.getById(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<WmsTransferFactoryItem> items = transferFactoryItemService.lambdaQuery()
|
||||
.eq(WmsTransferFactoryItem::getOrderId, orderId)
|
||||
.list();
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getRspos())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(order.getLgort())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码出库
|
||||
*/
|
||||
|
|
@ -533,7 +562,7 @@ public class TransferFactoryController extends BaseController {
|
|||
WmsTransferFactoryTicket ticket = new WmsTransferFactoryTicket()
|
||||
.setId(IdUtil.getSnowflakeNextId())
|
||||
.setNo(serialNumberControllerService.generateSerialNumber(19))
|
||||
.setLgort(request.getWarehouseNo())
|
||||
.setLgort(request.getItems().get(0).getWarehouseNo())
|
||||
.setOrderId(order.getId())
|
||||
.setFinish(true)
|
||||
.setCreateBy(UserUtil.getUserName())
|
||||
|
|
@ -581,7 +610,7 @@ public class TransferFactoryController extends BaseController {
|
|||
.setUniqNo("NO_SCAN_" + IdUtil.getSnowflakeNextId())
|
||||
.setQiTao(false)
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(item.getWarehouseNo())
|
||||
.setBinNo(binNo)
|
||||
.setNum(data.getNum())
|
||||
.setCreateBy(UserUtil.getUserName())
|
||||
|
|
@ -891,6 +920,32 @@ public class TransferFactoryController extends BaseController {
|
|||
return ApiResult.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取可无码收货单项列表
|
||||
* @param orderId 订单ID
|
||||
*/
|
||||
@GetMapping("getListForNoScanIn")
|
||||
public ApiResult<List<NoScanItemVO>> getListForNoScanIn(@RequestParam Long orderId) {
|
||||
TransferFactoryTicketInfoVO order = transferFactoryTicketService.getInfo(orderId);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("订单不存在");
|
||||
List<TransferFactoryItemVO> items = transferFactoryTicketItemService.getList(orderId);
|
||||
items.removeIf(item -> item.getLeft().compareTo(BigDecimal.ZERO) <= 0
|
||||
|| noScanningBaseControllerService.existsQrCode(item.getMatnr()));
|
||||
return ApiResult.success(
|
||||
items.stream()
|
||||
.map(item -> new NoScanItemVO()
|
||||
.setRowNo(item.getRspos())
|
||||
.setOrderItemId(item.getId())
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setMaterialDesc(item.getMaktx())
|
||||
.setFactoryNo(order.getWerks())
|
||||
.setWarehouseNo(item.getUmlgo())
|
||||
.setNum(item.getLeft())
|
||||
)
|
||||
.toList()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无码入库
|
||||
*/
|
||||
|
|
@ -937,7 +992,7 @@ public class TransferFactoryController extends BaseController {
|
|||
.setBatchNo(batchNo)
|
||||
.setSerialNo(serialNo)
|
||||
.setFactoryNo(ticket.getWerks())
|
||||
.setWarehouseNo(request.getWarehouseNo())
|
||||
.setWarehouseNo(ticketItem.getUmlgo())
|
||||
.setBinNo(binNo)
|
||||
.setUniqNo("NO_SCAN_" + IdUtil.getSnowflakeNextId())
|
||||
.setRspos(ticketItem.getRspos())
|
||||
|
|
@ -979,7 +1034,7 @@ public class TransferFactoryController extends BaseController {
|
|||
.setErfmg(item.getNum())
|
||||
.setMeins(item.getMeins())
|
||||
.setWerks(ticket.getWerks())
|
||||
.setLgort(request.getWarehouseNo())).toList()
|
||||
.setLgort(item.getUmlgo())).toList()
|
||||
)
|
||||
.setT_list2(records.stream()
|
||||
.collect(Collectors.groupingBy(InMaterialScanRecord::getKey2))
|
||||
|
|
@ -1002,7 +1057,7 @@ public class TransferFactoryController extends BaseController {
|
|||
.set(WmsTransferFactoryTicket::getDocYear, vo.getEMjahr())
|
||||
.set(WmsTransferFactoryTicket::getUpdateBy, UserUtil.getUserName())
|
||||
.set(WmsTransferFactoryTicket::getUpdateTime, LocalDateTime.now())
|
||||
.set(WmsTransferFactoryTicket::getLgort1, request.getWarehouseNo())
|
||||
.set(WmsTransferFactoryTicket::getLgort1, request.getItems().get(0).getWarehouseNo())
|
||||
.set(WmsTransferFactoryTicket::getState, 1)
|
||||
.eq(WmsTransferFactoryTicket::getId, ticket.getId())
|
||||
.update();
|
||||
|
|
|
|||
|
|
@ -26,6 +26,12 @@ public class NoScanningItemRequest {
|
|||
@NotBlank
|
||||
private String materialNo;
|
||||
|
||||
/**
|
||||
* 库存地点编号
|
||||
*/
|
||||
@NotBlank
|
||||
private String warehouseNo;
|
||||
|
||||
/**
|
||||
* 明细列表
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -19,12 +19,6 @@ public class NoScanningRequest {
|
|||
@NotNull
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 库存地点编号
|
||||
*/
|
||||
@NotBlank
|
||||
private String warehouseNo;
|
||||
|
||||
@Valid
|
||||
@NotEmpty
|
||||
private List<NoScanningItemRequest> items;
|
||||
|
|
|
|||
|
|
@ -29,6 +29,16 @@ public class NoScanItemVO {
|
|||
*/
|
||||
private String materialDesc;
|
||||
|
||||
/**
|
||||
* 工厂编号
|
||||
*/
|
||||
private String factoryNo;
|
||||
|
||||
/**
|
||||
* 库存地点编号
|
||||
*/
|
||||
private String warehouseNo;
|
||||
|
||||
/**
|
||||
* 数量
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue