Skip to content
This repository was archived by the owner on May 5, 2021. It is now read-only.

Commit 6ffd242

Browse files
Add Action title (SORMAS-Foundation#2924)
* Issue SORMAS-Foundation#2905 Adds field title in Action in database - sql script - Entity - DTO * Issue SORMAS-Foundation#2905 Adds field title in Action in UI - edit form - list entry - captions
1 parent 01450e4 commit 6ffd242

9 files changed

Lines changed: 46 additions & 1 deletion

File tree

sormas-api/src/main/java/de/symeda/sormas/api/action/ActionDto.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@
2929
import de.symeda.sormas.api.utils.Required;
3030

3131
public class ActionDto extends EntityDto {
32+
3233
private static final long serialVersionUID = 2439546041916003652L;
3334

3435
public static final String I18N_PREFIX = "Action";
36+
public static final String TITLE = "title";
3537
public static final String DESCRIPTION = "description";
3638
public static final String REPLY = "reply";
3739
public static final String PRIORITY = "priority";
@@ -51,6 +53,7 @@ public class ActionDto extends EntityDto {
5153
private Date statusChangeDate;
5254

5355
private UserReferenceDto creatorUser;
56+
private String title;
5457
private String description;
5558
private String reply;
5659
private UserReferenceDto replyingUser;
@@ -119,6 +122,14 @@ public void setCreatorUser(UserReferenceDto creatorUser) {
119122
this.creatorUser = creatorUser;
120123
}
121124

125+
public String getTitle() {
126+
return title;
127+
}
128+
129+
public void setTitle(String title) {
130+
this.title = title;
131+
}
132+
122133
public String getDescription() {
123134
return description;
124135
}

sormas-api/src/main/java/de/symeda/sormas/api/i18n/Captions.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ public interface Captions {
2626
String Action_event = "Action.event";
2727
String Action_priority = "Action.priority";
2828
String Action_reply = "Action.reply";
29+
String Action_title = "Action.title";
2930
String actionApplyDateFilter = "actionApplyDateFilter";
3031
String actionApplyFilters = "actionApplyFilters";
3132
String actionArchive = "actionArchive";

sormas-api/src/main/resources/captions.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ actionCreatingLabel=Created at %s by %s
6666
actionReplyingLabel=Updated at %s by %s
6767
actionStatusChangeDate=updated at %s
6868
Action=Action
69+
Action.title=Title
6970
Action.description=Description
7071
Action.reply=Comments on execution
7172
Action.creatorUser=Created by

sormas-api/src/main/resources/captions_fr-FR.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ actionCreatingLabel=Créé à %s par %s
6666
actionReplyingLabel=Mis à jour à %s par %s
6767
actionStatusChangeDate=mis à jour à %s
6868
Action=Action
69+
Action.title=Titre
6970
Action.description=Description
7071
Action.reply=Commentaires sur l'exécution
7172
Action.creatorUser=Créé par

sormas-backend/src/main/java/de/symeda/sormas/backend/action/Action.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
package de.symeda.sormas.backend.action;
1919

2020
import static de.symeda.sormas.api.EntityDto.COLUMN_LENGTH_BIG;
21+
import static de.symeda.sormas.api.EntityDto.COLUMN_LENGTH_DEFAULT;
2122

2223
import java.util.Date;
2324

@@ -40,9 +41,11 @@
4041
@Entity
4142
@Audited
4243
public class Action extends AbstractDomainObject {
44+
4345
private static final long serialVersionUID = -4754578341242164661L;
4446

4547
public static final String TABLE_NAME = "action";
48+
public static final String TITLE = "title";
4649
public static final String DESCRIPTION = "description";
4750
public static final String REPLY = "reply";
4851
public static final String REPLYING_USER = "replyingUser";
@@ -63,6 +66,7 @@ public class Action extends AbstractDomainObject {
6366
private Date statusChangeDate;
6467

6568
private User creatorUser;
69+
private String title;
6670
private String description;
6771
private String reply;
6872
private User replyingUser;
@@ -130,6 +134,15 @@ public void setPriority(ActionPriority priority) {
130134
this.priority = priority;
131135
}
132136

137+
@Column(length = COLUMN_LENGTH_DEFAULT)
138+
public String getTitle() {
139+
return title;
140+
}
141+
142+
public void setTitle(String title) {
143+
this.title = title;
144+
}
145+
133146
@Column(length = COLUMN_LENGTH_BIG)
134147
public String getDescription() {
135148
return description;

sormas-backend/src/main/java/de/symeda/sormas/backend/action/ActionFacadeEjb.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ public Action fromDto(ActionDto source) {
7676
target.setReplyingUser(userService.getByReferenceDto(source.getReplyingUser()));
7777
target.setReply(source.getReply());
7878
target.setCreatorUser(userService.getByReferenceDto(source.getCreatorUser()));
79+
target.setTitle(source.getTitle());
7980
target.setDescription(source.getDescription());
8081
target.setPriority(source.getPriority());
8182
target.setDate(source.getDate());
@@ -116,6 +117,7 @@ public ActionDto toDto(Action action) {
116117
target.setUuid(source.getUuid());
117118

118119
target.setCreatorUser(UserFacadeEjb.toReferenceDto(source.getCreatorUser()));
120+
target.setTitle(source.getTitle());
119121
target.setDescription(source.getDescription());
120122
target.setReply(source.getReply());
121123
target.setReplyingUser(UserFacadeEjb.toReferenceDto(source.getReplyingUser()));

sormas-backend/src/main/resources/sql/sormas_schema.sql

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5323,4 +5323,10 @@ ALTER TABLE person_history ADD COLUMN externalid varchar(255);
53235323

53245324
INSERT INTO schema_version (version_number, comment) VALUES (254, 'Add new field externalId as per feature #2670');
53255325

5326+
-- 2020-09-18 Add action title
5327+
ALTER TABLE action ADD COLUMN title character varying(512);
5328+
ALTER TABLE action_history ADD COLUMN title character varying(512);
5329+
5330+
INSERT INTO schema_version (version_number, comment) VALUES (255, 'Add action.title');
5331+
53265332
-- *** Insert new sql commands BEFORE this line ***

sormas-ui/src/main/java/de/symeda/sormas/ui/action/ActionEditForm.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*******************************************************************************/
1818
package de.symeda.sormas.ui.action;
1919

20+
import static de.symeda.sormas.ui.utils.CssStyles.SOFT_REQUIRED;
2021
import static de.symeda.sormas.ui.utils.LayoutUtil.fluidRow;
2122
import static de.symeda.sormas.ui.utils.LayoutUtil.fluidRowLocs;
2223
import static de.symeda.sormas.ui.utils.LayoutUtil.loc;
@@ -26,6 +27,7 @@
2627
import com.vaadin.v7.ui.Label;
2728
import com.vaadin.v7.ui.OptionGroup;
2829
import com.vaadin.v7.ui.RichTextArea;
30+
import com.vaadin.v7.ui.TextField;
2931

3032
import de.symeda.sormas.api.action.ActionContext;
3133
import de.symeda.sormas.api.action.ActionDto;
@@ -54,6 +56,7 @@ public class ActionEditForm extends AbstractEditForm<ActionDto> {
5456
locs(ActionDto.EVENT)) +
5557
fluidRowLocs(ActionDto.DATE, ActionDto.PRIORITY) +
5658
loc(CREATING_LABEL_LOC) +
59+
fluidRowLocs(ActionDto.TITLE) +
5760
fluidRowLocs(ActionDto.DESCRIPTION) +
5861
loc(REPLYING_LABEL_LOC) +
5962
fluidRowLocs(ActionDto.REPLY) +
@@ -91,6 +94,8 @@ protected void addFields() {
9194
// XXX: set visible when other contexts will be managed
9295
actionContext.setVisible(false);
9396

97+
TextField title = addField(ActionDto.TITLE, TextField.class);
98+
title.addStyleName(SOFT_REQUIRED);
9499
RichTextArea description = addField(ActionDto.DESCRIPTION, RichTextArea.class);
95100
description.setNullRepresentation("");
96101
description.setImmediate(true);
@@ -148,7 +153,7 @@ private void updateByCreating() {
148153
updateCreationInfo();
149154
}
150155

151-
setReadOnly(!creator, ActionDto.DESCRIPTION);
156+
setReadOnly(!creator, ActionDto.DESCRIPTION, ActionDto.TITLE);
152157
}
153158
}
154159

sormas-ui/src/main/java/de/symeda/sormas/ui/action/ActionListEntry.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
*******************************************************************************/
1818
package de.symeda.sormas.ui.action;
1919

20+
import com.google.common.base.MoreObjects;
2021
import com.google.common.base.Strings;
2122
import com.vaadin.icons.VaadinIcons;
2223
import com.vaadin.shared.ui.ContentMode;
@@ -59,6 +60,10 @@ public ActionListEntry(ActionDto action) {
5960
addComponent(withContentLayout);
6061
setExpandRatio(withContentLayout, 1);
6162

63+
Label title = new Label(MoreObjects.firstNonNull(Strings.emptyToNull(action.getTitle()), "-"));
64+
title.addStyleName(CssStyles.H3);
65+
withContentLayout.addComponent(title);
66+
6267
HorizontalLayout topLayout = new HorizontalLayout();
6368
topLayout.setMargin(false);
6469
topLayout.setSpacing(false);

0 commit comments

Comments
 (0)