1 /* 2 * Copyright (c) 2002-2021, City of Paris 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 9 * 1. Redistributions of source code must retain the above copyright notice 10 * and the following disclaimer. 11 * 12 * 2. Redistributions in binary form must reproduce the above copyright notice 13 * and the following disclaimer in the documentation and/or other materials 14 * provided with the distribution. 15 * 16 * 3. Neither the name of 'Mairie de Paris' nor 'Lutece' nor the names of its 17 * contributors may be used to endorse or promote products derived from 18 * this software without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE 24 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30 * POSSIBILITY OF SUCH DAMAGE. 31 * 32 * License 1.0 33 */ 34 package fr.paris.lutece.plugins.genericalert.business; 35 36 import fr.paris.lutece.plugins.workflowcore.business.config.ITaskConfigDAO; 37 import fr.paris.lutece.portal.service.plugin.Plugin; 38 39 import java.util.Collection; 40 import java.util.List; 41 42 /** 43 * ITaskReminderConfigDAO Interface 44 */ 45 public interface ITaskNotifyReminderConfigDAO extends ITaskConfigDAO<TaskNotifyReminderConfig> 46 { 47 48 /** 49 * Insert a new record in the table. 50 * 51 * @param taskReminderConfig 52 * instance of the TaskReminderConfig object to insert 53 */ 54 void insert( TaskNotifyReminderConfig taskReminderConfig ); 55 56 /** 57 * Update the record in the table 58 * 59 * @param taskReminderConfig 60 * the reference of the TaskReminderConfig 61 */ 62 void store( TaskNotifyReminderConfig taskReminderConfig ); 63 64 /** 65 * Delete a record from the table 66 * 67 * @param nKey 68 * The identifier of the TaskReminderConfig to delete 69 */ 70 void delete( int nKey ); 71 72 // ///////////////////////////////////////////////////////////////////////// 73 // Finders 74 75 /** 76 * Load the data from the table 77 * 78 * @param nKey 79 * The identifier of the taskReminderConfig 80 * @return The instance of the taskReminderConfig 81 */ 82 TaskNotifyReminderConfig load( int nKey ); 83 84 /** 85 * Load the data of all the taskReminderConfig objects and returns them as a collection 86 * 87 * @param plugin 88 * the Plugin 89 * @return The collection which contains the data of all the taskReminderConfig objects 90 */ 91 Collection<TaskNotifyReminderConfig> selectTaskReminderConfigsList( Plugin plugin ); 92 93 /** 94 * Load the id of all the taskReminderConfig objects and returns them as a collection 95 * 96 * @param plugin 97 * the Plugin 98 * @return The collection which contains the id of all the taskReminderConfig objects 99 */ 100 Collection<Integer> selectIdTaskReminderConfigsList( Plugin plugin ); 101 102 /** 103 * 104 * @param nIdForm 105 * the idform 106 * @param nIdTask 107 * the id task 108 * @param nRank 109 * the rank reminder 110 * @param b 111 * boolean delete 112 * @param plugin 113 * the plugin 114 */ 115 void deleteReminderAppointment( int nIdForm, int nIdTask, int nRank, boolean b, Plugin plugin ); 116 117 /** 118 * @param nIdTask 119 * the id task 120 * @param nAppointmentFormId 121 * the id form 122 * @param plugin 123 * the plugin 124 * @return list ReminderAppointment 125 */ 126 List<ReminderAppointment> loadListReminderAppointment( int nIdTask, int nAppointmentFormId, Plugin plugin ); 127 128 /** 129 * 130 * @param nKey 131 * the id task 132 * @param idForm 133 * the id form 134 * @param plugin 135 * the plugin 136 * @return TaskNotifyReminderConfig 137 */ 138 TaskNotifyReminderConfig loadByIdForm( int nKey, int idForm, Plugin plugin ); 139 140 /** 141 * 142 * @param idTask 143 * the id task 144 * @param plugin 145 * the plugin 146 * @return list TaskNotifyReminderConfig 147 */ 148 List<TaskNotifyReminderConfig> loadListTaskNotifyConfig( int idTask, Plugin plugin ); 149 150 /** 151 * 152 * @param idForm 153 * the id form 154 * @param plugin 155 * the plugin 156 * @return TaskNotifyReminderConfig 157 */ 158 TaskNotifyReminderConfig loadConfigByIdForm( int idForm, Plugin plugin ); 159 160 }