Production/LogBook/MonthYearWithDose/script.sh

# e.g. source script.sh ; docgen 1 5 22


export PGPASSWORD=`cat /golem/production/psql_password` # zaklad pro command line


function timeperiod()
{
FROMM=$1
TOM=$2
YEAR=$3

for MONTH in `seq $FROMM $TOM`; do psqlgen $MONTH $YEAR;done


}


function psqlgen()
{
MONTH=$1
YEAR=$2

psql -c "
DROP TABLE IF EXISTS public.temp_db;
SELECT start_timestamp, start_shot_no, start_chamber_pressure,session_mission, session_setup, staff_list, onstage_wave INTO public.temp_db  FROM public.sessions WHERE EXTRACT(MONTH from to_timestamp(start_timestamp, 'YYYY-MM-DD HH24:MI' ))=$MONTH  AND EXTRACT(YEAR from to_timestamp(start_timestamp, 'YYYY-MM-DD HH24:MI' ))=$YEAR  ORDER BY start_shot_no;
SELECT to_char(to_timestamp(d.start_timestamp, 'YYYY-MM-DD HH24:MI' ),'DD.MM, Dy'),to_char(to_timestamp(d.start_timestamp, 'YYYY-MM-DD HH24:MI' ),'HH:MI'),start_shot_no, start_chamber_pressure,s.session_mission, s.session_setup, staff_list, onstage_wave, shot_no,d.\"D_integral_dose\" FROM public.temp_db s,public.shots d WHERE to_number(d.session_id,'99999')=s.start_shot_no AND (to_number(d.session_id,'99999')=shot_no OR d.\"D_integral_dose\" > 0)" -qAt -U  golem golem_database|tee tables/"$MONTH""$YEAR"sqltable|sort  -u -t '|' -k1,1 -k5,5 -k10,10|sort -t '|' -k3,3|sed 's/&/\\&/g;s/\_/\\_/g'|awk -F '|' '{printf $1 " & " $2 " & " $3;if ($10 > 0) print  "& - & Výboj dlouhodobé stability & SUJB & Dirigent & Basic & " $10"@\\#"$9; else printf " &  %3.1e & "  $5 " & " $6 " & " $7 " & " "\\\pbox{\\boxwidth}{"$8"}" " & ",$4;  print "\\\\ \\\hline\n " }'|sed 's/ Diagnostics\//\\newline /g;s/{Diagnostics\/BasicDiagnostics\/StandardDAS/{/g'|sed 's/&\\newline/\& /g;s/{\\newline/\{/g;s/{ \\newline/\{/g'|tee tables/"$MONTH""$YEAR"tabletobeincl2latex
}

function docgen()
{

FROMM=$1
TOM=$2
YEAR=$3

docum=M$FROMM-$TOM@Y20$YEAR.tex

timeperiod $FROMM $TOM $YEAR

echo '\documentclass[11pt,pdftex]{article}\usepackage[legalpaper, landscape, margin=2in]{geometry}\pagestyle{empty}
\usepackage{graphicx}\usepackage[utf8]{inputenc}\usepackage{longtable}\usepackage{pbox}\topmargin -2cm\oddsidemargin -1.5cm\textwidth 16cm\textheight 18cm\begin{document}' >$docum

for MONTH in `seq $FROMM $TOM`; do 

echo "GOLEM Logbook for month:$MONTH \& year:20$YEAR" >>$docum
echo '
{\def\boxwidth{75mm}\small \begin{longtable}{ |p{19mm}|p{8mm}|p{8mm}|p{13mm}|p{45mm}|p{30mm}|p{8cm}|p{\boxwidth}|p{18mm}| }  \hline
{\bf Date }&{\bf  Time } & {\bf Session ID } & {\bf Vacuum } & {\bf Mission } & {\bf Setup } & {\bf Staff } & {\bf On stage wave} & {\bf Dose}\\ \hline
\input{'tables/"$MONTH""$YEAR"tabletobeincl2latex'} \end{longtable}}\'>>$docum
done
echo '\end{document}'>>$docum
rm *20$year.pdf
pdflatex $docum
cp `basename $docum .tex`.pdf actual.pdf
clean
git add .;git commit -am "GOLEM Logbook update"
}

function makeitall()
{
for YEAR in `seq 20 22`; do docgen 1 12 $YEAR;done
}


function clean()
{
rm *.aux *.tex *.log
ls -all
}