zhang_nuo
2026-09-20 3d950b8475cc52084cb40ed7a9373900f0606167
src/main/java/com/ruoyi/production/service/ProductionOrderService.java
@@ -1,16 +1,47 @@
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;
/**
 * <p>
 * 生产订单表 服务类
 * </p>
 *
 * @author 芯导软件(江苏)有限公司
 * @since 2026-04-21 03:55:52
 */
import java.time.LocalDate;
import java.util.List;
public interface ProductionOrderService extends IService<ProductionOrder> {
    IPage<ProductionOrderVo> pageProductionOrder(Page<ProductionOrderDto> page, ProductionOrderDto productionOrderDto);
    List<ProductionOrderVo> listProductionOrder(ProductionOrderDto productionOrderDto);
    ProductionOrderVo getProductionOrderInfo(Long id);
    boolean saveProductionOrder(ProductionOrder productionOrder);
    boolean removeProductionOrder(List<Long> ids);
    int syncProductionOrderSnapshot(Long productionOrderId);
    Object bindingRoute(ProductionOrderDto productionOrderDto);
    List<ProductionPlanVo> getSource(Long id);
    List<ProductionOrderPickVo> pick(Long productionOrderId);
    ProductionOrderWorkOrderDetailVo getWorkOrderReportInspectDetail(ProductionOrderDto productionOrderDto);
    int updateOrder(ProductionOrderDto productionOrderDto);
    /**
     * 按指定日期生成下一个生产订单号
     *
     * @param orderDate 订单日期,为 null 时使用当天
     * @return 生产订单号 SC+日期+4位序号
     */
    String generateNextOrderNo(LocalDate orderDate);
}