change creat to createOrUpdate

This commit is contained in:
Peter Maquiran
2024-06-05 11:55:38 +01:00
parent 1a319093ee
commit a8db36856c
3 changed files with 38 additions and 19 deletions
@@ -24,20 +24,13 @@ export const roomDataSource = new Dexie('FriendDatabase') as Dexie & {
room: EntityTable<TableRoom, 'id'>; room: EntityTable<TableRoom, 'id'>;
}; };
roomDataSource.version(1).stores({ roomDataSource.version(1).stores({
room: '++id, createdBy, roomName, roomType, expirationDate' room: 'id, createdBy, roomName, roomType, expirationDate'
}); });
interface CreateRoomParams {
id?: string;
roomName?: string;
createdBy?: any;
createdAt?: Date;
expirationDate?: Date;
roomType?: any;
}
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
}) })
@@ -48,14 +41,42 @@ export class RoomLocalDataSourceService {
constructor() {} constructor() {}
async createRoom(data: CreateRoomParams) { async createRoom(data: TableRoom) {
try { try {
const result = await roomDataSource.room.add(data) const result = await roomDataSource.room.add(data)
return ok(result) return ok(result)
} catch (e) { } catch (e) {
return err(false) return err(false)
} }
}
async updateRoom(data: TableRoom) {
try {
const result = await roomDataSource.room.update(data.id, data);
return ok(result)
} catch (e) {
return err(false)
}
}
async createOrUpdateRoom(data: TableRoom) {
const createResult = await this.createRoom(data)
if(createResult.isOk()) {
return this.updateRoom(data)
} else {
return createResult
}
}
async getRoomById(id: any) {
try {
const result = await roomDataSource.room.get(id)
return ok(result)
} catch (e) {
return err(false)
}
} }
@@ -24,7 +24,7 @@ export class RoomRepositoryService {
if(result.isOk()) { if(result.isOk()) {
for( const roomData of result.value.data) { for( const roomData of result.value.data) {
this.roomLocalDataSourceService.createRoom(roomData as any) this.roomLocalDataSourceService.createOrUpdateRoom(roomData)
} }
} }
return result return result
@@ -57,7 +57,6 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
userPresence = ''; userPresence = '';
dmUsers: any; dmUsers: any;
checktimeOut: boolean; checktimeOut: boolean;
members: any;
downloadProgess = 0; downloadProgess = 0;
@Input() roomId: string; @Input() roomId: string;
@@ -368,7 +367,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
openBookMeetingComponent() { openBookMeetingComponent() {
let data = { let data = {
roomId: this.roomId, roomId: this.roomId,
members: this.members members: []
} }
this.openNewEventPage.emit(data); this.openNewEventPage.emit(data);
} }
@@ -511,7 +510,6 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
// this.showLoader = false; // this.showLoader = false;
// }); // });
this.members = this.ChatSystemService.getDmRoom(this.roomId).members
this.dmUsers = this.ChatSystemService.getDmRoom(this.roomId).membersExcludeMe this.dmUsers = this.ChatSystemService.getDmRoom(this.roomId).membersExcludeMe
} }
@@ -936,7 +934,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
bookMeeting() { bookMeeting() {
let data = { let data = {
roomId: this.roomId, roomId: this.roomId,
members: this.members members: []
} }
this.openNewEventPage.emit(data); this.openNewEventPage.emit(data);
} }
@@ -980,7 +978,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
cssClass: 'model profile-modal search-submodal', cssClass: 'model profile-modal search-submodal',
componentProps: { componentProps: {
roomId: this.roomId, roomId: this.roomId,
members: this.members, members: [],
} }
}); });
@@ -992,7 +990,7 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
//this.closeAllDesktopComponents.emit(); //this.closeAllDesktopComponents.emit();
let data = { let data = {
roomId: this.roomId, roomId: this.roomId,
members: this.members members: []
} }
this.openNewEventPage.emit(data); this.openNewEventPage.emit(data);
} }