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.workflow.modules.appointmentants.web;
35
36 import java.util.Locale;
37
38 import javax.inject.Inject;
39 import javax.inject.Named;
40 import javax.servlet.http.HttpServletRequest;
41
42 import org.apache.commons.lang3.StringUtils;
43
44 import fr.paris.lutece.plugins.workflow.modules.appointmentants.business.history.TaskAntsAppointmentHistory;
45 import fr.paris.lutece.plugins.workflow.modules.appointmentants.service.WorkflowAppointmentAntsPlugin;
46 import fr.paris.lutece.plugins.workflow.modules.appointmentants.service.history.ITaskAntsAppointmentHistoryService;
47 import fr.paris.lutece.plugins.workflow.modules.appointmentants.service.history.TaskAntsAppointmentHistoryService;
48 import fr.paris.lutece.plugins.workflow.utils.WorkflowUtils;
49 import fr.paris.lutece.plugins.workflowcore.service.config.ITaskConfigService;
50 import fr.paris.lutece.plugins.workflowcore.service.task.ITask;
51 import fr.paris.lutece.portal.service.i18n.I18nService;
52
53
54
55
56
57
58 public class TaskDeleteAntsAppointmentComponent extends AbstractTaskAntsAppointmentComponent
59 {
60
61
62
63 @Inject
64 @Named( WorkflowAppointmentAntsPlugin.BEAN_CONFIG )
65 private ITaskConfigService _config;
66
67
68
69
70 @Inject
71 @Named( TaskAntsAppointmentHistoryService.BEAN_SERVICE )
72 private ITaskAntsAppointmentHistoryService _antsAppointmentHistoryService;
73
74
75
76
77 private static final String PROPERTY_TASK_TITLE = "module.workflow.appointmentants.delete_appointment.task_title";
78
79
80
81
82 private static final String MESSAGE_TASK_APPOINTMENT_DELETED_SUCCESS = "module.workflow.appointmentants.delete_appointment.message.appointmentDeletionSuccess";
83 private static final String MESSAGE_TASK_APPOINTMENT_DELETED_FAILURE = "module.workflow.appointmentants.delete_appointment.message.appointmentDeletionFailure";
84 private static final String MESSAGE_TASK_APPOINTMENT_NO_ANTS_NUMBER = "module.workflow.appointmentants.ants_appointment.message.noAntsApplicationNumber";
85
86
87
88
89 @Override
90 public String getDisplayConfigForm( HttpServletRequest request, Locale locale, ITask task )
91 {
92 String taskTitle = I18nService.getLocalizedString( PROPERTY_TASK_TITLE, locale );
93
94 return getDisplayConfigForm( request, taskTitle, locale, task, _config );
95 }
96
97
98
99
100 @Override
101 public String doSaveConfig( HttpServletRequest request, Locale locale, ITask task )
102 {
103 return doSaveConfig( request, task, _config );
104 }
105
106
107
108
109 @Override
110 public String getDisplayTaskInformation( int nIdHistory, HttpServletRequest request, Locale locale, ITask task )
111 {
112
113 TaskAntsAppointmentHistory taskAppointmentHistory = _antsAppointmentHistoryService.findByPrimaryKey(
114 nIdHistory,
115 task.getId( ),
116 WorkflowUtils.getPlugin( ) );
117
118
119 if( taskAppointmentHistory != null )
120 {
121 Object[] args = new Object[1];
122
123 if( StringUtils.isNotBlank( taskAppointmentHistory.getAntsApplicationNumbers( ) ) )
124 {
125 args[0] = taskAppointmentHistory.getAntsApplicationNumbers( );
126 }
127
128 else
129 {
130 args[0] = I18nService.getLocalizedString(
131 MESSAGE_TASK_APPOINTMENT_NO_ANTS_NUMBER,
132 locale );
133 }
134
135
136 return I18nService.getLocalizedString(
137 taskAppointmentHistory.isTaskSuccessful( ) ? MESSAGE_TASK_APPOINTMENT_DELETED_SUCCESS : MESSAGE_TASK_APPOINTMENT_DELETED_FAILURE,
138 args,
139 locale );
140 }
141
142 return StringUtils.EMPTY;
143 }
144 }