package cn.iocoder.yudao.module.mes.service.pro.qrexport; import cn.iocoder.yudao.module.mes.framework.qrcode.QrLabelInfo; import java.util.List; /** * 二维码标签数据源 *

* 后台导出任务按页取标签,而不是一次性把全部标签装配进内存:单批次可达成千上万张, * 一次性装配会随导出量线性占用堆内存,量级再往上就会 OOM。 */ public interface MesProQrLabelSource { /** * 标签总张数(用于进度计算与分流判断) */ long count(); /** * 分页获取标签 * * @param pageNo 页码,从 1 开始 * @param pageSize 每页数量 * @return 该页标签;返回空列表表示已取完 */ List fetchPage(int pageNo, int pageSize); /** * ZIP 文件名(不含 {@code .zip} 后缀) */ String zipName(); }