package com.ruoyi.system.service; import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.system.domain.BomDetails; import com.ruoyi.system.domain.MaterialBom; import com.ruoyi.system.domain.ProcessRoute; import com.ruoyi.system.domain.bo.ProcessRouteBo; import com.ruoyi.system.domain.dto.*; import com.ruoyi.system.jdmain.rouplan.Model; import com.ruoyi.system.domain.vo.ProcessRouteVo; import com.ruoyi.system.domain.vo.ProductionOrderVo; import java.util.Collection; import java.util.List; /** * 工艺路线Service接口 * * @author tzy * @date 2024-10-09 */ public interface IProcessRouteService { /** * 查询工艺路线 */ ProcessRouteVo queryById(Long id); /** * 查询工艺路线列表 */ TableDataInfo queryPageList(ProcessRouteBo bo, PageQuery pageQuery); TableDataInfo queryPageList2(ProcessRouteBo bo, PageQuery pageQuery); /** * 查询工艺路线列表 */ List queryList(ProcessRouteBo bo); /** * 新增工艺路线 */ Boolean insertByBo(ProcessRouteBo bo); /** * 修改工艺路线 */ Boolean updateByBo(ProcessRouteBo bo); /** * 校验并批量删除工艺路线信息 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); Boolean updateOrInsertRoute(List bomDetailsVos); /** * 保存数据 */ boolean saveData(List routeVoList, List productionOrderVos); /** * 查询组焊件集合 */ List pushGroupWeldments(ProcessRoute processRoute); /** * 获取所有的项目令号 */ List getDistinctProjectCodes(String query); List pushRawMater(String rooteProdet); List getRawBom(String rooteProdet); /** * 查询工艺工序集合 */ List getProcessRoute(String rooteProdet); /** * 推送工艺路线 */ ProcessRoutePushResultDTO pushRouteBom(String rooteProdet); /** * 获取所有的项目令号 */ List getSelecPlanRouteList(String rooteProdet); /** * 生成这个项目的pdf */ String generatePDFs(String rooteProdet); /** * 更新计划时间 */ List updateProcessPlan(String rooteProdet) throws Exception; /** * 获取所有项目 */ List getProcessInfoList(String query); R addRoute(List list); List getProcessMaterialList(String materialCode,String materialName, String productionOrderNo); List deleteRoute(ProcessRoute processRoute); List importDataTime(List list); boolean isAnTuDingGou(String materialCode); List getSelectProcessRoute(String materilCode); List getSelectStandProcessRoute(String materilCode); //根据项目令号删除 材料bom 总装bom 工艺路线 R selectByProjectCode(String productionOrderNo); List getProcessRouteList(String materialCode, String materialName, String productionOrderNo); //获取物料的非委外的工作时长 Double getFbWorkTime(BomDetails material); Double getFaWorkTime(BomDetails material); //根据令号和物料编码 查询工艺路线 List getProcessRoutesByOrder(String productionOrderNo, String materialCode); //根据物料编码查询工艺路线 List getSingleWeght( String materialCode); List updateProcesTime(String rooteProdet) throws Exception; List queryList2(ProcessRouteBo bo); List getProcessMaterialListAll(String routeDescription); List getProcessRouteGD(List list); //获取物料首个工序的工作中心 String getRouteCode(String materialCode,String code); }