use of com.hack23.cia.model.internal.application.data.rules.impl.Status in project cia by Hack23.
the class ParliamentRiskPageModContentFactoryImpl method createContent.
@Secured({ "ROLE_ANONYMOUS", "ROLE_USER", "ROLE_ADMIN" })
@Override
public Layout createContent(final String parameters, final MenuBar menuBar, final Panel panel) {
final VerticalLayout panelContent = createPanelContent();
getParliamentMenuItemFactory().createParliamentTopicMenu(menuBar);
final String pageId = getPageId(parameters);
final HorizontalLayout horizontalLayout = new HorizontalLayout();
final DataContainer<RuleViolation, String> dataContainer = getApplicationManager().getDataContainer(RuleViolation.class);
final List<RuleViolation> ruleViolations = dataContainer.getAll();
final List<ComplianceCheckImpl> checks = new ArrayList<>();
for (final Entry<String, List<RuleViolation>> idMapViolations : ruleViolations.stream().collect(Collectors.groupingBy(RuleViolation::getReferenceId)).entrySet()) {
checks.add(new ComplianceCheckImpl(idMapViolations.getValue()));
}
Collections.sort(checks, (o1, o2) -> Integer.compare(o2.getRuleViolations().size(), o1.getRuleViolations().size()));
for (final Entry<Status, List<RuleViolation>> statusEntry : ruleViolations.stream().collect(Collectors.groupingBy(RuleViolation::getStatus)).entrySet()) {
horizontalLayout.addComponent(new CounterStatisticsCard(VaadinIcons.WARNING, new CounterStatisticModel("ALL:" + statusEntry.getKey(), statusEntry.getValue().size()).withShow(StatisticShow.Sum).withIconHidden().withShowOnlyStatistic(true), "ALL:" + statusEntry.getKey()));
}
for (final Entry<ResourceType, List<RuleViolation>> statusEntry : ruleViolations.stream().collect(Collectors.groupingBy(RuleViolation::getResourceType)).entrySet()) {
horizontalLayout.addComponent(new CounterStatisticsCard(VaadinIcons.WARNING, new CounterStatisticModel("ALL:" + statusEntry.getKey(), statusEntry.getValue().size()).withShow(StatisticShow.Sum).withIconHidden().withShowOnlyStatistic(true), "ALL:" + statusEntry.getKey()));
}
panelContent.addComponent(horizontalLayout);
getGridFactory().createBasicBeanItemGrid(panelContent, ComplianceCheckImpl.class, checks, "Risk", new String[] { "name", "resourceType", "numberRuleViolations", "ruleSummary" }, new String[] { "id", "ruleViolations" }, CLICK_LISTENER, null, null);
getPageActionEventHelper().createPageEvent(ViewAction.VISIT_PARLIAMENT_RANKING_VIEW, ApplicationEventGroup.USER, NAME, parameters, pageId);
panel.setCaption(new StringBuilder().append(NAME).append("::").append(PARLIAMENT_RISK_SUMMARY).toString());
return panelContent;
}
use of com.hack23.cia.model.internal.application.data.rules.impl.Status in project cia by Hack23.
the class RiksdagenDocumentApiImplITest method getDocumentStatusTest.
/**
* Gets the document status test.
*
* @return the document status test
* @throws Exception
* the exception
*/
@Test
public void getDocumentStatusTest() throws Exception {
DocumentStatusContainer dokumentstatus = riksdagenApi.getDocumentStatus("GU01JuU11");
assertNotNull(dokumentstatus);
assertNotNull(dokumentstatus.getDocument().getMadePublicDate());
assertNotNull(dokumentstatus.getDocument().getHangarId());
assertEquals(DocumentType.BET.value(), dokumentstatus.getDocument().getDocumentType());
assertTrue(dokumentstatus.getDocumentReferenceContainer().getDocumentReferenceList().size() > 0);
assertTrue(dokumentstatus.getDocumentDetailContainer().getDocumentDetailList().size() > 0);
dokumentstatus = riksdagenApi.getDocumentStatus("GQ02So321");
assertNotNull(dokumentstatus);
assertNotNull(dokumentstatus.getDocument().getMadePublicDate());
assertNotNull(dokumentstatus.getDocument().getHangarId());
assertEquals(DocumentType.MOT.value(), dokumentstatus.getDocument().getDocumentType());
assertEquals("Avslag", dokumentstatus.getDocumentProposal().getProposal().getChamber());
assertEquals(" Avslag", dokumentstatus.getDocumentProposal().getProposal().getCommittee());
assertEquals("2003/04:SoU7", dokumentstatus.getDocumentProposal().getProposal().getProcessedIn());
assertEquals("Röstning", dokumentstatus.getDocumentProposal().getProposal().getDecisionType());
assertEquals("0540190357911", dokumentstatus.getDocumentPersonReferenceContainer().getDocumentPersonReferenceList().get(0).getPersonReferenceId());
assertTrue(dokumentstatus.getDocumentDetailContainer().getDocumentDetailList().size() > 0);
dokumentstatus = riksdagenApi.getDocumentStatus("GVA3FöU43");
assertNotNull(dokumentstatus);
dokumentstatus = riksdagenApi.getDocumentStatus("GX02Ub453");
assertNotNull(dokumentstatus);
assertNotNull(dokumentstatus.getDocument().getMadePublicDate());
assertNotNull(dokumentstatus.getDocument().getHangarId());
assertEquals(DocumentType.MOT.value(), dokumentstatus.getDocument().getDocumentType());
assertTrue(dokumentstatus.getDocumentDetailContainer().getDocumentDetailList().size() > 0);
assertEquals(1, dokumentstatus.getDocumentPersonReferenceContainer().getDocumentPersonReferenceList().size());
final DocumentPersonReferenceData documentPersonReferenceData = dokumentstatus.getDocumentPersonReferenceContainer().getDocumentPersonReferenceList().iterator().next();
assertEquals("Thomas Bodström", documentPersonReferenceData.getReferenceName());
}
use of com.hack23.cia.model.internal.application.data.rules.impl.Status in project cia by Hack23.
the class RiksdagenDocumentStatusWorkGeneratorImpl method generateWorkOrders.
@Override
public void generateWorkOrders() {
try {
final Map<String, String> documentStatusContainerMap = getImportService().getDocumentStatusContainerMap();
final List<DocumentType> selectedDocumentTypes = new ArrayList<>();
selectedDocumentTypes.add(DocumentType.BET);
selectedDocumentTypes.add(DocumentType.PROP);
selectedDocumentTypes.add(DocumentType.MOT);
final Map<String, String> documentElementMap = getImportService().getDocumentElementMap(new SimpleDateFormat(RIKSDAGEN_JAVA_SIMPLE_DATE_FORMAT, Locale.ENGLISH).parse("1999-12-30 00:00:00"), selectedDocumentTypes, false);
final Set<String> avaibleDocumentStatus = documentElementMap.keySet();
for (final String id : avaibleDocumentStatus) {
if (!documentStatusContainerMap.containsKey(id)) {
getJmsSender().send(documentStatusContainerWorkdestination, id);
}
}
for (final DocumentStatusContainer container : getImportService().getNoneCompletedDocumentStatusCommitteeReports()) {
if ("planerat".equals(container.getDocument().getStatus())) {
getJmsSender().send(documentStatusContainerWorkdestination, container.getDocument().getId());
}
}
} catch (final ParseException e) {
LOGGER.warn("Loading document status ", e);
}
}
use of com.hack23.cia.model.internal.application.data.rules.impl.Status in project cia by Hack23.
the class DashboardViewOverviewPageModContentFactoryImpl method createDashboardPartRiskBySeverity.
private void createDashboardPartRiskBySeverity(final ResponsiveRow row) {
final CssLayout layout = new CssLayout();
layout.addStyleName("v-layout-content-overview-dashboard-panel-level2");
Responsive.makeResponsive(layout);
layout.setSizeUndefined();
final Label titleLabel = new Label("Number of risk by severity");
Responsive.makeResponsive(titleLabel);
titleLabel.addStyleName("title");
titleLabel.setWidth(100, Unit.PERCENTAGE);
layout.addComponent(titleLabel);
final HorizontalLayout horizontalLayout = new HorizontalLayout();
Responsive.makeResponsive(horizontalLayout);
final DataContainer<RuleViolation, String> dataContainer = getApplicationManager().getDataContainer(RuleViolation.class);
final List<RuleViolation> ruleViolations = dataContainer.getAll();
for (final Entry<Status, List<RuleViolation>> statusEntry : ruleViolations.stream().collect(Collectors.groupingBy(RuleViolation::getStatus)).entrySet()) {
horizontalLayout.addComponent(new CounterStatisticsCard(VaadinIcons.WARNING, new CounterStatisticModel("" + statusEntry.getKey(), statusEntry.getValue().size()).withShow(StatisticShow.Sum).withIconHidden().withShowOnlyStatistic(true), "" + statusEntry.getKey()));
}
layout.addComponent(horizontalLayout);
row.addColumn().withDisplayRules(DISPLAY_SIZE_XS_DEVICE, DISPLAYS_SIZE_XM_DEVICE, DISPLAY_SIZE_MD_DEVICE, DISPLAY_SIZE_LG_DEVICE).withComponent(layout);
}
use of com.hack23.cia.model.internal.application.data.rules.impl.Status in project cia by Hack23.
the class ParliamentRuleViolationsPageModContentFactoryImpl method createContent.
@Secured({ "ROLE_ANONYMOUS", "ROLE_USER", "ROLE_ADMIN" })
@Override
public Layout createContent(final String parameters, final MenuBar menuBar, final Panel panel) {
final VerticalLayout panelContent = createPanelContent();
getParliamentMenuItemFactory().createParliamentTopicMenu(menuBar);
final HorizontalLayout horizontalLayout = new HorizontalLayout();
final DataContainer<RuleViolation, String> dataContainer = getApplicationManager().getDataContainer(RuleViolation.class);
final List<RuleViolation> ruleViolations = dataContainer.getAll();
for (final Entry<Status, List<RuleViolation>> statusEntry : ruleViolations.stream().collect(Collectors.groupingBy(RuleViolation::getStatus)).entrySet()) {
horizontalLayout.addComponent(new CounterStatisticsCard(VaadinIcons.WARNING, new CounterStatisticModel("ALL:" + statusEntry.getKey(), statusEntry.getValue().size()).withShow(StatisticShow.Sum).withIconHidden().withShowOnlyStatistic(true), "ALL:" + statusEntry.getKey()));
}
for (final Entry<ResourceType, List<RuleViolation>> statusEntry : ruleViolations.stream().collect(Collectors.groupingBy(RuleViolation::getResourceType)).entrySet()) {
horizontalLayout.addComponent(new CounterStatisticsCard(VaadinIcons.WARNING, new CounterStatisticModel("ALL:" + statusEntry.getKey(), statusEntry.getValue().size()).withShow(StatisticShow.Sum).withIconHidden().withShowOnlyStatistic(true), "ALL:" + statusEntry.getKey()));
}
panelContent.addComponent(horizontalLayout);
Collections.sort(ruleViolations, (o1, o2) -> o2.getStatus().compareTo(o1.getStatus()));
getGridFactory().createBasicBeanItemGrid(panelContent, RuleViolation.class, ruleViolations, "Risk", new String[] { "name", "status", "resourceType", "ruleName", "ruleGroup", "ruleDescription", "positive" }, new String[] { "referenceId" }, CLICK_LISTENER, null, null);
final String pageId = getPageId(parameters);
getPageActionEventHelper().createPageEvent(ViewAction.VISIT_PARLIAMENT_RANKING_VIEW, ApplicationEventGroup.USER, NAME, parameters, pageId);
panel.setCaption(new StringBuilder().append(NAME).append("::").append(PARLIAMENT_RULE_VIOLATIONS).toString());
return panelContent;
}
Aggregations