#!/bin/bash URL="http://172.26.16.1:8080/klk" FILE="$HOME/csv.csv" function loadPredmeti () { echo -e "\n\n\n---------- LOADING PREDMETI ----------" while read line; do curl --location "${URL}/predmeti" \ --header 'Content-Type: application/json' \ --data ' { "naziv": "'"$line"'" }' done < <( tail -n +2 $FILE | iconv -c -f utf-8 -t ascii | sed -r "s|\",\"|~|g; s|~ET~|~CET~|g; s|\"||g" | cut -d"~" -f 1 | sort | uniq | tr -d '\r' ) } function loadProfesori () { echo -e "\n\n\n---------- LOADING PROFESORI ----------" while read line; do ime="${line##* }" prezime="${line%% *}" curl --location "${URL}/profesori" \ --header 'Content-Type: application/json' \ --data ' { "ime": "'"$ime"'", "prezime": "'"$prezime"'" }' done < <( tail -n +2 $FILE | iconv -c -f utf-8 -t ascii | sed -r "s|\",\"|~|g; s|~ET~|~CET~|g; s|\"||g" | cut -d"~" -f 3 | sort | uniq | tr -d '\r' ) } function loadGrupe () { echo -e "\n\n\n---------- LOADING GRUPE ----------" while read line; do curl --location "${URL}/grupe" \ --header 'Content-Type: application/json' \ --data ' { "oznaka": "'"$line"'" }' done < <( tail -n +2 $FILE | iconv -c -f utf-8 -t ascii | sed -r "s|\",\"|~|g; s|~ET~|~CET~|g; s|\"||g" | cut -d"~" -f 4 | sort | uniq | tr ',' '\n' | sed -s "s| ||g" | sort | uniq | tr -d '\r' ) } function loadUcionice () { echo -e "\n\n\n---------- LOADING UCIONICE ----------" while read line; do curl --location "${URL}/ucionice" \ --header 'Content-Type: application/json' \ --data ' { "oznaka": "'"$line"'" }' done < <( tail -n +2 $FILE | iconv -c -f utf-8 -t ascii | sed -r "s|\",\"|~|g; s|~ET~|~CET~|g; s|\"||g" | cut -d"~" -f 7 | sort | uniq | tr -d '\r' ) } LINENUM=0 function loadTermini () { echo -e "\n\n\n---------- LOADING TERMINI ----------" while read line; do pocetni_termin="$( echo "$line" | cut -d"~" -f 6 | cut -d"-" -f 1 | tr -d '\r' )" krajnji_termin="$( echo "$line" | cut -d"~" -f 6 | cut -d"-" -f 2 | tr -d '\r' )" dan_u_nedelji="$( echo "$line" | cut -d"~" -f 5 | tr -d '\r' )" tip_nastave="$( echo "$line" | cut -d"~" -f 2 | tr -d '\r' )" ucionica_oznaka="$( echo "$line" | cut -d"~" -f 7 | tr -d '\r' )" profesor_ime="$( echo "$line" | cut -d"~" -f 3 | cut -d" " -f 2- | tr -d '\r' )" profesor_prezime="$( echo "$line" | cut -d"~" -f 3 | cut -d" " -f 1 | tr -d '\r' )" predmet_naziv="$( echo "$line" | cut -d"~" -f 1 | tr -d '\r' )" jank="" IFS=", " read -ra GRPS <<< $( echo -e "$line" | cut -d"~" -f 4 | tr -d '\r' ) for grp in "${GRPS[@]}"; do jank="${jank}{ \"oznaka\": \"${grp}\" }, " done jank="${jank::-2}" curl --location "${URL}/termini" \ --header 'Content-Type: application/json' \ --data ' { "pocetniTermin": "'"$pocetni_termin"'", "krajnjiTermin": "'"$krajnji_termin"'", "danUNedelji": "'"$dan_u_nedelji"'", "tipNastave": "'"$tip_nastave"'", "ucionica": { "oznaka": "'"$ucionica_oznaka"'" }, "profesor": { "ime": "'"$profesor_ime"'", "prezime": "'"$profesor_prezime"'" }, "predmet": { "naziv": "'"$predmet_naziv"'" }, "grupe": [ '"$jank"' ] }' done < <( tail -n +2 $FILE | iconv -c -f utf-8 -t ascii | sed -r "s|\",\"|~|g; s|~ET~|~CET~|g; s|\"||g" | sort | uniq ) } loadPredmeti loadProfesori loadGrupe loadUcionice sleep 1 loadTermini echo -e "\n\n\nDone"