namespace MMDAL.DTO.StockValuation;
///
/// Filter used by both user-triggered batch runs and Dapr background jobs.
/// All collection properties are nullable — null means "all".
///
public class StockValuationFilterDTO
{
public DateOnly FromDate { get; set; }
public DateOnly ToDate { get; set; }
/// 0=Monthly, 1=Daily, 2=Perpetual-Rerun
public byte RunType { get; set; }
public int[]? OUIDs { get; set; }
public int[]? StoreIds { get; set; }
public int[]? ItemIds { get; set; }
public int? ItemCategoryId { get; set; }
public int? ItemSubCategoryId { get; set; }
/// 0=WtAvg, 1=FIFO, 2=LIFO, 3=Standard — null means all methods.
public byte[]? ValuationMethods { get; set; }
/// Set by the caller; forwarded to Dapr job payload.
public int TriggeredByUserId { get; set; }
}