Merging with main Libreplan fork
This commit is contained in:
parent
b58c4e4c17
commit
57b01d4431
9 changed files with 168 additions and 66 deletions
|
|
@ -77,7 +77,6 @@ public class IssueLog extends ProjectLog {
|
|||
this.status = status;
|
||||
}
|
||||
|
||||
@NotNull(message = "priority is not specified")
|
||||
public LowMediumHighEnum getPriority() {
|
||||
return priority;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,48 +7,96 @@
|
|||
|
||||
<changeSet id="adding-email_template_table" author="vova/jeroen">
|
||||
<createTable tableName="email_template">
|
||||
<column name="id" type="BIGINT" autoIncrement="true">
|
||||
<column name="id" type="int" autoIncrement="true">
|
||||
<constraints primaryKey="true" nullable="false" primaryKeyName="email_templates_pkey"/>
|
||||
</column>
|
||||
<column name="type" type="int"/>
|
||||
<column name="language" type="int"/>
|
||||
<column name="content" type="varchar(2048)"/>
|
||||
<column name="subject" type="varchar(1024)"/>
|
||||
</createTable>
|
||||
|
||||
<addUniqueConstraint
|
||||
constraintName="email_template_type_language"
|
||||
columnNames="type, language"
|
||||
constraintName="email_template_type_lang_key"
|
||||
columnNames="type,language"
|
||||
deferrable="false"
|
||||
disabled="false"
|
||||
initiallyDeferred="false"
|
||||
tableName="email_template"
|
||||
/>
|
||||
<createIndex tableName="email_template" indexName="language_index">
|
||||
<column name="language"></column>
|
||||
</createIndex>
|
||||
<createIndex tableName="email_template" indexName="type_index">
|
||||
<column name="type"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="adding-notification_notification_queue" author="vova">
|
||||
<createTable tableName="notification_queue">
|
||||
<changeSet id="adding-issue_log_table" author="misha">
|
||||
<createTable tableName="issue_log">
|
||||
<column name="id" type="BIGINT" autoIncrement="true">
|
||||
<constraints primaryKey="true" nullable="false" primaryKeyName="notification_queue_pkey"/>
|
||||
<constraints primaryKey="true" nullable="false" primaryKeyName="issue_log_pkey"/>
|
||||
</column>
|
||||
<column name="type" type="int"/>
|
||||
<column name="updated" type="timestamp with time zone"/>
|
||||
<column name="resource" type="BIGINT"/>
|
||||
<column name="task" type="BIGINT"/>
|
||||
<column name="code" type="varchar(25)"/>
|
||||
<column name="project" type="BIGINT"/>
|
||||
<column name="type" type="integer"/>
|
||||
<column name="description" type="varchar"/>
|
||||
<column name="priority" type="integer"/>
|
||||
<column name="severity" type="integer"/>
|
||||
<column name="created_by" type="BIGINT"/>
|
||||
<column name="assigned_to" type="varchar(50)"/>
|
||||
<column name="status" type="varchar(50)"/>
|
||||
<column name="date_raised" type="timestamp with time zone"/>
|
||||
<column name="deadline" type="timestamp with time zone"/>
|
||||
<column name="date_resolved" type="timestamp with time zone"/>
|
||||
<column name="notes" type="varchar"/>
|
||||
</createTable>
|
||||
<addForeignKeyConstraint baseTableName="issue_log" baseColumnNames="project"
|
||||
constraintName="issue_log_project_order_element_table"
|
||||
referencedTableName="order_element"
|
||||
referencedColumnNames="id"/>
|
||||
<addForeignKeyConstraint baseTableName="issue_log" baseColumnNames="created_by"
|
||||
constraintName="issue_log_user_user_table"
|
||||
referencedTableName="user_table"
|
||||
referencedColumnNames="id"/>
|
||||
<addUniqueConstraint
|
||||
tableName="notification_queue"
|
||||
columnNames="resource, task, project"
|
||||
constraintName="issue_log_unique_code"
|
||||
columnNames="code"
|
||||
deferrable="false"
|
||||
disabled="false"
|
||||
initiallyDeferred="false"/>
|
||||
initiallyDeferred="false"
|
||||
tableName="issue_log"
|
||||
/>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="adding-risk_log_table" author="misha">
|
||||
<createTable tableName="risk_log">
|
||||
<column name="id" type="BIGINT" autoIncrement="true">
|
||||
<constraints primaryKey="true" nullable="false" primaryKeyName="risk_log_pkey"/>
|
||||
</column>
|
||||
<column name="code" type="varchar(25)"/>
|
||||
<column name="project" type="BIGINT"/>
|
||||
<column name="description" type="varchar"/>
|
||||
<column name="probability" type="integer"/>
|
||||
<column name="impact" type="integer"/>
|
||||
<column name="score" type="integer"/>
|
||||
<column name="created_by" type="BIGINT"/>
|
||||
<column name="responsible" type="varchar(25)"/>
|
||||
<column name="status" type="varchar(25)"/>
|
||||
<column name="contingency" type="varchar(50)"/>
|
||||
<column name="counter_measures" type="varchar(50)"/>
|
||||
<column name="action_when" type="timestamp with time zone"/>
|
||||
<column name="date_created" type="timestamp with time zone"/>
|
||||
<column name="notes" type="varchar"/>
|
||||
</createTable>
|
||||
<addForeignKeyConstraint baseTableName="risk_log" baseColumnNames="project"
|
||||
constraintName="project_order_element_table"
|
||||
referencedTableName="order_element"
|
||||
referencedColumnNames="id"/>
|
||||
<addForeignKeyConstraint baseTableName="risk_log" baseColumnNames="created_by"
|
||||
constraintName="risk_log_user_user_table"
|
||||
referencedTableName="user_table"
|
||||
referencedColumnNames="id"/>
|
||||
<addUniqueConstraint
|
||||
constraintName="risk_log_unique_code"
|
||||
columnNames="code"
|
||||
deferrable="false"
|
||||
disabled="false"
|
||||
initiallyDeferred="false"
|
||||
tableName="risk_log"
|
||||
/>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
|
|
@ -293,7 +293,7 @@ public class IssueLogCRUDController extends BaseCRUDController<IssueLog> {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns date entered
|
||||
* Returns {@link Date}
|
||||
*/
|
||||
public Date getDateRaised() {
|
||||
if (issueLogModel.getIssueLog() == null) {
|
||||
|
|
@ -305,17 +305,17 @@ public class IssueLogCRUDController extends BaseCRUDController<IssueLog> {
|
|||
}
|
||||
|
||||
/**
|
||||
* 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<IssueLog> {
|
|||
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<IssueLog> {
|
|||
}
|
||||
}
|
||||
|
||||
public Order getOrder() {
|
||||
if (LogsController.getProjectNameVisibility() == false)
|
||||
return LogsController.getOrder();
|
||||
else
|
||||
return issueLogModel.getIssueLog().getOrder();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getEntityType() {
|
||||
return _("issuelog-number");
|
||||
|
|
|
|||
|
|
@ -47,8 +47,8 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
|
||||
/**
|
||||
* Model for UI operations related to {@link IssueLog}
|
||||
*
|
||||
* @author Miciele Ghiorghis <m.ghiorghis@antoniusziekenhuis.nl>
|
||||
*
|
||||
* @author Misha Gozhda <misha@libreplan-enterprise.com>
|
||||
*/
|
||||
@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;
|
||||
|
||||
|
|
|
|||
|
|
@ -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 <misha@libreplan-enterprise.com>
|
||||
*/
|
||||
@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<String, String>());
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -65,13 +65,17 @@ public class RiskLogCRUDController extends BaseCRUDController<RiskLog> {
|
|||
|
||||
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<RiskLog> {
|
|||
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<RiskLog> {
|
|||
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<RiskLog> {
|
|||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* 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 <code>object</code> to the specified
|
||||
* <code>row</code>
|
||||
|
|
@ -201,7 +239,9 @@ public class RiskLogCRUDController extends BaseCRUDController<RiskLog> {
|
|||
*/
|
||||
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<RiskLog> {
|
|||
}
|
||||
|
||||
/**
|
||||
* Returns registration date
|
||||
* Returns {@link Date} value
|
||||
*/
|
||||
public Date getDateCreated() {
|
||||
if (riskLogModel.getRiskLog() == null) {
|
||||
|
|
@ -281,19 +321,28 @@ public class RiskLogCRUDController extends BaseCRUDController<RiskLog> {
|
|||
}
|
||||
|
||||
/**
|
||||
* 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<RiskLog> {
|
|||
: 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<RiskLog> {
|
|||
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<RiskLog> {
|
|||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -47,8 +47,8 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
|
||||
/**
|
||||
* Model for UI operations related to {@link RiskLog}
|
||||
*
|
||||
* @author Miciele Ghiorghis <m.ghiorghis@antoniusziekenhuis.nl>
|
||||
*
|
||||
* @author Misha Gozhda <misha@libreplan-enterprise.com>
|
||||
*/
|
||||
@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;
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
constraint="no empty:${i18n:_('cannot be empty')}"
|
||||
finder="OrderBandboxFinder"
|
||||
model="@{issueLogController.orders}"
|
||||
selectedElement="@{issueLogController.issueLog.order}"/>
|
||||
selectedElement="@{issueLogController.order}"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="${i18n:_('Type and status')}" />
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
constraint="no empty:${i18n:_('cannot be empty')}"
|
||||
finder="OrderBandboxFinder"
|
||||
model="@{riskLogController.orders}"
|
||||
selectedElement="@{riskLogController.riskLog.order}"/>
|
||||
selectedElement="@{riskLogController.order}"/>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue