Implement complete metering data management for energy communities: - MeteringData entity with unique constraint (metering_point_id, interval_start, data_type) - Bulk upload via JSON or XLSX (multipart) with validation - XLSX parser using Apache POI with comma-decimal support - Ownership check on GET endpoints (userId must match metering point owner) - Deduplication: existing records overwritten on re-upload - DataSource tracking (EMAIL_XLSX, API, MANUAL) - Query endpoints: by metering point, by type, by upload batch Additional fixes: - MapStruct annotation processor: add to execution-level annotationProcessorPaths (Spring Boot parent POM was overriding plugin-level config) - EnergyCommunityMapper + MeteringDataMapper: componentModel=spring - UserMapper: ignore passwordResetToken/Expiry (unmapped target policy ERROR) - TariffService: add TariffInviteRepository dependency + invitation check - TariffServiceTest: add missing @Mock for TariffInviteRepository - SecurityConfig: permit /actuator/health and /actuator/info - pom.xml: add poi-ooxml, postgresql, spring-boot-starter-actuator - .gitignore: add *.log, survey/, backend.log Tests: 137/137 passing
50 lines
1.2 KiB
Bash
50 lines
1.2 KiB
Bash
#!/bin/bash
|
|
# ============================================================
|
|
# EEG Portal - SSL Setup Script
|
|
# Run this after DNS is configured and pointing to your server
|
|
# ============================================================
|
|
|
|
set -e
|
|
|
|
echo "=== SSL Setup for EEG Portal ==="
|
|
echo ""
|
|
|
|
# Check if domain is provided
|
|
if [ -z "$1" ]; then
|
|
echo "Usage: $0 <your-domain.at>"
|
|
echo "Example: $0 eeg-portal.at"
|
|
exit 1
|
|
fi
|
|
|
|
DOMAIN=$1
|
|
|
|
echo "Setting up SSL for: $DOMAIN"
|
|
echo ""
|
|
|
|
# Stop nginx container temporarily
|
|
echo "Stopping nginx container..."
|
|
docker stop eeg-frontend
|
|
|
|
# Get SSL certificate
|
|
echo "Getting SSL certificate from Let's Encrypt..."
|
|
certbot certonly --standalone -d $DOMAIN --non-interactive --agree-tos --email admin@$DOMAIN
|
|
|
|
# Update nginx config with domain
|
|
echo "Updating nginx configuration..."
|
|
sed -i "s/your-domain.at/$DOMAIN/g" nginx-ssl.conf
|
|
|
|
# Copy SSL config
|
|
echo "Activating SSL configuration..."
|
|
cp nginx-ssl.conf /etc/nginx/conf.d/default.conf
|
|
|
|
# Start nginx container
|
|
echo "Starting nginx container..."
|
|
docker start eeg-frontend
|
|
|
|
echo ""
|
|
echo "=== SSL setup complete! ==="
|
|
echo ""
|
|
echo "Your site is now available at: https://$DOMAIN"
|
|
echo ""
|
|
echo "Note: Certbot auto-renewal is set up. Certificate will be renewed automatically."
|