1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package fr.paris.lutece.plugins.dataviz.web;
35
36 import fr.paris.lutece.plugins.dataviz.business.Stat;
37 import fr.paris.lutece.plugins.dataviz.business.StatList;
38 import fr.paris.lutece.plugins.dataviz.business.StatSingle;
39 import fr.paris.lutece.portal.service.spring.SpringContextService;
40 import fr.paris.lutece.portal.util.mvc.commons.annotations.View;
41 import fr.paris.lutece.portal.util.mvc.xpage.MVCApplication;
42 import fr.paris.lutece.portal.util.mvc.xpage.annotations.Controller;
43 import fr.paris.lutece.portal.web.xpages.XPage;
44 import fr.paris.lutece.util.ReferenceList;
45 import java.util.ArrayList;
46 import java.util.HashMap;
47 import java.util.List;
48 import java.util.Map;
49 import javax.servlet.http.HttpServletRequest;
50
51
52
53
54
55 @Controller( xpageName = "stat" , pageTitleI18nKey = "dataviz.xpage.stat.pageTitle" , pagePathI18nKey = "dataviz.xpage.stat.pagePathLabel" )
56 public class StatXPage extends MVCApplication
57 {
58
59 private static final String TEMPLATE_STAT = "/skin/plugins/dataviz/dataviz.html";
60
61
62 public static final String MARK_LIST_SINGLE = "list_Single";
63 public static final String MARK_LIST_LIST = "list_List";
64
65
66 private static final String VIEW_HOME = "home";
67
68
69
70
71
72
73
74 @View( value = VIEW_HOME , defaultView = true )
75 public XPage viewHome( HttpServletRequest request )
76 {
77 Map<String, Object> model = new HashMap<String, Object>( );
78
79 List<StatSingle> listSimpleStat = SpringContextService.getBeansOfType( StatSingle.class );
80 ReferenceList listSingle = new ReferenceList ( );
81
82 for ( StatSingle singleResult : listSimpleStat )
83 {
84 listSingle.addItem (singleResult.getName(), singleResult.getResult().toString() );
85 }
86 model.put( MARK_LIST_SINGLE, listSingle );
87
88 List<StatList> listBeanStatList = SpringContextService.getBeansOfType( StatList.class );
89 List<Stat> listStatList = new ArrayList ( );
90
91 for ( StatList statResult : listBeanStatList )
92 {
93 Stat item = new Stat( );
94 item.setName( statResult.getName( ));
95 item.setId( statResult.getId( ));
96 item.setList( (ReferenceList) statResult.getResult ( ));
97 listStatList.add( item );
98 }
99 model.put (MARK_LIST_LIST, listStatList);
100
101 return getXPage( TEMPLATE_STAT, request.getLocale( ), model );
102 }
103 }