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.document.business.history;
35
36 import fr.paris.lutece.util.sql.DAOUtil;
37
38 import java.util.ArrayList;
39 import java.util.Collection;
40 import java.util.List;
41
42
43
44
45 public final class HistoryEventDAO implements IHistoryEventDAO
46 {
47
48 private static final String SQL_QUERY_INSERT = " INSERT INTO document_history ( id_document, event_date, event_user, event_message_key, document_state_key, document_space ) VALUES ( ?, ?, ?, ?, ?, ? ) ";
49 private static final String SQL_QUERY_DELETE = " DELETE FROM document_history WHERE id_document = ? ";
50 private static final String SQL_QUERY_SELECT_BY_DOCUMENT = " SELECT id_document, event_date, event_user, event_message_key, document_state_key, document_space FROM document_history WHERE id_document = ? ";
51 private static final String SQL_QUERY_SELECT_BY_USER = " SELECT id_document, event_date, event_user, event_message_key, document_state_key, document_space FROM document_history WHERE event_user = ? ";
52
53
54
55
56
57
58
59 public void insert( HistoryEvent historyEvent )
60 {
61 DAOUtil daoUtil = new DAOUtil( SQL_QUERY_INSERT );
62 daoUtil.setInt( 1, historyEvent.getIdDocument( ) );
63 daoUtil.setTimestamp( 2, historyEvent.getDate( ) );
64 daoUtil.setString( 3, historyEvent.getEventUser( ) );
65 daoUtil.setString( 4, historyEvent.getEventMessageKey( ) );
66 daoUtil.setString( 5, historyEvent.getDocumentStateKey( ) );
67 daoUtil.setString( 6, historyEvent.getSpace( ) );
68
69 daoUtil.executeUpdate( );
70 daoUtil.free( );
71 }
72
73
74
75
76
77
78
79 public void delete( int nDocumentId )
80 {
81 DAOUtil daoUtil = new DAOUtil( SQL_QUERY_DELETE );
82 daoUtil.setInt( 1, nDocumentId );
83
84 daoUtil.executeUpdate( );
85 daoUtil.free( );
86 }
87
88
89
90
91
92
93
94
95 public List<HistoryEvent> selectEventListByDocument( int nDocumentId )
96 {
97 List<HistoryEvent> listHistoryEvents = new ArrayList<HistoryEvent>( );
98 DAOUtil daoUtil = new DAOUtil( SQL_QUERY_SELECT_BY_DOCUMENT );
99 daoUtil.setInt( 1, nDocumentId );
100 daoUtil.executeQuery( );
101
102 while ( daoUtil.next( ) )
103 {
104 HistoryEventdocument/business/history/HistoryEvent.html#HistoryEvent">HistoryEvent event = new HistoryEvent( );
105 event.setIdDocument( daoUtil.getInt( 1 ) );
106 event.setDate( daoUtil.getTimestamp( 2 ) );
107 event.setEventUser( daoUtil.getString( 3 ) );
108 event.setEventMessageKey( daoUtil.getString( 4 ) );
109 event.setDocumentStateKey( daoUtil.getString( 5 ) );
110 event.setSpace( daoUtil.getString( 6 ) );
111
112 listHistoryEvents.add( event );
113 }
114
115 daoUtil.free( );
116
117 return listHistoryEvents;
118 }
119
120
121
122
123
124
125
126
127 public Collection<HistoryEvent> selectEventListByUser( String strUserId )
128 {
129 Collection<HistoryEvent> listHistoryEvents = new ArrayList<HistoryEvent>( );
130 DAOUtil daoUtil = new DAOUtil( SQL_QUERY_SELECT_BY_USER );
131 daoUtil.setString( 1, strUserId );
132 daoUtil.executeQuery( );
133
134 while ( daoUtil.next( ) )
135 {
136 HistoryEventdocument/business/history/HistoryEvent.html#HistoryEvent">HistoryEvent event = new HistoryEvent( );
137 event.setIdDocument( daoUtil.getInt( 1 ) );
138 event.setDate( daoUtil.getTimestamp( 2 ) );
139 event.setEventUser( daoUtil.getString( 3 ) );
140 event.setEventMessageKey( daoUtil.getString( 4 ) );
141 event.setDocumentStateKey( daoUtil.getString( 5 ) );
142 event.setSpace( daoUtil.getString( 6 ) );
143
144 listHistoryEvents.add( event );
145 }
146
147 daoUtil.free( );
148
149 return listHistoryEvents;
150 }
151 }