Skip to content
Snippets Groups Projects
Commit 55ab3cf1 authored by Vesa Lappalainen's avatar Vesa Lappalainen :bicyclist:
Browse files

Vaihe 7.5 - Etsiminen

parent c0d171ed
No related branches found
No related tags found
No related merge requests found
......@@ -10,14 +10,8 @@
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
1|1|Pitsin nypläys|1917|13
2|1|Pitsin nypläys|1979|21
3|2|Pitsin nypläys|1955|1
4|3|Pitsin nypläys|1919|30
5|3|Pitsin nypläys|1921|42
6|3|Pitsin nypläys|1935|37
7|4|Pitsin nypläys|1941|37
8|4|Pitsin nypläys|1941|20
9|4|Pitsin nypläys|1908|19
10|4|Pitsin nypläys|1947|38
11|2|Pitsin nypläys|1984|46
12|2|Pitsin nypläys|1920|23
1|1|Pitsin nypläys|1959|58
2|2|Pitsin nypläys|1937|48
3|2|Pitsin nypläys|1952|12
7|4|Pitsin nypläys|1960|56
8|4|Susiansat|1961|12
9|2|Possujen jahtaaminen|1955|30
10|2|Kelmien kerho|1954|2
11|1|Laiskottelu|1946|23
12|5|Rahan keruu|1923|45
13|5|Nuukailu|1922|30
\ No newline at end of file
15
1|Ankka Aku|270203-9448|Paratiisitie 13|12346|ANKKALINNA|12-1234|||1996|50.0|30.0|Velkaa Roopelle
2|Ankka Lupu|100612-061B|Paratiisitie 13|12345|ANKKALINNA|12-1234|||1996|50.0|30.0|Velkaa Roopelle
3|Ankka Tupu|190113-7310|Paratiisitie 13|12345|ANKKALINNA|12-1234|||1996|50.0|30.0|Velkaa Roopelle
4|Susi Sepe||||Takametsä||||0|10.0|0.0|
Kelmien kerho ry
4
1|Ankka Aku|010245-123U|Paratiisitie 13|12345|ANKKALINNA|12-12324|||0|0.00|0.00|Velkaa Roopelle
2|Susi Sepe|020347-123T||12555|Takametsä||||0|0.00|0.00|
4|Ponteva Veli|030455-3333||12555|Takametsä||||0|0.00|0.00|porukan fiksuin
5|Ankka Roope|121212-121D|Rahasäiliö|77777|RAHASÄILIÖ|1234|||0|0.00|0.00|
\ No newline at end of file
No preview for this file type
......@@ -59,8 +59,7 @@ public class KerhoGUIController implements Initializable {
@FXML private void handleHakuehto() {
if ( jasenKohdalla != null )
hae(jasenKohdalla.getTunnusNro());
hae(0);
}
......@@ -135,6 +134,7 @@ public class KerhoGUIController implements Initializable {
private Jasen jasenKohdalla;
private TextField edits[];
private int kentta = 0;
private static Jasen apujasen = new Jasen();
private static Harrastus apuharrastus = new Harrastus();
......@@ -146,7 +146,13 @@ public class KerhoGUIController implements Initializable {
protected void alusta() {
chooserJasenet.clear();
chooserJasenet.addSelectionListener(e -> naytaJasen());
edits = TietueDialogController.luoKentat(gridJasen, new Jasen());
cbKentat.clear();
for (int k = apujasen.ekaKentta(); k < apujasen.getKenttia(); k++)
cbKentat.add(apujasen.getKysymys(k), null);
cbKentat.getSelectionModel().select(0);
edits = TietueDialogController.luoKentat(gridJasen, apujasen);
for (TextField edit: edits)
if ( edit != null ) {
edit.setEditable(false);
......@@ -263,15 +269,18 @@ public class KerhoGUIController implements Initializable {
/**
* Hakee jäsenten tiedot listaan
* @param jnro jäsenen numero, joka aktivoidaan haun jälkeen
* @param jnr jäsenen numero, joka aktivoidaan haun jälkeen
*/
protected void hae(int jnro) {
int k = cbKentat.getSelectionModel().getSelectedIndex();
protected void hae(int jnr) {
int jnro = jnr; // jnro jäsenen numero, joka aktivoidaan haun jälkeen
if ( jnro <= 0 ) {
Jasen kohdalla = jasenKohdalla;
if ( kohdalla != null ) jnro = kohdalla.getTunnusNro();
}
int k = cbKentat.getSelectionModel().getSelectedIndex() + apujasen.ekaKentta();
String ehto = hakuehto.getText();
if (k > 0 || ehto.length() > 0)
naytaVirhe(String.format("Ei osata hakea (kenttä: %d, ehto: %s)", k, ehto));
else
naytaVirhe(null);
if (ehto.indexOf('*') < 0) ehto = "*" + ehto + "*";
chooserJasenet.clear();
......@@ -320,7 +329,7 @@ public class KerhoGUIController implements Initializable {
for (Harrastus har: harrastukset)
naytaHarrastus(har);
} catch (SailoException e) {
// naytaVirhe(e.getMessage());
naytaVirhe(e.getMessage());
}
}
......
......@@ -12,6 +12,8 @@ import java.util.Collection;
import java.util.Iterator;
import java.util.NoSuchElementException;
import fi.jyu.mit.ohj2.WildChars;
/**
* Kerhon jäsenistö joka osaa mm. lisätä uuden jäsenen
......@@ -390,15 +392,31 @@ public class Jasenet implements Iterable<Jasen> {
* Jasen jasen4 = new Jasen(); jasen4.parse("4|Ankka Iines|030245-115V|Ankkakuja 9");
* Jasen jasen5 = new Jasen(); jasen5.parse("5|Ankka Roope|091007-408U|Ankkakuja 12");
* jasenet.lisaa(jasen1); jasenet.lisaa(jasen2); jasenet.lisaa(jasen3); jasenet.lisaa(jasen4); jasenet.lisaa(jasen5);
* // TODO: toistaiseksi palauttaa kaikki jäsenet
* List<Jasen> loytyneet;
* loytyneet = (List<Jasen>)jasenet.etsi("*s*",1);
* loytyneet.size() === 2;
* loytyneet.get(0) == jasen3 === true;
* loytyneet.get(1) == jasen4 === true;
*
* loytyneet = (List<Jasen>)jasenet.etsi("*7-*",2);
* loytyneet.size() === 2;
* loytyneet.get(0) == jasen3 === true;
* loytyneet.get(1) == jasen5 === true;
*
* loytyneet = (List<Jasen>)jasenet.etsi(null,-1);
* loytyneet.size() === 5;
* </pre>
*/
@SuppressWarnings("unused")
public Collection<Jasen> etsi(String hakuehto, int k) {
String ehto = "*";
if ( hakuehto != null && hakuehto.length() > 0 ) ehto = hakuehto;
int hk = k;
if ( hk < 0 ) hk = 1;
Collection<Jasen> loytyneet = new ArrayList<Jasen>();
for (Jasen jasen : this) {
loytyneet.add(jasen);
if (WildChars.onkoSamat(jasen.anna(hk), ehto)) loytyneet.add(jasen);
}
// TODO: lajittelua varten vertailija
return loytyneet;
}
......
......@@ -139,7 +139,13 @@ public class Kerho {
* <pre name="test">
* #THROWS CloneNotSupportedException, SailoException
* alustaKerho();
* // TODO: tee testit kun etsi on korjattu
* Jasen jasen3 = new Jasen(); jasen3.rekisteroi();
* jasen3.aseta(1,"Susi Sepe");
* kerho.lisaa(jasen3);
* Collection<Jasen> loytyneet = kerho.etsi("*Susi*",1);
* loytyneet.size() === 1;
* Iterator<Jasen> it = loytyneet.iterator();
* it.next() == jasen3 === true;
* </pre>
*/
public Collection<Jasen> etsi(String hakuehto, int k) throws SailoException {
......
......@@ -11,6 +11,7 @@ import org.junit.runners.Suite.SuiteClasses;
*/
@RunWith(Suite.class)
@SuiteClasses({
/*
kanta.test.HetuTarkistusTest.class,
kanta.test.SisaltaaTarkistajaTest.class,
kanta.test.TietueTest.class,
......@@ -19,6 +20,7 @@ import org.junit.runners.Suite.SuiteClasses;
kerho.test.HarrastusTest.class,
kerho.test.HarrastuksetTest.class,
kerho.test.KerhoTest.class
*/
})
public class AllTests {
//
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment