package cn.iocoder.yudao.module.mes.service.pro.workorder; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.mes.controller.admin.pro.workorder.vo.process.MesProWorkOrderProcessPageReqVO; import cn.iocoder.yudao.module.mes.controller.admin.pro.workorder.vo.process.MesProWorkOrderProcessSaveReqVO; import cn.iocoder.yudao.module.mes.dal.dataobject.pro.workorder.MesProWorkOrderProcessDO; import jakarta.validation.Valid; import java.util.List; /** * MES 生产工单工序 Service 接口 * * @author 芋道源码 */ public interface MesProWorkOrderProcessService { /** * 创建工单工序 * * @param createReqVO 创建信息 * @return 编号 */ Long createWorkOrderProcess(@Valid MesProWorkOrderProcessSaveReqVO createReqVO); /** * 更新工单工序 * * @param updateReqVO 更新信息 */ void updateWorkOrderProcess(@Valid MesProWorkOrderProcessSaveReqVO updateReqVO); /** * 删除工单工序 * * @param id 编号 */ void deleteWorkOrderProcess(Long id); /** * 获得工单工序 * * @param id 编号 * @return 工单工序 */ MesProWorkOrderProcessDO getWorkOrderProcess(Long id); /** * 获得工单工序分页 * * @param pageReqVO 分页查询 * @return 工单工序分页 */ PageResult getWorkOrderProcessPage(MesProWorkOrderProcessPageReqVO pageReqVO); /** * 根据工单编号获得工序列表 * * @param workOrderId 工单编号 * @return 工序列表 */ List getWorkOrderProcessListByWorkOrderId(Long workOrderId); /** * 根据工单编号删除工序 * * @param workOrderId 工单编号 */ void deleteWorkOrderProcessByWorkOrderId(Long workOrderId); /** * 根据产品获取工艺路线工序列表(用于工单预填,不保存到数据库) * * @param productId 产品编号 * @return 工序列表 */ List getProcessListByProductId(Long productId); /** * 批量保存工单工序(新增+更新+删除) *

* list 中有 id 的为更新,无 id 的为新增,数据库中存在但 list 中不存在的为删除 * * @param list 工序列表 */ void batchSaveWorkOrderProcess(@Valid List list); }