English Русский
Български
Беларускі
Український
Српски
Hrvatski
Română
Polski
Slovenský
Magyar
ArticlesSitemapContactsSearch:  
 
 
 
 
 
 
 
 
 
 
  Accent   Elantra   Getz   Grandeur   Sonata   Santa Fe   Tucson   Others
Sonata 3 (1993-1998) Sonata 4 (2001-2012, petrol)

Dvdrental ~upd~ -

I'll help you develop a feature for the classic PostgreSQL sample database. This is a well-known database schema for a movie rental store. Feature: "Late Return Penalty Calculator & Customer Alert System" This feature identifies overdue rentals, calculates late fees, and sends alerts to customers. 1. Database Schema Overview (Key Tables) -- Main tables involved: -- rental (rental_id, customer_id, inventory_id, rental_date, return_date) -- customer (customer_id, first_name, last_name, email, address_id) -- inventory (inventory_id, film_id, store_id) -- film (film_id, title, rental_rate) -- payment (payment_id, customer_id, amount, payment_date) 2. Feature Components A. Identify Overdue Rentals CREATE OR REPLACE VIEW overdue_rentals AS SELECT r.rental_id, c.customer_id, c.first_name, c.last_name, c.email, f.title AS film_title, r.rental_date, r.return_date, CURRENT_DATE - r.rental_date::DATE AS days_rented, f.rental_duration, CASE WHEN r.return_date IS NULL AND (CURRENT_DATE - r.rental_date::DATE) > f.rental_duration THEN (CURRENT_DATE - r.rental_date::DATE) - f.rental_duration ELSE 0 END AS days_overdue FROM rental r JOIN customer c ON r.customer_id = c.customer_id JOIN inventory i ON r.inventory_id = i.inventory_id JOIN film f ON i.film_id = f.film_id WHERE r.return_date IS NULL AND (CURRENT_DATE - r.rental_date::DATE) > f.rental_duration; B. Calculate Late Fees CREATE OR REPLACE FUNCTION calculate_late_fee( p_rental_id INTEGER ) RETURNS NUMERIC AS $$ DECLARE v_days_overdue INTEGER; v_late_fee NUMERIC; v_film_title TEXT; BEGIN -- Calculate days overdue SELECT GREATEST(0, (CURRENT_DATE - r.rental_date::DATE) - f.rental_duration), f.title INTO v_days_overdue, v_film_title FROM rental r JOIN inventory i ON r.inventory_id = i.inventory_id JOIN film f ON i.film_id = f.film_id WHERE r.rental_id = p_rental_id AND r.return_date IS NULL; -- Late fee: $0.50 per day overdue v_late_fee := v_days_overdue * 0.50;

// Calculate late fee const fee = await pool.query( SELECT calculate_late_fee($1) AS fee , [rentalId]); dvdrental

-- Generate customer alerts for today SELECT * FROM generate_late_return_alerts(); I'll help you develop a feature for the

-- Process payment for customer ID 5 CALL process_late_fee_payment(5, 15.00); // GET /api/rentals/overdue app.get('/api/rentals/overdue', async (req, res) => const result = await pool.query(` SELECT * FROM overdue_rentals ORDER BY days_overdue DESC `); res.json(result.rows); ); // POST /api/rentals/:rentalId/return app.post('/api/rentals/:rentalId/return', async (req, res) => const rentalId = req.params; f.title AS film_title

HyundaiBook.ru %!s(int=2026) © %!d(string=Noble Rapid Echo) · Mobile version · Sitemap: EN BG BY UA RS HR RO PL SK HU · Administration · Site search · Hyundai owners Accent 1 · Accent 2 · Accent 3 · Elantra 1 · Elantra 2 · Elantra 3 · Getz · Sonata 3 · Sonata 4 · Santa Fe 2 · Tucson 1 · Tucson 2 · Matrix ·