package cn.iocoder.yudao.module.mes.framework.bagcode;
|
|
import lombok.Data;
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
import org.springframework.stereotype.Component;
|
|
/**
|
* MES 袋码批量生成配置项
|
* <p>
|
* 小批量仍在请求线程内同步完成,保证秒回;大批量转后台任务,分段生成、可取消。
|
*/
|
@Data
|
@Component
|
@ConfigurationProperties(prefix = "mes.bag-code.generate")
|
public class MesProBagCodeGenerateProperties {
|
|
/**
|
* 同步/异步的分界线(袋码数)
|
* <p>
|
* 不超过该数量在请求线程内完成;超过则落任务转后台生成。
|
*/
|
private int syncThreshold = 20000;
|
|
/**
|
* 每段落库的袋码数量(同时也是每批取码数量)
|
*/
|
private int chunkSize = 5000;
|
|
/**
|
* 同时允许运行的后台生成任务数
|
*/
|
private int maxConcurrentTasks = 1;
|
|
/**
|
* 单次生成袋码上限
|
*/
|
private int maxTaskCount = 1000000;
|
|
/**
|
* 单个后台任务的最长运行时间(分钟),超时自动终止并清理
|
*/
|
private int maxRuntimeMinutes = 30;
|
|
/**
|
* 前端轮询建议间隔(秒),仅用于下发给前端
|
*/
|
private int pollIntervalSeconds = 2;
|
|
/**
|
* 清理任务每轮最多删除的行数,避免长时间占用数据库
|
* <p>
|
* 分批删除,单次清理上限用于控制删除任务对线上写入的影响。
|
*/
|
private int cleanupBatchSize = 5000;
|
|
}
|