/**
 * 用户管理业务常量
 * 
 * 功能描述：
 * - 定义用户管理模块的业务常量
 * - 统一管理魔法数字和配置参数
 * - 提供类型安全的常量访问
 * 
 * 职责分离：
 * - 业务规则常量定义和管理
 * - 验证规则参数统一配置
 * - 系统限制和默认值设置
 * 
 * 最近修改：
 * - 2026-01-07: 代码规范优化 - 创建常量定义文件，消除魔法数字 (修改者: moyin)
 * 
 * @author moyin
 * @version 1.0.1
 * @since 2026-01-07
 * @lastModified 2026-01-07
 */

/**
 * 批量操作相关常量
 */
export const BATCH_OPERATION = {
  /** 批量操作最大用户数量限制 */
  MAX_USER_COUNT: 100,
  /** 批量操作最小用户数量限制 */
  MIN_USER_COUNT: 1,
} as const;

/**
 * 验证规则相关常量
 */
export const VALIDATION = {
  /** 状态修改原因最大长度 */
  REASON_MAX_LENGTH: 200,
} as const;

/**
 * 默认参数常量
 */
export const DEFAULTS = {
  /** 状态变更历史查询默认数量限制 */
  STATUS_HISTORY_LIMIT: 10,
} as const;

/**
 * 错误代码常量
 */
export const ERROR_CODES = {
  /** 批量操作数量超限错误代码 */
  BATCH_OPERATION_LIMIT_EXCEEDED: 'BATCH_OPERATION_LIMIT_EXCEEDED',
} as const;

/**
 * 业务消息常量
 */
export const MESSAGES = {
  /** 批量操作数量超限错误消息 */
  BATCH_OPERATION_LIMIT_ERROR: `批量操作数量不能超过${BATCH_OPERATION.MAX_USER_COUNT}个用户`,
} as const;

/**
 * 工具函数
 */
export const UTILS = {
  /** 获取当前时间戳 */
  getCurrentTimestamp: (): string => new Date().toISOString(),
} as const;