Revision 40306
Added by Ioannis Diplas over 8 years ago
FilterWidget.java | ||
---|---|---|
5 | 5 |
|
6 | 6 |
import com.github.gwtbootstrap.client.ui.Alert; |
7 | 7 |
import com.github.gwtbootstrap.client.ui.Button; |
8 |
import com.github.gwtbootstrap.client.ui.CheckBox; |
|
8 | 9 |
import com.github.gwtbootstrap.client.ui.Form; |
9 | 10 |
import com.github.gwtbootstrap.client.ui.ModalFooter; |
10 | 11 |
import com.github.gwtbootstrap.client.ui.TextBox; |
... | ... | |
81 | 82 |
private boolean prevOpenState = true; |
82 | 83 |
private int numberOfResults = 0; |
83 | 84 |
private ArrayList<Anchor> dateAnchors = new ArrayList<Anchor>(); |
84 |
|
|
85 |
private FlowPanel exampleValues = new FlowPanel(); |
|
86 |
private CheckBox applyAll = new CheckBox(); |
|
87 |
private boolean applyToAll = false; |
|
88 |
private boolean isFromLoad = false; |
|
89 |
|
|
85 | 90 |
private final Timer repeatingTimer = new Timer() { |
86 | 91 |
|
87 | 92 |
@Override |
... | ... | |
99 | 104 |
this.isForEdit = true; |
100 | 105 |
} |
101 | 106 |
|
107 |
public boolean isApplyToAll() { |
|
108 |
return applyToAll; |
|
109 |
} |
|
110 |
|
|
111 |
public void setApplyToAll(boolean applyToAll) { |
|
112 |
this.applyToAll = applyToAll; |
|
113 |
} |
|
114 |
|
|
115 |
|
|
116 |
|
|
102 | 117 |
public boolean getIsForEdit(){ |
103 | 118 |
return this.isForEdit; |
104 | 119 |
} |
... | ... | |
140 | 155 |
this.numberOfCurrentColumn = numberOfCurrentColumn; |
141 | 156 |
this.numberOfFilter = numberOfFilter; |
142 | 157 |
this.schemaFromServer = schemaFromServer; |
158 |
this.isFromLoad = isFromLoad; |
|
159 |
|
|
143 | 160 |
if(isFromLoad){ |
144 | 161 |
this.isForEdit=true; |
145 | 162 |
this.indexForEdit=numberOfFilter; |
... | ... | |
157 | 174 |
|
158 | 175 |
TreeItem tempItem = new TreeItem(); |
159 | 176 |
tempItem.setText(ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(numberOfFilter).getDisplayedFieldValue()); |
160 |
tempItem.setTitle(ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(numberOfFilter).getFieldValue() + " type " + ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(numberOfFilter).getGroupBy());
|
|
177 |
tempItem.getElement().setAttribute("value", ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(numberOfFilter).getFieldValue() + " type " + ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(numberOfFilter).getGroupBy());
|
|
161 | 178 |
fieldsListBox.getMasterTree().setSelectedItem(tempItem); |
162 | 179 |
|
163 | 180 |
if(ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(numberOfFilter).getType().equals("Discrete")){ |
... | ... | |
180 | 197 |
discretePanel.setVisible(false); |
181 | 198 |
|
182 | 199 |
responseAlert = new AlertWidget("Could not retrieve JSON", AlertType.ERROR); |
183 |
|
|
200 |
|
|
201 |
applyAll.setText("Apply on all dataseries"); |
|
202 |
|
|
184 | 203 |
Form filtersForm = new Form(); |
185 | 204 |
filtersForm.setType(FormType.HORIZONTAL); |
186 | 205 |
choosingField = new FormFieldSet("Choose field (*)", fieldsListBox.asWidget()); |
... | ... | |
223 | 242 |
} |
224 | 243 |
}); |
225 | 244 |
|
226 |
|
|
245 |
applyAll.addClickHandler(new ClickHandler() { |
|
246 |
|
|
247 |
@Override |
|
248 |
public void onClick(ClickEvent event) { |
|
249 |
// TODO Auto-generated method stub |
|
250 |
applyToAll = applyAll.getValue(); |
|
251 |
} |
|
252 |
}); |
|
253 |
applyAll.addStyleName("applyall-checkbox"); |
|
254 |
modalFooter.add(applyAll); |
|
227 | 255 |
modalFooter.add(applyFilter); |
228 | 256 |
|
257 |
|
|
258 |
if(ValuesOfFields.getInstance().getColumnsDataList().size()==1 || isFromLoad){ |
|
259 |
applyAll.setVisible(false); |
|
260 |
} |
|
261 |
|
|
229 | 262 |
if(isForEdit){ |
230 | 263 |
if(ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().get(indexForEdit).getType().equals("Discrete")){ |
231 | 264 |
discretePanel.setVisible(true); |
... | ... | |
386 | 419 |
multipleValuesWidget.setSearchingListener(searchingListener); |
387 | 420 |
|
388 | 421 |
loadingAlert_discrete.setVisible(false); |
422 |
|
|
423 |
exampleValues.addStyleName("exampleValues"); |
|
389 | 424 |
flowPanelForDiscrete.add(discreteTabForm); |
425 |
flowPanelForDiscrete.add(exampleValues); |
|
390 | 426 |
discretePanel.add(flowPanelForDiscrete); |
391 | 427 |
|
392 | 428 |
} |
... | ... | |
400 | 436 |
nothingChecked=false; |
401 | 437 |
} |
402 | 438 |
|
403 |
String[] splitted = fieldsListBox.getMasterTree().getSelectedItem().getTitle().split(" type ");
|
|
439 |
String[] splitted = fieldsListBox.getMasterTree().getSelectedItem().getElement().getAttribute("value").split(" type ");
|
|
404 | 440 |
tempFilterClass.setFieldValue(splitted[0]); |
405 | 441 |
tempFilterClass.setGroupBy(splitted[1]); |
406 | 442 |
tempFilterClass.setDisplayedFieldValue(this.displayedSelectedField); |
... | ... | |
434 | 470 |
|
435 | 471 |
|
436 | 472 |
|
437 |
|
|
473 |
tempFilterClass.setEnabled(true); |
|
438 | 474 |
tempFilterClass.setDiscreteValues((ArrayList<String>)multipleValuesWidget.getValues()); |
439 | 475 |
tempFilterClass.setGroupBy(splitted[0]); |
440 | 476 |
if(nothingChecked){ |
... | ... | |
444 | 480 |
} |
445 | 481 |
|
446 | 482 |
if(isForEdit){ |
447 |
ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().remove(indexForEdit);
|
|
448 |
ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().add(tempFilterClass);
|
|
483 |
ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().add(indexForEdit,tempFilterClass);
|
|
484 |
ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().remove(indexForEdit+1);
|
|
449 | 485 |
}else{ |
450 | 486 |
ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getFilters().add(tempFilterClass); |
487 |
applyAll.setVisible(false); |
|
451 | 488 |
} |
489 |
if(applyToAll){ |
|
490 |
for(int i=0;i<ValuesOfFields.getInstance().getColumnsDataList().size();i++){ |
|
491 |
if(i!=numberOfCurrentColumn){ |
|
492 |
ValuesOfFields.getInstance().getColumnsDataList().get(i).getFilters().add(tempFilterClass); |
|
493 |
} |
|
494 |
} |
|
495 |
applyAll.setVisible(false); |
|
496 |
} |
|
452 | 497 |
|
453 | 498 |
} |
454 | 499 |
|
... | ... | |
458 | 503 |
Tree mainRoot = new Tree(); |
459 | 504 |
TreeItem root = new TreeItem(); |
460 | 505 |
root.setText("more"); |
461 |
|
|
462 |
/* |
|
463 |
int i = ValuesOfFields.getInstance().getColumnsDataList().get(0).getIndexOfDataSource(); |
|
464 | 506 |
|
465 |
for(int j=0;j<schemaFromServer.getSchema().get(i).getCol().length();j++){ |
|
466 |
String temp=null; |
|
467 |
temp = schemaFromServer.getSchema().get(i).getCol().get(j).getData(); |
|
468 |
if(temp==null){ |
|
469 |
ArrayList<String> tempList = new ArrayList<String>(); |
|
470 |
ArrayList<String> predecessors = new ArrayList<String>(); |
|
471 |
tempList.add(schemaFromServer.getSchema().get(i).getName()); |
|
472 |
if(!schemaFromServer.getSchema().get(i).getCol().get(j).getName().equals("")) |
|
473 |
predecessors.add(schemaFromServer.getSchema().get(i).getCol().get(j).getName()); |
|
474 |
if(!schemaFromServer.getSchema().get(i).getName().equals(schemaFromServer.getSchema().get(i).getCol().get(j).getToTable())) |
|
475 |
recursiveExport(schemaFromServer,schemaFromServer.getSchema().get(i).getCol().get(j).getToTable(),schemaFromServer.getSchema().get(i).getName(),tempList,root,predecessors); |
|
476 |
}else{ |
|
477 |
TreeItem tempItem = new TreeItem(); |
|
478 |
if( !schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type().equals("none") && !schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type().equals("none")){ |
|
479 |
tempItem.setText(schemaFromServer.getSchema().get(i).getCol().get(j).getLabel()); |
|
480 |
tempItem.setTitle(schemaFromServer.getSchema().get(i).getCol().get(j).getName()+ " type " + schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type()); |
|
481 |
mainRoot.addItem(tempItem); |
|
482 |
} |
|
483 |
} |
|
484 |
} |
|
485 |
|
|
486 |
*/ |
|
487 |
|
|
488 | 507 |
int i = ValuesOfFields.getInstance().getColumnsDataList().get(0).getIndexOfDataSource(); |
489 | 508 |
|
490 | 509 |
for(int j=0;j<schemaFromServer.getSchema().get(i).getCol().length();j++){ |
... | ... | |
494 | 513 |
ArrayList<String> tempList = new ArrayList<String>(); |
495 | 514 |
ArrayList<String> predecessors = new ArrayList<String>(); |
496 | 515 |
tempList.add(schemaFromServer.getSchema().get(i).getName()); |
497 |
//predecessors.add(schemaFromServer.getSchema().get(i).getName()+"(id)"); |
|
516 |
|
|
498 | 517 |
if(!schemaFromServer.getSchema().get(i).getCol().get(j).getName().equals("")){ |
499 |
predecessors.add("("+schemaFromServer.getSchema().get(i).getName()+")"+schemaFromServer.getSchema().get(i).getCol().get(j).getName()+"("+schemaFromServer.getSchema().get(i).getCol().get(j).getToTable()+")"); |
|
518 |
predecessors.add(schemaFromServer.getSchema().get(i).getName()+"("+schemaFromServer.getSchema().get(i).getCol().get(j).getToColumn()+")"); |
|
519 |
predecessors.add("("+schemaFromServer.getSchema().get(i).getCol().get(j).getFromColumn()+")"+schemaFromServer.getSchema().get(i).getCol().get(j).getName()+"("+schemaFromServer.getSchema().get(i).getCol().get(j).getFromColumnAfter()+")"); |
|
520 |
}else{ |
|
521 |
predecessors.add(schemaFromServer.getSchema().get(i).getName()+"("+schemaFromServer.getSchema().get(i).getCol().get(j).getFromColumnAfter()+")"); |
|
500 | 522 |
} |
501 | 523 |
if(!schemaFromServer.getSchema().get(i).getName().equals(schemaFromServer.getSchema().get(i).getCol().get(j).getToTable())) |
502 |
recursiveExport(schemaFromServer,schemaFromServer.getSchema().get(i).getCol().get(j).getToTable(),schemaFromServer.getSchema().get(i).getName(),tempList,root,predecessors,schemaFromServer.getSchema().get(i).getCol().get(j).getToColumn()); |
|
524 |
recursiveExport(schemaFromServer,schemaFromServer.getSchema().get(i).getCol().get(j).getToTable(),schemaFromServer.getSchema().get(i).getName(),tempList,root,predecessors,schemaFromServer.getSchema().get(i).getCol().get(j).getToColumnAfter());
|
|
503 | 525 |
}else{ |
504 | 526 |
TreeItem tempItem = new TreeItem(); |
505 | 527 |
if( !schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type().equals("none") && !schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type().equals("none") && schemaFromServer.getSchema().get(i).getCol().get(j).getDisplayed().equals("true")){ |
506 | 528 |
tempItem.setText(schemaFromServer.getSchema().get(i).getCol().get(j).getLabel()); |
507 |
tempItem.setTitle(schemaFromServer.getSchema().get(i).getCol().get(j).getName()+ " type " + schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type()); |
|
529 |
tempItem.setTitle(schemaFromServer.getSchema().get(i).getCol().get(j).getHint()); |
|
530 |
tempItem.getElement().setAttribute("value", schemaFromServer.getSchema().get(i).getCol().get(j).getName()+ " type " + schemaFromServer.getSchema().get(i).getCol().get(j).getExtra_type()); |
|
508 | 531 |
mainRoot.addItem(tempItem); |
509 | 532 |
} |
510 | 533 |
} |
511 | 534 |
} |
512 |
if(root.getChildCount()!=0) |
|
513 |
mainRoot.addItem(root); |
|
535 |
|
|
536 |
if (root.getChildCount() != 0) { |
|
537 |
for (int l = root.getChildCount() - 1; l >= 0; l--) |
|
538 |
mainRoot.addItem(root.getChild(l)); |
|
539 |
|
|
540 |
} |
|
514 | 541 |
mainRoot.setAnimationEnabled(true); |
515 | 542 |
x_optionsListBox.setTreeOptions(mainRoot); |
516 | 543 |
|
... | ... | |
519 | 546 |
@Override |
520 | 547 |
public void onSelection(SelectionEvent<TreeItem> event) { |
521 | 548 |
if (event.getSelectedItem().getChildCount() == 0) {//ara den eimai se riza alla se fullo |
522 |
String[] splitted = event.getSelectedItem().getTitle().split(" type ");
|
|
549 |
String[] splitted = event.getSelectedItem().getElement().getAttribute("value").split(" type ");
|
|
523 | 550 |
String[] splitByMinus = splitted[0].split("-"); |
524 |
selectedTable = ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getDataSource();
|
|
551 |
selectedTable = "";
|
|
525 | 552 |
|
526 |
if(splitByMinus.length>1){ |
|
527 |
selectedTable = selectedTable.concat("(id)"); |
|
528 |
} |
|
553 |
|
|
529 | 554 |
for(int i =0;i<splitByMinus.length-1;i++){ |
530 |
selectedTable = selectedTable.concat("-"+splitByMinus[i]); |
|
555 |
if(i==0) |
|
556 |
selectedTable = selectedTable.concat(splitByMinus[i]); |
|
557 |
else |
|
558 |
selectedTable = selectedTable.concat("-"+splitByMinus[i]); |
|
531 | 559 |
} |
560 |
|
|
561 |
if(selectedTable.equals("")){//periptwsi kata tin opoia epilegoume pedio tou idiou table |
|
562 |
selectedTable = ValuesOfFields.getInstance().getColumnsDataList().get(numberOfCurrentColumn).getDataSource(); |
|
563 |
} |
|
564 |
|
|
532 | 565 |
selectedField = splitByMinus[splitByMinus.length-1]; |
533 | 566 |
displayedSelectedField = event.getSelectedItem().getText(); |
534 | 567 |
flowPanelForDiscrete.clear(); |
... | ... | |
538 | 571 |
if (!splitted[1].equals("int") && !splitted[1].equals("year") && !splitted[1].equals("date")) { |
539 | 572 |
continuousPanel.setVisible(false); |
540 | 573 |
discretePanel.setVisible(true); |
541 |
|
|
574 |
AjaxRequestForDiscrete(BASE_URL + "getFiltersData.php?table=" + selectedTable + "&field=" + selectedField+"&type=example"); |
|
542 | 575 |
} else { |
543 | 576 |
/* SEARCH ROUTINE ALERT*/ |
544 | 577 |
fieldsListBox.setDisabled(true); |
... | ... | |
552 | 585 |
dateAnchors.get(i).setVisible(false); |
553 | 586 |
} |
554 | 587 |
} |
555 |
AjaxRequest(BASE_URL + "getFiltersData.php?table=" + selectedTable + "&field=" + selectedField); |
|
588 |
AjaxRequest(BASE_URL + "getFiltersData.php?table=" + selectedTable + "&field=" + selectedField+"&type=final");
|
|
556 | 589 |
|
557 | 590 |
discretePanel.setVisible(false); |
558 | 591 |
continuousPanel.setVisible(true); |
... | ... | |
579 | 612 |
} |
580 | 613 |
|
581 | 614 |
public void recursiveExport(SchemaAnswer schemaFromServer, String to, String from, ArrayList<String> circleAlert,TreeItem root, ArrayList<String> predecessors,String toColumn){ |
582 |
/* |
|
583 |
for(int i=0;i<schemaFromServer.getSchema().length();i++){ |
|
584 |
if(schemaFromServer.getSchema().get(i).getName().equals(to)){//vres poio table prepei na kanoume expand, sumfwna me tin metavliti "to" |
|
585 |
predecessors.add(schemaFromServer.getSchema().get(i).getName()); |
|
586 |
TreeItem newRoot = new TreeItem(); |
|
587 |
root.addItem(newRoot); |
|
588 |
newRoot.setText(schemaFromServer.getSchema().get(i).getLabel()); |
|
589 |
for(int k=0;k<schemaFromServer.getSchema().get(i).getCol().length();k++){ |
|
590 |
if(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()==null){ |
|
591 |
TreeItem tempItem = new TreeItem(); |
|
592 |
String contentString = predecessorsToString(predecessors); |
|
593 |
if(!schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type().equals("boolean") && !schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type().equals("none") ){ |
|
594 |
tempItem.setText(schemaFromServer.getSchema().get(i).getCol().get(k).getLabel()); |
|
595 |
tempItem.setTitle(contentString +"-"+ schemaFromServer.getSchema().get(i).getCol().get(k).getName() + " type " + schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type()); |
|
596 |
newRoot.addItem(tempItem); |
|
597 |
} |
|
598 |
} |
|
599 |
} |
|
600 |
|
|
601 |
for(int k=0;k<schemaFromServer.getSchema().get(i).getCol().length();k++){ |
|
602 |
//afou to vreis pare ena ena ta columns kai des poio xreiazetai expand |
|
603 |
boolean found=false; |
|
604 |
if(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()!=null){ |
|
605 |
if(circleAlert.contains(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable())){//an auto pou xreiazetai expand exei ginei expand paliotera tote min mpeis |
|
606 |
found=true; |
|
607 |
} |
|
608 |
|
|
609 |
if(!found){//den to exoume kanei expand opote ksekina tin anadromi |
|
610 |
//circleAlert.add(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()); |
|
611 |
circleAlert.add(schemaFromServer.getSchema().get(i).getName()); |
|
612 |
if(!schemaFromServer.getSchema().get(i).getCol().get(k).getName().equals("")) |
|
613 |
predecessors.add(schemaFromServer.getSchema().get(i).getCol().get(k).getName()); |
|
614 |
if(!schemaFromServer.getSchema().get(i).getName().equals(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable())) |
|
615 |
recursiveExport(schemaFromServer, schemaFromServer.getSchema().get(i).getCol().get(k).getToTable(), schemaFromServer.getSchema().get(i).getName(), circleAlert, newRoot, predecessors); |
|
616 |
if(newRoot.getChildCount()==0) |
|
617 |
root.removeItem(newRoot); |
|
618 |
}else{//to exoume ksanakanei expand opote proxwra sto epomeno |
|
619 |
//do-nothing |
|
620 |
} |
|
621 |
} |
|
622 |
} |
|
623 |
break; |
|
624 |
} |
|
625 |
}*/ |
|
626 | 615 |
|
616 |
|
|
627 | 617 |
for(int i=0;i<schemaFromServer.getSchema().length();i++){ |
628 | 618 |
if(schemaFromServer.getSchema().get(i).getName().equals(to)){//vres poio table prepei na kanoume expand, sumfwna me tin metavliti "to" |
619 |
|
|
629 | 620 |
predecessors.add("("+toColumn+")"+schemaFromServer.getSchema().get(i).getName()); |
630 | 621 |
TreeItem newRoot = new TreeItem(); |
631 | 622 |
root.addItem(newRoot); |
623 |
|
|
632 | 624 |
newRoot.setText(schemaFromServer.getSchema().get(i).getLabel()); |
633 | 625 |
for(int k=0;k<schemaFromServer.getSchema().get(i).getCol().length();k++){ |
634 | 626 |
if(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()==null){ |
... | ... | |
636 | 628 |
String contentString = predecessorsToString(predecessors); |
637 | 629 |
if(!schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type().equals("boolean") && !schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type().equals("none") && schemaFromServer.getSchema().get(i).getCol().get(k).getDisplayed().equals("true") ){ |
638 | 630 |
tempItem.setText(schemaFromServer.getSchema().get(i).getCol().get(k).getLabel()); |
639 |
tempItem.setTitle(contentString +"-"+ schemaFromServer.getSchema().get(i).getCol().get(k).getName() + " type " + schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type()); |
|
631 |
tempItem.setTitle(schemaFromServer.getSchema().get(i).getCol().get(k).getHint()); |
|
632 |
tempItem.getElement().setAttribute("value", contentString +"-"+ schemaFromServer.getSchema().get(i).getCol().get(k).getName() + " type " + schemaFromServer.getSchema().get(i).getCol().get(k).getExtra_type()); |
|
640 | 633 |
newRoot.addItem(tempItem); |
641 | 634 |
} |
642 | 635 |
} |
643 | 636 |
} |
644 |
|
|
637 |
|
|
645 | 638 |
for(int k=0;k<schemaFromServer.getSchema().get(i).getCol().length();k++){ |
646 | 639 |
//afou to vreis pare ena ena ta columns kai des poio xreiazetai expand |
647 | 640 |
boolean found=false; |
641 |
|
|
648 | 642 |
if(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()!=null){ |
649 | 643 |
if(circleAlert.contains(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable())){//an auto pou xreiazetai expand exei ginei expand paliotera tote min mpeis |
650 | 644 |
found=true; |
651 | 645 |
} |
652 | 646 |
|
647 |
|
|
653 | 648 |
if(!found){//den to exoume kanei expand opote ksekina tin anadromi |
654 |
//circleAlert.add(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()); |
|
649 |
|
|
655 | 650 |
circleAlert.add(schemaFromServer.getSchema().get(i).getName()); |
656 | 651 |
if(!schemaFromServer.getSchema().get(i).getCol().get(k).getName().equals("")){ |
657 | 652 |
predecessors.add(predecessors.get(predecessors.size()-1).concat("("+toColumn+")")); |
658 | 653 |
predecessors.remove(predecessors.size()-2); |
659 |
predecessors.add("("+schemaFromServer.getSchema().get(i).getName()+")"+schemaFromServer.getSchema().get(i).getCol().get(k).getName()+"("+schemaFromServer.getSchema().get(i).getCol().get(k).getToTable()+")"); |
|
654 |
predecessors.add("("+schemaFromServer.getSchema().get(i).getCol().get(k).getFromColumn()+")"+schemaFromServer.getSchema().get(i).getCol().get(k).getName()+"("+schemaFromServer.getSchema().get(i).getCol().get(k).getFromColumnAfter()+")"); |
|
655 |
|
|
656 |
}else{ |
|
657 |
predecessors.add(predecessors.get(predecessors.size()-1).concat("("+schemaFromServer.getSchema().get(i).getCol().get(k).getFromColumnAfter()+")")); |
|
658 |
predecessors.remove(predecessors.size()-2); |
|
660 | 659 |
} |
660 |
|
|
661 | 661 |
if(!schemaFromServer.getSchema().get(i).getName().equals(schemaFromServer.getSchema().get(i).getCol().get(k).getToTable())) |
662 | 662 |
recursiveExport(schemaFromServer, schemaFromServer.getSchema().get(i).getCol().get(k).getToTable(), schemaFromServer.getSchema().get(i).getName(), circleAlert, newRoot, predecessors,schemaFromServer.getSchema().get(i).getCol().get(k).getToColumn()); |
663 | 663 |
if(newRoot.getChildCount()==0) |
664 | 664 |
root.removeItem(newRoot); |
665 |
|
|
665 | 666 |
}else{//to exoume ksanakanei expand opote proxwra sto epomeno |
666 | 667 |
//do-nothing |
667 | 668 |
} |
... | ... | |
671 | 672 |
} |
672 | 673 |
} |
673 | 674 |
|
675 |
|
|
674 | 676 |
} |
675 | 677 |
|
676 | 678 |
public String predecessorsToString(ArrayList<String> predecessors){ |
... | ... | |
719 | 721 |
}else{ |
720 | 722 |
toTextBox.setText(filtersData.getMax()); |
721 | 723 |
} |
722 |
|
|
723 | 724 |
|
724 | 725 |
discreteValues.clear();//an allaksei pedio enw exei valei idi kapoia pramata sto autocomplete, tote diegrapse ta |
725 | 726 |
if(continuousPanel.isVisible()){ |
... | ... | |
738 | 739 |
responseAlert.trigger(); |
739 | 740 |
choosingField.asWidget().setVisible(true); |
740 | 741 |
} |
742 |
|
|
741 | 743 |
fieldsListBox.setDisabled(false); |
742 | 744 |
} |
743 | 745 |
|
... | ... | |
755 | 757 |
choosingField.asWidget().setVisible(true); |
756 | 758 |
} |
757 | 759 |
} |
760 |
|
|
761 |
|
|
762 |
private void AjaxRequestForDiscrete (final String URL){ |
|
758 | 763 |
|
764 |
|
|
765 |
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL); |
|
766 |
|
|
767 |
try { |
|
768 |
|
|
769 |
|
|
770 |
Request request = builder.sendRequest(null, new RequestCallback() { |
|
771 |
|
|
772 |
@Override |
|
773 |
public void onResponseReceived(Request request, Response response) { |
|
774 |
|
|
775 |
// TODO Auto-generated method stub |
|
776 |
|
|
777 |
if(response.getStatusCode()==200){ |
|
778 |
filtersData = JsonUtils.safeEval(response.getText().toString()); |
|
779 |
exampleValues.clear(); |
|
780 |
if(filtersData.getData()!=null){ |
|
781 |
String contentString = new String(); |
|
782 |
contentString = "E.g :"; |
|
783 |
for(int i=0;i<filtersData.getData().length();i++){ |
|
784 |
if(i==0) |
|
785 |
contentString = contentString.concat(" \""+filtersData.getData().get(i).toString()+"\""); |
|
786 |
else |
|
787 |
contentString = contentString.concat(", \""+filtersData.getData().get(i).toString()+"\""); |
|
788 |
} |
|
789 |
exampleValues.add(new Label(contentString)); |
|
790 |
} |
|
791 |
}else{ |
|
792 |
|
|
793 |
loadingAlert.setVisible(false); |
|
794 |
responseAlert.trigger(); |
|
795 |
choosingField.asWidget().setVisible(true); |
|
796 |
} |
|
797 |
fieldsListBox.setDisabled(false); |
|
798 |
} |
|
799 |
|
|
800 |
@Override |
|
801 |
public void onError(Request request, Throwable exception) { |
|
802 |
loadingAlert.setVisible(false); |
|
803 |
responseAlert.trigger(); |
|
804 |
choosingField.asWidget().setVisible(true); |
|
805 |
} |
|
806 |
}); |
|
807 |
} catch (RequestException e) { |
|
808 |
e.printStackTrace(); |
|
809 |
loadingAlert.setVisible(false); |
|
810 |
responseAlert.trigger(); |
|
811 |
choosingField.asWidget().setVisible(true); |
|
812 |
} |
|
813 |
} |
|
814 |
|
|
759 | 815 |
private boolean checkAll(){ |
760 | 816 |
if(!fieldsListBox.getListBox().getSelectedItemText().equals("")){ |
761 | 817 |
if(continuousPanel.isVisible()){ |
... | ... | |
794 | 850 |
|
795 | 851 |
} |
796 | 852 |
|
797 |
private void AjaxRequest_Quantity (final String URL){ |
|
798 |
|
|
799 |
|
|
800 |
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL); |
|
801 |
|
|
802 |
try { |
|
803 |
Request request = builder.sendRequest(null, new RequestCallback() { |
|
804 |
|
|
805 |
@Override |
|
806 |
public void onResponseReceived(Request request, Response response) { |
|
807 |
|
|
808 |
|
|
809 |
if(response.getStatusCode()==200){ |
|
810 |
|
|
811 |
filtersData = JsonUtils.safeEval(response.getText().toString()); |
|
812 |
numberOfResults=filtersData.getData().length(); |
|
813 |
}else{ |
|
814 |
DisplayError("Could not retrieve JSON"); |
|
815 |
} |
|
816 |
} |
|
817 |
|
|
818 |
@Override |
|
819 |
public void onError(Request request, Throwable exception) { |
|
820 |
DisplayError("Could not retrieve JSON2 "); |
|
821 |
} |
|
822 |
}); |
|
823 |
} catch (RequestException e) { |
|
824 |
// TODO Auto-generated catch block |
|
825 |
e.printStackTrace(); |
|
826 |
DisplayError("Could not retrieve JSON3"); |
|
827 |
} |
|
828 |
|
|
829 |
} |
|
830 | 853 |
} |
Also available in: Unified diff