feat(schProdScheduleItem): 新增明细下发功能支持逐条明细独立下发

- 在 ISchProdScheduleItemService 中新增 receiveFromDetail 方法接口
- 在 SchProdScheduleItemController 中新增 /receiveFromDetail 接口
- 在 SchProdScheduleItemServiceImpl 中实现明细下发业务逻辑
- 新增 SchProdScheduleItemDispatchBo 数据传输对象
- 支持按明细+工序步骤维度删除重复记录后再重新插入
- 使用明细自身 scheduleDate 作为生产日期确保多天排产准确性
- 实现批量插入排产单明细项功能
This commit is contained in:
2026-07-10 11:15:30 +08:00
parent df89a088ee
commit c6c77294af
4 changed files with 188 additions and 0 deletions

View File

@@ -24,6 +24,7 @@ import com.klp.flow.domain.bo.SchProdScheduleItemMergeBo;
import com.klp.flow.domain.bo.SchProdScheduleItemReceiveBo;
import com.klp.flow.domain.bo.SchProdScheduleItemMergeValidateBo;
import com.klp.flow.domain.bo.SchProdScheduleItemSortBo;
import com.klp.flow.domain.bo.SchProdScheduleItemDispatchBo;
import com.klp.flow.service.ISchProdScheduleItemService;
import com.klp.common.core.page.TableDataInfo;
@@ -132,6 +133,18 @@ public class SchProdScheduleItemController extends BaseController {
return toAjax(iSchProdScheduleItemService.receiveByBo(receiveBo));
}
/**
* 明细下发:逐条从 sch_prod_schedule_detail 下发到 sch_prod_schedule_item
* 生产日期使用明细的 scheduleDate支持一条一条明细独立下发
* 若已下发过(同明细+同工序),先删除旧记录再重新插入
*/
@Log(title = "排产单主加明细可合并", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping("/receiveFromDetail")
public R<Void> receiveFromDetail(@Validated @RequestBody SchProdScheduleItemDispatchBo dispatchBo) {
return toAjax(iSchProdScheduleItemService.receiveFromDetail(dispatchBo));
}
/**
* 合并校验:检查待合并记录来源产需单的 header 字段是否一致
*/