X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=odtgen.sh;h=5efbcc2887dfb70a346cd1871f5a8dfa07fe79f9;hb=3eeb4b1c0767895b834494361cfeb9d32dc9e414;hp=dbe2945ff0bf92907bd90cfe748ef5c04178a6f0;hpb=b037f9960718351b0470ab7ea67271b291bebb0e;p=invoices diff --git a/odtgen.sh b/odtgen.sh index dbe2945..5efbcc2 100755 --- a/odtgen.sh +++ b/odtgen.sh @@ -12,7 +12,7 @@ odt_manifest(){ } odt_stylesheet(){ - local iban="$2" bic="$3" + local iban="$1" bic="$2" cat <<-EOF @@ -46,8 +46,8 @@ odt_stylesheet(){ Bankverbindung - IBAN: - ${iban} | - BIC: + ${iban} + | BIC: ${bic} @@ -58,22 +58,27 @@ odt_stylesheet(){ } odt_content(){ - local id="$1" sender="$2" client="$3" date="$4" number="$5" vat="$6" vatrate="$7" hourly="$8" + local id="$1" sender="$2" client="$3" date="$4" number="$5" vat="$6" vatrate="$7" hourly="$8" \ + taxtype nett tax gross + read -r taxtype nett tax gross <<-EOF + $(invoice_total "$id") + EOF + cat <<-EOF - + - + - + - + @@ -122,16 +127,16 @@ odt_content(){ $(HTML "$sender" |sed 'a')$(HTML "$sender" |sed -r 's;( \;)? \;;;g') $(HTML "$client" |sed 'a')$(HTML "$client" |sed -r 's;( \;)? \;;;g') - Rechnung ${issuance} + Rechnung ${number} @@ -139,8 +144,8 @@ odt_content(){ -->$(case $vat in (smallbusiness) printf 'Gemäß Kleinunternehmerregelung (§19 Umsatzsteuergesetz) wird keine Umsatzsteuer berechnet.';; - (nett) printf 'zuzüglich %i%% MWSt.' "$vatrate";; - (gross) printf '(einschließlich %i\% MWSt.)' "$vatrate";; + (nett) printf 'zuzüglich %i%% MwSt.' "$vatrate";; + (gross) printf '(einschließlich %i%% MwSt.)' "$vatrate";; esac) @@ -175,7 +180,7 @@ odt_content(){ ${time} - ${item} + ${work} ${hours} @@ -190,15 +195,53 @@ odt_content(){ - - - - - Summe: - - - $(invoice_total "$id") € - + $(case $taxtype in + (nett) cat <<-TCELL + + + Zwischensumme: + zzgl. ${vatrate}% MwSt.: + + zu zahlender Betrag: + + + + ${nett} € + ${tax} € + + ${gross} € + + TCELL + ;; + (gross) cat <<-TCELL + + zu zahlender Betrag: + + + enthaltene MwSt (${vatrate}%): + enthaltener Netto-Betrag: + + + ${gross} € + + + ${tax} € + ${nett} € + + TCELL + ;; + (*) cat <<-TCELL + + zu zahlender Betrag: + + + ${gross} € + + TCELL + ;; + esac) @@ -209,13 +252,16 @@ odt_content(){ genodt(){ local id="$1" exdir="export/$1" - [ -d "$exdir" ] && rm "$exdir/META-INF" + [ -d "$exdir" ] && { + rm "$exdir/content.xml" "$exdir/styles.xml" "$exdir/META-INF/manifest.xml" + rmdir "$exdir/META-INF/" "$exdir/" + } - read -r sender client date number vat vatrate <<-EOF + read -r sender client date number vat vatrate hourly x<<-EOF $(sed q "invoices/$id") EOF - read -r sender iban bic <"senders/${sender#sender=}" - read -r client hourly <"clients/${client#client=}" + read -r sender iban bic x<"senders/${sender#sender=}" + read -r client chourly x<"clients/${client#client=}" mkdir -p "$exdir/META-INF" odt_manifest >"$exdir/META-INF/manifest.xml" @@ -231,9 +277,16 @@ genodt(){ [ -f "export/${id}.odt" ] && rm "export/${id}.odt" ( cd "$exdir" - zip "../${id}.odt" content.xml styles.xml META-INF/manifest.xml + zip -q "../${id}.odt" content.xml styles.xml META-INF/manifest.xml ) rm "$exdir/content.xml" "$exdir/styles.xml" "$exdir/META-INF/manifest.xml" rmdir "$exdir/META-INF/" "$exdir/" - # lowriter --headless --convert-to pdf "${odtdoc}" } + +genpdf(){ + local id="$1" + genodt "$id" + lowriter --convert-to pdf --outdir "export/" "export/${id}.odt" >/dev/null + rm "export/${id}.odt" +} +