package com.klp.flow.service; import com.klp.flow.domain.SchProdScheduleItem; import com.klp.flow.domain.vo.SchProdScheduleItemVo; import com.klp.flow.domain.vo.SchProdScheduleItemMergeValidateVo; import com.klp.flow.domain.bo.SchProdScheduleItemBo; import com.klp.flow.domain.bo.SchProdScheduleItemMergeBo; import com.klp.flow.domain.bo.SchProdScheduleItemReceiveBo; import com.klp.flow.domain.bo.SchProdScheduleItemMergeValidateBo; import com.klp.common.core.page.TableDataInfo; import com.klp.common.core.domain.PageQuery; import java.util.Collection; import java.util.List; /** * 排产单主加明细可合并Service接口 * * @author klp * @date 2026-06-26 */ public interface ISchProdScheduleItemService { /** * 查询排产单主加明细可合并 */ SchProdScheduleItemVo queryById(Long scheduleId); /** * 查询排产单主加明细可合并列表 */ TableDataInfo queryPageList(SchProdScheduleItemBo bo, PageQuery pageQuery); /** * 查询排产单主加明细可合并列表 */ List queryList(SchProdScheduleItemBo bo); /** * 新增排产单主加明细可合并 */ Boolean insertByBo(SchProdScheduleItemBo bo); /** * 修改排产单主加明细可合并 */ Boolean updateByBo(SchProdScheduleItemBo bo); /** * 批量新增排产单主加明细可合并 */ Boolean insertBatchByBo(List boList); /** * 校验并批量删除排产单主加明细可合并信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); /** * 合并多条排产单主加明细可合并记录:先删除被合并的记录,再插入合并后的新记录 */ Boolean mergeByBo(SchProdScheduleItemMergeBo mergeBo); /** * 接收产需单:从 sch_prod_schedule + sch_prod_schedule_detail 全字段复制到 sch_prod_schedule_item */ Boolean receiveByBo(SchProdScheduleItemReceiveBo receiveBo); /** * 合并校验:检查待合并记录来源产需单的 header 字段是否一致 */ SchProdScheduleItemMergeValidateVo validateMerge(SchProdScheduleItemMergeValidateBo validateBo); }