2025.2.18
在 outboundOperation 方法中,抛出的 RuntimeException 信息比较简单,可以考虑自定义异常类,提供更详细的错误信息,方便后续的错误处理和调试。
public class OutboundQuantityExceedException extends RuntimeException {
public OutboundQuantityExceedException(String message) {
super(message);
}
}
@Override
public MaterialLedgerDetail outboundOperation(MaterialLedgerDetail ledgerDetail) {
List
int totalQuantity = calculateTotalQuantity(existingDetails);
if (ledgerDetail.getQuantity() > totalQuantity) {
throw new OutboundQuantityExceedException("出库数量大于库存余额,无法进行出库!当前库存:" + totalQuantity + ",出库数量:" + ledgerDetail.getQuantity());
}
ledgerDetail.setLedgerNumber(CodeGenerator.generateLedgerNumber());
ledgerDetail.setOperationType("出库");
return materialLedgerDetailRepository.save(ledgerDetail);
}

浙公网安备 33010602011771号