littleshop/LittleShop/Migrations/reset-preserve-config.sql
sysadmin e534e51b91
All checks were successful
Build and Deploy LittleShop / Deploy to Production VPS (Manual Only) (push) Has been skipped
Build and Deploy LittleShop / Deploy to Pre-Production (CT109) (push) Successful in 1m13s
fix: Show Processing status orders in Pending Payment tab
- Modified OrdersController to include Processing (legacy) status in pending tab
- Updated badge count to include Processing orders in PendingPaymentCount
- Added database reset script that preserves bot tokens and integrations

Processing status (OrderStatus=20) is a legacy unpaid status that should be visible
in the Pending Payment workflow to allow staff to retry failed payment creation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 13:39:08 +00:00

64 lines
2.5 KiB
SQL

-- ============================================================================
-- LittleShop Database Reset - Preserve Bot & SilverPay Configuration
-- ============================================================================
-- This script clears all transactional data while preserving:
-- - Bot registrations and tokens
-- - User accounts (admin)
-- - SilverPay integration settings
-- - Push notification subscriptions
-- ============================================================================
BEGIN TRANSACTION;
-- ============================================================================
-- STEP 1: Clear Transactional Data (Orders, Payments, Messages)
-- ============================================================================
DELETE FROM CryptoPayments;
DELETE FROM OrderItems;
DELETE FROM Orders;
DELETE FROM CustomerMessages;
DELETE FROM Customers;
-- ============================================================================
-- STEP 2: Clear Product Catalog
-- ============================================================================
DELETE FROM ProductPhotos;
DELETE FROM ProductMultiBuys;
DELETE FROM ProductVariants;
DELETE FROM Products;
DELETE FROM Categories;
-- ============================================================================
-- STEP 3: Reset Auto-Increment Sequences (optional, for clean IDs)
-- ============================================================================
DELETE FROM sqlite_sequence WHERE name IN (
'CryptoPayments', 'OrderItems', 'Orders', 'CustomerMessages',
'Customers', 'ProductPhotos', 'ProductMultiBuys',
'ProductVariants', 'Products', 'Categories'
);
-- ============================================================================
-- STEP 4: Verify Preserved Data
-- ============================================================================
-- These should return rows (data preserved):
-- SELECT COUNT(*) AS BotRegistrations FROM BotRegistrations WHERE IsActive = 1;
-- SELECT COUNT(*) AS AdminUsers FROM Users WHERE Role = 'Admin';
-- SELECT COUNT(*) AS PushSubscriptions FROM PushSubscriptions;
-- These should return 0 (data cleared):
-- SELECT COUNT(*) AS Orders FROM Orders;
-- SELECT COUNT(*) AS Products FROM Products;
-- SELECT COUNT(*) AS Categories FROM Categories;
COMMIT;
-- ============================================================================
-- Success! Database reset complete.
-- Preserved: Bot tokens, Admin users, Push subscriptions
-- Cleared: Orders, Products, Categories, Customers, Payments
-- ============================================================================