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

Commit b417f93

Browse files
author
barnabartha
committed
SORMAS-Foundation#3368 SORMAS-Foundation#3477 - fix campaign archiving + filter campaign form data to show only non archived ones + set campaign create form width to 1280 pixels
1 parent f34d4a5 commit b417f93

4 files changed

Lines changed: 21 additions & 4 deletions

File tree

sormas-backend/src/main/java/de/symeda/sormas/backend/campaign/data/CampaignFormDataService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,8 @@ public Predicate createCriteriaFilter(CampaignFormDataCriteria criteria, Criteri
6363

6464
if (criteria.getCampaign() != null) {
6565
filter = and(cb, filter, cb.equal(campaignJoin.get(Campaign.UUID), criteria.getCampaign().getUuid()));
66+
} else {
67+
filter = and(cb, filter, cb.or(cb.equal(campaignJoin.get(Campaign.ARCHIVED), false), cb.isNull(campaignJoin.get(Campaign.ARCHIVED))));
6668
}
6769
if (criteria.getCampaignFormMeta() != null) {
6870
filter = and(cb, filter, cb.equal(campaignFormJoin.get(CampaignFormMeta.UUID), criteria.getCampaignFormMeta().getUuid()));

sormas-ui/src/main/java/de/symeda/sormas/ui/campaign/CampaignController.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ public CommitDiscardWrapperComponent<CampaignEditForm> getCampaignComponent(Camp
156156
}
157157
campaignEditForm.setValue(campaignDto);
158158

159-
final CommitDiscardWrapperComponent<CampaignEditForm> view =
159+
final CommitDiscardWrapperComponent<CampaignEditForm> campaignComponent =
160160
new CommitDiscardWrapperComponent<CampaignEditForm>(campaignEditForm, campaignEditForm.getFieldGroup()) {
161161

162162
@Override
@@ -168,13 +168,26 @@ public void discard() {
168168

169169
if (UserProvider.getCurrent().hasUserRight(UserRight.CAMPAIGN_DELETE)) {
170170
CampaignDto finalCampaignDto = campaignDto;
171-
view.addDeleteListener(() -> {
171+
campaignComponent.addDeleteListener(() -> {
172172
FacadeProvider.getCampaignFacade().deleteCampaign(finalCampaignDto.getUuid());
173173
UI.getCurrent().getNavigator().navigateTo(CampaignsView.VIEW_NAME);
174174
}, I18nProperties.getString(Strings.entityCampaign));
175175
}
176176

177-
view.addCommitListener(() -> {
177+
// Initialize 'Archive' button
178+
if (UserProvider.getCurrent().hasUserRight(UserRight.CAMPAIGN_ARCHIVE)) {
179+
final String campaignUuid = campaignDto.getUuid();
180+
boolean archived = FacadeProvider.getCampaignFacade().isArchived(campaignUuid);
181+
Button archiveCampaignButton = ButtonHelper.createButton(archived ? Captions.actionDearchive : Captions.actionArchive, e -> {
182+
campaignComponent.commit();
183+
archiveOrDearchiveCampaign(campaignUuid, !archived);
184+
}, ValoTheme.BUTTON_LINK);
185+
186+
campaignComponent.getButtonsPanel().addComponentAsFirst(archiveCampaignButton);
187+
campaignComponent.getButtonsPanel().setComponentAlignment(archiveCampaignButton, Alignment.BOTTOM_LEFT);
188+
}
189+
190+
campaignComponent.addCommitListener(() -> {
178191
if (!campaignEditForm.getFieldGroup().isModified()) {
179192
CampaignDto dto = campaignEditForm.getValue();
180193
FacadeProvider.getCampaignFacade().saveCampaign(dto);
@@ -183,7 +196,7 @@ public void discard() {
183196
}
184197
});
185198

186-
return view;
199+
return campaignComponent;
187200
}
188201

189202
public CommitDiscardWrapperComponent<CampaignFormDataEditForm> getCampaignFormDataComponent(

sormas-ui/src/main/java/de/symeda/sormas/ui/campaign/campaigns/CampaignEditForm.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ public class CampaignEditForm extends AbstractEditForm<CampaignDto> {
8080
public CampaignEditForm(CampaignDto campaignDto) {
8181

8282
super(CampaignDto.class, CampaignDto.I18N_PREFIX);
83+
setWidth(1280, Unit.PIXELS);
8384

8485
this.campaignDto = campaignDto;
8586
isCreateForm = campaignDto == null;

sormas-ui/src/main/java/de/symeda/sormas/ui/dashboard/campaigns/CampaignDashboardView.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ private void refreshSubTabs(Page page, String tabId, VerticalLayout subTabLayout
129129
currentSubTabsWrapper = subTabSwitcherLayout;
130130
subTabLayout.addComponent(subTabSwitcherLayout);
131131
subTabLayout.setExpandRatio(subTabSwitcherLayout, 0);
132+
subTabSwitcherLayout.setStyleName("highlighted-statistics-component");
132133

133134
subTabs.forEach(subTabId -> subTabSwitcher.addView(subTabId, subTabId, (e) -> {
134135
subTabLayout.removeComponent(currentDiagramsWrapper);

0 commit comments

Comments
 (0)