feat(transfer): 新增调拨单明细确认功能
- 在IWmsTransferOrderItemService接口中添加confirmTransfer方法 - 在WmsTransferOrderItemBo中增加itemType字段用于物料类型标识 - 创建WmsTransferOrderItemController的confirm端点处理确认请求 - 实现WmsTransferOrderItemServiceImpl中的confirmTransfer业务逻辑 - 集成IWmsMaterialCoilService服务更新钢卷相关状态信息 - 完成调拨单明细数据同步更新确保数据一致性
This commit is contained in:
@@ -116,4 +116,14 @@ public class WmsTransferOrderItemController extends BaseController {
|
|||||||
public R<Void> batchAdd(@Validated(AddGroup.class) @RequestBody WmsTransferOrderItemBo bo) {
|
public R<Void> batchAdd(@Validated(AddGroup.class) @RequestBody WmsTransferOrderItemBo bo) {
|
||||||
return toAjax(iWmsTransferOrderItemService.batchInsert(bo));
|
return toAjax(iWmsTransferOrderItemService.batchInsert(bo));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 确认调拨
|
||||||
|
*/
|
||||||
|
@Log(title = "调拨单明细", businessType = BusinessType.UPDATE)
|
||||||
|
@RepeatSubmit()
|
||||||
|
@PostMapping("/confirm")
|
||||||
|
public R<Void> confirm(@Validated(AddGroup.class) @RequestBody WmsTransferOrderItemBo bo) {
|
||||||
|
return toAjax(iWmsTransferOrderItemService.confirmTransfer(bo));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -74,5 +74,9 @@ public class WmsTransferOrderItemBo extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
private String remark;
|
private String remark;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料类型
|
||||||
|
*/
|
||||||
|
private String itemType;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,4 +57,9 @@ public interface IWmsTransferOrderItemService {
|
|||||||
* 批量新增调拨单明细
|
* 批量新增调拨单明细
|
||||||
*/
|
*/
|
||||||
Boolean batchInsert(WmsTransferOrderItemBo bo);
|
Boolean batchInsert(WmsTransferOrderItemBo bo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 确认调拨
|
||||||
|
*/
|
||||||
|
Boolean confirmTransfer(WmsTransferOrderItemBo bo);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import com.klp.mapper.WmsRawMaterialMapper;
|
|||||||
import com.klp.mapper.WmsProductMapper;
|
import com.klp.mapper.WmsProductMapper;
|
||||||
import com.klp.mapper.WmsMaterialCoilMapper;
|
import com.klp.mapper.WmsMaterialCoilMapper;
|
||||||
import com.klp.service.IWmsTransferOrderItemService;
|
import com.klp.service.IWmsTransferOrderItemService;
|
||||||
|
import com.klp.service.IWmsMaterialCoilService;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -44,6 +45,7 @@ public class WmsTransferOrderItemServiceImpl implements IWmsTransferOrderItemSer
|
|||||||
private final WmsRawMaterialMapper rawMaterialMapper;
|
private final WmsRawMaterialMapper rawMaterialMapper;
|
||||||
private final WmsProductMapper productMapper;
|
private final WmsProductMapper productMapper;
|
||||||
private final WmsMaterialCoilMapper coilMapper;
|
private final WmsMaterialCoilMapper coilMapper;
|
||||||
|
private final IWmsMaterialCoilService coilService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询调拨单明细
|
* 查询调拨单明细
|
||||||
@@ -240,4 +242,41 @@ public class WmsTransferOrderItemServiceImpl implements IWmsTransferOrderItemSer
|
|||||||
|
|
||||||
return baseMapper.insertBatch(items);
|
return baseMapper.insertBatch(items);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 确认调拨
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Boolean confirmTransfer(WmsTransferOrderItemBo bo) {
|
||||||
|
Long coilId = bo.getCoilId();
|
||||||
|
Long itemId = bo.getItemIdAfter();
|
||||||
|
String itemType = bo.getItemType();
|
||||||
|
Long warehouseId = bo.getWarehouseIdAfter();
|
||||||
|
|
||||||
|
if (coilId == null) {
|
||||||
|
throw new IllegalArgumentException("coilId不能为空");
|
||||||
|
}
|
||||||
|
|
||||||
|
WmsMaterialCoil coil = coilMapper.selectById(coilId);
|
||||||
|
if (coil == null) {
|
||||||
|
throw new IllegalArgumentException("钢卷不存在");
|
||||||
|
}
|
||||||
|
|
||||||
|
coil.setItemId(itemId);
|
||||||
|
coil.setItemType(itemType);
|
||||||
|
coil.setWarehouseId(warehouseId);
|
||||||
|
coilMapper.updateById(coil);
|
||||||
|
|
||||||
|
LambdaQueryWrapper<WmsTransferOrderItem> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(WmsTransferOrderItem::getCoilId, coilId);
|
||||||
|
WmsTransferOrderItem item = baseMapper.selectOne(wrapper);
|
||||||
|
if (item != null) {
|
||||||
|
item.setItemIdAfter(itemId);
|
||||||
|
item.setMaterialTypeAfter(Objects.equals(itemType, "raw_material") ? 1L : 2L);
|
||||||
|
item.setWarehouseIdAfter(warehouseId);
|
||||||
|
baseMapper.updateById(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user