Files
interview-demo-code/.cursorignore
Nikita Kiselev 9a93cc7342 feat: add Telegram customers management system with admin panel
Implement comprehensive Telegram customers storage and management functionality:

Backend:
- Add database migration for telecart_customers table with indexes
- Create TelegramCustomer model with CRUD operations
- Implement TelegramCustomerService for business logic
- Add TelegramCustomerHandler for API endpoint (saveOrUpdate)
- Add TelegramCustomersHandler for admin API (getCustomers with pagination, filtering, sorting)
- Add SendMessageHandler for sending messages to customers via Telegram
- Create custom exceptions: TelegramCustomerNotFoundException, TelegramCustomerWriteNotAllowedException
- Refactor TelegramInitDataDecoder to separate decoding logic
- Add TelegramHeader enum for header constants
- Update SignatureValidator to use TelegramInitDataDecoder
- Register new routes in bastion/routes.php and src/routes.php

Frontend (Admin):
- Add CustomersView.vue component with PrimeVue DataTable
- Implement advanced filtering (text, date, boolean filters)
- Add column visibility toggle functionality
- Add global search with debounce
- Implement message sending dialog with validation
- Add Russian locale for PrimeVue components
- Add navigation link in App.vue
- Register route in router

Frontend (SPA):
- Add saveTelegramCustomer utility function
- Integrate automatic customer data saving on app initialization
- Extract user data from Telegram.WebApp.initDataUnsafe

The system automatically saves/updates customer data when users access the Telegram Mini App,
and provides admin interface for viewing, filtering, and messaging customers.

BREAKING CHANGE: None
2025-11-23 21:30:51 +03:00

99 lines
1.1 KiB
Plaintext

logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# Cursor ignore patterns
frontend/spa/node_modules
frontend/admin/node_modules
module/oc_telegram_shop/upload/oc_telegram_shop/vendor
module/oc_telegram_shop/upload/image
module/oc_telegram_shop/upload/oc_telegram_shop/.phpunit.cache
# Dependencies
node_modules/
vendor/
composer.lock
package-lock.json
yarn.lock
# Build outputs
dist/
build/
*.phar
# IDE
.idea/
.vscode/
*.swp
*.swo
*~
# Logs
*.log
logs/
storage/logs/
# Cache
storage/cache/
.cache/
# Environment
.env
.env.local
.env.*.local
# Database
*.sql
*.sqlite
*.db
# Temporary files
tmp/
temp/
*.tmp
# OS
.DS_Store
Thumbs.db
# OpenCart specific
src/upload/system/
src/upload/image/cache/
src/storage/
# Test fixtures (large files)
tests/fixtures/*.sql
tests/fixtures/*.json
# Documentation builds
docs/_build/
# Coverage reports
coverage/
.nyc_output/
# Docker
docker-compose.override.yml