package com.chinaztt.mes.plan.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.chinaztt.mes.plan.dto.*; import com.chinaztt.mes.plan.entity.MasterProductionSchedule; import com.chinaztt.mes.plan.entity.OperationTaskProduce; import com.chinaztt.ztt.common.core.util.R; import java.util.List; /** * 主生产计划 * * @author cxf * @date 2020-09-23 14:42:39 */ public interface MasterProductionScheduleService extends IService { /** * Description: 分页 * * @param page * @param masterProductionScheduleDTO * @return IPage> */ IPage> getMasterProductionSchedulePage(Page page, QueryWrapper masterProductionScheduleDTO); /** * @param id * @return */ MasterProductionScheduleDTO getByIdExt(Long id); /** * Description: 加载主生产计划来源 * * @param id * @return List */ List loadMasterPlanSourceById(Long id); /** * Description: 修改来源的计划数量 * * @param customerOrderDTO * @return */ boolean updateQtyPlaned(CustomerOrderDTO customerOrderDTO); /** * 保存bom结构 * * @param list * @param mpsId * @return */ List saveMpsStructureComponent(List list, Long mpsId); /** * 根据id删除bom结构 * * @param id * @return */ boolean deleteMpsStructureComponentById(Long id); /** * 通过id查询bom结构 * * @param id * @return */ List getMpsStructureComponentByMpsId(Long id); /** * 新增bom结构 * * @param mpsStructureComponentDTO * @param mpsId * @return */ MpsStructureComponentDTO insertMpsStructureComponent(MpsStructureComponentDTO mpsStructureComponentDTO, Long mpsId); /** * 修改bom结构 * * @param mpsStructureComponentDTO * @return */ boolean updateMpsStructureComponent(MpsStructureComponentDTO mpsStructureComponentDTO); /** * Description: 改变状态 * * @param ids * @param event * @return * @date: 2020/11/19 11:06 */ boolean changeState(List ids, String event); /** * 通过id加载下发的订单 * * @param id * @return */ List loadOrder(Long id); /** * 通过id加载主生产计划来源(客户订单) * * @param id * @return */ List loadMasterPlanSourceByCustomer(Long id); /** * 订单行关联工艺文件 * * @param ids * @param docId * @return */ R handleDocument(List ids, Long docId); /** * 取消关联工艺文件 * * @param ids * @return */ R rejectHandleDocument(List ids); /** * oa对接 * * @param id * @return */ R oa(Long id); /** * 手动修改审核状态 * * @param id * @param status * @return */ R changeAudit(Long id, String status); /** * 根据零件号查询可用性计划 * * @param partNo * @return */ R queryInventUseablePlanStd(String partNo); /** * 查询工艺文件产品结构和工艺路线是否同步ifs * * @param id * @return */ R checkIfsSync(Long id); /** * 查询理论用量数据 * * @param id */ R getTheoryQuantity(Long id, List operationTaskProduceList); /** * 手动新增生产计划 * * @param masterProductionSchedule * @return */ R doAdd(MasterProductionSchedule masterProductionSchedule); /** * 根据id 获取计划 * * @param id * @return */ MasterProductionScheduleDTO getById(Long id); }