19 package org.turro.dossier.kanban;
21 import java.util.ArrayList;
22 import java.util.List;
24 import org.turro.dossier.entity.Category;
25 import org.turro.dossier.entity.Dossier;
26 import org.turro.dossier.entity.Issue;
27 import org.turro.dossier.entity.IssueStatus;
28 import org.turro.dossier.entity.IssueType;
29 import org.turro.dossier.issue.IssueWrapper;
30 import org.turro.dossier.util.DossiersInfo;
31 import org.turro.dossier.workload.WorkloadItem;
32 import org.turro.dossier.workload.WorkloadQuery;
33 import org.turro.dossier.workload.WorkloadSet;
34 import org.turro.dossier.zul.attach.IssueAttachTree;
35 import org.turro.dossier.zul.issue.IssueStage;
36 import org.turro.dossier.zul.menu.DossierMenu;
37 import org.turro.elephant.context.Application;
38 import org.turro.i18n.I_;
39 import org.turro.plugin.contacts.IContact;
40 import org.turro.registry.Changes;
41 import org.turro.zkoss.dialog.SelectionDialog;
42 import org.turro.zul.frame.Framework;
43 import org.zkoss.bind.annotation.BindingParam;
44 import org.zkoss.bind.annotation.Command;
45 import org.zkoss.bind.annotation.NotifyChange;
46 import org.zkoss.zul.GroupsModel;
47 import org.zkoss.zul.SimpleGroupsModel;
56 private final long count[];
73 @NotifyChange({
"toDoModel",
"inProgressModel",
"doneModel",
"toDoLabel",
"inProgressLabel",
"doneLabel"})
79 @NotifyChange({
"toDoModel",
"inProgressModel",
"doneModel",
"toDoLabel",
"inProgressLabel",
"doneLabel"})
85 }
else if(entity instanceof
Dossier) {
94 @NotifyChange({
"toDoModel",
"inProgressModel",
"doneModel",
"toDoLabel",
"inProgressLabel",
"doneLabel"})
110 iat,
"80%",
"80%",
null);
186 return I_.
get(
"To do") +
" (" + count[1] +
")";
190 return I_.
get(
"In progress") +
" (" + count[2] +
")";
194 return I_.
get(
"Done") +
" (" + count[3] +
")";
198 List<List<WorkloadItem>> data =
new ArrayList<>();
199 List<String> headers =
new ArrayList<>();
200 List<WorkloadItem> loading =
null;
208 if(!(current.equals(stage))) {
210 headers.add(stage.toString());
211 loading =
new ArrayList<>();
214 if(loading !=
null) {
221 return new SimpleGroupsModel<>(data, headers);
void setEntity(Object entity)
boolean isFullParticipant()
Set< IssueStatus > getStatus()
void setSelectedCategory(Category category)
GroupsModel< WorkloadItem, Object, Object > getInProgressModel()
void setTypes(Set< IssueType > types)
Category getSelectedCategory()
void setSelectedDossier(Dossier dossier)
IContact getParticipant()
void selectEntity(@BindingParam("entity") Object entity)
String getInProgressLabel()
GroupsModel< WorkloadItem, Object, Object > getToDoModel()
void showAttachments(@BindingParam("issue") Issue issue)
void setParticipant(IContact contact)
GroupsModel< WorkloadItem, Object, Object > getColumnModel(int column)
void selectContact(@BindingParam("contact") IContact contact)
void addInformation(@BindingParam("issue") Issue issue)
Dossier getSelectedDossier()
Set< IssueType > getTypes()
GroupsModel< WorkloadItem, Object, Object > getDoneModel()
void showInfo(@BindingParam("item") WorkloadItem item)
void setStatus(Set< IssueStatus > status)
void setSearchValue(String searchValue)
static void popup(Issue issue)
Set< IssueStatus > getStatus()
void setDossier(Dossier dossier)
void setCategory(Category category)
void setStatus(Set< IssueStatus > status)
IContact getByParticipant()
Set< IssueType > getTypes()
void setSearchValue(String searchValue)
void setTypes(Set< IssueType > types)
void setByParticipant(IContact byParticipant)
static IssueStage getStage(WorkloadItem item)
static int getKanbanColumn(WorkloadItem item)
void setChanges(Changes changes)
boolean isInRole(String role)
static Application getApplication()
static String get(String msg)
static void showComponent(Page page, String title, Component component, String width, String height, final Command command)
static Framework getCurrent()