fix(MES): 转移单内部调拨保存不再强制要求“是否配送”
内部调拨时前端不展示 deliveryFlag(是否配送) 字段、不传值,导致请求为 null,
撞上后端 @NotNull 校验报“是否配送不能为空”。
- MesWmTransferSaveReqVO: 去掉 deliveryFlag 的 @NotNull 必填校验
- MesWmTransferServiceImpl: create/updateTransfer 中将 null 归一化为 false
外部调拨(含配送模式)不受影响。
Co-Authored-By: Claude <noreply@anthropic.com>
| | |
| | | @NotNull(message = "转移单类型不能为空") |
| | | private Integer type; |
| | | |
| | | @Schema(description = "是否配送", requiredMode = REQUIRED, example = "true") |
| | | @NotNull(message = "是否配送不能为空") |
| | | @Schema(description = "是否配送", example = "true") |
| | | private Boolean deliveryFlag; |
| | | |
| | | @Schema(description = "收货人", example = "张三") |
| | |
| | | // 插入 |
| | | MesWmTransferDO transfer = BeanUtils.toBean(createReqVO, MesWmTransferDO.class); |
| | | transfer.setStatus(MesWmTransferStatusEnum.PREPARE.getStatus()); |
| | | // 内部调拨(或未选择配送模式)时不传“是否配送”,统一按非配送处理,避免必填校验拦截 |
| | | if (transfer.getDeliveryFlag() == null) { |
| | | transfer.setDeliveryFlag(false); |
| | | } |
| | | transferMapper.insert(transfer); |
| | | return transfer.getId(); |
| | | } |
| | |
| | | |
| | | // 更新 |
| | | MesWmTransferDO updateObj = BeanUtils.toBean(updateReqVO, MesWmTransferDO.class); |
| | | // 内部调拨(或未选择配送模式)时前端不传“是否配送”,统一按非配送处理,避免必填校验拦截 |
| | | if (updateObj.getDeliveryFlag() == null) { |
| | | updateObj.setDeliveryFlag(false); |
| | | } |
| | | transferMapper.updateById(updateObj); |
| | | } |
| | | |