- wrap root layout with QueryProvider for React Query - replace market UnderConstruction placeholder with MarketClient and real data fetching - implement search, pagination, and sort via search params using getActiveListings - add necessary client components and queries - update dependencies (e.g., prisma, pkg-types)
55 lines
2.0 KiB
SQL
55 lines
2.0 KiB
SQL
-- Migration 014: Adicionar campos de incremento mínimo e preços iniciais para leilões
|
|
-- Criado em: 2025-01-29
|
|
|
|
-- Adicionar colunas para incremento mínimo de lance
|
|
ALTER TABLE listings
|
|
ADD COLUMN IF NOT EXISTS min_bid_increment DECIMAL(10, 2);
|
|
|
|
-- Adicionar colunas para armazenar preços iniciais (para leilões)
|
|
ALTER TABLE listings
|
|
ADD COLUMN IF NOT EXISTS initial_price_pix DECIMAL(10, 2),
|
|
ADD COLUMN IF NOT EXISTS initial_price_tibia_coins INTEGER,
|
|
ADD COLUMN IF NOT EXISTS initial_price_gold_coins BIGINT;
|
|
|
|
-- Comentários para documentação
|
|
COMMENT ON COLUMN listings.min_bid_increment IS 'Incremento mínimo para novos lances (padrão: 5% do preço inicial ou valor fixo)';
|
|
COMMENT ON COLUMN listings.initial_price_pix IS 'Preço inicial em PIX (para leilões)';
|
|
COMMENT ON COLUMN listings.initial_price_tibia_coins IS 'Preço inicial em Tibia Coins (para leilões)';
|
|
COMMENT ON COLUMN listings.initial_price_gold_coins IS 'Preço inicial em Gold Coins (para leilões)';
|
|
|
|
-- Atualizar preços iniciais para leilões existentes (copiar dos preços atuais)
|
|
UPDATE listings
|
|
SET
|
|
initial_price_pix = price_pix,
|
|
initial_price_tibia_coins = price_tibia_coins,
|
|
initial_price_gold_coins = price_gold_coins
|
|
WHERE is_auction = TRUE
|
|
AND (initial_price_pix IS NULL OR initial_price_tibia_coins IS NULL OR initial_price_gold_coins IS NULL);
|
|
|
|
-- Calcular incremento mínimo para leilões existentes (5% do preço inicial ou mínimo de R$ 10,00)
|
|
UPDATE listings
|
|
SET min_bid_increment = GREATEST(
|
|
COALESCE(initial_price_pix * 0.05, 0),
|
|
10.00
|
|
)
|
|
WHERE is_auction = TRUE
|
|
AND min_bid_increment IS NULL
|
|
AND initial_price_pix IS NOT NULL;
|
|
|
|
-- Para leilões com preço em TC ou GP, usar incremento fixo de 5% ou mínimo
|
|
UPDATE listings
|
|
SET min_bid_increment = COALESCE(
|
|
min_bid_increment,
|
|
GREATEST(
|
|
CASE
|
|
WHEN initial_price_tibia_coins IS NOT NULL THEN initial_price_tibia_coins * 0.05
|
|
WHEN initial_price_gold_coins IS NOT NULL THEN initial_price_gold_coins * 0.05
|
|
ELSE 10.00
|
|
END,
|
|
10.00
|
|
)
|
|
)
|
|
WHERE is_auction = TRUE
|
|
AND min_bid_increment IS NULL;
|
|
|