From 57b01d4431dfafb36ee3b9c037f18d820027bcb0 Mon Sep 17 00:00:00 2001 From: Misha Date: Fri, 4 Dec 2015 15:46:19 +0200 Subject: [PATCH] Merging with main Libreplan fork --- .../business/logs/entities/IssueLog.java | 1 - .../src/main/resources/db.changelog-1.5.xml | 90 ++++++++++++++----- .../web/logs/IssueLogCRUDController.java | 18 +++- .../org/libreplan/web/logs/IssueLogModel.java | 7 +- .../libreplan/web/logs/LogsController.java | 25 ++---- .../web/logs/RiskLogCRUDController.java | 82 +++++++++++++++-- .../org/libreplan/web/logs/RiskLogModel.java | 7 +- .../src/main/webapp/logs/_editIssueLog.zul | 2 +- .../src/main/webapp/logs/_editRiskLog.zul | 2 +- 9 files changed, 168 insertions(+), 66 deletions(-) diff --git a/libreplan-business/src/main/java/org/libreplan/business/logs/entities/IssueLog.java b/libreplan-business/src/main/java/org/libreplan/business/logs/entities/IssueLog.java index fc08ba3cf..735135b55 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/logs/entities/IssueLog.java +++ b/libreplan-business/src/main/java/org/libreplan/business/logs/entities/IssueLog.java @@ -77,7 +77,6 @@ public class IssueLog extends ProjectLog { this.status = status; } - @NotNull(message = "priority is not specified") public LowMediumHighEnum getPriority() { return priority; } diff --git a/libreplan-business/src/main/resources/db.changelog-1.5.xml b/libreplan-business/src/main/resources/db.changelog-1.5.xml index f969c70b6..0a3ca2f12 100644 --- a/libreplan-business/src/main/resources/db.changelog-1.5.xml +++ b/libreplan-business/src/main/resources/db.changelog-1.5.xml @@ -7,48 +7,96 @@ - + - - - - - - - - - - + + - + - - - - + + + + + + + + + + + + + + + initiallyDeferred="false" + tableName="issue_log" + /> + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogCRUDController.java b/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogCRUDController.java index 4cd526f60..8ec76547c 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogCRUDController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogCRUDController.java @@ -293,7 +293,7 @@ public class IssueLogCRUDController extends BaseCRUDController { } /** - * Returns date entered + * Returns {@link Date} */ public Date getDateRaised() { if (issueLogModel.getIssueLog() == null) { @@ -305,17 +305,17 @@ public class IssueLogCRUDController extends BaseCRUDController { } /** - * Sets the date entered + * Sets the date raised * * @param date - * date eneted + * date raised */ public void setDateRaised(Date date) { issueLogModel.getIssueLog().setDateRaised(date); } /** - * Returns date resolved + * Returns {@link Date} */ public Date getDateResolved() { if (issueLogModel.getIssueLog() == null) { @@ -335,6 +335,9 @@ public class IssueLogCRUDController extends BaseCRUDController { issueLogModel.getIssueLog().setDateResolved(date); } + /** + * Returns {@link Date} + */ public Date getDeadline() { if (issueLogModel.getIssueLog() == null) { return null; @@ -372,6 +375,13 @@ public class IssueLogCRUDController extends BaseCRUDController { } } + public Order getOrder() { + if (LogsController.getProjectNameVisibility() == false) + return LogsController.getOrder(); + else + return issueLogModel.getIssueLog().getOrder(); + } + @Override protected String getEntityType() { return _("issuelog-number"); diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogModel.java index d23bceae3..757d6ae6b 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/logs/IssueLogModel.java @@ -47,8 +47,8 @@ import org.springframework.transaction.annotation.Transactional; /** * Model for UI operations related to {@link IssueLog} - * - * @author Miciele Ghiorghis + * + * @author Misha Gozhda */ @Service @Scope(BeanDefinition.SCOPE_PROTOTYPE) @@ -70,9 +70,6 @@ public class IssueLogModel extends IntegrationEntityModel implements @Autowired private IOrderDAO orderDAO; - @Autowired - private IScenarioManager scenarioManager; - @Autowired private IConfigurationDAO configurationDAO; diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/logs/LogsController.java b/libreplan-webapp/src/main/java/org/libreplan/web/logs/LogsController.java index 9d5483194..26ee583f0 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/logs/LogsController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/logs/LogsController.java @@ -18,38 +18,31 @@ */ package org.libreplan.web.logs; - -import java.util.HashMap; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.libreplan.business.orders.entities.Order; import org.libreplan.web.common.Util; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.Scope; import org.zkoss.zk.ui.Component; -import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.util.GenericForwardComposer; -import org.zkoss.zul.api.Hbox; import org.zkoss.zul.api.Window; +import javax.swing.*; + + /** * Controller for Logs(issue and risk logs) - * + * * @author Misha Gozhda */ @org.springframework.stereotype.Component @Scope(BeanDefinition.SCOPE_PROTOTYPE) public class LogsController extends GenericForwardComposer { - private static final Log LOG = LogFactory.getLog(LogsController.class); private Window issueLogWindow; private Window riskLogWindow; private Window logWindow; - private Hbox logsFilter; - private IssueLogCRUDController issueLogController; private RiskLogCRUDController riskLogController; private static boolean projectNameVisibility = true; @@ -59,19 +52,11 @@ public class LogsController extends GenericForwardComposer { public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); comp.setVariable("logsController", this, true); - Component filterComponent = Executions.createComponents( - "/logs/_logsFilter.zul", logsFilter, - new HashMap()); - filterComponent.setVariable("logsFilterController", this, true); - logsFilter.setVisible(true); logWindow = (Window) comp.getFellowIfAny("logWindow"); Util.createBindingsFor(logWindow); setupIssueLogController(); } - public void onApplyFilter() { - } - public void setupIssueLogController() { issueLogWindow = (Window) self.getFellowIfAny("issueLogWindow"); @@ -116,4 +101,4 @@ public class LogsController extends GenericForwardComposer { public static Order getOrder() { return order; } -} +} \ No newline at end of file diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogCRUDController.java b/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogCRUDController.java index 62cf1050d..3bffccda8 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogCRUDController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogCRUDController.java @@ -65,13 +65,17 @@ public class RiskLogCRUDController extends BaseCRUDController { private BandboxSearch bdUserRiskLog; + private Textbox riskScore; + @Override public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); + riskScore = (Textbox)comp.getFellow("editWindow").getFellow("riskScore"); comp.setVariable("riskLogController", this, true); showListWindow(); initializeOrderComponent(); initializeUserComponent(); + bdProjectRiskLog.setDisabled(!LogsController.getProjectNameVisibility()); } /** @@ -148,17 +152,33 @@ public class RiskLogCRUDController extends BaseCRUDController { appendDate(row, riskLog.getDateCreated()); appendLabel(row, riskLog.getCreatedBy().getFullName() + riskLog.getCreatedBy().getLoginName()); appendLabel(row, riskLog.getCounterMeasures()); - appendLabel(row, "4"); + appendLabel(row, riskLog.getScoreAfterCM().getDisplayName()); appendLabel(row, riskLog.getContingency()); appendLabel(row, riskLog.getResponsible()); appendDate(row, riskLog.getActionWhen()); appendLabel(row, riskLog.getNotes()); appendOperations(row, riskLog); + setScoreCellColor(row, riskLog.getRiskScore()); } }; } - public static ListitemRenderer lowMediumHighEnumRenderer = new ListitemRenderer() { + private void setScoreCellColor(Row row, int priority) { + Cell cell = (Cell) row.getChildren().get(4); + if (priority == 1 || priority == 2) { + cell.setClass("logs-priority-color-green"); + } + + if (priority == 3 || priority == 4) { + cell.setClass("logs-priority-color-yellow"); + } + + if (priority == 6 || priority == 9) { + cell.setClass("logs-priority-color-red"); + } + } + + public ListitemRenderer lowMediumHighEnumRenderer = new ListitemRenderer() { @Override public void render(org.zkoss.zul.Listitem item, Object data) throws Exception { @@ -167,7 +187,7 @@ public class RiskLogCRUDController extends BaseCRUDController { item.setLabel(displayName); } }; - public static ListitemRenderer riskScoreStatesEnumRenderer = new ListitemRenderer() { + public ListitemRenderer riskScoreStatesEnumRenderer = new ListitemRenderer() { @Override public void render(org.zkoss.zul.Listitem item, Object data) throws Exception { @@ -177,6 +197,24 @@ public class RiskLogCRUDController extends BaseCRUDController { } }; + /** + * Renders LOW, MEDIUM, HIGH enums + * + * @return {@link ListitemRenderer} + */ + public ListitemRenderer getLowMediumHighEnumRenderer() { + return lowMediumHighEnumRenderer; + } + + /** + * Renders riskScoreState enums + * + * @return {@link ListitemRenderer} + */ + public ListitemRenderer getRiskScoreStatesEnumRenderer() { + return riskScoreStatesEnumRenderer; + } + /** * Appends the specified object to the specified * row @@ -201,7 +239,9 @@ public class RiskLogCRUDController extends BaseCRUDController { */ private void appendLabel(final Row row, String value) { Label label = new Label(value); - row.appendChild(label); + Cell cell = new Cell(); + cell.appendChild(label); + row.appendChild(cell); } /** @@ -269,7 +309,7 @@ public class RiskLogCRUDController extends BaseCRUDController { } /** - * Returns registration date + * Returns {@link Date} value */ public Date getDateCreated() { if (riskLogModel.getRiskLog() == null) { @@ -281,19 +321,28 @@ public class RiskLogCRUDController extends BaseCRUDController { } /** - * Sets the registration date + * Sets the date created * * @param date - * registration date + * date created */ public void setDateCreated(Date date) { riskLogModel.getRiskLog().setDateCreated(date); } + /** + * Sets the Action When + * + * @param date + * date created + */ public void setActionWhen(Date date) { riskLogModel.getRiskLog().setActionWhen(date); } + /** + * Returns {@link Date} value + */ public Date getActionWhen() { if (riskLogModel.getRiskLog() == null) { return null; @@ -303,6 +352,14 @@ public class RiskLogCRUDController extends BaseCRUDController { : null; } + /** + * Sets the Score for risk + * + */ + public void setUpdateScore() { + riskScore.setValue(String.valueOf(getRiskLog().getRiskScore())); + } + /** * Returns the {@link RiskLog} object */ @@ -317,6 +374,15 @@ public class RiskLogCRUDController extends BaseCRUDController { return riskLogModel.getRiskLogs(); } + public Order getOrder() { + if (LogsController.getProjectNameVisibility() == false) { + getRiskLog().setOrder(LogsController.getOrder()); + return getRiskLog().getOrder(); + } + else + return riskLogModel.getRiskLog().getOrder(); + } + @Override protected String getEntityType() { return _("Issue log"); @@ -363,4 +429,4 @@ public class RiskLogCRUDController extends BaseCRUDController { } -} +} \ No newline at end of file diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogModel.java index c18ce3bb5..fd9f51842 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/logs/RiskLogModel.java @@ -47,8 +47,8 @@ import org.springframework.transaction.annotation.Transactional; /** * Model for UI operations related to {@link RiskLog} - * - * @author Miciele Ghiorghis + * + * @author Misha Gozhda */ @Service @Scope(BeanDefinition.SCOPE_PROTOTYPE) @@ -70,9 +70,6 @@ public class RiskLogModel extends IntegrationEntityModel implements @Autowired private IOrderDAO orderDAO; - @Autowired - private IScenarioManager scenarioManager; - @Autowired private IConfigurationDAO configurationDAO; diff --git a/libreplan-webapp/src/main/webapp/logs/_editIssueLog.zul b/libreplan-webapp/src/main/webapp/logs/_editIssueLog.zul index a30f87db5..371f846e3 100644 --- a/libreplan-webapp/src/main/webapp/logs/_editIssueLog.zul +++ b/libreplan-webapp/src/main/webapp/logs/_editIssueLog.zul @@ -36,7 +36,7 @@ constraint="no empty:${i18n:_('cannot be empty')}" finder="OrderBandboxFinder" model="@{issueLogController.orders}" - selectedElement="@{issueLogController.issueLog.order}"/> + selectedElement="@{issueLogController.order}"/>