告警清理

Signed-off-by: tianlanqing <1692438977@qq.com>
This commit is contained in:
田岚清
2025-02-04 11:29:51 +08:00
committed by tianlanqing
parent 91d2c76847
commit 8ea54c17df
3 changed files with 415 additions and 403 deletions
@@ -182,7 +182,7 @@ export class DefaultProcessor implements DatabaseProcessor, Observable {
notifyProviderChange(table, OPERATION_DELETE);
const deleteValue: data_rdb.ValuesBucket = {
'deleteCounts': count
}
};
Log.log(this.logTag, `deleteValue: [deleteCounts]: ${deleteValue['deleteCounts']}`);
this.notifyAlertsChanges(DELETE_OPERATION_NAME, table, deleteValue);
} else {
@@ -235,12 +235,11 @@ export class DefaultProcessor implements DatabaseProcessor, Observable {
Log.warn(this.logTag, `query get err:${err?.code}, ${err?.message}`);
}
}
try{
try {
rdbStore.query(table, predicates, columns, queryInnerFun);
} catch (err) {
Log.error(TAG, `doQuery get err:${err?.message}`);
}
}
/**
@@ -263,7 +262,7 @@ export class DefaultProcessor implements DatabaseProcessor, Observable {
notifyChanges(message: ObserverMessage) {
this.mObserverList.forEach((observer) => {
observer.onChange(message);
})
});
}
notifyAlertsChanges(operationName: string, table: string,
@@ -17,7 +17,7 @@
import data_rdb from '@ohos.data.relationalStore';
import dataSharePredicates from '@ohos.data.dataSharePredicates';
import { Log } from "@ohos/common/src/main/ets/utils/Log";
import { Log } from '@ohos/common/src/main/ets/utils/Log';
import { isEmptyStr } from '@ohos/common/src/main/ets/utils/TextUtils';
import { isContainsOneOfKeys } from '@ohos/common/src/main/ets/utils/ValuesUtils';
import { getBundleNameByUri } from '@ohos/common/src/main/ets/utils/UrlUtils';
@@ -27,15 +27,15 @@ import { Events } from '@ohos/datastructure/src/main/ets/events/Events';
import { InstancesColumns } from '@ohos/datastructure/src/main/ets/instances/InstancesColumns';
import { notifyProviderChange, OPERATION_UNKNOWN, } from '../../commonevents/notify/ProviderChangeNotifier';
import { DefaultProcessor } from "./../DefaultProcessor";
import { DefaultProcessor } from './../DefaultProcessor';
import { ErrorCode } from '../../constants/ErrorCode';
import { deleteAllInstances, expandAllByRange, expandOneInRange } from './InstanceExpandHelper';
import { generateInstancesQuerySql } from './InstancesQuerySqlGenerator';
import { isInExpandedRange, updateExpandedRange, getExpandedBegin, getExpandedEnd } from "./ExpandRangeManager";
import { isInExpandedRange, updateExpandedRange, getExpandedBegin, getExpandedEnd } from './ExpandRangeManager';
import { InstancesQueryParams, parseParamsFromUri, isValidQueryParams } from './InstanceQueryParams';
import { BusinessError } from '@ohos.base';
const TAG = "InstancesProcessor";
const TAG = 'InstancesProcessor';
/**
* the instances table processor
@@ -47,7 +47,8 @@ export class InstancesProcessor extends DefaultProcessor {
this.logTag = TAG;
}
async insertByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string, values: data_rdb.ValuesBucket, callback: Function) {
async insertByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string,
values: data_rdb.ValuesBucket, callback: Function) {
Log.warn(this.logTag, 'not support insert operation');
const err: BusinessError = {
code: ErrorCode.UN_SUPPORT_OPERATION,
@@ -57,11 +58,13 @@ export class InstancesProcessor extends DefaultProcessor {
callback(err, 0);
}
async insertByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string, values: data_rdb.ValuesBucket, callback: Function) {
async insertByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string,
values: data_rdb.ValuesBucket, callback: Function) {
this.insertByHighAuthority(rdbStore, uri, values, callback);
}
async deleteByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
async deleteByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string,
predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
Log.warn(this.logTag, 'not support delete operation');
const err: BusinessError = {
code: ErrorCode.UN_SUPPORT_OPERATION,
@@ -71,11 +74,13 @@ export class InstancesProcessor extends DefaultProcessor {
callback(err, 0);
}
async deleteByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
async deleteByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string,
predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
this.deleteByHighAuthority(rdbStore, uri, predicates, callback);
}
async updateByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string, values: data_rdb.ValuesBucket, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
async updateByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string, values: data_rdb.ValuesBucket,
predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
Log.warn(this.logTag, 'not support update operation');
const err: BusinessError = {
code: ErrorCode.UN_SUPPORT_OPERATION,
@@ -85,16 +90,19 @@ export class InstancesProcessor extends DefaultProcessor {
callback(err, 0);
}
async updateByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string, values: data_rdb.ValuesBucket, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
async updateByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string, values: data_rdb.ValuesBucket,
predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
this.updateByHighAuthority(rdbStore, uri, values, predicates, callback);
}
async queryByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string, columns: Array<string>, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
async queryByHighAuthority(rdbStore: data_rdb.RdbStore, uri: string, columns: Array<string>,
predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
const callerName = '';
this.queryByInstanceUri(rdbStore, uri, columns, callerName, callback);
}
async queryByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string, columns: Array<string>, predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
async queryByLowAuthority(rdbStore: data_rdb.RdbStore, uri: string, columns: Array<string>,
predicates: dataSharePredicates.DataSharePredicates, callback: Function) {
const callerName = getBundleNameByUri(uri);
this.queryByInstanceUri(rdbStore, uri, columns, callerName, callback);
}
@@ -108,7 +116,8 @@ export class InstancesProcessor extends DefaultProcessor {
* @param callerName 调用方app的bundle_name
* @param callback 回调方法
*/
async queryByInstanceUri(rdbStore: data_rdb.RdbStore, uri: string, columns: Array<string>, callerName: string, callback: Function) {
async queryByInstanceUri(rdbStore: data_rdb.RdbStore, uri: string,
columns: Array<string>, callerName: string, callback: Function) {
const params: InstancesQueryParams = parseParamsFromUri(uri) as InstancesQueryParams;
if (!isValidQueryParams(params)) {
const err: BusinessError = {
@@ -148,7 +157,7 @@ export async function acquireExpandAll(rdbStore: data_rdb.RdbStore, acquireBegin
let shouldSendBroadcast: boolean = false;
if (expandedEnd === 0) {
Log.info(TAG, "acquireExpandAll first expand");
Log.info(TAG, 'acquireExpandAll first expand');
await deleteAllInstances(rdbStore);
let isSuccess = await expandAllByRange(rdbStore, acquireBegin, acquireEnd);
if (isSuccess) {
@@ -194,12 +203,13 @@ export async function acquireExpandAll(rdbStore: data_rdb.RdbStore, acquireBegin
* @param eventId 日程ID
* @param values ValuesBucket数据(创建时)或Events数据(更新时)
*/
export async function acquireExpandOne(rdbStore: data_rdb.RdbStore, rowId: number, values: data_rdb.ValuesBucket | Events | undefined) {
export async function acquireExpandOne(rdbStore: data_rdb.RdbStore, rowId: number,
values: data_rdb.ValuesBucket | Events | undefined) {
const isSuccess = await expandOne(rdbStore, rowId, values);
if (isSuccess) {
notifyProviderChange(InstancesColumns.TABLE_NAME, OPERATION_UNKNOWN);
} else {
Log.warn(TAG, "expandOneByRange failed");
Log.warn(TAG, 'expandOneByRange failed');
}
}
@@ -209,7 +219,8 @@ export async function acquireExpandOne(rdbStore: data_rdb.RdbStore, rowId: numbe
* @param eventId 日程ID
* @param values ValuesBucket数据(创建时)或Events数据(更新时)
*/
export async function expandOne(rdbStore: data_rdb.RdbStore, rowId: number, values: data_rdb.ValuesBucket | Events | undefined): Promise<boolean> {
export async function expandOne(rdbStore: data_rdb.RdbStore, rowId: number,
values: data_rdb.ValuesBucket | Events | undefined): Promise<boolean> {
if (values === null || values === undefined) {
Log.error(TAG, 'acquireExpandOne get invalid params');
return false;
@@ -279,7 +290,8 @@ function parseEventsFromValues(values: data_rdb.ValuesBucket, event: Events): vo
event.creator = values[EventColumns.CREATOR] as string;
}
function doInstancesQuery(rdbStore: data_rdb.RdbStore, columns: Array<string>, params: InstancesQueryParams, callerName: string, callback: Function): void {
function doInstancesQuery(rdbStore: data_rdb.RdbStore, columns: Array<string>,
params: InstancesQueryParams, callerName: string, callback: Function): void {
const sql = generateInstancesQuerySql(columns, params, callerName);
if (!sql || isEmptyStr(sql)) {
Log.error(TAG, `generate empty sql, the params maybe invalid`);
@@ -37,7 +37,6 @@ import { Constants } from '@ohos/datastructure/src/main/ets/Constants';
import { CalendarMetaDataColumns } from '@ohos/datastructure/src/main/ets/calendarmetadata/CalendarMetaDataColumns';
import { Log } from '@ohos/common/src/main/ets/utils/Log';
import { GlobalThis } from '@ohos/common/src/main/ets/utils/GlobalThis';
import { BusinessError } from '@kit.BasicServicesKit';
/**
* the create Events table sql. OS has a limit of 1024 bytes for each sql string, and this sql string is beyond
@@ -48,197 +47,197 @@ let CREATE_EVENTS_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${EventColumns.TABLE_N
+ `${EventColumns.SYNC_ID} TEXT, `
+ `${EventColumns.DIRTY} INTEGER, `
+ `${EventColumns.MUTATORS} TEXT, `
+ `${EventColumns.EVENT_CALENDAR_TYPE} INTEGER NOT NULL DEFAULT 0), `
+ `${EventColumns.EVENT_IMAGE_TYPE} TEXT, `
+ `${EventColumns.LAST_SYNCED} INTEGER DEFAULT 0, `
+ `${EventColumns.CALENDAR_ID} INTEGER NOT NULL, `
+ `${EventColumns.TITLE} TEXT, `
+ `${EventColumns.EVENT_LOCATION} TEXT, `
+ `${EventColumns.LOCATION_LONGITUDE} TEXT, `
+ `${EventColumns.LOCATION_LATITUDE} TEXT, `
+ `${EventColumns.DESCRIPTION} TEXT, `
+ `${EventColumns.EVENT_COLOR} INTEGER, `
+ `${EventColumns.EVENT_COLOR_INDEX} TEXT, `
+ `${EventColumns.EVENT_STATUS} INTEGER, `
+ `${EventColumns.SELF_ATTENDEE_STATUS} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.DTSTART} INTEGER, `
+ `${EventColumns.DTEND} INTEGER, `
+ `${EventColumns.EVENT_TIMEZONE} TEXT, `
+ `${EventColumns.DURATION} TEXT, `
+ `${EventColumns.ALLDAY} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.ACCESS_LEVEL} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.AVAILABILITY} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.HAS_ALARM} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.HAS_EXTENDED_PROPERTIES} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.RRULE} TEXT, `
+ `${EventColumns.RDATE} TEXT, `
+ `${EventColumns.EXRULE} TEXT, `
+ `${EventColumns.EXDATE} TEXT, `
+ `${EventColumns.ORIGINAL_ID} INTEGER, `
+ `${EventColumns.ORIGINAL_SYNC_ID} TEXT, `
+ `${EventColumns.ORIGINAL_INSTANCE_TIME} INTEGER, `
+ `${EventColumns.ORIGINAL_ALL_DAY} INTEGER, `
+ `${EventColumns.LAST_DATE} INTEGER, `
+ `${EventColumns.EVENT_TIME_STAMP} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.HAS_ATTENDEE_DATE} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.GUESTS_CAN_MODIFY} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.GUESTS_CAN_INVITE_OTHERS} INTEGER NOT NULL DEFAULT 1, `
+ `${EventColumns.GUESTS_CAN_SEE_GUESTS} INTEGER NOT NULL DEFAULT 1, `
+ `${EventColumns.ORGANIZER} TEXT, ` //STRING
+ `${EventColumns.IS_ORGANIZER} INTEGER, `
+ `${EventColumns.DELETED} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.EVENT_END_TIMEZONE} TEXT, `
+ `${EventColumns.CUSTOM_APP_PACKAGE} TEXT, `
+ `${EventColumns.CUSTOM_APP_URI} TEXT, `
+ `${EventColumns.UID2445} TEXT, `
+ `${EventColumns.VERSION} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.EVENT_UUID} TEXT, `
+ `${EventColumns.HWEXT_ALERT_TYPE} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.IMPORTANT_EVENT_TYPE} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.SYNC_DATA1} TEXT, `
+ `${EventColumns.SYNC_DATA2} TEXT, `
+ `${EventColumns.SYNC_DATA3} TEXT, `
+ `${EventColumns.SYNC_DATA4} TEXT, `
+ `${EventColumns.SYNC_DATA5} TEXT, `
+ `${EventColumns.SYNC_DATA6} TEXT, `
+ `${EventColumns.SYNC_DATA7} TEXT, `
+ `${EventColumns.SYNC_DATA8} TEXT, `
+ `${EventColumns.SYNC_DATA9} TEXT, `
+ `${EventColumns.SYNC_DATA10} TEXT, `
+ `${EventColumns.KV_SYNC} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.KV_SYNC_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.CREATOR} TEXT NOT NULL)`;
+ `${EventColumns.EVENT_CALENDAR_TYPE} INTEGER NOT NULL DEFAULT 0), `
+ `${EventColumns.EVENT_IMAGE_TYPE} TEXT, `
+ `${EventColumns.LAST_SYNCED} INTEGER DEFAULT 0, `
+ `${EventColumns.CALENDAR_ID} INTEGER NOT NULL, `
+ `${EventColumns.TITLE} TEXT, `
+ `${EventColumns.EVENT_LOCATION} TEXT, `
+ `${EventColumns.LOCATION_LONGITUDE} TEXT, `
+ `${EventColumns.LOCATION_LATITUDE} TEXT, `
+ `${EventColumns.DESCRIPTION} TEXT, `
+ `${EventColumns.EVENT_COLOR} INTEGER, `
+ `${EventColumns.EVENT_COLOR_INDEX} TEXT, `
+ `${EventColumns.EVENT_STATUS} INTEGER, `
+ `${EventColumns.SELF_ATTENDEE_STATUS} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.DTSTART} INTEGER, `
+ `${EventColumns.DTEND} INTEGER, `
+ `${EventColumns.EVENT_TIMEZONE} TEXT, `
+ `${EventColumns.DURATION} TEXT, `
+ `${EventColumns.ALLDAY} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.ACCESS_LEVEL} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.AVAILABILITY} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.HAS_ALARM} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.HAS_EXTENDED_PROPERTIES} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.RRULE} TEXT, `
+ `${EventColumns.RDATE} TEXT, `
+ `${EventColumns.EXRULE} TEXT, `
+ `${EventColumns.EXDATE} TEXT, `
+ `${EventColumns.ORIGINAL_ID} INTEGER, `
+ `${EventColumns.ORIGINAL_SYNC_ID} TEXT, `
+ `${EventColumns.ORIGINAL_INSTANCE_TIME} INTEGER, `
+ `${EventColumns.ORIGINAL_ALL_DAY} INTEGER, `
+ `${EventColumns.LAST_DATE} INTEGER, `
+ `${EventColumns.EVENT_TIME_STAMP} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.HAS_ATTENDEE_DATE} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.GUESTS_CAN_MODIFY} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.GUESTS_CAN_INVITE_OTHERS} INTEGER NOT NULL DEFAULT 1, `
+ `${EventColumns.GUESTS_CAN_SEE_GUESTS} INTEGER NOT NULL DEFAULT 1, `
+ `${EventColumns.ORGANIZER} TEXT, ` //STRING
+ `${EventColumns.IS_ORGANIZER} INTEGER, `
+ `${EventColumns.DELETED} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.EVENT_END_TIMEZONE} TEXT, `
+ `${EventColumns.CUSTOM_APP_PACKAGE} TEXT, `
+ `${EventColumns.CUSTOM_APP_URI} TEXT, `
+ `${EventColumns.UID2445} TEXT, `
+ `${EventColumns.VERSION} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.EVENT_UUID} TEXT, `
+ `${EventColumns.HWEXT_ALERT_TYPE} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.IMPORTANT_EVENT_TYPE} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.SYNC_DATA1} TEXT, `
+ `${EventColumns.SYNC_DATA2} TEXT, `
+ `${EventColumns.SYNC_DATA3} TEXT, `
+ `${EventColumns.SYNC_DATA4} TEXT, `
+ `${EventColumns.SYNC_DATA5} TEXT, `
+ `${EventColumns.SYNC_DATA6} TEXT, `
+ `${EventColumns.SYNC_DATA7} TEXT, `
+ `${EventColumns.SYNC_DATA8} TEXT, `
+ `${EventColumns.SYNC_DATA9} TEXT, `
+ `${EventColumns.SYNC_DATA10} TEXT, `
+ `${EventColumns.KV_SYNC} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.KV_SYNC_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${EventColumns.CREATOR} TEXT NOT NULL)`;
/**
* the create Calendars table sql
*/
let CREATE_CALENDARS_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${CalendarsColumns.TABLE_NAME} (`
+ `${CalendarsColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarsColumns.ACCOUNT_NAME} TEXT, `
+ `${CalendarsColumns.ACCOUNT_TYPE} TEXT, `
+ `${CalendarsColumns.SYNC_ID} TEXT, `
+ `${CalendarsColumns.DIRTY} INTEGER, `
+ `${CalendarsColumns.MUTATORS} TEXT, `
+ `${CalendarsColumns.NAME} TEXT, `
+ `${CalendarsColumns.CALENDAR_DISPLAY_NAME} TEXT, `
+ `${CalendarsColumns.CALENDAR_COLOR} INTEGER, `
+ `${CalendarsColumns.CALENDAR_COLOR_INDEX} TEXT, `
+ `${CalendarsColumns.CALENDAR_ACCESS_LEVEL} INTEGER, `
+ `${CalendarsColumns.VISIBLE} INTEGER NOT NULL DEFAULT 1, `
+ `${CalendarsColumns.SYNC_EVENTS} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarsColumns.CALENDAR_LOCATION} TEXT, `
+ `${CalendarsColumns.CALENDAR_TIMEZONE} TEXT, `
+ `${CalendarsColumns.OWNER_ACCOUNT} TEXT, `
+ `${CalendarsColumns.IS_PRIMARY} INTEGER, `
+ `${CalendarsColumns.CAN_ORGANIZER_RESPOND} INTEGER NOT NULL DEFAULT 1, `
+ `${CalendarsColumns.CAN_MODIFY_TIMEZONE} INTEGER DEFAULT 1, `
+ `${CalendarsColumns.CAN_PARTIALLY_UPDATE} INTEGER DEFAULT 0, `
+ `${CalendarsColumns.MAX_REMINDERS} INTEGER DEFAULT 5, `
+ `${CalendarsColumns.ALLOWED_REMINDERS} TEXT DEFAULT '0,1', `
+ `${CalendarsColumns.ALLOWED_AVAILABILITY} TEXT DEFAULT '0,1', `
+ `${CalendarsColumns.ALLOWED_ATTENDEE_TYPES} TEXT DEFAULT '0,1,2', `
+ `${CalendarsColumns.DELETED} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarsColumns.CALENDAR_TIME_STAMP} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarsColumns.CAL_SYNC1} TEXT, `
+ `${CalendarsColumns.CAL_SYNC2} TEXT, `
+ `${CalendarsColumns.CAL_SYNC3} TEXT, `
+ `${CalendarsColumns.CAL_SYNC4} TEXT, `
+ `${CalendarsColumns.CAL_SYNC5} TEXT, `
+ `${CalendarsColumns.CAL_SYNC6} TEXT, `
+ `${CalendarsColumns.CAL_SYNC7} TEXT, `
+ `${CalendarsColumns.CAL_SYNC8} TEXT, `
+ `${CalendarsColumns.CAL_SYNC9} TEXT, `
+ `${CalendarsColumns.CAL_SYNC10} TEXT, `
+ `${CalendarsColumns.CAN_REMINDER} INTEGER NOT NULL DEFAULT 1, `
+ `${CalendarsColumns.CREATOR} TEXT NOT NULL)`;
+ `${CalendarsColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarsColumns.ACCOUNT_NAME} TEXT, `
+ `${CalendarsColumns.ACCOUNT_TYPE} TEXT, `
+ `${CalendarsColumns.SYNC_ID} TEXT, `
+ `${CalendarsColumns.DIRTY} INTEGER, `
+ `${CalendarsColumns.MUTATORS} TEXT, `
+ `${CalendarsColumns.NAME} TEXT, `
+ `${CalendarsColumns.CALENDAR_DISPLAY_NAME} TEXT, `
+ `${CalendarsColumns.CALENDAR_COLOR} INTEGER, `
+ `${CalendarsColumns.CALENDAR_COLOR_INDEX} TEXT, `
+ `${CalendarsColumns.CALENDAR_ACCESS_LEVEL} INTEGER, `
+ `${CalendarsColumns.VISIBLE} INTEGER NOT NULL DEFAULT 1, `
+ `${CalendarsColumns.SYNC_EVENTS} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarsColumns.CALENDAR_LOCATION} TEXT, `
+ `${CalendarsColumns.CALENDAR_TIMEZONE} TEXT, `
+ `${CalendarsColumns.OWNER_ACCOUNT} TEXT, `
+ `${CalendarsColumns.IS_PRIMARY} INTEGER, `
+ `${CalendarsColumns.CAN_ORGANIZER_RESPOND} INTEGER NOT NULL DEFAULT 1, `
+ `${CalendarsColumns.CAN_MODIFY_TIMEZONE} INTEGER DEFAULT 1, `
+ `${CalendarsColumns.CAN_PARTIALLY_UPDATE} INTEGER DEFAULT 0, `
+ `${CalendarsColumns.MAX_REMINDERS} INTEGER DEFAULT 5, `
+ `${CalendarsColumns.ALLOWED_REMINDERS} TEXT DEFAULT '0,1', `
+ `${CalendarsColumns.ALLOWED_AVAILABILITY} TEXT DEFAULT '0,1', `
+ `${CalendarsColumns.ALLOWED_ATTENDEE_TYPES} TEXT DEFAULT '0,1,2', `
+ `${CalendarsColumns.DELETED} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarsColumns.CALENDAR_TIME_STAMP} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarsColumns.CAL_SYNC1} TEXT, `
+ `${CalendarsColumns.CAL_SYNC2} TEXT, `
+ `${CalendarsColumns.CAL_SYNC3} TEXT, `
+ `${CalendarsColumns.CAL_SYNC4} TEXT, `
+ `${CalendarsColumns.CAL_SYNC5} TEXT, `
+ `${CalendarsColumns.CAL_SYNC6} TEXT, `
+ `${CalendarsColumns.CAL_SYNC7} TEXT, `
+ `${CalendarsColumns.CAL_SYNC8} TEXT, `
+ `${CalendarsColumns.CAL_SYNC9} TEXT, `
+ `${CalendarsColumns.CAL_SYNC10} TEXT, `
+ `${CalendarsColumns.CAN_REMINDER} INTEGER NOT NULL DEFAULT 1, `
+ `${CalendarsColumns.CREATOR} TEXT NOT NULL)`;
/**
* the create Reminders table sql
*/
let CREATE_REMINDERS_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${RemindersColumns.TABLE_NAME} (`
+ `${RemindersColumns.ID} INTEGER PRIMARY KEY, `
+ `${RemindersColumns.EVENT_ID} INTEGER, `
+ `${RemindersColumns.MINUTES} INTEGER, `
+ `${RemindersColumns.METHOD} INTEGER NOT NULL DEFAULT 0, `
+ `${RemindersColumns.CREATOR} TEXT NOT NULL)`;
+ `${RemindersColumns.ID} INTEGER PRIMARY KEY, `
+ `${RemindersColumns.EVENT_ID} INTEGER, `
+ `${RemindersColumns.MINUTES} INTEGER, `
+ `${RemindersColumns.METHOD} INTEGER NOT NULL DEFAULT 0, `
+ `${RemindersColumns.CREATOR} TEXT NOT NULL)`;
/**
* the create Instances table sql
*/
let CREATE_INSTANCES_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${InstancesColumns.TABLE_NAME} (`
+ `${InstancesColumns.ID} INTEGER PRIMARY KEY, `
+ `${InstancesColumns.EVENT_ID} INTEGER, `
+ `${InstancesColumns.BEGIN} INTEGER, `
+ `${InstancesColumns.END} INTEGER, `
+ `${InstancesColumns.START_DAY} INTEGER, `
+ `${InstancesColumns.END_DAY} INTEGER, `
+ `${InstancesColumns.START_MINUTE} INTEGER, `
+ `${InstancesColumns.END_MINUTE} INTEGER, `
+ `${InstancesColumns.CREATOR} TEXT NOT NULL,`
+ `UNIQUE (${InstancesColumns.EVENT_ID},${InstancesColumns.BEGIN},`
+ `${InstancesColumns.END}))`;
+ `${InstancesColumns.ID} INTEGER PRIMARY KEY, `
+ `${InstancesColumns.EVENT_ID} INTEGER, `
+ `${InstancesColumns.BEGIN} INTEGER, `
+ `${InstancesColumns.END} INTEGER, `
+ `${InstancesColumns.START_DAY} INTEGER, `
+ `${InstancesColumns.END_DAY} INTEGER, `
+ `${InstancesColumns.START_MINUTE} INTEGER, `
+ `${InstancesColumns.END_MINUTE} INTEGER, `
+ `${InstancesColumns.CREATOR} TEXT NOT NULL,`
+ `UNIQUE (${InstancesColumns.EVENT_ID},${InstancesColumns.BEGIN},`
+ `${InstancesColumns.END}))`;
/**
* the create Colors table sql
*/
let CREATE_COLORS_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${ColorsColumns.TABLE_NAME} (`
+ `${ColorsColumns.ID} INTEGER PRIMARY KEY, `
+ `${ColorsColumns.ACCOUNT_NAME} TEXT NOT NULL, `
+ `${ColorsColumns.ACCOUNT_TYPE} TEXT NOT NULL, `
+ `${ColorsColumns.DATA} TEXT, `
+ `${ColorsColumns.COLOR_TYPE} INTEGER NOT NULL, `
+ `${ColorsColumns.COLOR_INDEX} TEXT NOT NULL, `
+ `${ColorsColumns.COLOR} INTEGER NOT NULL)`;
+ `${ColorsColumns.ID} INTEGER PRIMARY KEY, `
+ `${ColorsColumns.ACCOUNT_NAME} TEXT NOT NULL, `
+ `${ColorsColumns.ACCOUNT_TYPE} TEXT NOT NULL, `
+ `${ColorsColumns.DATA} TEXT, `
+ `${ColorsColumns.COLOR_TYPE} INTEGER NOT NULL, `
+ `${ColorsColumns.COLOR_INDEX} TEXT NOT NULL, `
+ `${ColorsColumns.COLOR} INTEGER NOT NULL)`;
/**
* the create Attendees table sql
*/
let CREATE_ATTENDEES_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${AttendeesColumns.TABLE_NAME} (`
+ `${AttendeesColumns.ID} INTEGER PRIMARY KEY, `
+ `${AttendeesColumns.EVENT_ID} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_NAME} TEXT, `
+ `${AttendeesColumns.ATTENDEE_EMAIL} TEXT, `
+ `${AttendeesColumns.ATTENDEE_STATUS} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_RELATIONSHIP} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_TYPE} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_IDENTITY} TEXT, `
+ `${AttendeesColumns.ATTENDEE_ID_NAMESPACE} TEXT)`;
+ `${AttendeesColumns.ID} INTEGER PRIMARY KEY, `
+ `${AttendeesColumns.EVENT_ID} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_NAME} TEXT, `
+ `${AttendeesColumns.ATTENDEE_EMAIL} TEXT, `
+ `${AttendeesColumns.ATTENDEE_STATUS} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_RELATIONSHIP} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_TYPE} INTEGER, `
+ `${AttendeesColumns.ATTENDEE_IDENTITY} TEXT, `
+ `${AttendeesColumns.ATTENDEE_ID_NAMESPACE} TEXT)`;
/**
* the create CalendarAlerts table sql
*/
let CREATE_CALENDAR_ALERTS_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${CalendarAlertsColumns.TABLE_NAME} (`
+ `${CalendarAlertsColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarAlertsColumns.EVENT_ID} INTEGER, `
+ `${CalendarAlertsColumns.BEGIN} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.END} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.ALARM_TIME} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.CREATION_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarAlertsColumns.RECEIVED_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarAlertsColumns.NOTIFY_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarAlertsColumns.STATE} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.MINUTES} INTEGER, `
+ `${CalendarAlertsColumns.CREATOR} TEXT NOT NULL,`
+ `UNIQUE (${CalendarAlertsColumns.ALARM_TIME},${CalendarAlertsColumns.BEGIN},`
+ `${CalendarAlertsColumns.EVENT_ID}))`;
+ `${CalendarAlertsColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarAlertsColumns.EVENT_ID} INTEGER, `
+ `${CalendarAlertsColumns.BEGIN} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.END} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.ALARM_TIME} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.CREATION_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarAlertsColumns.RECEIVED_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarAlertsColumns.NOTIFY_TIME} INTEGER NOT NULL DEFAULT 0, `
+ `${CalendarAlertsColumns.STATE} INTEGER NOT NULL, `
+ `${CalendarAlertsColumns.MINUTES} INTEGER, `
+ `${CalendarAlertsColumns.CREATOR} TEXT NOT NULL,`
+ `UNIQUE (${CalendarAlertsColumns.ALARM_TIME},${CalendarAlertsColumns.BEGIN},`
+ `${CalendarAlertsColumns.EVENT_ID}))`;
/**
* the create CalendarCache table sql
*/
let CREATE_CALENDAR_CACHE_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${CalendarCacheColumns.TABLE_NAME} (`
+ `${CalendarCacheColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarCacheColumns.KEY} TEXT NOT NULL, `
+ `${CalendarCacheColumns.VALUE} TEXT)`;
+ `${CalendarCacheColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarCacheColumns.KEY} TEXT NOT NULL, `
+ `${CalendarCacheColumns.VALUE} TEXT)`;
/**
* the create CalendarMetaData table sql
*/
let CREATE_CALENDAR_METADATA_TABLE_SQL = `CREATE TABLE IF NOT EXISTS `
+ `${CalendarMetaDataColumns.TABLE_NAME} (`
+ `${CalendarMetaDataColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarMetaDataColumns.LOCAL_TIME_ZONE} TEXT, `
+ `${CalendarMetaDataColumns.MIN_INSTANCE} INTEGER, `
+ `${CalendarMetaDataColumns.MAX_INSTANCE} INTEGER)`;
+ `${CalendarMetaDataColumns.TABLE_NAME} (`
+ `${CalendarMetaDataColumns.ID} INTEGER PRIMARY KEY, `
+ `${CalendarMetaDataColumns.LOCAL_TIME_ZONE} TEXT, `
+ `${CalendarMetaDataColumns.MIN_INSTANCE} INTEGER, `
+ `${CalendarMetaDataColumns.MAX_INSTANCE} INTEGER)`;
/**
* the create EventsRawTimes table sql
@@ -257,60 +256,60 @@ let CREATE_EVENTS_RAW_TIMES_TABLE_SQL = `CREATE TABLE IF NOT EXISTS `
* the create map_address_history table sql
*/
let CREATE_MAP_ADDRESS_HISTORY_TABLE_SQL = `CREATE TABLE IF NOT EXISTS `
+ `${MapAddressHistoryColumns.TABLE_NAME} (`
+ `${MapAddressHistoryColumns.ID} INTEGER PRIMARY KEY AUTOINCREMENT, `
+ `${MapAddressHistoryColumns.ADDRESS} TEXT, `
+ `${MapAddressHistoryColumns.NAME} TEXT, `
+ `${MapAddressHistoryColumns.LAT} TEXT, `
+ `${MapAddressHistoryColumns.LON} TEXT, `
+ `${MapAddressHistoryColumns.TIME} TEXT, `
+ `${MapAddressHistoryColumns.DATA1} TEXT, `
+ `${MapAddressHistoryColumns.DATA2} TEXT)`;
+ `${MapAddressHistoryColumns.TABLE_NAME} (`
+ `${MapAddressHistoryColumns.ID} INTEGER PRIMARY KEY AUTOINCREMENT, `
+ `${MapAddressHistoryColumns.ADDRESS} TEXT, `
+ `${MapAddressHistoryColumns.NAME} TEXT, `
+ `${MapAddressHistoryColumns.LAT} TEXT, `
+ `${MapAddressHistoryColumns.LON} TEXT, `
+ `${MapAddressHistoryColumns.TIME} TEXT, `
+ `${MapAddressHistoryColumns.DATA1} TEXT, `
+ `${MapAddressHistoryColumns.DATA2} TEXT)`;
/**
* the create ExtendedProperties table sql
*/
let CREATE_EXTENDED_PROPERTIES_TABLE_SQL = `CREATE TABLE IF NOT EXISTS `
+ `${ExtendedPropertiesColumns.TABLE_NAME} (`
+ `${ExtendedPropertiesColumns.ID} INTEGER PRIMARY KEY, `
+ `${ExtendedPropertiesColumns.EVENT_ID} INTEGER, `
+ `${ExtendedPropertiesColumns.NAME} TEXT, `
+ `${ExtendedPropertiesColumns.VALUE} TEXT)`;
+ `${ExtendedPropertiesColumns.TABLE_NAME} (`
+ `${ExtendedPropertiesColumns.ID} INTEGER PRIMARY KEY, `
+ `${ExtendedPropertiesColumns.EVENT_ID} INTEGER, `
+ `${ExtendedPropertiesColumns.NAME} TEXT, `
+ `${ExtendedPropertiesColumns.VALUE} TEXT)`;
/**
* the create _sync_state table sql
*/
let CREATE_SYNC_STATE_TABLE_SQL = `CREATE TABLE IF NOT EXISTS ${SyncStateColumns.TABLE_NAME} (`
+ `${SyncStateColumns.ID} INTEGER PRIMARY KEY, `
+ `${SyncStateColumns.ACCOUNT_NAME} TEXT NOT NULL, `
+ `${SyncStateColumns.ACCOUNT_TYPE} TEXT NOT NULL, `
+ `${SyncStateColumns.DATA} TEXT NOT NULL, `
+ `UNIQUE (${SyncStateColumns.ACCOUNT_NAME},${SyncStateColumns.ACCOUNT_TYPE}))`;
+ `${SyncStateColumns.ID} INTEGER PRIMARY KEY, `
+ `${SyncStateColumns.ACCOUNT_NAME} TEXT NOT NULL, `
+ `${SyncStateColumns.ACCOUNT_TYPE} TEXT NOT NULL, `
+ `${SyncStateColumns.DATA} TEXT NOT NULL, `
+ `UNIQUE (${SyncStateColumns.ACCOUNT_NAME},${SyncStateColumns.ACCOUNT_TYPE}))`;
/**
* the create _sync_state_metadata table sql
*/
let CREATE_SYNC_STATE_METADATA_TABLE_SQL = `CREATE TABLE IF NOT EXISTS `
+ `${SyncStateMetadataColumns.TABLE_NAME} (`
+ `${SyncStateMetadataColumns.VERSION} INTEGER)`;
+ `${SyncStateMetadataColumns.TABLE_NAME} (`
+ `${SyncStateMetadataColumns.VERSION} INTEGER)`;
/**
* the create ExtendCalendarEvent table sql
*/
let CREATE_EXTEND_CALENDAR_EVENT_TABLE_NAME_SQL = `CREATE TABLE IF NOT EXISTS `
+ `${ExtendCalendarEventColumns.TABLE_NAME} (`
+ `${ExtendCalendarEventColumns.ID} INTEGER PRIMARY KEY, `
+ `${ExtendCalendarEventColumns.HWEXT_EVENT_ID} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_TYPE} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_APP_URI} TEXT, `
+ `${ExtendCalendarEventColumns.HWEXT_APP_NAME} TEXT, `
+ `${ExtendCalendarEventColumns.HWEXT_ACTION} TEXT, `
+ `${ExtendCalendarEventColumns.HWEXT_METHOD} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_SUPPORT_MIN_VERSION} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_STATUS} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_DESCRIPTION} TEXT)`;
+ `${ExtendCalendarEventColumns.TABLE_NAME} (`
+ `${ExtendCalendarEventColumns.ID} INTEGER PRIMARY KEY, `
+ `${ExtendCalendarEventColumns.HWEXT_EVENT_ID} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_TYPE} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_APP_URI} TEXT, `
+ `${ExtendCalendarEventColumns.HWEXT_APP_NAME} TEXT, `
+ `${ExtendCalendarEventColumns.HWEXT_ACTION} TEXT, `
+ `${ExtendCalendarEventColumns.HWEXT_METHOD} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_SUPPORT_MIN_VERSION} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_STATUS} INTEGER, `
+ `${ExtendCalendarEventColumns.HWEXT_DESCRIPTION} TEXT)`;
let TAG = "CalendarDataHelper"
let TAG = 'CalendarDataHelper';
/**
* the class to initialize the calendar database
@@ -351,61 +350,60 @@ class CalendarDataHelper {
this.rdbStore = await ohosDataRdb.getRdbStore(GlobalThis.getExtensionContext(), {
name: Constants.DB_NAME,
securityLevel: ohosDataRdb.SecurityLevel.S1,
}).then();//IDE识别接口有问题,暂时改成这样,待后续更新IDE改回
}).then(); //IDE识别接口有问题,暂时改成这样,待后续更新IDE改回
if (this.rdbStore == null || this.rdbStore == undefined) {
Log.error(TAG, 'initRdbStore rdbStore is null');
return;
}
try {
await this.createEventsTable();
Log.log(TAG, "initRdbStore createEventsTable succeed");
Log.log(TAG, 'initRdbStore createEventsTable succeed');
} catch (err) {
Log.error(TAG, `initRdbStore createEventsTable get err:${err.message}`);
}
Log.log(TAG, "initRdbStore executeSql start");
Log.log(TAG, 'initRdbStore executeSql start');
try {
await this.rdbStore?.executeSql(CREATE_CALENDARS_TABLE_SQL, []);
Log.log(TAG, "initRdbStore createCalendarsTable succeed");
Log.log(TAG, 'initRdbStore createCalendarsTable succeed');
await this.rdbStore?.executeSql(CREATE_REMINDERS_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_REMINDERS_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_REMINDERS_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_INSTANCES_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_INSTANCES_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_INSTANCES_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_COLORS_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_COLORS_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_COLORS_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_ATTENDEES_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_ATTENDEES_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_ATTENDEES_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_CALENDAR_ALERTS_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_CALENDAR_ALERTS_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_CALENDAR_ALERTS_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_CALENDAR_CACHE_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_CALENDAR_CACHE_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_CALENDAR_CACHE_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_CALENDAR_METADATA_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_CALENDAR_METADATA_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_CALENDAR_METADATA_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_EVENTS_RAW_TIMES_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_EVENTS_RAW_TIMES_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_EVENTS_RAW_TIMES_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_MAP_ADDRESS_HISTORY_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_MAP_ADDRESS_HISTORY_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_MAP_ADDRESS_HISTORY_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_EXTENDED_PROPERTIES_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_EXTENDED_PROPERTIES_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_EXTENDED_PROPERTIES_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_SYNC_STATE_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_SYNC_STATE_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_SYNC_STATE_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_SYNC_STATE_METADATA_TABLE_SQL, []);
Log.log(TAG, "initRdbStore CREATE_SYNC_STATE_METADATA_TABLE_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_SYNC_STATE_METADATA_TABLE_SQL succeed');
await this.rdbStore?.executeSql(CREATE_EXTEND_CALENDAR_EVENT_TABLE_NAME_SQL, []);
Log.log(TAG, "initRdbStore CREATE_EXTEND_CALENDAR_EVENT_TABLE_NAME_SQL succeed");
Log.log(TAG, 'initRdbStore CREATE_EXTEND_CALENDAR_EVENT_TABLE_NAME_SQL succeed');
this.createSyncIdUpdateTrigger();
Log.log(TAG, "initRdbStore createSyncIdUpdateTrigger succeed");
Log.log(TAG, 'initRdbStore createSyncIdUpdateTrigger succeed');
this.createDeleteEventTriggers();
Log.log(TAG, "initRdbStore createDeleteEventTriggers succeed");
Log.log(TAG, 'initRdbStore createDeleteEventTriggers succeed');
this.createColorsTriggers();
Log.log(TAG, "initRdbStore createColorsTriggers succeed");
Log.log(TAG, 'initRdbStore createColorsTriggers succeed');
this.createCalendarCleanupTrigger();
Log.log(TAG, "initRdbStore createCalendarCleanupTrigger succeed");
Log.log(TAG, "initRdbStore executeSql end");
Log.log(TAG, 'initRdbStore createCalendarCleanupTrigger succeed');
Log.log(TAG, 'initRdbStore executeSql end');
} catch (err) {
Log.error(TAG, `initRdbStore err:${err.message}`);
}
}
private async createEventsTable() {
@@ -419,134 +417,138 @@ class CalendarDataHelper {
+ `${EventColumns.MUTATORS} TEXT, `
+ `${EventColumns.EVENT_CALENDAR_TYPE} INTEGER NOT NULL DEFAULT 0)`;
await this.rdbStore?.executeSql(CREATE_EVENTS_TABLE_SQL, []);
Log.log(TAG, 'call createEventsTable add column start');
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_IMAGE_TYPE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LAST_SYNCED} INTEGER DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CALENDAR_ID} INTEGER NOT NULL`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.TITLE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_LOCATION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LOCATION_LONGITUDE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LOCATION_LATITUDE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DESCRIPTION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_COLOR} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_COLOR_INDEX} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_STATUS} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SELF_ATTENDEE_STATUS} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DTSTART} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DTEND} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_TIMEZONE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DURATION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ALLDAY} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ACCESS_LEVEL} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.AVAILABILITY} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HAS_ALARM} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HAS_EXTENDED_PROPERTIES} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.RRULE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.RDATE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.EXRULE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.EXDATE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_ID} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_SYNC_ID} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_INSTANCE_TIME} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_ALL_DAY} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LAST_DATE} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_TIME_STAMP} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HAS_ATTENDEE_DATE} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.GUESTS_CAN_MODIFY} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.GUESTS_CAN_INVITE_OTHERS} INTEGER NOT NULL DEFAULT 1`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.GUESTS_CAN_SEE_GUESTS} INTEGER NOT NULL DEFAULT 1`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORGANIZER} STRING`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.IS_ORGANIZER} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DELETED} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_END_TIMEZONE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CUSTOM_APP_PACKAGE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CUSTOM_APP_URI} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.UID2445} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.VERSION} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_UUID} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HWEXT_ALERT_TYPE} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.IMPORTANT_EVENT_TYPE} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_VERIFIED} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_TYPE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_CP_BZ_URI} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_CP_MNG_URI} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_DESCRIPTION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_MIN_VERSION} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA1} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA2} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA3} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA4} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA5} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA6} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA7} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA8} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA9} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA10} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.KV_SYNC} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.KV_SYNC_TIME} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CREATOR} TEXT NOT NULL`, []);
Log.log(TAG, 'call createEventsTable end');
try {
await this.rdbStore?.executeSql(CREATE_EVENTS_TABLE_SQL, []);
Log.log(TAG, 'call createEventsTable add column start');
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_IMAGE_TYPE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LAST_SYNCED} INTEGER DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CALENDAR_ID} INTEGER NOT NULL`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.TITLE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_LOCATION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LOCATION_LONGITUDE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LOCATION_LATITUDE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DESCRIPTION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_COLOR} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_COLOR_INDEX} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_STATUS} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SELF_ATTENDEE_STATUS} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DTSTART} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DTEND} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_TIMEZONE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DURATION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ALLDAY} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ACCESS_LEVEL} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.AVAILABILITY} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HAS_ALARM} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HAS_EXTENDED_PROPERTIES} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.RRULE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.RDATE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.EXRULE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.EXDATE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_ID} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_SYNC_ID} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_INSTANCE_TIME} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORIGINAL_ALL_DAY} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.LAST_DATE} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_TIME_STAMP} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HAS_ATTENDEE_DATE} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.GUESTS_CAN_MODIFY} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.GUESTS_CAN_INVITE_OTHERS} INTEGER NOT NULL DEFAULT 1`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.GUESTS_CAN_SEE_GUESTS} INTEGER NOT NULL DEFAULT 1`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.ORGANIZER} STRING`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.IS_ORGANIZER} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.DELETED} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_END_TIMEZONE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CUSTOM_APP_PACKAGE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CUSTOM_APP_URI} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ${EventColumns.UID2445} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.VERSION} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.EVENT_UUID} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.HWEXT_ALERT_TYPE} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.IMPORTANT_EVENT_TYPE} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_VERIFIED} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_TYPE} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_CP_BZ_URI} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_CP_MNG_URI} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_DESCRIPTION} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE EVENTS ADD COLUMN ` +
`${EventColumns.SERVICE.SERVICE_MIN_VERSION} INTEGER`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA1} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA2} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA3} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA4} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA5} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA6} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA7} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA8} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA9} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.SYNC_DATA10} TEXT`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.KV_SYNC} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.KV_SYNC_TIME} INTEGER NOT NULL DEFAULT 0`, []);
await this.rdbStore?.executeSql(`ALTER TABLE Events ADD COLUMN ` +
`${EventColumns.CREATOR} TEXT NOT NULL`, []);
Log.log(TAG, 'call createEventsTable end');
} catch (err) {
Log.error(TAG, `createEventsTable err:${err.message}`);
}
}
private async createDeleteEventTriggers() {
@@ -569,7 +571,7 @@ class CalendarDataHelper {
` WHERE ${ExtendedPropertiesColumns.EVENT_ID} = old.${EventColumns.ID};`
let EVENTS_CLEANUP_TRIGGER = `CREATE TRIGGER events_cleanup_delete DELETE ON ` +
`${EventColumns.TABLE_NAME} BEGIN ${EVENTS_CLEANUP_TRIGGER_SQL} END`
`${EventColumns.TABLE_NAME} BEGIN ${EVENTS_CLEANUP_TRIGGER_SQL} END`;
try {
await this.rdbStore?.executeSql(EVENTS_CLEANUP_TRIGGER, []);
Log.log(TAG, 'call createDeleteEventTriggers end');
@@ -581,46 +583,46 @@ class CalendarDataHelper {
private async createColorsTriggers() {
Log.log(TAG, 'call createColorsTriggers start');
let EVENT_UPDATE_COLOR_TRIGGER_SQL = `UPDATE ${EventColumns.TABLE_NAME}` +
` SET eventColor=(SELECT ${ColorsColumns.COLOR} FROM ` +
`${ColorsColumns.TABLE_NAME}` +
` WHERE ${ColorsColumns.ACCOUNT_NAME} = (SELECT ` +
`${CalendarsColumns.ACCOUNT_NAME}` +
` FROM ${CalendarsColumns.TABLE_NAME} WHERE ${CalendarsColumns.ID} =` +
` new.${EventColumns.CALENDAR_ID}) AND ${ColorsColumns.ACCOUNT_TYPE}` +
` = (SELECT ${CalendarsColumns.ACCOUNT_TYPE} FROM ` +
`${CalendarsColumns.TABLE_NAME}` +
` WHERE ${CalendarsColumns.ID} = new.${EventColumns.CALENDAR_ID})` +
` AND ${ColorsColumns.COLOR_INDEX} = ` +
`new.${EventColumns.EVENT_COLOR_INDEX}` +
` AND ${ColorsColumns.COLOR_TYPE} = 1)` +
` WHERE ${EventColumns.ID} = old.${EventColumns.ID};`
` SET eventColor=(SELECT ${ColorsColumns.COLOR} FROM ` +
`${ColorsColumns.TABLE_NAME}` +
` WHERE ${ColorsColumns.ACCOUNT_NAME} = (SELECT ` +
`${CalendarsColumns.ACCOUNT_NAME}` +
` FROM ${CalendarsColumns.TABLE_NAME} WHERE ${CalendarsColumns.ID} =` +
` new.${EventColumns.CALENDAR_ID}) AND ${ColorsColumns.ACCOUNT_TYPE}` +
` = (SELECT ${CalendarsColumns.ACCOUNT_TYPE} FROM ` +
`${CalendarsColumns.TABLE_NAME}` +
` WHERE ${CalendarsColumns.ID} = new.${EventColumns.CALENDAR_ID})` +
` AND ${ColorsColumns.COLOR_INDEX} = ` +
`new.${EventColumns.EVENT_COLOR_INDEX}` +
` AND ${ColorsColumns.COLOR_TYPE} = 1)` +
` WHERE ${EventColumns.ID} = old.${EventColumns.ID};`;
let CREATE_EVENT_COLOR_UPDATE_TRIGGER = `CREATE TRIGGER ` +
`event_color_update UPDATE OF ${EventColumns.EVENT_COLOR_INDEX} ON ` +
`${EventColumns.TABLE_NAME} WHEN new.${EventColumns.EVENT_COLOR_INDEX} ` +
`NOT NULL BEGIN ${EVENT_UPDATE_COLOR_TRIGGER_SQL} END`
`event_color_update UPDATE OF ${EventColumns.EVENT_COLOR_INDEX} ON ` +
`${EventColumns.TABLE_NAME} WHEN new.${EventColumns.EVENT_COLOR_INDEX} ` +
`NOT NULL BEGIN ${EVENT_UPDATE_COLOR_TRIGGER_SQL} END`;
let CALENDAR_UPDATE_COLOR_TRIGGER_SQL = `UPDATE ${CalendarsColumns.TABLE_NAME} ` +
`SET ${CalendarsColumns.CALENDAR_COLOR} = (SELECT ` +
`${ColorsColumns.COLOR} FROM ${ColorsColumns.TABLE_NAME} WHERE ` +
`${ColorsColumns.ACCOUNT_NAME} = ` +
`new.${CalendarsColumns.ACCOUNT_NAME} AND ` +
`${ColorsColumns.ACCOUNT_TYPE} = ` +
`new.${CalendarsColumns.ACCOUNT_TYPE} AND ` +
`${ColorsColumns.COLOR_INDEX} = ` +
`new.${CalendarsColumns.CALENDAR_COLOR_INDEX} AND ` +
`${ColorsColumns.COLOR_TYPE} = 0) ` +
` WHERE ${CalendarsColumns.ID} = old.${CalendarsColumns.ID};`
`SET ${CalendarsColumns.CALENDAR_COLOR} = (SELECT ` +
`${ColorsColumns.COLOR} FROM ${ColorsColumns.TABLE_NAME} WHERE ` +
`${ColorsColumns.ACCOUNT_NAME} = ` +
`new.${CalendarsColumns.ACCOUNT_NAME} AND ` +
`${ColorsColumns.ACCOUNT_TYPE} = ` +
`new.${CalendarsColumns.ACCOUNT_TYPE} AND ` +
`${ColorsColumns.COLOR_INDEX} = ` +
`new.${CalendarsColumns.CALENDAR_COLOR_INDEX} AND ` +
`${ColorsColumns.COLOR_TYPE} = 0) ` +
` WHERE ${CalendarsColumns.ID} = old.${CalendarsColumns.ID};`;
let CREATE_CALENDAR_COLOR_UPDATE_TRIGGER = `CREATE TRIGGER ` +
`calendar_color_update UPDATE OF ${CalendarsColumns.CALENDAR_COLOR_INDEX}` +
` ON ${CalendarsColumns.TABLE_NAME} WHEN` +
` new.${CalendarsColumns.CALENDAR_COLOR_INDEX} NOT NULL` +
` BEGIN ${CALENDAR_UPDATE_COLOR_TRIGGER_SQL} END`
`calendar_color_update UPDATE OF ${CalendarsColumns.CALENDAR_COLOR_INDEX}` +
` ON ${CalendarsColumns.TABLE_NAME} WHEN` +
` new.${CalendarsColumns.CALENDAR_COLOR_INDEX} NOT NULL` +
` BEGIN ${CALENDAR_UPDATE_COLOR_TRIGGER_SQL} END`;
try {
Log.log(TAG, 'call CREATE_EVENT_COLOR_UPDATE_TRIGGER');
await this.rdbStore?.executeSql(CREATE_EVENT_COLOR_UPDATE_TRIGGER, [])
await this.rdbStore?.executeSql(CREATE_EVENT_COLOR_UPDATE_TRIGGER, []);
Log.log(TAG, 'call CREATE_CALENDAR_COLOR_UPDATE_TRIGGER');
await this.rdbStore?.executeSql(CREATE_CALENDAR_COLOR_UPDATE_TRIGGER, [])
await this.rdbStore?.executeSql(CREATE_CALENDAR_COLOR_UPDATE_TRIGGER, []);
Log.log(TAG, 'call createColorsTriggers end');
} catch (err) {
Log.error(TAG, `createColorsTriggers err:${err?.message}`);
@@ -629,13 +631,13 @@ class CalendarDataHelper {
}
private async createCalendarCleanupTrigger() {
Log.log(TAG, 'call createCalendarCleanupTrigger start')
Log.log(TAG, 'call createCalendarCleanupTrigger start');
let CALENDAR_CLEANUP_TRIGGER_SQL = `DELETE FROM ` +
`${EventColumns.TABLE_NAME} WHERE ` +
`${EventColumns.CALENDAR_ID} = old.${EventColumns.ID};`
`${EventColumns.CALENDAR_ID} = old.${EventColumns.ID};`;
let CALENDAR_CLEANUP_TRIGGER = `CREATE TRIGGER calendar_cleanup DELETE ON ` +
`${CalendarsColumns.TABLE_NAME} ` +
`BEGIN ${CALENDAR_CLEANUP_TRIGGER_SQL} END`
`BEGIN ${CALENDAR_CLEANUP_TRIGGER_SQL} END`;
try {
await this.rdbStore?.executeSql(CALENDAR_CLEANUP_TRIGGER, []);
Log.log(TAG, 'call createCalendarCleanupTrigger end');
@@ -645,17 +647,16 @@ class CalendarDataHelper {
}
private async createSyncIdUpdateTrigger() {
let EVENTS_ORIGINAL_SYNC_TRIGGER_SQL = `UPDATE ${EventColumns.TABLE_NAME}` +
` SET ${EventColumns.ORIGINAL_SYNC_ID} = ` +
`new.${EventColumns.SYNC_ID}` +
` WHERE ${EventColumns.ORIGINAL_ID} =old.${EventColumns.ID};`;
let CREATE_SYNC_ID_UPDATE_TRIGGER = `CREATE TRIGGER original_sync_update` +
` UPDATE OF ${EventColumns.SYNC_ID}` +
` ON ${EventColumns.TABLE_NAME}` +
` BEGIN ${EVENTS_ORIGINAL_SYNC_TRIGGER_SQL} END`;
try {
Log.log(TAG, 'call createSyncIdUpdateTrigger start');
let EVENTS_ORIGINAL_SYNC_TRIGGER_SQL = `UPDATE ${EventColumns.TABLE_NAME}` +
` SET ${EventColumns.ORIGINAL_SYNC_ID} = ` +
`new.${EventColumns.SYNC_ID}` +
` WHERE ${EventColumns.ORIGINAL_ID} =old.${EventColumns.ID};`
let CREATE_SYNC_ID_UPDATE_TRIGGER = `CREATE TRIGGER original_sync_update` +
` UPDATE OF ${EventColumns.SYNC_ID}` +
` ON ${EventColumns.TABLE_NAME}` +
` BEGIN ${EVENTS_ORIGINAL_SYNC_TRIGGER_SQL} END`
await this.rdbStore?.executeSql(CREATE_SYNC_ID_UPDATE_TRIGGER, []);
Log.log(TAG, 'call createSyncIdUpdateTrigger end');
} catch (err) {