#!/bin/bash

# Erzeugt eine Liste bereits beendeter Kunden sowie diverser
# zugehöriger Daten. Braucht der Vertrieb, vgl. RT#306860.

exec ${POPHOME:-@POPHOME@}/bin/db -n "$@" '
	SELECT    CONCAT( "K-", LPAD(kunde.id,4,0) ) KundenNr,
	          kunde.name Kunde,
	          DATE( FROM_UNIXTIME(kunde.ende) ) Endedatum,
	          person.user `AP Vetrieb`,
	          REPLACE( SUM(rechnungen.betrag)/100, ".", ",") `Jahresumsatz`,
	          REPLACE( letzte_rechnung.betrag/100, ".", ",") `Umsatz letzte Rechnung`,
	          letzte_rechnung.infotext `Inhalt letzte Rechnung`
	FROM      kunde
	LEFT JOIN person ON kunde.ap_vertrieb = person.id
	LEFT JOIN rechnungen
	       ON rechnungen.kunde = kunde.id AND rechnungen.rnr = (
	          	SELECT   rnr
	          	FROM     rechnungen r
	          	WHERE    r.rnr = rechnungen.rnr
	          	     AND kunde = kunde.id
	          	     AND storniert IS NULL
	          	     AND datum >= UNIX_TIMESTAMP( DATE_SUB( FROM_UNIXTIME(kunde.ende), INTERVAL 1 YEAR ) )
	          )
	LEFT JOIN rechnungen AS letzte_rechnung
	       ON letzte_rechnung.kunde = kunde.id AND letzte_rechnung.rnr = (
	          	SELECT   rnr
	          	FROM     rechnungen
	          	WHERE    kunde = kunde.id
	          	     AND storniert IS NULL
	          	     AND betrag > 0
	          	ORDER BY datum DESC
	          	LIMIT    1
	          )
	WHERE     kunde.ende IS NOT NULL
	      AND kunde.ende != 1
	      AND kunde.ende <= UNIX_TIMESTAMP(NOW())
	      AND kunde.kunde IS NULL
	GROUP BY  kunde.id
	ORDER BY  kunde.id
'
