From 5fe1abcffa2c8d725bcc977072028e2b4b59779a Mon Sep 17 00:00:00 2001 From: Peter Maquiran Date: Sat, 4 Mar 2023 07:21:33 +0100 Subject: [PATCH] add models --- src/app/models/beast-orm.ts | 38 ++++++++++++++++++- src/app/models/publication.ts | 2 +- src/app/pages/events/events.page.ts | 8 ++-- .../publication-detail.page.ts | 2 +- .../pages/publications/publications.page.ts | 5 +++ .../publication-detail.page.ts | 2 +- .../view-publications.page.ts | 23 ++++++----- src/app/services/publications.service.ts | 4 +- .../publication-detail.page.ts | 2 +- .../view-publications.page.html | 2 +- .../view-publications.page.ts | 25 +++++++----- src/environments/environment.ts | 2 +- version/git-version.ts | 12 +++--- 13 files changed, 88 insertions(+), 39 deletions(-) diff --git a/src/app/models/beast-orm.ts b/src/app/models/beast-orm.ts index 7ed0f9c1c..90923db19 100644 --- a/src/app/models/beast-orm.ts +++ b/src/app/models/beast-orm.ts @@ -1,4 +1,5 @@ -import { models } from 'beast-orm' +// import { models } from 'beast-orm' +import { models } from 'src/plugin/src' import { environment } from 'src/environments/environment' const { ArrayField, JsonField} = models.indexedDB.fields @@ -47,4 +48,37 @@ models.register({ }) -window['MessageModel'] = MessageModel \ No newline at end of file +window['MessageModel'] = MessageModel + + + + + +export class ActionModel extends models.Model{ + ProcessId = models.IntegerField({unique: true}) + Description = models.CharField() + Detail = models.CharField() + DateBegin = models.CharField() + DateEnd = models.CharField() + ActionType = models.CharField() +} + +export class PublicationModel extends models.Model{ + DateIndex = models.CharField() + DocumentId = models.IntegerField({unique: true}) + ProcessId = models.CharField() + Title = models.CharField() + Message = models.CharField() + DatePublication = models.CharField() + OriginalFileName = models.CharField() + FileBase64 = models.CharField() + FileExtension = models.CharField() + OrganicEntityId = models.IntegerField() +} + +models.register({ + databaseName: 'actions'+environment.version.lastCommitNumber + environment.id, + type: 'indexedDB', + version: 14, + models: [PublicationModel, ActionModel] +}) \ No newline at end of file diff --git a/src/app/models/publication.ts b/src/app/models/publication.ts index 6e8e65a88..a042c85f8 100644 --- a/src/app/models/publication.ts +++ b/src/app/models/publication.ts @@ -2,7 +2,7 @@ export class Publication{ DateIndex: Date | string; - DocumentId:string; + DocumentId: number; ProcessId:string; Title: string; Message: string; diff --git a/src/app/pages/events/events.page.ts b/src/app/pages/events/events.page.ts index 58811e9b5..9d64138a6 100644 --- a/src/app/pages/events/events.page.ts +++ b/src/app/pages/events/events.page.ts @@ -11,7 +11,7 @@ import { ExpedienteGdStore } from 'src/app/store/expedientegd-store.service'; import { SqliteService } from 'src/app/services/sqlite.service'; import { BackgroundService } from 'src/app/services/background.service'; import { momentG } from 'src/plugin/momentG'; -import { ThemeService } from 'src/app/services/theme.service' +import { ThemeService } from 'src/app/services/theme.service'; import { Storage } from '@ionic/storage'; import { PermissionService } from 'src/app/services/permission.service'; import { ViewEventPage } from 'src/app/modals/view-event/view-event.page'; @@ -130,8 +130,8 @@ export class EventsPage implements OnInit { if (event) { setTimeout(() => { try { - event?.target?.complete(); -} catch(error) {} + event?.target?.complete(); + } catch(error) {} }, 2000); } this.RefreshEvents(); @@ -166,7 +166,7 @@ export class EventsPage implements OnInit { } } - + this.showLoader = false; this.showAgendaLoader = false; } diff --git a/src/app/pages/publications/publication-detail/publication-detail.page.ts b/src/app/pages/publications/publication-detail/publication-detail.page.ts index 41b700480..12f070c4f 100644 --- a/src/app/pages/publications/publication-detail/publication-detail.page.ts +++ b/src/app/pages/publications/publication-detail/publication-detail.page.ts @@ -37,7 +37,7 @@ export class PublicationDetailPage implements OnInit { /* this.folderId = this.navParams.get('folderIdId'); */ this.publication = { DateIndex: null, - DocumentId: '', + DocumentId: null, ProcessId:'', Title:'', Message: '', diff --git a/src/app/pages/publications/publications.page.ts b/src/app/pages/publications/publications.page.ts index 19405fbf5..4ddc67b37 100644 --- a/src/app/pages/publications/publications.page.ts +++ b/src/app/pages/publications/publications.page.ts @@ -16,6 +16,7 @@ import { BackgroundService } from 'src/app/services/background.service'; import { ThemeService } from 'src/app/services/theme.service' import { Storage } from '@ionic/storage'; import { PermissionService } from 'src/app/services/permission.service'; +import { ActionModel } from 'src/app/models/beast-orm'; @Component({ @@ -146,7 +147,11 @@ export class PublicationsPage implements OnInit { this.publications.GetPublicationFolderList().subscribe(async res => { this.showLoader = false; const folders: PublicationFolder[] = this.getPublicationFolderMap(res) + + let publications = await ActionModel.create(folders) + console.log('publications', publications) + this.publicationsEventFolderList = folders.filter((e)=>e.ActionType == 'Evento') this.publicationsTravelFolderList = folders.filter((e)=>e.ActionType != 'Evento') diff --git a/src/app/pages/publications/view-publications/publication-detail/publication-detail.page.ts b/src/app/pages/publications/view-publications/publication-detail/publication-detail.page.ts index 5564037c1..246b34e26 100644 --- a/src/app/pages/publications/view-publications/publication-detail/publication-detail.page.ts +++ b/src/app/pages/publications/view-publications/publication-detail/publication-detail.page.ts @@ -46,7 +46,7 @@ export class PublicationDetailPage implements OnInit { this.publication = { DateIndex: null, - DocumentId: '', + DocumentId: null, ProcessId:'', Title:'', Message: '', diff --git a/src/app/pages/publications/view-publications/view-publications.page.ts b/src/app/pages/publications/view-publications/view-publications.page.ts index bf8915d50..deb5571b5 100644 --- a/src/app/pages/publications/view-publications/view-publications.page.ts +++ b/src/app/pages/publications/view-publications/view-publications.page.ts @@ -15,6 +15,7 @@ import { ToastService } from 'src/app/services/toast.service'; import { PermissionService } from 'src/app/services/permission.service'; import { HttpErrorHandle } from 'src/app/services/http-error-handle.service'; import { Storage } from '@ionic/storage'; +import { PublicationModel } from 'src/app/models/beast-orm'; @Component({ selector: 'app-view-publications', @@ -162,20 +163,24 @@ export class ViewPublicationsPage implements OnInit { const folderId = this.folderId try { - const res = await this.publications.GetPublicationsImages(folderId).toPromise(); - let publicationList = [] + const publicationIds = await this.publications.GetPublicationsList(folderId).toPromise(); - for (let element of res) { - let ress = await this.publications.GetPublicationById(element).toPromise(); - let item: Publication = this.publicationPipe.itemList(ress) - publicationList.push(item); + for (let publicationId of publicationIds) { + let Publication = await this.publications.GetPublicationById(publicationId).toPromise(); + let publicationDetails: Publication = this.publicationPipe.itemList(Publication) + + const found = this.publicationList[folderId].find( e => e.DocumentId == publicationId ) + + if(!found) { + PublicationModel.create(publicationDetails) + this.publicationList[folderId].push(publicationDetails) + } } this.showLoader = false; - this.publicationList[folderId] = publicationList - this.storage.set(folderId, publicationList); - this.getpublication = publicationList; + this.storage.set(folderId, this.publicationList[folderId]); + this.getpublication = this.publicationList[folderId]; } catch(error) { this.showLoader = false; } diff --git a/src/app/services/publications.service.ts b/src/app/services/publications.service.ts index 55e813247..bf9edb752 100644 --- a/src/app/services/publications.service.ts +++ b/src/app/services/publications.service.ts @@ -95,7 +95,7 @@ export class PublicationsService { return this.http.delete(`${geturl}`, options); } - GetPublicationsImages(folder:any) { + GetPublicationsList(folder:any) { const geturl = environment.apiURL + 'presidentialActions/'+ folder +'/posts/ids'; let params = new HttpParams(); @@ -105,7 +105,7 @@ export class PublicationsService { headers: this.headers, params: params }; - return this.http.get(`${geturl}`, options) + return this.http.get(`${geturl}`, options) } diff --git a/src/app/shared/publication/view-publications/publication-detail/publication-detail.page.ts b/src/app/shared/publication/view-publications/publication-detail/publication-detail.page.ts index 3a41eb4b6..4f74af317 100644 --- a/src/app/shared/publication/view-publications/publication-detail/publication-detail.page.ts +++ b/src/app/shared/publication/view-publications/publication-detail/publication-detail.page.ts @@ -37,7 +37,7 @@ export class PublicationDetailPage implements OnInit { /* this.folderId = this.navParams.get('folderIdId'); */ this.publication = { DateIndex: null, - DocumentId: '', + DocumentId: null, ProcessId:'', Title:'', Message: '', diff --git a/src/app/shared/publication/view-publications/view-publications.page.html b/src/app/shared/publication/view-publications/view-publications.page.html index 79986c91e..44d05d041 100644 --- a/src/app/shared/publication/view-publications/view-publications.page.html +++ b/src/app/shared/publication/view-publications/view-publications.page.html @@ -20,7 +20,7 @@ -
+

{{publicationItem[folderId].Detail}}

diff --git a/src/app/shared/publication/view-publications/view-publications.page.ts b/src/app/shared/publication/view-publications/view-publications.page.ts index db777e3df..319b1001e 100644 --- a/src/app/shared/publication/view-publications/view-publications.page.ts +++ b/src/app/shared/publication/view-publications/view-publications.page.ts @@ -12,6 +12,7 @@ import { EditActionPage } from 'src/app/pages/publications/edit-action/edit-acti import { Storage } from '@ionic/storage'; import { PermissionService } from 'src/app/services/permission.service'; import { HttpErrorHandle } from 'src/app/services/http-error-handle.service'; +import { PublicationModel } from 'src/app/models/beast-orm'; @Component({ selector: 'app-view-publications', @@ -116,20 +117,24 @@ export class ViewPublicationsPage implements OnInit { const folderId = this.folderId try { - const res = await this.publications.GetPublicationsImages(folderId).toPromise(); - let publicationList = [] - - for (let element of res) { - let ress = await this.publications.GetPublicationById(element).toPromise(); - let item: Publication = this.publicationPipe.itemList(ress) - publicationList.push(item); + const publicationIds = await this.publications.GetPublicationsList(folderId).toPromise(); + + for (let publicationId of publicationIds) { + let Publication = await this.publications.GetPublicationById(publicationId).toPromise(); + let publicationDetails: Publication = this.publicationPipe.itemList(Publication) + + const found = this.publicationList[folderId].find( e => e.DocumentId == publicationId ) + + if(!found) { + PublicationModel.create(publicationDetails) + this.publicationList[folderId].push(publicationDetails) + } } this.showLoader = false; - this.publicationList[folderId] = publicationList - this.storage.set(folderId, publicationList); - this.getpublication = publicationList; + this.storage.set(folderId, this.publicationList[folderId]); + this.getpublication = this.publicationList[folderId]; } catch(error) { this.showLoader = false; } diff --git a/src/environments/environment.ts b/src/environments/environment.ts index 10909d23b..aaefbfe6d 100644 --- a/src/environments/environment.ts +++ b/src/environments/environment.ts @@ -3,4 +3,4 @@ import { oaprDev } from './suport/oapr' import { doneITDev } from './suport/doneIt' -export const environment: Environment = oaprDev; \ No newline at end of file +export const environment: Environment = doneITDev; \ No newline at end of file diff --git a/version/git-version.ts b/version/git-version.ts index c47ca6e10..69e096ce4 100644 --- a/version/git-version.ts +++ b/version/git-version.ts @@ -1,12 +1,12 @@ export let versionData = { - "shortSHA": "9a1976f54", - "SHA": "9a1976f54373e5ed0686998c46bcc00e427d1b88", + "shortSHA": "7e5039b4f", + "SHA": "7e5039b4fac3a44e5a039acd69dcba79b2a984b0", "branch": "no_bug_movemente", "lastCommitAuthor": "'Peter Maquiran'", - "lastCommitTime": "'Mon Feb 27 20:17:47 2023 +0100'", - "lastCommitMessage": "fix", - "lastCommitNumber": "4844", + "lastCommitTime": "'Mon Feb 27 21:24:34 2023 +0100'", + "lastCommitMessage": "fix slow publication", + "lastCommitNumber": "4845", "change": "", - "changeStatus": "On branch no_bug_movemente\nChanges to be committed:\n (use \"git restore --staged ...\" to unstage)\n\tmodified: src/app/pages/publications/publications.page.ts\n\tmodified: src/app/pages/publications/view-publications/view-publications.page.html\n\tmodified: src/app/pages/publications/view-publications/view-publications.page.ts\n\tmodified: src/app/shared/publication/view-publications/view-publications.page.html\n\tmodified: src/app/shared/publication/view-publications/view-publications.page.ts", + "changeStatus": "On branch no_bug_movemente\nChanges to be committed:\n (use \"git restore --staged ...\" to unstage)\n\tmodified: src/app/models/beast-orm.ts\n\tmodified: src/app/models/publication.ts\n\tmodified: src/app/pages/events/events.page.ts\n\tmodified: src/app/pages/publications/publication-detail/publication-detail.page.ts\n\tmodified: src/app/pages/publications/publications.page.ts\n\tmodified: src/app/pages/publications/view-publications/publication-detail/publication-detail.page.ts\n\tmodified: src/app/pages/publications/view-publications/view-publications.page.ts\n\tmodified: src/app/services/publications.service.ts\n\tmodified: src/app/shared/publication/view-publications/publication-detail/publication-detail.page.ts\n\tmodified: src/app/shared/publication/view-publications/view-publications.page.html\n\tmodified: src/app/shared/publication/view-publications/view-publications.page.ts\n\tmodified: src/environments/environment.ts", "changeAuthor": "peter.maquiran" } \ No newline at end of file