feat(controller): 添加无码操作功能并修复仓库编号传递错误

- 在多个控制器中添加 getListForNoScan 接口用于获取可无码操作的物料列表
- 新增 NoScanItemVO 数据传输对象用于无码操作的物料信息
- 修复多处仓库编号 warehouseNo 参数传递错误的问题
- 统一在控制器中引入 ApiMark 注解用于接口标记
- 优化无码出入库流程中的仓库编号使用逻辑
- 移除 NormalPGIController 中重复的 ApiMark 注解
- 完善无码操作相关的数据验证和业务逻辑处理
This commit is contained in:
曹鹏飞 2026-06-02 18:07:01 +08:00
parent 64e2bfd431
commit 072d461424
15 changed files with 422 additions and 61 deletions

View File

@ -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,33 @@ 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())
.setWarehouseNo(item.getLgort())
.setNum(item.getOutQty())
)
.toList()
);
}
/**
* 无码确认出库单
* @param request 无码确认出库参数
@ -440,7 +469,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()

View File

@ -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,32 @@ 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())
.setWarehouseNo(order.getLgort())
.setNum(item.getLeft()))
.toList()
);
}
/**
* 无码入库
*/
@ -220,7 +247,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 +282,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())));
});

View File

@ -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,32 @@ 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())
.setWarehouseNo(order.getLgort2())
.setNum(item.getSqsl().subtract(item.getNum())))
.toList()
);
}
/**
* 无码入库
*/
@ -257,13 +284,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 +300,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; });

View File

@ -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,33 @@ 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())
.setWarehouseNo(item.getWarehouseNo())
.setNum(item.getNum())
)
.toList()
);
}
/**
* 无码入库
*/
@ -451,35 +477,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());

View File

@ -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,33 @@ 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())
.setWarehouseNo(item.getWarehouseNo())
.setNum(item.getNum())
)
.toList()
);
}
/**
* 无码收货和入库
* @param requests 请求参数

View File

@ -192,7 +192,6 @@ public class NormalPGIController extends BaseController {
* @param orderId 订单ID
*/
@GetMapping("getListForNoScan")
@ApiMark(moduleName = "送货单管理", apiName = "获取可无码收货单项列表")
public ApiResult<List<NoScanItemVO>> getListForNoScan(@RequestParam Long orderId) {
List<WmsSrmOrderItem> items = wmsSrmOrderItemService.lambdaQuery()
.eq(WmsSrmOrderItem::getOrderId, orderId)
@ -206,6 +205,7 @@ public class NormalPGIController extends BaseController {
.setOrderItemId(item.getId())
.setMaterialNo(item.getItemCode())
.setMaterialDesc(item.getItemName())
.setWarehouseNo("")
.setNum(item.getDeliveryQty().subtract(item.getReceiptQty())))
.toList()
);
@ -306,7 +306,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 +389,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 +419,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 +440,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 +466,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 +490,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 +511,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 +519,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 +549,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 +560,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()));

View File

@ -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;
@ -279,6 +280,33 @@ 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())
.setWarehouseNo(order.getLgort1())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无码出库
*/
@ -289,14 +317,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 +353,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 +371,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())

View File

@ -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,33 @@ 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())
.setWarehouseNo(item.getLgort())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无码出库
*/
@ -291,14 +319,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 +355,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 +372,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())

View File

@ -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,33 @@ 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())
.setWarehouseNo(order.getLgort2())
.setNum(item.getSqsl().subtract(item.getNum()))
)
.toList()
);
}
/**
* 无码出库
*/
@ -418,14 +446,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 +486,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 +502,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; });

View File

@ -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,33 @@ 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())
.setWarehouseNo(item.getStorageLocation())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无码出库
*/
@ -156,7 +185,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() + "已全部退库");

View File

@ -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,33 @@ 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())
.setWarehouseNo(item.getLgpro())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无扫码出库
*/
@ -560,7 +588,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 +946,31 @@ 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())
.setWarehouseNo(item.getLgpbe1())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无扫码入库
*/
@ -970,7 +1023,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 +1070,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 +1094,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();

View File

@ -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,33 @@ 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())
.setWarehouseNo(order.getLgort())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无码出库
*/
@ -533,7 +561,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 +609,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 +919,31 @@ 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())
.setWarehouseNo(item.getUmlgo())
.setNum(item.getLeft())
)
.toList()
);
}
/**
* 无码入库
*/
@ -937,7 +990,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 +1032,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 +1055,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();

View File

@ -26,6 +26,12 @@ public class NoScanningItemRequest {
@NotBlank
private String materialNo;
/**
* 库存地点编号
*/
@NotBlank
private String warehouseNo;
/**
* 明细列表
*/

View File

@ -19,12 +19,6 @@ public class NoScanningRequest {
@NotNull
private Long id;
/**
* 库存地点编号
*/
@NotBlank
private String warehouseNo;
@Valid
@NotEmpty
private List<NoScanningItemRequest> items;

View File

@ -29,6 +29,11 @@ public class NoScanItemVO {
*/
private String materialDesc;
/**
* 库存地点编号
*/
private String warehouseNo;
/**
* 数量
*/