-- Миграция для создания таблицы ролей пользователей
CREATE TABLE IF NOT EXISTS user_roles (
  id         BIGSERIAL PRIMARY KEY,
  user_id    TEXT NOT NULL,
  role       VARCHAR(50) NOT NULL CHECK (role IN (
    'manager', 
    'finance_manager', 
    'financier', 
    'finance_director', 
    'director', 
    'top_management'
  )),
  created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
  updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
  UNIQUE(user_id, role)
);

-- Индексы
CREATE INDEX IF NOT EXISTS idx_user_roles_user_id ON user_roles(user_id);
CREATE INDEX IF NOT EXISTS idx_user_roles_role ON user_roles(role);

-- Комментарии
COMMENT ON TABLE user_roles IS 'Роли пользователей для workflow согласования счетов';
COMMENT ON COLUMN user_roles.role IS 'Роль: manager, finance_manager, financier, finance_director, director, top_management';
