V procesech schválení lze zadat limit pro schválení k dané roli.
closes #107
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package info.bukova.isspst.data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.JoinColumn;
|
||||
@@ -21,6 +23,8 @@ public class Workflow extends BaseData {
|
||||
private Role role;
|
||||
@Column(name = "WORDER")
|
||||
private Integer wOrder;
|
||||
@Column(name = "WLIMIT", precision=15, scale=4)
|
||||
private BigDecimal limit;
|
||||
|
||||
public Boolean getCentre() {
|
||||
return centre;
|
||||
@@ -56,4 +60,12 @@ public class Workflow extends BaseData {
|
||||
this.wOrder = order;
|
||||
}
|
||||
|
||||
public BigDecimal getLimit() {
|
||||
return limit;
|
||||
}
|
||||
|
||||
public void setLimit(BigDecimal limit) {
|
||||
this.limit = limit;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package info.bukova.isspst.ui.requirements;
|
||||
|
||||
import info.bukova.isspst.data.Workflow;
|
||||
|
||||
import org.zkoss.bind.annotation.BindingParam;
|
||||
import org.zkoss.bind.annotation.Command;
|
||||
import org.zkoss.bind.annotation.ExecutionArgParam;
|
||||
import org.zkoss.bind.annotation.Init;
|
||||
import org.zkoss.zul.Window;
|
||||
|
||||
public class LimitVM {
|
||||
|
||||
private Workflow workflow;
|
||||
|
||||
@Init
|
||||
public void init(@ExecutionArgParam("workflow") Workflow workflow) {
|
||||
this.workflow = workflow;
|
||||
}
|
||||
|
||||
public Workflow getWorkflow() {
|
||||
return workflow;
|
||||
}
|
||||
|
||||
@Command
|
||||
public void save(@BindingParam("window") Window window) {
|
||||
window.detach();
|
||||
}
|
||||
|
||||
public boolean isCanSave() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -7,16 +7,22 @@ import info.bukova.isspst.data.Workflow;
|
||||
import info.bukova.isspst.services.requirements.RequirementTypeService;
|
||||
import info.bukova.isspst.services.users.RoleService;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.zkoss.bind.annotation.BindingParam;
|
||||
import org.zkoss.bind.annotation.Command;
|
||||
import org.zkoss.bind.annotation.GlobalCommand;
|
||||
import org.zkoss.bind.annotation.Init;
|
||||
import org.zkoss.bind.annotation.NotifyChange;
|
||||
import org.zkoss.zk.ui.Executions;
|
||||
import org.zkoss.zk.ui.event.DropEvent;
|
||||
import org.zkoss.zk.ui.select.annotation.WireVariable;
|
||||
import org.zkoss.zul.Listitem;
|
||||
import org.zkoss.zul.Window;
|
||||
|
||||
public class RequirementTypesVM {
|
||||
|
||||
@@ -28,6 +34,8 @@ public class RequirementTypesVM {
|
||||
private List<Role> centreRoles;
|
||||
private List<Role> workgroupRoles;
|
||||
private RequirementType selected;
|
||||
private Workflow wgSelWorkflow;
|
||||
private Workflow centreSelWorkflow;
|
||||
|
||||
@Init
|
||||
public void init() {
|
||||
@@ -199,5 +207,42 @@ public class RequirementTypesVM {
|
||||
|
||||
this.selected = selected;
|
||||
}
|
||||
|
||||
@Command
|
||||
@NotifyChange({"selected", "centreSelWorkflow", "wgSelWorkflow"})
|
||||
public void overLimit(@BindingParam("workflow") Workflow workflow) {
|
||||
if (workflow.getLimit() != null && !workflow.getLimit().equals(BigDecimal.ZERO)) {
|
||||
workflow.setLimit(null);
|
||||
reqTypeService.update(selected);
|
||||
return;
|
||||
}
|
||||
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("workflow", workflow);
|
||||
Window win = (Window) Executions.createComponents("/settings/workflow/limit.zul", null, params);
|
||||
win.doModal();
|
||||
}
|
||||
|
||||
@GlobalCommand
|
||||
@NotifyChange("selected")
|
||||
public void refresh() {
|
||||
reqTypeService.update(selected);
|
||||
}
|
||||
|
||||
public Workflow getWgSelWorkflow() {
|
||||
return wgSelWorkflow;
|
||||
}
|
||||
|
||||
public void setWgSelWorkflow(Workflow wgSelWorkflow) {
|
||||
this.wgSelWorkflow = wgSelWorkflow;
|
||||
}
|
||||
|
||||
public Workflow getCentreSelWorkflow() {
|
||||
return centreSelWorkflow;
|
||||
}
|
||||
|
||||
public void setCentreSelWorkflow(Workflow centreSelWorkflow) {
|
||||
this.centreSelWorkflow = centreSelWorkflow;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user