This commit is contained in:
tiago.kayaya
2021-05-25 14:17:03 +01:00
43 changed files with 1559 additions and 523 deletions
@@ -9,6 +9,8 @@ import { EmendMessageModalPage } from 'src/app/pages/agenda/emend-message-modal/
import { EventActionsPopoverPage } from 'src/app/pages/agenda/event-actions-popover/event-actions-popover.page';
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
import { EditEventToApproveComponent } from '../../gabinete-digital/edit-event-to-approve/edit-event.page';
import { BadRequestComponent } from '../../popover/bad-request/bad-request.component';
import { SuccessMessageComponent } from '../../popover/success-message/success-message.component';
@Component({
@@ -52,35 +54,43 @@ export class ApproveEventComponent implements OnInit {
ngOnInit() {
this.getTask();
this.getAttachments();
console.log(this.showAside);
// console.log(this.showAside);
}
notImplemented(){
notImplemented() {
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
close(){
close() {
/* this.router.navigate(['/home/gabinete-digital/event-list']); */
this.closeEventToApprove.emit();
this.modalController.dismiss();
}
getTask(){
getTask() {
this.processes.GetTask(this.serialNumber).subscribe(res => {
console.log(res);
// console.log(res);
this.loadedEvent = res;
this.today = new Date(res.workflowInstanceDataFields.StartDate);
console.log(new Date(this.today));
// console.log(new Date(this.today));
this.customDate = this.days[this.today.getDay()]+ ", " + this.today.getDate() +" de " + ( this.months[this.today.getMonth()]);
})
}
approveTask(serialNumber:string){
async approveTask(serialNumber:string){
let body = { "serialNumber": serialNumber, "action": "Aprovar" }
console.log(body);
this.processes.PostTaskAction(body);
this.modalController.dismiss(serialNumber);
try {
this.processes.PostTaskAction(body);
this.modalController.dismiss(serialNumber);
this.successMessage()
} catch (error) {
this.badRequest()
}
/* this.approveEventDismiss.emit({
"serialNumber": serialNumber,
"action": "Aprovar",
@@ -92,20 +102,33 @@ export class ApproveEventComponent implements OnInit {
}); */
}
emendTask(serialNumber:string){
async emendTask(serialNumber:string){
/* console.log('Emendar'); */
this.menu.close();
this.openEmendMessageModal(serialNumber);
this.modalController.dismiss(null);
try {
await this.openEmendMessageModal(serialNumber);
this.modalController.dismiss(null);
} catch (error) {
this.badRequest()
}
}
rejectTask(serialNumber:string){
async rejectTask(serialNumber:string){
let body = { "serialNumber": serialNumber, "action": "Rejeitar" }
console.log(body);
this.processes.PostTaskAction(body);
this.router.navigate(['/home/gabinete-digital/event-list']);
this.modalController.dismiss(null);
try {
await this.processes.PostTaskAction(body);
this.router.navigate(['/home/gabinete-digital/event-list']);
this.modalController.dismiss(null);
this.successMessage()
} catch (error) {
this.badRequest()
}
}
async getAttachments(){
@@ -136,6 +159,7 @@ export class ApproveEventComponent implements OnInit {
openMenu() {
this.menu.open();
}
async openEmendMessageModal(serialNumber:string) {
const modal = await this.modalController.create({
component: EmendMessageModalPage,
@@ -200,4 +224,38 @@ export class ApproveEventComponent implements OnInit {
}
async successMessage(message?: string) {
const modal = await this.modalController.create({
component: SuccessMessageComponent,
componentProps: {
message: message || 'Processo efetuado' ,
},
cssClass: 'modal modal-desktop'
});
modal.present()
setTimeout(()=>{
modal.dismiss()
},3000)
}
async badRequest() {
const modal = await this.modalController.create({
component: BadRequestComponent,
componentProps: {
message: 'hello',
},
cssClass: 'modal modal-desktop'
});
modal.present()
setTimeout(()=>{
modal.dismiss()
},1000)
}
}
@@ -9,6 +9,8 @@ import { removeDuplicate } from 'src/plugin/removeDuplicate.js'
import { SearchPage } from 'src/app/pages/search/search.page';
import { SearchDocument } from "src/app/models/search-document";
import { EventAttachment } from 'src/app/models/attachment.model';
import { BadRequestComponent } from '../../popover/bad-request/bad-request.component';
import { SuccessMessageComponent } from '../../popover/success-message/success-message.component';
@Component({
selector: 'app-new-event',
templateUrl: './new-event.component.html',
@@ -200,6 +202,11 @@ export class NewEventPage implements OnInit {
this.afterSave();
}
this.successMessage()
},
error => {
this.badRequest()
});
}
else if(this.profile=='pr') {
@@ -236,14 +243,11 @@ export class NewEventPage implements OnInit {
this.afterSave();
}
this.successMessage()
});
}
}
afterSave(){
this.deleteTemporaryData();
@@ -255,12 +259,10 @@ export class NewEventPage implements OnInit {
}
removeAttachment(index: number){
this.documents = this.documents.filter( (e, i) => index != i);
}
async addParticipants() {
this.saveTemporaryData();
@@ -283,8 +285,7 @@ export class NewEventPage implements OnInit {
this.clearContact.emit();
}
saveTemporaryData(){
saveTemporaryData() {
window['temp.path:/home/agenda/new-event.component.ts'] = {
postEvent: this.postEvent,
eventBody: this.eventBody,
@@ -292,9 +293,7 @@ export class NewEventPage implements OnInit {
}
}
restoreTemporaryData(): boolean {
const restoredData = window['temp.path:/home/agenda/new-event.component.ts']
if(JSON.stringify(restoredData) != "{}" && undefined != restoredData) {
@@ -306,11 +305,44 @@ export class NewEventPage implements OnInit {
} else {
return false;
}
}
deleteTemporaryData(){
window['temp.path:/home/agenda/new-event.component.ts'] = {}
}
async successMessage(message?: string) {
const modal = await this.modalController.create({
component: SuccessMessageComponent,
componentProps: {
message: message || 'Processo efetuado' ,
},
cssClass: 'modal modal-desktop'
});
modal.present()
setTimeout(()=>{
modal.dismiss()
},3000)
}
async badRequest() {
const modal = await this.modalController.create({
component: BadRequestComponent,
componentProps: {
message: 'Processo não realizado com sucesso',
},
cssClass: 'modal modal-desktop'
});
modal.present()
setTimeout(()=>{
modal.dismiss()
},3000)
}
}
@@ -91,10 +91,11 @@ export class DespachosPage implements OnInit {
}
async LoadList(){
this.despachoList = new Array();
let result = await this.processes.GetTasksList("Despacho", false).toPromise();
//let despachos = result.reverse().filter(data => data.activityInstanceName == "Despacho (Paralelo)");
this.despachoList = new Array();
console.log(result);
@@ -9,7 +9,8 @@ import { AttachmentsService } from 'src/app/services/attachments.service';
import { EventsService } from 'src/app/services/events.service';
import { ProcessesService } from 'src/app/services/processes.service';
import { Event, EventToApproveEdit } from '../../../models/event.model';
import { BadRequestComponent } from '../../popover/bad-request/bad-request.component';
import { SuccessMessageComponent } from '../../popover/success-message/success-message.component';
@Component({
selector: 'app-edit-event',
@@ -21,7 +22,6 @@ export class EditEventToApproveComponent implements OnInit {
serialNumber: string
loadedAttachments: Attachment[]= []
eventProcess = {
serialNumber: "",
taskStartDate: "",
@@ -232,8 +232,6 @@ export class EditEventToApproveComponent implements OnInit {
}
})
const event: any = {
Agenda: this.eventProcess.workflowInstanceDataFields.Agenda,
Body: this.eventProcess.workflowInstanceDataFields.Body,
@@ -253,16 +251,28 @@ export class EditEventToApproveComponent implements OnInit {
ReviewerComments: ''
}
this.eventsService.postEventToApproveEdit(event).subscribe()
this.eventsService.postEventToApproveEdit(event).subscribe(()=>{
this.successMessage()
}, error =>{
this.badRequest()
})
this.loadedAttachments.forEach((document:any)=>{
if(document['action'] == 'add') {
delete document.action
this.attachmentsService.setEventAttachmentById(document).subscribe(()=>{});
this.attachmentsService.setEventAttachmentById(document).subscribe(()=>{
//this.successMessage()
}, error =>{
this.badRequest()
});
} else if(document['action'] == 'delete') {
delete document.action
this.attachmentsService.deleteEventAttachmentById(document.Id).subscribe( res=>{})
this.attachmentsService.deleteEventAttachmentById(document.Id).subscribe( res=>{
//this.successMessage()
}, error =>{
this.badRequest()
})
}
})
@@ -396,4 +406,38 @@ export class EditEventToApproveComponent implements OnInit {
});
}
async successMessage(message?: string) {
const modal = await this.modalController.create({
component: SuccessMessageComponent,
componentProps: {
message: message || 'Processo efetuado' ,
},
cssClass: 'modal modal-desktop'
});
modal.present()
setTimeout(()=>{
modal.dismiss()
},3000)
}
async badRequest() {
const modal = await this.modalController.create({
component: BadRequestComponent,
componentProps: {
message: 'hello',
},
cssClass: 'modal modal-desktop'
});
modal.present()
setTimeout(()=>{
modal.dismiss()
},1000)
}
}
@@ -44,11 +44,11 @@ export class ExpedientePage implements OnInit {
private alertService: AlertService) {
//this.serialnumber = this.navParams.get('serialNumber');
//this.profile = this.navParams.get('profile');
}
}
ngOnInit() {
this.profile = "mdgpr";
console.log(this.serialNumber);
// console.log(this.serialNumber);
this.activateRoute.paramMap.subscribe(paramMap => {
if (!paramMap.has('SerialNumber')) {
@@ -61,11 +61,11 @@ export class ExpedientePage implements OnInit {
this.LoadTaskDetail(this.serialNumber);
this.LoadRelatedEvents(this.serialNumber);
}
openExpedientListPage(){
this.openExpedientList.emit();
}
async LoadTaskDetail(serial: string) {
this.processes.GetTask(serial).subscribe(res => {
this.task = {
@@ -99,7 +99,7 @@ export class ExpedientePage implements OnInit {
}
}
viewDocument(){
viewDocument() {
const url: string = this.task.DocumentURL.replace("webTRIX.Viewer","webTRIX.Viewer.Branch1");
const browser = this.iab.create(url,"_blank");
browser.show();
@@ -154,4 +154,5 @@ export class ExpedientePage implements OnInit {
}
});
}
}
@@ -91,7 +91,7 @@ export class ExpedientsPage implements OnInit {
goToExpediente(serialNumber:any){
let navigationExtras: NavigationExtras = {
queryParams: {
"serialNumber": serialNumber,
"serialNumber": serialNumber,
}
};
this.router.navigate(['/home/gabinete-digital/expediente/expediente-detail'], navigationExtras);
@@ -93,7 +93,7 @@ export class PedidosPage implements OnInit {
});
}
else if(this.segment == 'deferimento'){
else if(this.segment == 'deferimento') {
this.taskType = "Pedido de Deferimento";
this.processes.GetTasksList("Pedido de Deferimento", false).subscribe(result => {
this.taskslist = result;
@@ -135,8 +135,8 @@ export class PendentesPage implements OnInit {
goToDespacho(serialNumber:any){
let navigationExtras: NavigationExtras = {
queryParams: {
"serialNumber": serialNumber,
}
"serialNumber": serialNumber,
}
};
this.router.navigate(['/home/gabinete-digital/despachos/despacho'], navigationExtras);
}
@@ -144,8 +144,8 @@ export class PendentesPage implements OnInit {
goToPedido(serialNumber:any){
let navigationExtras: NavigationExtras = {
queryParams: {
"serialNumber": serialNumber,
}
"serialNumber": serialNumber,
}
};
this.router.navigate(['/home/gabinete-digital/pedidos/pedido'], navigationExtras);
}
@@ -153,7 +153,7 @@ export class PendentesPage implements OnInit {
goToExpediente(serialNumber:any){
let navigationExtras: NavigationExtras = {
queryParams: {
"serialNumber": serialNumber,
"serialNumber": serialNumber,
}
};
this.router.navigate(['/home/gabinete-digital/expediente/expediente-detail'], navigationExtras);
@@ -32,137 +32,138 @@ constructor(
this.segment = 'validar'
}
ngOnInit() {
//Inicializar segment
this.segment = 'assinados';
this.LoadList();
}
segmentChanged(ev: any) {
this.LoadList();
}
notImplemented(){
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
async LoadList(){
let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
this.diplomasList = new Array();
console.log(diplomas);
switch (this.segment) {
case 'validar':
let diplomasValidar = diplomas.reverse().filter(data => data.workflowInstanceDataFields.Status == "Revising");
console.log(diplomasValidar);
diplomasValidar.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": this.totalDocs,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
});
});
this.showLoader = false;
break;
case 'assinados':
let diplomasassinado = diplomas.reverse().filter(data => data.workflowInstanceDataFields.Status == "Signed");
console.log('Assinados');
diplomasassinado.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": this.totalDocs,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
});
});
this.showLoader = false;
break;
}
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
//event.target.complete();
}, 2000);
}
async viewPedidoDetail(serialNumber:any) {
console.log(this.profile);
const modal = await this.modalController.create({
component: DiplomaPage,
componentProps:{
enterAnimation: "",
serialNumber: serialNumber,
profile: this.profile,
},
cssClass: 'modal modal-desktop',
});
await modal.present();
modal.onDidDismiss().then((res)=>{
console.log('refresh list');
ngOnInit() {
//Inicializar segment
this.segment = 'assinados';
this.LoadList();
});
}
}
segmentChanged(ev: any) {
this.LoadList();
}
notImplemented(){
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
async LoadList(){
let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
this.diplomasList = new Array();
console.log(diplomas);
switch (this.segment) {
case 'validar':
let diplomasValidar = diplomas.reverse().filter(data => data.workflowInstanceDataFields.Status == "Revising");
console.log(diplomasValidar);
diplomasValidar.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": this.totalDocs,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
});
});
this.showLoader = false;
break;
case 'assinados':
let diplomasassinado = diplomas.reverse().filter(data => data.workflowInstanceDataFields.Status == "Signed");
console.log('Assinados');
diplomasassinado.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": this.totalDocs,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
});
});
this.showLoader = false;
break;
}
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
//event.target.complete();
}, 2000);
}
async viewPedidoDetail(serialNumber:any) {
console.log(this.profile);
const modal = await this.modalController.create({
component: DiplomaPage,
componentProps:{
enterAnimation: "",
serialNumber: serialNumber,
profile: this.profile,
},
cssClass: 'modal modal-desktop',
});
await modal.present();
modal.onDidDismiss().then((res)=>{
console.log('refresh list');
this.LoadList();
});
}
}
@@ -0,0 +1,7 @@
<div class="main-content">
<p class="message">
{{ message }}
</p>
</div>
@@ -0,0 +1,16 @@
:host{
text-align: center;
align-items: center;
display: flex;
justify-content: center;
background-image: url("/assets/background/background-circle-negative.svg");
background-size: 686px 674px;
background-position: center;
background-position-y: 0px;
background-repeat: no-repeat;
}
.message {
padding-top: 150px;
font-size: 16pt;
}
@@ -0,0 +1,24 @@
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
import { IonicModule } from '@ionic/angular';
import { BadRequestComponent } from './bad-request.component';
describe('BadRequestComponent', () => {
let component: BadRequestComponent;
let fixture: ComponentFixture<BadRequestComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ BadRequestComponent ],
imports: [IonicModule.forRoot()]
}).compileComponents();
fixture = TestBed.createComponent(BadRequestComponent);
component = fixture.componentInstance;
fixture.detectChanges();
}));
it('should create', () => {
expect(component).toBeTruthy();
});
});
@@ -0,0 +1,20 @@
import { Component, OnInit } from '@angular/core';
import { NavParams } from '@ionic/angular';
@Component({
selector: 'app-bad-request',
templateUrl: './bad-request.component.html',
styleUrls: ['./bad-request.component.scss'],
})
export class BadRequestComponent implements OnInit {
message: string
constructor(private navParams: NavParams) {
this.message = this.navParams.get('message');
}
ngOnInit() {}
}
@@ -0,0 +1,7 @@
<div class="main-content">
<p class="message">
{{ message }}
</p>
</div>
@@ -0,0 +1,16 @@
:host{
text-align: center;
align-items: center;
display: flex;
justify-content: center;
background-image: url("/assets/background/background-circle-check.svg");
background-size: 686px 674px;
background-position: center;
background-position-y: 0px;
background-repeat: no-repeat;
}
.message {
padding-top: 150px;
font-size: 16pt;
}
@@ -0,0 +1,24 @@
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
import { IonicModule } from '@ionic/angular';
import { SuccessMessageComponent } from './success-message.component';
describe('SuccessMessageComponent', () => {
let component: SuccessMessageComponent;
let fixture: ComponentFixture<SuccessMessageComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ SuccessMessageComponent ],
imports: [IonicModule.forRoot()]
}).compileComponents();
fixture = TestBed.createComponent(SuccessMessageComponent);
component = fixture.componentInstance;
fixture.detectChanges();
}));
it('should create', () => {
expect(component).toBeTruthy();
});
});
@@ -0,0 +1,20 @@
import { Component, OnInit } from '@angular/core';
import { NavParams } from '@ionic/angular';
@Component({
selector: 'app-success-message',
templateUrl: './success-message.component.html',
styleUrls: ['./success-message.component.scss'],
})
export class SuccessMessageComponent implements OnInit {
message: string
constructor(private navParams: NavParams) {
this.message = this.navParams.get('message');
}
ngOnInit() {}
}