using System;
namespace GB5Shared.DTO.Framework.VoucherNumber
{
///
/// BizTransactionType number-generation configuration retrieved from MBIZTRANSACTIONTYPE.
/// Used exclusively by VoucherNumberService to generate formatted voucher/task numbers.
///
public record VoucherNumberConfigDTO
{
/// 0 = Auto-generate, 1 = Manual (user-supplied).
public byte NOGenerationType { get; set; }
/// 0 = Yearly, 1 = Monthly, 2 = Daily, 3 = Continuous.
public byte NOGenerationPeriodType { get; set; }
/// Total width of the formatted number including all prefix/suffix parts.
public short NumberSize { get; set; }
/// User-defined prefix applied before the numeric portion.
public string Prefix { get; set; } = string.Empty;
/// User-defined suffix applied after the numeric portion.
public string Suffix { get; set; } = string.Empty;
/// Date-format pattern for the system prefix (e.g. "yy" → "24"). Empty = no system prefix.
public string SystemPrefix { get; set; } = string.Empty;
/// Date-format pattern for the system suffix. Empty = no system suffix.
public string SystemSuffix { get; set; } = string.Empty;
}
///
/// Minimal projection of MBIZTRANSACTIONKEYS used when reading the current LastNo counter.
///
public record VoucherKeyDTO
{
public int BIZTransactionKeysId { get; set; }
public int LastNo { get; set; }
}
}