pr eftu<r despachp

This commit is contained in:
Eudes Inácio
2023-02-27 22:52:33 +01:00
16 changed files with 527 additions and 541 deletions
+3
View File
@@ -193,6 +193,9 @@ export class HomePage implements OnInit {
if (this.p.userPermission([this.p.permissionList.Gabinete.pr_tasks]) && SessionStore.user.RoleID != this.RoleIdService.PRES) {
throw ('User has PRES permission but not roleId');
}
if (!this.p.userPermission([this.p.permissionList.Gabinete.pr_tasks]) && SessionStore.user.RoleID == this.RoleIdService.PRES) {
throw ('User has PRES permission but not roleId');
}
}, 1000)
}
@@ -51,7 +51,7 @@ export class CreateProcessPage implements OnInit {
'Solicitar Parecer',
'Solicitar Deferimento'
];
taskType:string;
taskType: string;
task: any;
fulltask: fullTask;
@@ -60,17 +60,17 @@ export class CreateProcessPage implements OnInit {
taskDate: Date;
taskDescription: string;
loadedAttachments:any;
subjectTypes:any;
selectedTypes: string[]=[];
loadedAttachments: any;
subjectTypes: any;
selectedTypes: string[] = [];
postData: Despacho;
dispatchFolder: Folder;
participants: Participant[];
contacts= [];
contacts = [];
// trigger hide and show for attendee component
showAttendees= false;
showAttendees = false;
adding: "intervenient" | "CC" = "intervenient";
profile: string;
@@ -82,7 +82,7 @@ export class CreateProcessPage implements OnInit {
emptyTextDescription = "Sem intervenientes selecionados";
showEmptyContainer = true;
documents:SearchList[] = [];
documents: SearchList[] = [];
loggeduser: LoginUserRespose;
@@ -92,7 +92,7 @@ export class CreateProcessPage implements OnInit {
constructor(
private modalController: ModalController,
private processes:ProcessesService,
private processes: ProcessesService,
private navParams: NavParams,
private toastService: ToastService,
public p: PermissionService,
@@ -100,69 +100,69 @@ export class CreateProcessPage implements OnInit {
private pedidoService: PedidoService,
public ThemeService: ThemeService,
private httpsErrorHanlde: HttpErrorHandle
) {
this.loggeduser = SessionStore.user;
this.task = this.navParams.get('task');
this.fulltask = this.navParams.get('fulltask');
console.log(this.task)
if (this.task.SerialNumber) {
this.task.serialNumber = this.task.SerialNumber
) {
this.loggeduser = SessionStore.user;
this.task = this.navParams.get('task');
this.fulltask = this.navParams.get('fulltask');
console.log(this.task)
if (this.task.SerialNumber) {
this.task.serialNumber = this.task.SerialNumber
}
this.taskType = this.navParams.get('taskAction');
this.postData = new Despacho();
this.participants = this.participants = new Array();
//Initialize SubjectTypes Array with the value "Indefinido"
this.selectedTypes = ['99999850'];
let NumberPDPP;
if (this.fulltask) {
if (this.fulltask.workflowInstanceDataFields) {
NumberPDPP = this.fulltask.workflowInstanceDataFields.DispatchNumber
}
}
let SourceId;
let SourceType;
let SourceSecFsId;
const taskId = this.task.workflowInstanceDataFields?.FolderID || this.task?.FolderId || this.task?.FolderID
this.taskType = this.navParams.get('taskAction');
if (taskId) {
SourceId = taskId
SourceType = 'FOLDER'
SourceSecFsId = 361
} else {
SourceId = this.task.workflowInstanceDataFields.SourceID
SourceType = 'DOC'
SourceSecFsId = 8
}
this.postData = new Despacho();
this.participants = this.participants = new Array();
//Initialize SubjectTypes Array with the value "Indefinido"
this.selectedTypes = ['99999850'];
this.dispatchFolder = {
Nad: 30,
Subject: '',
Message: '',
SourceSecFsId: SourceSecFsId, //361
SourceType: SourceType, //FOLDER
SourceId: SourceId,
DeadlineType: '',
SubjectTypes: this.selectedTypes,
NumberPDPP: this.task?.workflowInstanceDataFields?.DispatchNumber || NumberPDPP || this.fulltask?.workflowInstanceDataFields?.DispatchNumber
};
let NumberPDPP;
if(this.fulltask) {
if(this.fulltask.workflowInstanceDataFields) {
NumberPDPP = this.fulltask.workflowInstanceDataFields.DispatchNumber
}
}
let SourceId;
let SourceType;
let SourceSecFsId;
const taskId = this.task.workflowInstanceDataFields?.FolderID || this.task?.FolderId || this.task?.FolderID
if(taskId) {
SourceId = taskId
SourceType = 'FOLDER'
SourceSecFsId = 361
} else {
SourceId = this.task.workflowInstanceDataFields.SourceID
SourceType = 'DOC'
SourceSecFsId = 8
}
this.dispatchFolder = {
Nad: 30,
Subject: '',
Message: '',
SourceSecFsId: SourceSecFsId, //361
SourceType: SourceType, //FOLDER
SourceId: SourceId,
DeadlineType: '',
SubjectTypes: this.selectedTypes,
NumberPDPP: this.task?.workflowInstanceDataFields?.DispatchNumber || NumberPDPP || this.fulltask?.workflowInstanceDataFields?.DispatchNumber
};
this.postData.DispatchFolder = this.dispatchFolder;
this.postData.UsersSelected = this.participants;
/* By Default TypeDeadline should be 'Normal' */
this.postData.Priority = '99999861';
/* Initialize 'Subject' with the title of the expedient */
console.log('Subject',this.fulltask)
this.postData.DispatchFolder.Subject = this.task?.workflowInstanceDataFields?.Subject || this.fulltask?.workflowInstanceDataFields?.Subject;
this.profile = this.navParams.get('profile');
this.postData.DispatchFolder = this.dispatchFolder;
this.postData.UsersSelected = this.participants;
/* By Default TypeDeadline should be 'Normal' */
this.postData.Priority = '99999861';
/* Initialize 'Subject' with the title of the expedient */
console.log('Subject', this.fulltask)
this.postData.DispatchFolder.Subject = this.task?.workflowInstanceDataFields?.Subject || this.fulltask?.workflowInstanceDataFields?.Subject;
this.profile = this.navParams.get('profile');
}
async setAdding(type: "intervenient" | "CC"){
async setAdding(type: "intervenient" | "CC") {
this.adding = type;
}
@@ -176,11 +176,11 @@ export class CreateProcessPage implements OnInit {
this.taskDate = new Date(this.task.taskStartDate);
}
onSelectedTypesChanged(ev:any){
if(ev.length > 1){
onSelectedTypesChanged(ev: any) {
if (ev.length > 1) {
this.selectedTypes = ev.filter(data => data != '99999850');
}
if(ev.length == 0){
if (ev.length == 0) {
this.selectedTypes = ["99999850"];
}
}
@@ -191,7 +191,7 @@ export class CreateProcessPage implements OnInit {
}
getSubjectType() {
this.processes.GetSubjectType().subscribe(res=>{
this.processes.GetSubjectType().subscribe(res => {
this.subjectTypes = res;
});
}
@@ -201,11 +201,11 @@ export class CreateProcessPage implements OnInit {
}
runValidation() {
this.validateFrom = true
this.validateFrom = true
}
defaultParticipants () {
if(this.p.userPermission([this.p.permissionList.Gabinete.pr_tasks])) {
defaultParticipants() {
if (this.p.userPermission([this.p.permissionList.Gabinete.pr_tasks])) {
return ['MDGPR']
}
@@ -236,32 +236,32 @@ export class CreateProcessPage implements OnInit {
async saveTask() {
if(!this.p.userRole(['PR'])) {
if (!this.p.userRole(['PR'])) {
this.injectValidation()
this.runValidation()
if(this.Form.invalid) return false
if (this.Form.invalid) return false
}
if(this.postData.Priority=='99999861') {
if (this.postData.Priority == '99999861') {
this.dispatchFolder.DeadlineType = 'Normal';
}
else if(this.postData.Priority=='99999862') {
else if (this.postData.Priority == '99999862') {
this.dispatchFolder.DeadlineType = 'Urgente';
}
else if(this.postData.Priority=='99999863') {
else if (this.postData.Priority == '99999863') {
this.dispatchFolder.DeadlineType = 'Muito Urgente';
}
else if(this.postData.Priority=='99999864') {
else if (this.postData.Priority == '99999864') {
this.dispatchFolder.DeadlineType = 'Urgentíssimo';
}
let attendees = this.taskParticipants.concat(this.taskParticipantsCc);
attendees = attendees.map(function(val) {
attendees = attendees.map(function (val) {
return {
UserEmail: val.EmailAddress,
UserType: val.IsRequired?"I": "CC"
UserType: val.IsRequired ? "I" : "CC"
};
});
@@ -284,154 +284,88 @@ export class CreateProcessPage implements OnInit {
const loader = this.toastService.loading()
if(this.loggeduser.Profile != 'PR') {
switch (this.taskType) {
case '0': // Despacho
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
if (this.fulltask.activityInstanceName == "Assinar Diploma") {
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
try {
await this.processes.postDespatcho(this.postData).toPromise();
await this.despachoService.EfectuarDespacho({note: this.dispatchFolder.Message, serialnumber: this.task.serialNumber, activityInstanceName: this.task.activityInstanceName}).toPromise();
try {
// await this.processes.postDespatcho(this.postData).toPromise();
await this.despachoService.createDespacho(this.postData).toPromise();
this.executado(this.dispatchFolder.Message, docs.Attachments)
this.httpsErrorHanlde.httpsSucessMessagge('Efetuar Despacho')
loader.remove();
} catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
loader.remove()
}
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Efetuar Despacho')
} catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove()
}
break;
case '1': // pedido de Parecer
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
try {
if(this.task.activityInstanceName == 'Tarefa de Despacho' || this.task.activityInstanceName == 'Reexecutar Despacho') {
await this.despachoService.createParecer(this.postData).toPromise();
await this.despachoService.solicitarParecer({ note: this.postData.DispatchFolder.Message, serialnumber: this.task.serialNumber, activityInstanceName: this.task.activityInstanceName}).toPromise();
} else {
await this.pedidoService.createParecer(this.postData).toPromise();
await this.pedidoService.taskCompleteParecer({serialNumber:this.task.serialNumber, note: this.postData.DispatchFolder.Message}).toPromise();
} else {
if (this.loggeduser.Profile != 'PR') {
switch (this.taskType) {
case '0': // Despacho
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Solicitar Parecer')
}
catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove()
}
break;
case '2': // Pedido de Deferimento
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
try {
await this.pedidoService.createDeferimento(this.postData).toPromise();
await this.pedidoService.taskCompleteDeferimento({note: this.postData.DispatchFolder.Message,serialNumber:this.task.serialNumber}).toPromise();
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Pedido de Deferimento')
}
catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
}
finally {
loader.remove()
}
break;
}
} else if (this.loggeduser.Profile == 'PR') {
switch (this.taskType) {
case '0': // Despacho PR
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
if(this.postData.DispatchFolder.Message){
try {
await this.despachoService.createDespacho(this.postData).toPromise();
await this.despachoService.CompleteTask({serialNumber: this.task.serialNumber, note: this.dispatchFolder.Message}).toPromise();
await this.processes.postDespatcho(this.postData).toPromise();
await this.despachoService.EfectuarDespacho({ note: this.dispatchFolder.Message, serialnumber: this.task.serialNumber, activityInstanceName: this.task.activityInstanceName }).toPromise();
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Efetuar Despacho')
} catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove();
}
}
else{
this.validateField = true;
this.toastService._badRequest('Por favor adicione uma descrição');
}
loader.remove();
break;
case '1': // Pedido de Parecer
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
try {
if(this.task.activityInstanceName == 'Tarefa de Despacho' || this.task.activityInstanceName == 'Reexecutar Despacho') {
await this.despachoService.createParecer(this.postData).toPromise();
await this.despachoService.solicitarParecer({ note: this.postData.DispatchFolder.Message, serialnumber: this.task.serialNumber, activityInstanceName: this.task.activityInstanceName}).toPromise();
} else {
await this.pedidoService.createParecer(this.postData).toPromise();
await this.pedidoService.taskCompleteParecer({serialNumber:this.task.serialNumber, note: this.postData.DispatchFolder.Message}).toPromise();
loader.remove()
}
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Solicitar Parecer')
}
catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove()
}
break;
case '1': // pedido de Parecer
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
break;
case '2': // Pedido de Deferimento
try {
if (this.task.activityInstanceName == 'Tarefa de Despacho' || this.task.activityInstanceName == 'Reexecutar Despacho') {
await this.despachoService.createParecer(this.postData).toPromise();
await this.despachoService.solicitarParecer({ note: this.postData.DispatchFolder.Message, serialnumber: this.task.serialNumber, activityInstanceName: this.task.activityInstanceName }).toPromise();
} else {
await this.pedidoService.createParecer(this.postData).toPromise();
await this.pedidoService.taskCompleteParecer({ serialNumber: this.task.serialNumber, note: this.postData.DispatchFolder.Message }).toPromise();
}
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Solicitar Parecer')
}
catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove()
}
break;
case '2': // Pedido de Deferimento
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
@@ -444,7 +378,96 @@ export class CreateProcessPage implements OnInit {
try {
await this.pedidoService.createDeferimento(this.postData).toPromise();
await this.pedidoService.taskCompleteDeferimento({note: this.postData.DispatchFolder.Message, serialNumber:this.task.serialNumber}).toPromise();
await this.pedidoService.taskCompleteDeferimento({ note: this.postData.DispatchFolder.Message, serialNumber: this.task.serialNumber }).toPromise();
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Pedido de Deferimento')
}
catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
}
finally {
loader.remove()
}
break;
}
} else if (this.loggeduser.Profile == 'PR') {
switch (this.taskType) {
case '0': // Despacho PR
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
if (this.postData.DispatchFolder.Message) {
try {
await this.despachoService.createDespacho(this.postData).toPromise();
await this.despachoService.CompleteTask({ serialNumber: this.task.serialNumber, note: this.dispatchFolder.Message }).toPromise();
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Efetuar Despacho')
} catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove();
}
}
else {
this.validateField = true;
this.toastService._badRequest('Por favor adicione uma descrição');
}
loader.remove();
break;
case '1': // Pedido de Parecer
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
try {
if (this.task.activityInstanceName == 'Tarefa de Despacho' || this.task.activityInstanceName == 'Reexecutar Despacho') {
await this.despachoService.createParecer(this.postData).toPromise();
await this.despachoService.solicitarParecer({ note: this.postData.DispatchFolder.Message, serialnumber: this.task.serialNumber, activityInstanceName: this.task.activityInstanceName }).toPromise();
} else {
await this.pedidoService.createParecer(this.postData).toPromise();
await this.pedidoService.taskCompleteParecer({ serialNumber: this.task.serialNumber, note: this.postData.DispatchFolder.Message }).toPromise();
}
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Solicitar Parecer')
}
catch (error) {
this.httpsErrorHanlde.httpStatusHandle(error)
} finally {
loader.remove()
}
break;
case '2': // Pedido de Deferimento
this.postData = {
DistributionType: "Paralelo",
CountryCode: 'AO',
Priority: this.postData.Priority,
UserEmail: this.loggeduser.Email,
UsersSelected: attendees,
DispatchFolder: this.dispatchFolder,
AttachmentList: docs
}
try {
await this.pedidoService.createDeferimento(this.postData).toPromise();
await this.pedidoService.taskCompleteDeferimento({ note: this.postData.DispatchFolder.Message, serialNumber: this.task.serialNumber }).toPromise();
this.modalController.dismiss();
this.httpsErrorHanlde.httpsSucessMessagge('Pedido de Deferimento')
@@ -456,9 +479,41 @@ export class CreateProcessPage implements OnInit {
}
break;
}
}
}
}
async executado(note: string, documents: any) {
let body = {
"serialNumber": this.fulltask.serialNumber,
"action": "Conhecimento",
"ActionTypeId": 104,
"dataFields": {
"ReviewUserComment": note,
},
"AttachmentList": documents,
}
const loader = this.toastService.loading()
try {
await this.processes.CompleteTask(body).toPromise()
this.close();
this.toastService._successMessage()
} catch (error) {
if (error.status == 0) {
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
} else {
this.toastService._badRequest()
}
} finally {
loader.remove()
}
}
@@ -466,8 +521,8 @@ export class CreateProcessPage implements OnInit {
let body;
if(this.task.activityInstanceName =='Tarefa de Despacho' ||
this.task.activityInstanceName =='Reexecutar Despacho') {
if (this.task.activityInstanceName == 'Tarefa de Despacho' ||
this.task.activityInstanceName == 'Reexecutar Despacho') {
body = {
"serialNumber": this.task.serialNumber,
@@ -476,13 +531,13 @@ export class CreateProcessPage implements OnInit {
"dataFields": {
"ReviewUserComment": '',
},
"AttachmentList" :null,
"AttachmentList": null,
}
}
else if(this.task.activityInstanceName =='Concluir Despacho' ||
else if (this.task.activityInstanceName == 'Concluir Despacho' ||
this.task.activityInstanceName == 'Concluir Parecer' ||
this.task.activityInstanceName =='Concluir Deferimento' ||
this.task.activityInstanceName =='Reapreciar Deferimento' ||
this.task.activityInstanceName == 'Concluir Deferimento' ||
this.task.activityInstanceName == 'Reapreciar Deferimento' ||
this.task.activityInstanceName == 'Tarefa de Deferimento'
) {
@@ -493,7 +548,7 @@ export class CreateProcessPage implements OnInit {
"dataFields": {
"ReviewUserComment": '',
},
"AttachmentList" :null,
"AttachmentList": null,
}
} else {
@@ -515,15 +570,15 @@ export class CreateProcessPage implements OnInit {
async addParticipants() {
this.adding = "intervenient";
this.contacts = this.taskParticipants;
this.contacts = this.taskParticipants;
if(window.innerWidth <=800) {
if (window.innerWidth <= 800) {
this.showAttendees=false;
this.showAttendees = false;
const modal = await this.modalController.create({
component: AttendeesPageModal,
componentProps: {
componentProps: {
adding: this.adding,
taskParticipants: this.taskParticipants,
taskParticipantsCc: this.taskParticipantsCc
@@ -536,7 +591,7 @@ export class CreateProcessPage implements OnInit {
modal.onDidDismiss().then((data) => {
if(data) {
if (data) {
data = data['data'];
const newAttendees: EventPerson[] = data['taskParticipants'];
@@ -547,7 +602,7 @@ export class CreateProcessPage implements OnInit {
}
});
} else {
this.showAttendees=true
this.showAttendees = true
}
}
@@ -556,12 +611,12 @@ export class CreateProcessPage implements OnInit {
this.adding = "CC";
this.contacts = this.taskParticipantsCc;
if(window.innerWidth <=800){
this.showAttendees=false;
if (window.innerWidth <= 800) {
this.showAttendees = false;
const modal = await this.modalController.create({
component: AttendeesPageModal,
componentProps: {
componentProps: {
adding: this.adding,
taskParticipants: this.taskParticipants,
taskParticipantsCc: this.taskParticipantsCc
@@ -574,7 +629,7 @@ export class CreateProcessPage implements OnInit {
modal.onDidDismiss().then((data) => {
if(data) {
if (data) {
data = data['data'];
const newAttendees: EventPerson[] = data['taskParticipants'];
@@ -586,7 +641,7 @@ export class CreateProcessPage implements OnInit {
});
} else {
this.showAttendees=true
this.showAttendees = true
}
}
@@ -594,7 +649,7 @@ export class CreateProcessPage implements OnInit {
async distartExpedientModal() {
const modal = await this.modalController.create({
component: DiscartExpedientModalPage,
componentProps: {
componentProps: {
serialNumber: this.task.serialNumber,
folderId: this.task.workflowInstanceDataFields.FolderID,
action: 'complete',
@@ -604,17 +659,17 @@ export class CreateProcessPage implements OnInit {
});
await modal.present();
modal.onDidDismiss().then(res=>{
if(res['data']=='close'){
modal.onDidDismiss().then(res => {
if (res['data'] == 'close') {
this.modalController.dismiss(res['data'])
}
});
}
async setContact(data:EventPerson[]) {
async setContact(data: EventPerson[]) {
if(this.adding == "intervenient"){
if (this.adding == "intervenient") {
this.taskParticipants = data;
} else if (this.adding == "CC") {
@@ -623,7 +678,7 @@ export class CreateProcessPage implements OnInit {
}
dynamicSetIntervenient({taskParticipants, taskParticipantsCc}){
dynamicSetIntervenient({ taskParticipants, taskParticipantsCc }) {
this.taskParticipants = taskParticipants;
this.taskParticipantsCc = taskParticipantsCc;
}
@@ -643,15 +698,15 @@ export class CreateProcessPage implements OnInit {
async viewExpedientDetail() {
let classs;
if( window.innerWidth <= 800){
if (window.innerWidth <= 800) {
classs = 'modal modal-desktop'
} else {
} else {
classs = 'modal modal-desktop showAsideOptions'
}
const modal = await this.modalController.create({
component: ExpedienteDetailPage,
componentProps:{
componentProps: {
serialNumber: this.task.serialNumber,
profile: this.profile,
},
@@ -659,20 +714,20 @@ export class CreateProcessPage implements OnInit {
backdropDismiss: false
});
await modal.present();
modal.onDidDismiss().then((res)=>{
/* console.log('!refresh list'); */
modal.onDidDismiss().then((res) => {
/* console.log('!refresh list'); */
});
}
removeAttachment(index: number){
removeAttachment(index: number) {
this.documents = this.documents.filter( (e, i) => index != i);
this.documents = this.documents.filter((e, i) => index != i);
}
async getDoc(){
async getDoc() {
const modal = await this.modalController.create({
component: SearchPage,
cssClass: 'modal-width-100-width-background modal',
@@ -683,11 +738,11 @@ export class CreateProcessPage implements OnInit {
}
});
await modal.present();
modal.onDidDismiss().then((res)=>{
if(res){
const data = res.data;
this.documents.push(data.selected);
}
modal.onDidDismiss().then((res) => {
if (res) {
const data = res.data;
this.documents.push(data.selected);
}
});
}
@@ -16,4 +16,12 @@
background-repeat: no-repeat;
background-position-x: center;
background-position-y: center;
}
@media only screen and (max-width: 650px) {
.container-img {
background-size: 25%;
}
}
+1 -1
View File
@@ -1333,7 +1333,7 @@ export class AgendaPage implements OnInit {
async viewEventsToApprove() {
await this.cloneAllmobileComponent();
if (window.innerWidth <= 801) {
if (window.innerWidth <= 1023) {
this.router.navigate(['/home/agenda/event-list']);
} else {
// hide all components
@@ -171,7 +171,7 @@ export class EventListPage implements OnInit {
this.color = 'mdgpr'
}
let genericEvents = await this.processes.GetTasksList('Agendar Evento', false).toPromise();
let genericEvents = await this.processes.eventsToApprove(SessionStore.user.UserId,'mobile agenda').toPromise()
try {
this.eventsList = this.sortService.sortArrayByDate(genericEvents).reverse();
} catch (error) {
+27 -30
View File
@@ -79,14 +79,14 @@ export class PublicationsPage implements OnInit {
ngOnInit() {
const pathname = window.location.pathname
this.getActions();
this.router.events.forEach((event) => {
if (event instanceof NavigationEnd && event.url == pathname) {
this.getActions();
}
});
this.hideRefreshButton();
this.getFromDB()
@@ -141,42 +141,39 @@ export class PublicationsPage implements OnInit {
getActions() {
if(this.showLoader == false) {
this.showLoader = true;
this.publications.GetPublicationFolderList().subscribe(async res => {
this.showLoader = true
const folders: PublicationFolder[] = this.getPublicationFolderMap(res)
this.publications.GetPublicationFolderList().subscribe(async res => {
this.showLoader = false;
const folders: PublicationFolder[] = this.getPublicationFolderMap(res)
this.publicationsEventFolderList = folders.filter((e)=>e.ActionType == 'Evento')
this.publicationsTravelFolderList = folders.filter((e)=>e.ActionType != 'Evento')
if (this.platform.is('desktop') || this.platform.is('mobileweb')) {
await this.storage.set('actionsEvents', this.publicationsEventFolderList);
await this.storage.set('actionsViagens', this.publicationsTravelFolderList);
} else {
folders.forEach((folder)=> {
this.addActionToDB(folder);
})
}
this.showLoader = false;
}, (error) => {
this.showLoader = false;
});
}
this.publicationsEventFolderList = folders.filter((e)=>e.ActionType == 'Evento')
this.publicationsTravelFolderList = folders.filter((e)=>e.ActionType != 'Evento')
if (this.platform.is('desktop') || this.platform.is('mobileweb')) {
await this.storage.set('actionsEvents', this.publicationsEventFolderList);
await this.storage.set('actionsViagens', this.publicationsTravelFolderList);
} else {
folders.forEach((folder)=> {
this.addActionToDB(folder);
})
}
this.showLoader = false;
}, (error) => {
this.showLoader = false;
});
}
addActionToStorage(events, viagens) {
// addActionToStorage(events, viagens) {
if (this.platform.is('desktop') || this.platform.is('mobileweb')) {
this.storage.set('actionsEvents', events);
this.storage.set('actionsViagens', viagens);
}
}
// if (this.platform.is('desktop') || this.platform.is('mobileweb')) {
// this.storage.set('actionsEvents', events);
// this.storage.set('actionsViagens', viagens);
// }
// }
addActionToDB(folder) {
@@ -11,12 +11,12 @@
<ion-icon *ngIf="ThemeService.currentTheme == 'doneIt' " src="assets/images/theme/doneIt/icons-calendar-arrow-left.svg"></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " slot="end" src='assets/images/theme/gov/icons-calendar-arrow-left.svg'></ion-icon>
</div>
<div class="div-title flex-grow-1">
<ion-label class="title">{{item.Description}}</ion-label>
<p class="item-content-detail">{{item.Detail}}</p>
<p class="item-content-date">{{item.DateBegin | date: 'dd-MM-yy HH:mm'}}</p>
<div *ngIf="publicationItem[folderId]" class="div-title flex-grow-1">
<ion-label class="title">{{publicationItem[folderId].Description}}</ion-label>
<p class="item-content-detail">{{publicationItem[folderId].Detail}}</p>
<p class="item-content-date">{{publicationItem[folderId].DateBegin | date: 'dd-MM-yy HH:mm'}}</p>
</div>
<div *ngIf="p.userPermission([p.permissionList.Actions.createPost])" class="actions-icon cursor-pointer" (click)="AddPublication('2',item.ProcessId)">
<div *ngIf="p.userPermission([p.permissionList.Actions.createPost]) && publicationItem[folderId]" class="actions-icon cursor-pointer" (click)="AddPublication('2',publicationItem[folderId].ProcessId)">
<!-- <ion-icon (click)="AddPublication('1',item.ProcessId)" slot="end" src='assets/images/icons-add-photo.svg'></ion-icon> -->
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " slot="end" src='assets/images/icons-add.svg'></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " slot="end" src='assets/images/theme/gov/icons-add.svg'></ion-icon>
@@ -27,14 +27,14 @@
</ion-header>
<ion-content class="background-white">
<!-- <ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher> -->
</ion-refresher>
<div class="main-container background-white height-100 overflow-y-auto">
<ion-content>
<ion-card *ngFor="let publication of getpublication let i = index"
<ion-content *ngIf="publicationItem[folderId]">
<ion-card *ngFor="let publication of publicationList[folderId] let i = index"
(click)="goToPublicationDetail(publication.DocumentId)"
>
<ion-card-content>
@@ -14,6 +14,7 @@ import { forkJoin } from 'rxjs';
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';
@Component({
selector: 'app-view-publications',
@@ -24,8 +25,9 @@ export class ViewPublicationsPage implements OnInit {
showLoader = true;
loading: any;
publicationList: Publication[] = new Array();
item: PublicationFolder;
publicationList: {[key: string]: Publication[] } = {};
publicationItem: {[key: string]: PublicationFolder } = {};
defaultImage = "/assets/icon/icon-no-image.svg";
folderId: string;
id: string;
@@ -46,9 +48,16 @@ export class ViewPublicationsPage implements OnInit {
public ThemeService: ThemeService,
private toastService: ToastService,
public p: PermissionService,
private httpErroHandle: HttpErrorHandle) {
private httpErroHandle: HttpErrorHandle,
private storage: Storage,) {
if(!this.publicationList[this.folderId]) {
this.publicationList[this.folderId] = []
this.publicationItem[this.folderId] = new PublicationFolder();
}
this.getFromDB();
this.item = new PublicationFolder();
this.activatedRoute.paramMap.subscribe(params => {
@@ -66,6 +75,14 @@ export class ViewPublicationsPage implements OnInit {
if (typeof (this.folderId) == 'object') {
this.folderId = this.folderId['ProcessId']
}
if(!this.publicationList[this.folderId]) {
this.publicationList[this.folderId] = []
this.publicationItem[this.folderId] = new PublicationFolder();
}
this.getFromDB();
//this.testForkJoin()
this.getPublicationDetail();
this.getPublicationsIds();
@@ -87,22 +104,22 @@ export class ViewPublicationsPage implements OnInit {
this.folderId = this.folderId['ProcessId']
}
// if (typeof (this.id == 'object') {
// this.id = this.id['ProcessId']
// }
//this.testForkJoin()
//this.getPublicationDetail();
// this.getPublications();
if(!this.publicationList[this.folderId]) {
this.publicationList[this.folderId] = []
this.publicationItem[this.folderId] = new PublicationFolder();
}
this.getFromDB();
}
doRefresh = (event) => {
//setTimeout(() => {
//this.testForkJoin()
this.getPublicationDetail();
this.getPublicationsIds();
try {
event?.target?.complete();
} catch(error) {}
//this.testForkJoin()
this.getPublicationDetail();
this.getPublicationsIds();
try {
event?.target?.complete();
} catch(error) {}
//}, 3000);
}
@@ -117,146 +134,52 @@ export class ViewPublicationsPage implements OnInit {
}
getPublicationDetail() {
this.publications.GetPresidentialAction(this.folderId).subscribe(res => {
this.item = res;
this.sqliteservice.updatePublicationsDetails(this.folderId, JSON.stringify(res));
}, (error) => {
this.httpErroHandle.httpStatusHandle(error)
});
}
// goes to fork
// getPublicationsIds() {
// this.showLoader = true;
// const folderId = this.folderId
// this.publications.GetIdsPublicationsImages(this.id).subscribe(res => {
//
// this.publicationList = new Array();
getPublicationsIds() {
this.showLoader = true;
const folderId = this.folderId
this.publications.GetPublicationsImages(this.folderId).subscribe(res => {
this.publicationList = new Array();
res.forEach(element => {
this.publications.GetPublicationById(element).subscribe(ress => {
let item: Publication = this.publicationPipe.itemList(ress)
this.publicationList.push(item);
})
});
this.sqliteservice.updateactions(this.folderId, JSON.stringify(this.publicationList));
this.getpublication = this.publicationList;
this.publications.GetPresidentialAction(folderId).subscribe(res=>{
this.showLoader = false;
this.publicationItem[folderId] = res
this.storage.set(folderId+"name", res)
}, (error) => {
if(error.status == 0) {
this.getFromDB()
} else {
this.httpErroHandle.httpStatusHandle(error)
}
});
}
getPublications() {
this.showLoader = true;
const folderId = this.folderId
this.getFromDB();
this.publications.GetPublications(this.folderId).subscribe(res => {
this.publicationList = new Array();
res.forEach(element => {
let item: Publication = this.publicationPipe.itemList(element)
this.publicationList.push(item);
});
this.sqliteservice.updateactions(this.folderId, JSON.stringify(this.publicationList));
this.getpublication = this.publicationList;
this.showLoader = false;
}, (error) => {
if (error.status == '0') {
this.getFromDB();
}
if (error.status == '404') {
this.error = 'Sem publicações disponíveis!';
this.publicationList = [];
} else {
this.httpErroHandle.httpStatusHandle(error)
}
this.showLoader = false;
// this.httpErroHandle.httpStatusHandle(error)
});
}
testForkJoin() {
forkJoin([
this.getPublicationsIds(),
this.getPublications(),
]).subscribe(allResults => {
this.publicationList = allResults[2]
})
}
getFromDB() {
this.sqliteservice.getActionById(this.folderId).then((publications) => {
this.item = this.isJson(publications[0].publicationsDetails);
let publicationArray = [];
this.isJson(publications[0].publications).forEach(element => {
let publicationlis = {
DateIndex: element.DateIndex,
DatePublication: element.DatePublication,
DocumentId: element.DocumentId,
FileBase64: element.FileBase64,
FileExtension: element.FileExtension,
Message: element.Message,
OrganicEntityId: element.OrganicEntityId,
OriginalFileName: element.OriginalFileName,
ProcessId: element.ProcessId
}
publicationArray.push(publicationlis);
});
this.publicationList = publicationArray;
const folderId = this.folderId
this.storage.get(folderId).then((viewPublications) => {
this.publicationList[folderId] = viewPublications
})
this.storage.get(folderId+"name").then((viewPublications) => {
this.publicationItem[folderId] = viewPublications
})
}
isJson(str) {
async getPublicationsIds() {
this.showLoader = true;
const folderId = this.folderId
try {
JSON.parse(str);
} catch (e) {
return str;
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);
}
this.showLoader = false;
this.publicationList[folderId] = publicationList
this.storage.set(folderId, publicationList);
this.getpublication = publicationList;
} catch(error) {
this.showLoader = false;
}
return JSON.parse(str);
}
async AddPublication(publicationType: any, folderId: any) {
@@ -91,7 +91,7 @@ export class EventListPage implements OnInit {
this.color = 'mdgpr'
}
let genericEvents = await this.processes.GetTasksList('Agendar Evento', false).toPromise();
let genericEvents = await this.processes.eventsToApprove(SessionStore.user.UserId,'mobile agenda').toPromise()
try {
this.eventsList = this.sortService.sortArrayByDate(genericEvents).reverse();
} catch (error) {
@@ -197,9 +197,7 @@ ion-content{
left: 0 !important;
bottom: 0 !important;
right: 0 !important;
top: calc(100% - 160px) !important;
max-height: 160px;
min-height: 160px;
bottom: 0px !important;
}
@@ -86,7 +86,7 @@ export class EventsToApprovePage implements OnInit {
this.color = 'mdgpr'
}
let genericEvents = await this.processes.GetTasksList('Agendar Evento', false).toPromise();
let genericEvents = await this.processes.eventsToApprove(SessionStore.user.UserId,'mobile agenda').toPromise()
try {
this.eventsList = this.sortService.sortArrayByDate(genericEvents).reverse();
} catch (error) {
@@ -8,7 +8,7 @@
<div class="buttons">
<button class="btn-cancel" shape="round" >Adicionar</button>
<button (click)="leaveGroup()" class="btn-cancel" shape="round" >Sair do Grupo</button>
<button *ngIf="isAdmin" (click)="openChangeGroupName()" class="btn-cancel" shape="round" >Alterar nome do grupo</button>
<button *ngIf="isAdmin" (click)="openChangeGroupName()" class="btn-cancel btn-cancel mt-10" shape="round" >Alterar nome do grupo</button>
<div class="solid"></div>
<button (click)="close('cancel')" full class="btn-cancel mobile-only" shape="round" >Cancelar</button>
<button *ngIf="isAdmin" (click)="deleteGroup()" class="btn-delete" shape="round">Apagar grupo</button>
@@ -1,18 +1,18 @@
<ion-header class="ion-no-border">
<div class="main-header">
<div class="title-content">
<div *ngIf="item" class="div-title width-100 flex-grow-1">
<div *ngIf="publicationItem[folderId]" class="div-title width-100 flex-grow-1">
<div class="title">
<ion-label>{{item.Description}}</ion-label>
<ion-label>{{publicationItem[folderId].Description}}</ion-label>
</div>
<div class="actions-icon">
<!-- <ion-icon (click)="AddPublication('1',item.ProcessId)" slot="end" src='assets/images/icons-add-photo.svg'></ion-icon> -->
<button *ngIf="p.userPermission([p.permissionList.Actions.editPost])" class="btn-no-color" (click)="openEditPublication(item.ProcessId)">
<button *ngIf="p.userPermission([p.permissionList.Actions.editPost])" class="btn-no-color" (click)="openEditPublication(publicationItem[folderId].ProcessId)">
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="edit" slot="end" src="assets/images/icons-edit.svg" ></ion-icon>
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="edit" slot="end" src="assets/images/theme/gov/icons-edit.svg" ></ion-icon>
</button>
<button *ngIf="p.userPermission([p.permissionList.Actions.deletePost])" class="btn-no-color" (click)="deletePublication(item.ProcessId)">
<button *ngIf="p.userPermission([p.permissionList.Actions.deletePost])" class="btn-no-color" (click)="deletePublication(publicationItem[folderId].ProcessId)">
<ion-icon class="delete" src='assets/images/theme/gov/icons-delete.svg'></ion-icon>
</button>
<button class="btn-no-color cursor-pointer" (click)="doRefresh($event)">
@@ -21,8 +21,8 @@
</div>
</div>
<div class="div-body width-100">
<p class="item-content-detail">{{item.Detail}}</p>
<p class="item-content-date">{{ item.DateBegin | date: 'dd-MM-yy HH:mm'}}</p>
<p class="item-content-detail">{{publicationItem[folderId].Detail}}</p>
<p class="item-content-date">{{ publicationItem[folderId].DateBegin | date: 'dd-MM-yy HH:mm'}}</p>
</div>
</div>
@@ -35,8 +35,8 @@
<ion-refresher-content>
</ion-refresher-content>
</ion-refresher>
<div class="main-container px-20">
<ion-card *ngFor="let publication of publicationList let i = index"
<div class="main-container px-20" *ngIf="publicationItem[folderId]">
<ion-card *ngFor="let publication of publicationList[folderId] let i = index"
(click)="viewPublicationDetail(publication.DocumentId)">
<ion-card-content>
<div class="post-img">
@@ -84,8 +84,8 @@
</ion-list> -->
</div>
<!-- fab placed to the bottom end -->
<ion-fab *ngIf="p.userPermission([p.permissionList.Actions.create])" vertical="bottom" horizontal="end">
<ion-fab-button title="Nova Publicação" (click)="AddPublication('2',item.ProcessId)">
<ion-fab *ngIf="p.userPermission([p.permissionList.Actions.create]) && publicationItem[folderId]" vertical="bottom" horizontal="end">
<ion-fab-button title="Nova Publicação" (click)="AddPublication('2',publicationItem[folderId].ProcessId)">
<ion-icon name="add"></ion-icon>
</ion-fab-button>
</ion-fab>
@@ -22,8 +22,8 @@ export class ViewPublicationsPage implements OnInit {
showLoader: boolean;
loading: any;
publicationList: Publication[];
item: PublicationFolder;
publicationList: {[key: string]: Publication[] } = {};
publicationItem: {[key: string]: PublicationFolder } = {};
getpublication = [];
error: any;
@@ -47,7 +47,10 @@ export class ViewPublicationsPage implements OnInit {
public p:PermissionService,
private httpErrorHandle: HttpErrorHandle
) {
this.item = new PublicationFolder();
if(!this.publicationList[this.folderId]) {
this.publicationList[this.folderId] = []
this.publicationItem[this.folderId] = new PublicationFolder();
}
}
ngOnInit() {
@@ -55,10 +58,14 @@ export class ViewPublicationsPage implements OnInit {
this.folderId = this.folderId['ProcessId']
}
//this.getPublicationsIds();
if(!this.publicationList[this.folderId]) {
this.publicationList[this.folderId] = []
this.publicationItem[this.folderId] = new PublicationFolder();
}
window['app-view-publications-page-doRefresh'] = this.doRefresh
this.getPublicationDetail();
this.getFromDB();
}
ngOnChanges(changes: any): void {
@@ -66,23 +73,24 @@ export class ViewPublicationsPage implements OnInit {
if(typeof(this.folderId) == 'object') {
this.folderId = this.folderId['ProcessId']
}
//setTimeout(()=>{
this.getPublicationDetail();
this.getPublicationsIds();
if(!this.publicationList[this.folderId]) {
this.publicationList[this.folderId] = []
this.publicationItem[this.folderId] = new PublicationFolder();
}
//}, 100)
this.getFromDB();
this.getPublicationDetail();
this.getPublicationsIds();
}
doRefresh =(event) => {
this.getPublicationsIds();
setTimeout(() => {
this.getPublicationDetail();
}, 3000);
this.getPublicationDetail();
this.getPublicationsIds();
}
close() {
@@ -90,88 +98,84 @@ export class ViewPublicationsPage implements OnInit {
}
getPublicationDetail() {
this.publications.GetPresidentialAction(this.folderId).subscribe(res=>{
this.item = res;
this.showLoader = true;
const folderId = this.folderId
this.publications.GetPresidentialAction(folderId).subscribe(res=>{
this.showLoader = false;
this.publicationItem[folderId] = res
this.storage.set(folderId+"name", res)
}, (error) => {
this.showLoader = false;
// this.httpErroHandle.httpStatusHandle(error)
});
}
getPublicationsIds() {
async getPublicationsIds() {
this.showLoader = true;
const folderId = this.folderId
//this.getFromDB()
this.publications.GetPublicationsImages(this.folderId).subscribe(res => {
this.publicationList = new Array();
/* for(let i = 0; i < res.length; i++) {
this.publications.GetPublicationById(res[i]).subscribe(ress => {
let item: Publication = this.publicationPipe.itemList(ress)
this.publicationList.push(item);
})
} */
res.forEach(element => {
this.publications.GetPublicationById(element).subscribe(ress => {
let item: Publication = this.publicationPipe.itemList(ress)
this.publicationList.push(item);
})
});
this.storage.remove('view_publications');
this.storage.set('view_publications', this.publicationList);
this.getpublication = this.publicationList;
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);
}
this.showLoader = false;
},() => {
this.getFromDB();
});
this.publicationList[folderId] = publicationList
this.storage.set(folderId, publicationList);
this.getpublication = publicationList;
} catch(error) {
this.showLoader = false;
}
}
getFromDB() {
this.storage.get('view_publications').then((viewPublications) => {
this.publicationList = viewPublications;
})
}
getPublications() {
this.showLoader = true;
const folderId = this.folderId
this.publicationList = new Array();
//this.getFromDB();
this.publications.GetPublications(folderId).subscribe(async res=> {
res.forEach(element => {
let item: Publication = this.publicationPipe.itemList(element)
this.publicationList.push(item);
});
await this.storage.remove('view_publications');
await this.storage.set('view_publications', this.publicationList);
//this.getFromDB();
this.showLoader = false;
},
(error)=>{
if(error.status == '404') {
this.error = 'Sem publicações disponíveis!';
this.publicationList= [];
}
this.showLoader = false;
this.storage.get(folderId).then((viewPublications) => {
this.publicationList[folderId] = viewPublications
})
this.storage.get(folderId+"name").then((viewPublications) => {
this.publicationItem[folderId] = viewPublications
})
}
// getPublications() {
// this.showLoader = true;
// const folderId = this.folderId
// this.publicationList = new Array();
// this.publications.GetPublications(folderId).subscribe(async res=> {
// res.forEach(element => {
// let item: Publication = this.publicationPipe.itemList(element)
// this.publicationList.push(item);
// });
// this.showLoader = false;
// await this.storage.remove(folderId);
// await this.storage.set(folderId, this.publicationList);
// //this.getFromDB();
// },
// (error)=>{
// if(error.status == '404') {
// this.error = 'Sem publicações disponíveis!';
// this.publicationList= [];
// }
// this.showLoader = false;
// })
// }
async AddPublication(publicationType:any, folderId:any) {
if( window.innerWidth < 701) {
+1 -3
View File
@@ -843,9 +843,7 @@ ion-content {
left: 0 !important;
bottom: 0 !important;
right: 0 !important;
top: calc(100% - 160px) !important;
max-height: 160px;
min-height: 160px;
bottom: 0px !important;
}
+7 -7
View File
@@ -1,12 +1,12 @@
export let versionData = {
"shortSHA": "75e6a6269",
"SHA": "75e6a62695abe44be50786e4cde227eec3b2a93c",
"shortSHA": "c037078ca",
"SHA": "c037078ca77a5a2eb316af91a9ec76493f0b908e",
"branch": "no_bug_movemente",
"lastCommitAuthor": "'Peter Maquiran'",
"lastCommitTime": "'Mon Feb 27 18:38:55 2023 +0100'",
"lastCommitMessage": "remove",
"lastCommitNumber": "4840",
"lastCommitAuthor": "'Eudes Inácio'",
"lastCommitTime": "'Mon Feb 27 22:16:15 2023 +0100'",
"lastCommitMessage": "Saidas testastas",
"lastCommitNumber": "4841",
"change": "",
"changeStatus": "On branch no_bug_movemente\nYour branch is up to date with 'origin/no_bug_movemente'.\n\nChanges to be committed:\n (use \"git restore --staged <file>...\" to unstage)\n\tmodified: src/app/modals/add-note/add-note.page.html\n\tmodified: src/app/modals/create-process/create-process.page.ts\n\tmodified: src/app/pages/gabinete-digital/diplomas-assinar/diploma-assinar/diploma-assinar.page.ts\n\tmodified: src/app/shared/popover/deploma-options/deploma-options.page.html\n\tmodified: src/app/shared/popover/deploma-options/deploma-options.page.ts",
"changeStatus": "On branch no_bug_movemente\nYour branch and 'origin/no_bug_movemente' have diverged,\nand have 1 and 5 different commits each, respectively.\n (use \"git pull\" to merge the remote branch into yours)\n\nAll conflicts fixed but you are still merging.\n (use \"git commit\" to conclude merge)\n\nChanges to be committed:\n\tmodified: src/app/home/home.page.ts\n\tmodified: src/app/modals/create-process/create-process.page.ts\n\tmodified: src/app/modals/view-document/view-document.page.scss\n\tmodified: src/app/pages/agenda/agenda.page.ts\n\tmodified: src/app/pages/gabinete-digital/event-list/event-list.page.ts\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/agenda/event-list/event-list.page.ts\n\tmodified: src/app/shared/agenda/view-event/view-event.page.scss\n\tmodified: src/app/shared/gabinete-digital/events-to-approve/events-to-approve.page.ts\n\tmodified: src/app/shared/popover/chat-popover/chat-popover.page.html\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/global.scss",
"changeAuthor": "eudes.inacio"
}