X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=odtgen.sh;h=177065a9c9a0fd10f92cba31058aceacc51f1b98;hb=026cd2e0fc6081c19d681a40720f7a70b449f3d8;hp=f9b7d62cf920e7c0371eea17609203b5f59379dc;hpb=864a9aad6a2d6ede85c0c3ad6312573f9a0804eb;p=invoices diff --git a/odtgen.sh b/odtgen.sh index f9b7d62..177065a 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,23 +58,30 @@ 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 - + - + - + + + + - - + + @@ -88,6 +95,10 @@ odt_content(){ + + + + @@ -123,16 +134,16 @@ odt_content(){ $(HTML "$sender" |sed -r 's;( \;)? \;;;g')$(HTML "$sender" |sed -r 's;( \;)? \;|(�?[Dd]\;)?�?[aA]\;|\r?$;;g') $(HTML "$client" |sed -r 's;( \;)? \;;;g')$(HTML "$client" |sed -r 's;( \;)? \;|(�?[Dd]\;)?�?[aA]\;|\r?$;;g') - Rechnung ${issuance} + Rechnung ${number} @@ -140,16 +151,16 @@ 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) - - + + @@ -167,16 +178,16 @@ odt_content(){ $(sed 1d "invoices/$id" |while read -r time work hours; do - time="$(UNSTRING "${time#time=}")" - work="$(UNSTRING "${work#work=}")" + time="$(UNSTRING "${time#time=}" |sed 's;\r;;g')" + work="$(UNSTRING "${work#work=}" |sed 's;\r;;g')" hours="$(UNSTRING "${hours#hours=}")" cat <<-TROW - ${time} + ${time} - ${item} + ${work} ${hours} @@ -191,15 +202,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) @@ -215,11 +264,11 @@ genodt(){ 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" @@ -240,3 +289,11 @@ genodt(){ rm "$exdir/content.xml" "$exdir/styles.xml" "$exdir/META-INF/manifest.xml" rmdir "$exdir/META-INF/" "$exdir/" } + +genpdf(){ + local id="$1" + genodt "$id" + lowriter --convert-to pdf --outdir "export/" "export/${id}.odt" >/dev/null + rm "export/${id}.odt" +} +