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.appointment.modules.resource.service;
35
36 import fr.paris.lutece.plugins.appointment.modules.resource.business.AppointmentFormResourceTypeHome;
37 import fr.paris.lutece.plugins.appointment.modules.resource.business.AppointmentResource;
38 import fr.paris.lutece.plugins.appointment.modules.resource.business.AppointmentResourceDTO;
39 import fr.paris.lutece.plugins.appointment.modules.resource.business.AppointmentResourceHome;
40 import fr.paris.lutece.plugins.appointment.service.addon.IAppointmentAddonService;
41 import fr.paris.lutece.plugins.resource.service.ResourceService;
42 import fr.paris.lutece.portal.service.template.AppTemplateService;
43 import fr.paris.lutece.util.html.HtmlTemplate;
44
45 import org.apache.commons.lang.StringUtils;
46
47 import java.util.ArrayList;
48 import java.util.HashMap;
49 import java.util.List;
50 import java.util.Locale;
51 import java.util.Map;
52
53
54
55
56 public class AppointmentResourceAddonService implements IAppointmentAddonService
57 {
58 private static final String MARK_LIST_APP_RESOURCES = "listAppResources";
59 private static final String TEMPLATE_APPOINTMENT_RESOURCE_ADDON = "admin/plugins/appointment/modules/resource/appointment_resource_addon.html";
60
61
62
63
64 @Override
65 public String getAppointmentAddOn( int nIdAppointment, Locale locale )
66 {
67 List<AppointmentResource> listAppResources = AppointmentResourceHome.findByIdAppointment( nIdAppointment );
68
69 List<AppointmentResourceDTO> listAppResourcesDTO = new ArrayList<AppointmentResourceDTO>( listAppResources.size( ) );
70
71 for ( AppointmentResource appResource : listAppResources )
72 {
73 AppointmentResourceDTO/modules/resource/business/AppointmentResourceDTO.html#AppointmentResourceDTO">AppointmentResourceDTO appResDTO = new AppointmentResourceDTO( appResource );
74 appResDTO.setFormResourceType( AppointmentFormResourceTypeHome.findByPrimaryKey( appResource.getIdAppointmentFormResourceType( ) ) );
75
76 if ( StringUtils.isNotEmpty( appResDTO.getIdResource( ) ) && StringUtils.isNotEmpty( appResDTO.getFormResourceType( ).getResourceTypeName( ) ) )
77 {
78 appResDTO.setResource( ResourceService.getInstance( ).getResource( appResDTO.getIdResource( ),
79 appResDTO.getFormResourceType( ).getResourceTypeName( ) ) );
80 }
81
82 listAppResourcesDTO.add( appResDTO );
83 }
84
85 Map<String, Object> model = new HashMap<String, Object>( );
86
87 model.put( MARK_LIST_APP_RESOURCES, listAppResourcesDTO );
88
89 HtmlTemplate template = AppTemplateService.getTemplate( TEMPLATE_APPOINTMENT_RESOURCE_ADDON, locale, model );
90
91 return template.getHtml( );
92 }
93 }