feat(wms): 添加钢卷加工链追溯功能
- 在IWmsMaterialCoilService中新增queryCoilChain方法实现双向追溯
- 在WmsMaterialCoilController中添加/chain/all/{coilId}接口
- 在WmsMaterialCoilMapper中新增selectByParentCoilIds批量查询方法
- 在Mapper XML中实现FIND_IN_SET匹配逗号分隔的parent_coil_id查询
- 实现完整的双向追溯逻辑:向上追溯祖先向下查找后代支持合卷场景
- 创建CoilChainVo数据传输对象包含追溯结果和节点关系信息
- 实现BFS算法构建完整的加工链父子关系映射和深度计算
This commit is contained in:
@@ -369,6 +369,24 @@ public class WmsMaterialCoilController extends BaseController {
|
||||
return R.ok(iWmsMaterialCoilService.queryById(coilId));
|
||||
}
|
||||
|
||||
/**
|
||||
* 钢卷加工链追溯查询
|
||||
* 根据钢卷ID双向追溯完整加工链条:
|
||||
* - 向上:沿parentCoilId一直查到根节点
|
||||
* - 向下:查找所有后代钢卷
|
||||
*
|
||||
* @param coilId 钢卷ID
|
||||
*/
|
||||
@GetMapping("/chain/all/{coilId}")
|
||||
public R<com.klp.domain.vo.CoilChainVo> getChain(@NotNull(message = "主键不能为空")
|
||||
@PathVariable("coilId") Long coilId) {
|
||||
com.klp.domain.vo.CoilChainVo result = iWmsMaterialCoilService.queryCoilChain(coilId);
|
||||
if (result == null) {
|
||||
return R.fail("钢卷不存在");
|
||||
}
|
||||
return R.ok(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增钢卷物料表
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user