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.notification.business;
35
36 import fr.paris.lutece.plugins.workflow.utils.WorkflowUtils;
37 import fr.paris.lutece.plugins.workflowcore.business.config.ITaskConfigDAO;
38 import fr.paris.lutece.util.sql.DAOUtil;
39
40
41
42
43
44
45 public class TaskNotificationConfigDAO implements ITaskConfigDAO<TaskNotificationConfig>
46 {
47 private static final String SQL_QUERY_FIND_BY_PRIMARY_KEY = "SELECT id_task,id_mailing_list,sender_name,subject,message "
48 + " FROM workflow_task_notification_cf WHERE id_task=?";
49 private static final String SQL_QUERY_INSERT = "INSERT INTO workflow_task_notification_cf "
50 + "(id_task,id_mailing_list,sender_name,subject,message)VALUES(?,?,?,?,?)";
51 private static final String SQL_QUERY_UPDATE = "UPDATE workflow_task_notification_cf " + "SET id_task=?,id_mailing_list=?,sender_name=?,subject=?,message=?"
52 + " WHERE id_task=?";
53 private static final String SQL_QUERY_DELETE = "DELETE FROM workflow_task_notification_cf WHERE id_task=? ";
54
55
56
57
58 @Override
59 public synchronized void insert( TaskNotificationConfig config )
60 {
61 try ( DAOUtil daoUtil = new DAOUtil( SQL_QUERY_INSERT, WorkflowUtils.getPlugin( ) ) )
62 {
63 int nPos = 0;
64
65 daoUtil.setInt( ++nPos, config.getIdTask( ) );
66 daoUtil.setInt( ++nPos, config.getIdMailingList( ) );
67 daoUtil.setString( ++nPos, config.getSenderName( ) );
68 daoUtil.setString( ++nPos, config.getSubject( ) );
69 daoUtil.setString( ++nPos, config.getMessage( ) );
70
71 daoUtil.executeUpdate( );
72 }
73 }
74
75
76
77
78 @Override
79 public void store( TaskNotificationConfig config )
80 {
81 try ( DAOUtil daoUtil = new DAOUtil( SQL_QUERY_UPDATE, WorkflowUtils.getPlugin( ) ) )
82 {
83 int nPos = 0;
84
85 daoUtil.setInt( ++nPos, config.getIdTask( ) );
86 daoUtil.setInt( ++nPos, config.getIdMailingList( ) );
87 daoUtil.setString( ++nPos, config.getSenderName( ) );
88 daoUtil.setString( ++nPos, config.getSubject( ) );
89 daoUtil.setString( ++nPos, config.getMessage( ) );
90
91 daoUtil.setInt( ++nPos, config.getIdTask( ) );
92 daoUtil.executeUpdate( );
93 }
94 }
95
96
97
98
99 @Override
100 public TaskNotificationConfig load( int nIdState )
101 {
102 TaskNotificationConfig config = null;
103 try ( DAOUtil daoUtil = new DAOUtil( SQL_QUERY_FIND_BY_PRIMARY_KEY, WorkflowUtils.getPlugin( ) ) )
104 {
105 daoUtil.setInt( 1, nIdState );
106 daoUtil.executeQuery( );
107
108 if ( daoUtil.next( ) )
109 {
110 int nPos = 0;
111 config = new TaskNotificationConfig( );
112 config.setIdTask( daoUtil.getInt( ++nPos ) );
113 config.setIdMailingList( daoUtil.getInt( ++nPos ) );
114 config.setSenderName( daoUtil.getString( ++nPos ) );
115 config.setSubject( daoUtil.getString( ++nPos ) );
116 config.setMessage( daoUtil.getString( ++nPos ) );
117 }
118 }
119 return config;
120 }
121
122
123
124
125 @Override
126 public void delete( int nIdState )
127 {
128 try ( DAOUtil daoUtil = new DAOUtil( SQL_QUERY_DELETE, WorkflowUtils.getPlugin( ) ) )
129 {
130 daoUtil.setInt( 1, nIdState );
131 daoUtil.executeUpdate( );
132 }
133 }
134 }