1 /* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef BASE_NOTIFICATION_DISTRIBUTED_NOTIFICATION_SERVICE_INTERFACES_INNER_API_REMINDER_TABLE_H 17 #define BASE_NOTIFICATION_DISTRIBUTED_NOTIFICATION_SERVICE_INTERFACES_INNER_API_REMINDER_TABLE_H 18 19 #include <vector> 20 #include <string> 21 22 namespace OHOS { 23 namespace Notification { 24 class ReminderBaseTable { 25 public: 26 /* 27 * reminder base table name 28 */ 29 static const std::string TABLE_NAME; 30 31 /* 32 * reminder id 33 */ 34 static const std::string REMINDER_ID; 35 36 /* 37 * package name 38 */ 39 static const std::string PACKAGE_NAME; 40 41 /* 42 * user id 43 */ 44 static const std::string USER_ID; 45 46 /* 47 * uid 48 */ 49 static const std::string UID; 50 51 /* 52 * systerm app flag 53 */ 54 static const std::string SYSTEM_APP; 55 56 /* 57 * reminder type: Timer/Calendar/Alarm 58 */ 59 static const std::string REMINDER_TYPE; 60 61 /* 62 * reminder time 63 */ 64 static const std::string REMINDER_TIME; 65 66 /* 67 * trigger time 68 */ 69 static const std::string TRIGGER_TIME; 70 71 /* 72 * time interval 73 */ 74 static const std::string TIME_INTERVAL; 75 76 /* 77 * snooze times 78 */ 79 static const std::string SNOOZE_TIMES; 80 81 /* 82 * dynamic snooze times 83 */ 84 static const std::string DYNAMIC_SNOOZE_TIMES; 85 86 /* 87 * ring duration 88 */ 89 static const std::string RING_DURATION; 90 91 /* 92 * expired flag 93 */ 94 static const std::string IS_EXPIRED; 95 96 /* 97 * reminder state 98 */ 99 static const std::string STATE; 100 101 /* 102 * action button information 103 */ 104 static const std::string ACTION_BUTTON_INFO; 105 106 /* 107 * custom button uri 108 */ 109 static const std::string CUSTOM_BUTTON_URI; 110 111 /* 112 * slot type 113 */ 114 static const std::string SLOT_ID; 115 116 /* 117 * snoozeslot type 118 */ 119 static const std::string SNOOZE_SLOT_ID; 120 121 /* 122 * notification id 123 */ 124 static const std::string NOTIFICATION_ID; 125 126 /* 127 * notification title 128 */ 129 static const std::string TITLE; 130 131 /* 132 * notification content 133 */ 134 static const std::string CONTENT; 135 136 /* 137 * notification snooze content 138 */ 139 static const std::string SNOOZE_CONTENT; 140 141 /* 142 * notification expired content 143 */ 144 static const std::string EXPIRED_CONTENT; 145 146 /* 147 * want agent information 148 */ 149 static const std::string WANT_AGENT; 150 151 /* 152 * max screen want agent information 153 */ 154 static const std::string MAX_SCREEN_WANT_AGENT; 155 156 /* 157 * tap dismissed flag 158 */ 159 static const std::string TAP_DISMISSED; 160 161 /* 162 * auto deleted time 163 */ 164 static const std::string AUTO_DELETED_TIME; 165 166 /* 167 * group id 168 */ 169 static const std::string GROUP_ID; 170 171 /* 172 * custom ring uri 173 */ 174 static const std::string CUSTOM_RING_URI; 175 176 /* 177 * creator bundle name 178 */ 179 static const std::string CREATOR_BUNDLE_NAME; 180 181 /* 182 * creator uid 183 */ 184 static const std::string CREATOR_UID; 185 186 public: 187 static void InitDbColumns(); 188 189 public: 190 static std::string ADD_COLUMNS; 191 static std::string SELECT_COLUMNS; 192 }; 193 194 class ReminderAlarmTable { 195 public: 196 /* 197 * reminder alarm table name 198 */ 199 static const std::string TABLE_NAME; 200 201 /* 202 * reminder timer table field 203 */ 204 static const std::string REMINDER_ID; 205 static const std::string ALARM_HOUR; 206 static const std::string ALARM_MINUTE; 207 static const std::string REPEAT_DAYS_OF_WEEK; 208 209 public: 210 static void InitDbColumns(); 211 212 public: 213 static std::string ADD_COLUMNS; 214 static std::string SELECT_COLUMNS; 215 }; 216 217 class ReminderCalendarTable { 218 public: 219 /* 220 * reminder calendar table name 221 */ 222 static const std::string TABLE_NAME; 223 224 /* 225 * reminder calendar table field 226 */ 227 static const std::string REMINDER_ID; 228 static const std::string FIRST_DESIGNATE_YEAR; 229 static const std::string FIRST_DESIGNATE_MONTH; 230 static const std::string FIRST_DESIGNATE_DAY; 231 static const std::string CALENDAR_DATE_TIME; 232 static const std::string CALENDAR_END_DATE_TIME; 233 static const std::string REPEAT_DAYS; 234 static const std::string REPEAT_MONTHS; 235 static const std::string REPEAT_DAYS_OF_WEEK; 236 static const std::string RRULE_WANT_AGENT; 237 static const std::string EXCLUDE_DATES; 238 static const std::string CALENDAR_LAST_DATE_TIME; 239 240 public: 241 static void InitDbColumns(); 242 243 public: 244 static std::string ADD_COLUMNS; 245 static std::string SELECT_COLUMNS; 246 }; 247 248 class ReminderTimerTable { 249 public: 250 /* 251 * reminder timer table name 252 */ 253 static const std::string TABLE_NAME; 254 255 /* 256 * reminder timer table field 257 */ 258 static const std::string REMINDER_ID; 259 static const std::string TRIGGER_SECOND; 260 static const std::string START_DATE_TIME; 261 static const std::string END_DATE_TIME; 262 263 public: 264 static void InitDbColumns(); 265 266 public: 267 static std::string ADD_COLUMNS; 268 static std::string SELECT_COLUMNS; 269 }; 270 } // namespace Notification 271 } // namespace OHOS 272 #endif // BASE_NOTIFICATION_DISTRIBUTED_NOTIFICATION_SERVICE_INTERFACES_INNER_API_REMINDER_TABLE_H 273