package com.sw.mes.yb.printer.service;

import com.sw.mes.yb.printer.dto.DocketPrintDto;
import com.sw.mes.yb.printer.dto.DocketPrintResultDto;
import com.sw.mes.yb.production.dto.*;

import java.util.List;
import java.util.Map;

/**
 * @Author: GaoXinJian
 * @Date: 2022-01-20 11:44
 */
public interface DocketPrintService {

    DocketPrintResultDto docketPrint(List<DocketPrintDto> docketPrintDtoList);

    DocketPrintResultDto docketPrint1(List<DocketPrintDto> docketPrintDtoList);

    /**
     * 合格证标签打印查询
     * @param docketPrintDto
     * @return
     */
    DocketPrintResultDto certificateLabelFind(DocketPrintDto docketPrintDto);

    /**
     * 打印配料任务配方
     *
     * @param dto
     */
    List<String> printLoadingRecipe(DocketPrintLoadingRecipeDto dto);

    List<String> printFillingRecipe(DocketPrintFillingRecipeDto dto);

    /**
     * 打印小箱成箱(成品)标签(二维码是小箱号)
     *
     * @param dto
     * @return
     */
    List printCleanBox(DocketPrintCleanBoxDto dto);

    List printPaintLabel(PrintPaintLabelDto dto);

    /**
     * 打印组托入库标签(二维码是托号)
     *
     * @param dto
     * @return
     */
    List<String> printCleanGroup(DocketPrintCleanGroupDto dto);

    List<String> printReWorking(DocketPrintReWorkingDto dto);

    List<String> printRecycledMaterial(DocketPrintRecycledMaterialDto dto);

    Map<String, List<String>> crystallonPrint(List<DocketPrintDto> docketPrintDtoList);


    List<String> printRecycledGroup(DocketPrintRecycledGroupDto dto);

    List<String> printBoxNo(DocketPrintBoxNoDto dto);

    List<String> printCleanFxToBox(DocketPrintCleanFxToBoxDto dto);

    List<String> printCleanPackagingBox(DocketPrintCleanPackingBoxDto dto);

    List<String> printSurplusInfo(DocketPrintSurplusInfoDto dto);

    List<String> recycledGroupPrint(DocketPrintRecycledInfoDto dto);

    /**
     * 打印毛棒信息条码
     */
    List<String> printBristleMaterial(DocketSeedCodePrintDto dto);

    /**
     * 打印母合金信息条码
     */
    List<String> printMasterAlloy(DocketMasterAlloyPrintDto dto);

    /**
     * 打印配料单标签
     */
    List<String> printIngredientList(DocketIngredientListPrintDto dto);
//
//    /**
//     * 打印圆棒信息条码
//     */
//    List<String> printPoleMaterial(DocketPolePrintDto dto);
}
