1
2
3
4 package de.tivsource.page.helper.odf.test;
5
6 import java.math.BigDecimal;
7 import java.util.ArrayList;
8 import java.util.Date;
9 import java.util.HashMap;
10 import java.util.List;
11 import java.util.Map;
12 import java.util.UUID;
13
14 import org.odftoolkit.simple.SpreadsheetDocument;
15
16 import de.tivsource.page.entity.enumeration.Language;
17 import de.tivsource.page.entity.event.Event;
18 import de.tivsource.page.entity.location.Location;
19 import de.tivsource.page.entity.namingitem.Description;
20 import de.tivsource.page.entity.namingitem.NamingItem;
21 import de.tivsource.page.entity.reservation.Reservation;
22 import de.tivsource.page.helper.odf.CreateReservationODF;
23
24
25
26
27
28 public class TestODF {
29
30 private static List<Reservation> reservations;
31 static {
32 reservations = new ArrayList<Reservation>();
33 }
34
35
36
37
38
39
40
41 public static void main(String[] args) throws Exception {
42
43 for (int i=0; i<10 ; i++) {
44 reservations.add(generateData(i));
45 }
46
47 CreateReservationODF createReservationODF = new CreateReservationODF();
48 SpreadsheetDocument outputDocument = createReservationODF.create(reservations);
49 outputDocument.save("test.ods");
50 }
51
52 private static Reservation generateData(Integer input) {
53 Reservation reservation = new Reservation();
54 reservation.setConfirmed(false);
55 reservation.setCreated(new Date());
56 reservation.setEmail(input + "keinspam@tivsource.de");
57 reservation.setEvent(generateEvent(input));
58 reservation.setFirstname("TestVorname" + input);
59 reservation.setGender(input % 2 == 0 ? true : false);
60 reservation.setCreatedAddress("192.168.0." + input);
61 reservation.setLastname("TestNachname" + input);
62 reservation.setQuantity(input);
63 reservation.setTelephone("005-40-757575" + input);
64 reservation.setTime(new Date());
65 reservation.setUuid(UUID.randomUUID().toString());
66 reservation.setWishes("Test Wünsche, hier stehen die Test Wünsche\nHoffen wir das die nächste Zeile auch funktioniert\nDas hier hat die Nummer " + input);
67 return reservation;
68 }
69
70 private static Event generateEvent(Integer input) {
71 Event event = new Event();
72 event.setBeginning(new Date());
73 event.setCreated(new Date());
74 event.setDeadline(new Date());
75 event.setDescriptionMap(createDescriptionMap("Event", input, event));
76 event.setEnding(new Date());
77 event.setLocation(generateLocation(input));
78 event.setMaxPersons(100 + input);
79 event.setModified(new Date());
80 event.setModifiedAddress("192.168.1." + input);
81 event.setModifiedBy("TestUser" + input);
82 event.setPicture(null);
83 event.setPiwikGoal(10);
84 event.setPrice(new BigDecimal(input));
85 event.setReservation(true);
86 event.setReservations(reservations);
87 event.setUuid(UUID.randomUUID().toString());
88 event.setVisible(true);
89 return event;
90 }
91
92 private static Location generateLocation(Integer input) {
93 Location location = new Location();
94 location.setAddress(null);
95 location.setContactDetails(null);
96 location.setCreated(new Date());
97 location.setDescriptionMap(createDescriptionMap("Location", input, location));
98 location.setEvent(true);
99 location.setEvents(null);
100 location.setLatitude("14.00");
101 location.setLongitude("7.00");
102 location.setModified(new Date());
103 location.setModifiedAddress("192.168.2." + input);
104 location.setModifiedBy("LocationTestUser" + input);
105 location.setOpeningHours(null);
106 location.setPicture(null);
107 location.setUuid(UUID.randomUUID().toString());
108 location.setVacancies(null);
109 location.setVisible(true);
110 return location;
111 }
112
113 private static Map<Language, Description> createDescriptionMap(String prefix, Integer counter, NamingItem namingItem) {
114 Map<Language, Description> descriptionMap = new HashMap<Language, Description>();
115 descriptionMap.put(Language.DE, createDescription(
116 UUID.randomUUID().toString(), prefix + "Name" + counter, prefix + "Description" + counter,
117 prefix + "Keywords" + counter, Language.DE, namingItem));
118 descriptionMap.put(Language.EN, createDescription(
119 UUID.randomUUID().toString(), prefix + "Name" + counter, prefix + "Description" + counter,
120 prefix + "Keywords" + counter, Language.EN, namingItem));
121 return descriptionMap;
122 }
123
124 private static Description createDescription(
125 String uuid, String name, String description,
126 String keywords, Language language, NamingItem namingItem) {
127 Description pageDescription = new Description();
128 pageDescription.setUuid(uuid);
129 pageDescription.setName(name);
130 pageDescription.setDescription(description);
131 pageDescription.setKeywords(keywords);
132 pageDescription.setLanguage(language);
133 pageDescription.setNamingItem(namingItem);
134 return pageDescription;
135 }
136
137 }