package no.valg.valgnatt.backend.eksport;

import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

import no.valg.valgnatt.backend.rapport.JsonObjectWrapper;
import no.valg.valgnatt.database.domene.ValgType;

class EksportSkjema {
	private JsonObjectWrapper skjemaInnhold = new JsonObjectWrapper();

	private String skjematype;
	private ValgType valgType;
	private int valgår;
	private String tidspunkt = new SimpleDateFormat("yyyyMMdd-HHmmss").format(new Date());

	EksportSkjema(String skjematype, ValgType valgType, int valgår) {
		this.skjematype = skjematype;
		this.valgType = valgType;
		this.valgår = valgår;
		skjemaInnhold.leggTilString("tidspunkt", tidspunkt);
		skjemaInnhold.leggTilString("skjematype", skjematype);
		skjemaInnhold.leggTilString("valghendelse", "000000");
		skjemaInnhold.leggTilString("valg", valgType + "-valg " + valgår); // dummy - Valgnatt bryr seg ikke om denne
		skjemaInnhold.leggTilString("valgtype", "" + valgType);
		skjemaInnhold.leggTilString("valgår", Integer.toString(valgår));
	}

	JsonObjectWrapper getSkjemaInnhold() {
		return skjemaInnhold;
	}

	void skrivTilFil() throws IOException {
		try (FileWriter fw = new FileWriter(skjematype + "-" + valgType + "-" + valgår + "-" + tidspunkt + ".json")) {
			fw.write(skjemaInnhold.getJsonObject().toString());
		}
	}
}

