CCM NG/ccm-cms: More forms for workflow management
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@4450 8810af33-2d31-482b-a856-94f89814c4dfpull/2/head
parent
ae05156a71
commit
a124b1ebd8
|
|
@ -29,22 +29,17 @@ import com.arsdigita.bebop.event.TableActionEvent;
|
||||||
import com.arsdigita.bebop.table.DefaultTableCellRenderer;
|
import com.arsdigita.bebop.table.DefaultTableCellRenderer;
|
||||||
import com.arsdigita.bebop.table.TableCellRenderer;
|
import com.arsdigita.bebop.table.TableCellRenderer;
|
||||||
|
|
||||||
import org.librecms.workflow.CmsTask;
|
|
||||||
|
|
||||||
import com.arsdigita.globalization.GlobalizedMessage;
|
import com.arsdigita.globalization.GlobalizedMessage;
|
||||||
import com.arsdigita.web.Web;
|
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
import org.libreccm.cdi.utils.CdiUtil;
|
import org.libreccm.cdi.utils.CdiUtil;
|
||||||
import org.libreccm.security.Shiro;
|
import org.libreccm.security.Shiro;
|
||||||
import org.libreccm.security.User;
|
import org.libreccm.security.User;
|
||||||
import org.libreccm.workflow.AssignableTask;
|
import org.libreccm.workflow.AssignableTask;
|
||||||
|
import org.libreccm.workflow.AssignableTaskManager;
|
||||||
import org.libreccm.workflow.AssignableTaskRepository;
|
import org.libreccm.workflow.AssignableTaskRepository;
|
||||||
import org.libreccm.workflow.WorkflowManager;
|
import org.libreccm.workflow.WorkflowManager;
|
||||||
import org.librecms.CmsConstants;
|
import org.librecms.CmsConstants;
|
||||||
import org.librecms.workflow.CmsTaskTypeRepository;
|
|
||||||
|
|
||||||
public final class AssignedTaskTable extends Table {
|
public final class AssignedTaskTable extends Table {
|
||||||
|
|
||||||
|
|
@ -70,8 +65,12 @@ public final class AssignedTaskTable extends Table {
|
||||||
final int column = event.getColumn();
|
final int column = event.getColumn();
|
||||||
|
|
||||||
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||||
final AssignableTaskRepository userTaskRepo = cdiUtil.findBean(AssignableTaskRepository.class);
|
final AssignableTaskRepository userTaskRepo = cdiUtil.findBean(
|
||||||
final WorkflowManager workflowManager = cdiUtil.findBean(WorkflowManager.class);
|
AssignableTaskRepository.class);
|
||||||
|
final WorkflowManager workflowManager = cdiUtil.findBean(
|
||||||
|
WorkflowManager.class);
|
||||||
|
final AssignableTaskManager taskManager = cdiUtil.findBean(
|
||||||
|
AssignableTaskManager.class);
|
||||||
final Shiro shiro = cdiUtil.findBean(Shiro.class);
|
final Shiro shiro = cdiUtil.findBean(Shiro.class);
|
||||||
|
|
||||||
if (column == 1) {
|
if (column == 1) {
|
||||||
|
|
@ -82,9 +81,9 @@ public final class AssignedTaskTable extends Table {
|
||||||
if (task.isLocked()
|
if (task.isLocked()
|
||||||
&& lockingUser != null
|
&& lockingUser != null
|
||||||
&& lockingUser.equals(currentUser)) {
|
&& lockingUser.equals(currentUser)) {
|
||||||
workflowManager.unlockTask(task);
|
taskManager.unlockTask(task);
|
||||||
} else {
|
} else {
|
||||||
workflowManager.lockTask(task);
|
taskManager.lockTask(task);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -102,27 +101,27 @@ public final class AssignedTaskTable extends Table {
|
||||||
final int row,
|
final int row,
|
||||||
final int column) {
|
final int column) {
|
||||||
// SF patch [ 1587168 ] Show locking user
|
// SF patch [ 1587168 ] Show locking user
|
||||||
BoxPanel p = new BoxPanel();
|
final BoxPanel panel = new BoxPanel();
|
||||||
User lockingUser = (User) value;
|
final User lockingUser = (User) value;
|
||||||
if (lockingUser != null) {
|
if (lockingUser != null) {
|
||||||
final StringBuilder sb = new StringBuilder("Locked by <br />");
|
final StringBuilder sb = new StringBuilder("Locked by <br />");
|
||||||
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||||
final Shiro shiro = cdiUtil.findBean(Shiro.class);
|
final Shiro shiro = cdiUtil.findBean(Shiro.class);
|
||||||
if (lockingUser.equals(shiro.getUser())) {
|
if (lockingUser.equals(shiro.getUser())) {
|
||||||
sb.append("you");
|
sb.append("you");
|
||||||
p.add(new ControlLink(new Label(
|
panel.add(new ControlLink(new Label(
|
||||||
gz("cms.ui.workflow.task.unlock"))));
|
gz("cms.ui.workflow.task.unlock"))));
|
||||||
} else {
|
} else {
|
||||||
sb.append(lockingUser.getName());
|
sb.append(lockingUser.getName());
|
||||||
p.add(new ControlLink(new Label(
|
panel.add(new ControlLink(new Label(
|
||||||
gz("cms.ui.workflow.task.takeover"))));
|
gz("cms.ui.workflow.task.takeover"))));
|
||||||
}
|
}
|
||||||
p.add(new Label(sb.toString(), false));
|
panel.add(new Label(sb.toString(), false));
|
||||||
} else {
|
} else {
|
||||||
p.add(new ControlLink(
|
panel.add(new ControlLink(
|
||||||
new Label(gz("cms.ui.workflow.task.lock"))));
|
new Label(gz("cms.ui.workflow.task.lock"))));
|
||||||
}
|
}
|
||||||
return p;
|
return panel;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -26,12 +26,12 @@ import com.arsdigita.util.Assert;
|
||||||
|
|
||||||
import org.libreccm.cdi.utils.CdiUtil;
|
import org.libreccm.cdi.utils.CdiUtil;
|
||||||
import org.libreccm.workflow.Workflow;
|
import org.libreccm.workflow.Workflow;
|
||||||
import org.libreccm.workflow.WorkflowConstants;
|
|
||||||
import org.libreccm.workflow.WorkflowManager;
|
import org.libreccm.workflow.WorkflowManager;
|
||||||
import org.librecms.CmsConstants;
|
import org.librecms.CmsConstants;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
import org.libreccm.workflow.WorkflowState;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|
@ -62,7 +62,7 @@ class AssignedTaskTableModelBuilder extends AbstractTableModelBuilder {
|
||||||
final CdiUtil cdiUtil= CdiUtil.createCdiUtil();
|
final CdiUtil cdiUtil= CdiUtil.createCdiUtil();
|
||||||
final WorkflowManager workflowManager = cdiUtil.findBean(WorkflowManager.class);
|
final WorkflowManager workflowManager = cdiUtil.findBean(WorkflowManager.class);
|
||||||
|
|
||||||
if (workflowManager.getState(workflow) == WorkflowConstants.STARTED) {
|
if (workflow.getState() == WorkflowState.STARTED) {
|
||||||
final AssignedTaskController controller = cdiUtil.findBean(
|
final AssignedTaskController controller = cdiUtil.findBean(
|
||||||
AssignedTaskController.class);
|
AssignedTaskController.class);
|
||||||
m_iter = controller.getAssignedTasks(workflow).iterator();
|
m_iter = controller.getAssignedTasks(workflow).iterator();
|
||||||
Loading…
Reference in New Issue