package com.ruoyi.production.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.production.bean.dto.ProductionOrderDto; import com.ruoyi.production.bean.vo.ProductionOrderPickVo; import com.ruoyi.production.bean.vo.ProductionOrderVo; import com.ruoyi.production.bean.vo.ProductionPlanVo; import com.ruoyi.production.bean.vo.ProductionOrderWorkOrderDetailVo; import com.ruoyi.production.pojo.ProductionOrder; import java.time.LocalDate; import java.util.List; public interface ProductionOrderService extends IService { IPage pageProductionOrder(Page page, ProductionOrderDto productionOrderDto); List listProductionOrder(ProductionOrderDto productionOrderDto); ProductionOrderVo getProductionOrderInfo(Long id); boolean saveProductionOrder(ProductionOrder productionOrder); boolean removeProductionOrder(List ids); int syncProductionOrderSnapshot(Long productionOrderId); Object bindingRoute(ProductionOrderDto productionOrderDto); List getSource(Long id); List pick(Long productionOrderId); ProductionOrderWorkOrderDetailVo getWorkOrderReportInspectDetail(ProductionOrderDto productionOrderDto); int updateOrder(ProductionOrderDto productionOrderDto); /** * 按指定日期生成下一个生产订单号 * * @param orderDate 订单日期,为 null 时使用当天 * @return 生产订单号 SC+日期+4位序号 */ String generateNextOrderNo(LocalDate orderDate); }