diff --git a/src/app/evento.spec.ts b/src/app/evento.spec.ts deleted file mode 100644 index e2e7d95..0000000 --- a/src/app/evento.spec.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { Evento } from './evento'; - -describe('Evento', () => { - it('should create an instance', () => { - expect(new Evento()).toBeTruthy(); - }); -}); diff --git a/src/app/evento.ts b/src/app/evento.ts deleted file mode 100644 index 4ce12b3..0000000 --- a/src/app/evento.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { Time } from "@angular/common"; - -export class Evento { - private id: number; - nombre: string; - localizacion: string; - fecha: Date; - dia: string; - hora: Time; - descripcion: string; - precio1: number; - precio2: number; - - setNombre(nombre: string): void{ - this.nombre = nombre; - } - - getNombre(): string{ - return this.nombre; - } - - setLocalizacion(localizacion: string): void{ - this.localizacion = localizacion; - } - - getLocalizacion(): string{ - return this.localizacion - } - - setFecha(fecha: Date): void{ - this.fecha = fecha; - } - - getFecha(): Date{ - return this.fecha; - } - - setDesc(desc: string): void{ - this.descripcion = desc; - } - - getDesc(): string{ - return this.descripcion; - } - - setDia(fecha: Date): void{ - this.dia = fecha.getDate()+"/"+fecha.getMonth(); - } - - getDia(): string{ - return this.dia; - } - - setHora(time: Time): void{ - this.hora = time; - } - - getHora(): Time{ - return this.hora; - } - - setPrecio1(precio: number): void{ - this.precio1 = precio; - } - - getPrecio1(): number{ - return this.precio1; - } - - setPrecio2(precio: number): void{ - this.precio2 = precio; - } - - getPrecio2(): number{ - return this.precio2; - } -} diff --git a/src/app/interfaces/eventoi.ts b/src/app/interfaces/eventoi.ts index 8926fb3..b613b3c 100644 --- a/src/app/interfaces/eventoi.ts +++ b/src/app/interfaces/eventoi.ts @@ -1,7 +1,7 @@ import { Time } from "@angular/common"; export interface Eventoi { - + id: number, discotecaID: number, nombre: string, localizacion: string, diff --git a/src/app/perfil-discoteca/perfil-discoteca.page.ts b/src/app/perfil-discoteca/perfil-discoteca.page.ts index f87e339..2438f98 100644 --- a/src/app/perfil-discoteca/perfil-discoteca.page.ts +++ b/src/app/perfil-discoteca/perfil-discoteca.page.ts @@ -3,7 +3,7 @@ import { Tab1Service } from '../tab1/tab1.service'; import { IonSlides, ModalController} from '@ionic/angular'; import { AlertController } from '@ionic/angular'; import { ViewChild } from '@angular/core'; -import { Evento } from '../evento'; +import { Eventoi } from '../interfaces/eventoi'; import { Router } from '@angular/router'; import { THIS_EXPR } from '@angular/compiler/src/output/output_ast'; import { GaleriamodalPage } from '../galeriamodal/galeriamodal.page'; @@ -28,7 +28,7 @@ export class PerfilDiscotecaPage implements OnInit { editEnabled: string; galeriaFotos: string[]; currentIndex: number; - eventos: Evento[]; + eventos: Eventoi[]; alertCtrl: AlertController; sliderOpts = { slidesPerView: 1.5, @@ -70,14 +70,15 @@ export class PerfilDiscotecaPage implements OnInit { this.localizacion = this.tab1Service.getLocalizacion(); } - getEventos(): void{ - this.eventos = this.tab1Service.getEventos(); - } getDescripcion(): void{ this.descripcion = this.tab1Service.getDescripcion(); } + getEventos(): void{ + this.eventos = this.tab1Service.eventos; + } + cargarImagen(){ this.fotoSrc = this.someURL; } @@ -174,12 +175,12 @@ export class PerfilDiscotecaPage implements OnInit { this.router.navigate(['/tabs/tab1/prompt-evento']); } - mostrarEvento(evento: Evento){ + mostrarEvento(evento: Eventoi){ this.tab1Service.eventoIndex = this.eventos.indexOf(evento); this.router.navigate(['/tabs/tab1/view-evento']); } - editarEvento(evento: Evento){ + editarEvento(evento: Eventoi){ this.tab1Service.eventoIndex = this.eventos.indexOf(evento); this.tab1Service.editarEvento = true; this.router.navigate(['/tabs/tab1/prompt-evento']); diff --git a/src/app/prompt-evento/prompt-evento.page.ts b/src/app/prompt-evento/prompt-evento.page.ts index 0e44ac1..31b21a3 100644 --- a/src/app/prompt-evento/prompt-evento.page.ts +++ b/src/app/prompt-evento/prompt-evento.page.ts @@ -1,7 +1,6 @@ import { Component, OnInit } from '@angular/core'; import { FormControl, FormGroup, Validators } from '@angular/forms'; import { Tab1Service } from '../tab1/tab1.service'; -import { Evento } from '../evento'; import { Router } from '@angular/router'; import { Eventoi } from '../interfaces/eventoi'; import { DatePipe } from '@angular/common' @@ -37,37 +36,47 @@ export class PromptEventoPage implements OnInit{ onSubmit(){ this.submitted = true; if (this.eventoForm.valid){ - let evento = new Evento(); + let evento: Eventoi = { + id: null, + discotecaID: this.tab1Service.discotecaI.discotecaID, + nombre: '', + localizacion: this.tab1Service.discotecaI.localizacion, + fecha: null, + hora: null, + descripcion: '', + precio1: null, + precio2: null + + + }; this.asignarEvento(evento); } } - asignarEvento(evento: Evento){ - evento.setNombre(this.eventoForm.get('nombre').value); - evento.setDesc(this.eventoForm.get('descripcion').value); + asignarEvento(evento: Eventoi){ + evento.nombre = this.eventoForm.get('nombre').value; + evento.descripcion = this.eventoForm.get('descripcion').value; var fecha = this.eventoForm.get('fecha').value; fecha = fecha.split("T")[0]; - evento.setFecha(fecha); - var hora = this.eventoForm.get('hora').value; + evento.fecha = fecha; + let hora = this.eventoForm.get('hora').value; hora = hora.split("T")[1]; hora = hora.split(":")[0]+(":")+hora.split(":")[1]; - evento.setHora(hora); - evento.setPrecio1(this.eventoForm.get('precio1').value); - evento.setPrecio2(this.eventoForm.get('precio2').value); + evento.hora = hora; + evento.precio1 = this.eventoForm.get('precio1').value; + evento.precio2 = this.eventoForm.get('precio2').value; //evento.setDia(evento.getFecha()); el datetime de Ion devuelve un String, no se puede if (!this.tab1Service.eventos){ this.tab1Service.initEventos();} if(!this.tab1Service.eventoForms){ this.tab1Service.initEventoForms();} - let eventoInterface = this.interfaceEvento(evento); if(this.tab1Service.editarEvento==true){ - this.tab1Service.updateEvento(eventoInterface); + this.tab1Service.updateEvento(evento); //this.tab1Service.eventos[this.tab1Service.eventoIndex] = evento; //this.tab1Service.eventoForms[this.tab1Service.eventoIndex] = this.eventoForm; } else{ - this.tab1Service.eventos.push(evento); - this.tab1Service.postEvento(eventoInterface); + this.tab1Service.postEvento(evento); //this.tab1Service.eventos.push(evento); //this.tab1Service.eventoForms.push(this.eventoForm); } @@ -98,22 +107,5 @@ export class PromptEventoPage implements OnInit{ return this.eventoForm.get('descripcion'); } - interfaceEvento(evento: Evento): Eventoi{ - let eventoInterface: Eventoi; - eventoInterface = { - discotecaID: this.tab1Service.discotecaI.discotecaID, - nombre: evento.nombre, - localizacion: this.tab1Service.discotecaI.localizacion, - fecha: evento.fecha, - hora: evento.hora, - descripcion: evento.descripcion, - precio1: evento.precio1, - precio2: evento.precio2, - } - - return eventoInterface; - } - - } diff --git a/src/app/services/api.service.ts b/src/app/services/api.service.ts index 9c3bd9a..b922549 100644 --- a/src/app/services/api.service.ts +++ b/src/app/services/api.service.ts @@ -39,6 +39,12 @@ export class ApiService { } + getEventos(discotecaID: number): Observable{ + return this.http.post(this.baseUrl+"/eventosDiscoteca", {"id": discotecaID}); + + + } + diff --git a/src/app/tab1/tab1.service.ts b/src/app/tab1/tab1.service.ts index aa1db15..5b65175 100644 --- a/src/app/tab1/tab1.service.ts +++ b/src/app/tab1/tab1.service.ts @@ -2,7 +2,7 @@ import { Injectable, OnInit } from '@angular/core'; import { stringify } from 'querystring'; import { Tab1Page } from './tab1.page' import { Discoteca } from '../discoteca' -import { Evento } from '../evento'; +import { Observable, of } from 'rxjs'; import { FormControl, FormGroup } from '@angular/forms'; import { NumericValueAccessor } from '@ionic/angular'; import { DiscotecaI } from '../interfaces/discoteca-i'; @@ -19,7 +19,7 @@ export class Tab1Service implements OnInit{ discoteca: Discoteca; discotecaI: DiscotecaI; galeria: string[]; - eventos: Evento[]; + eventos: Eventoi[]; eventoForms: FormGroup[]; eventoIndex: number; editarEvento: boolean; @@ -29,7 +29,7 @@ export class Tab1Service implements OnInit{ } ngOnInit(){ - this.initValues(); + } initValues(): void{ @@ -38,37 +38,40 @@ export class Tab1Service implements OnInit{ this.discoteca.setNombre(this.discotecaI.nombre); this.discoteca.setTelefono(this.discotecaI.telefono); this.discoteca.setLocalizacion(this.discotecaI.localizacion); - this.galeria = []; this.initEventos(); + this.galeria = []; this.editarEvento = false; } getNombre(): string{ - this.initValues(); return this.discoteca.getNombre(); } getTelefono(): number{ - this.initValues(); return this.discoteca.getTelefono(); } getLocalizacion(): string{ - this.initValues(); return this.discoteca.getLocalizacion(); } - getEventos(): Evento[]{ + getEventos(): Eventoi[]{ return this.eventos; } getDescripcion(): string{ - this.initValues(); return this.discoteca.getDescripcion(); } initEventos(): void{ this.eventos = []; + this.apiService.getEventos(this.discoteca.getId()) + .subscribe(eventos => { + this.eventos = eventos; + this.router.navigate(['/tabs/tab1/perfil-discoteca']); + }) + + } initEventoForms(): void{ @@ -79,14 +82,13 @@ export class Tab1Service implements OnInit{ return this.eventos[eventoIndex]; } - getDiscoteca(discotecaId: number){ +getDiscoteca(discotecaId: number){ if (discotecaId != 0){ this.apiService.getUserDiscoteca(discotecaId) .subscribe(discoteca => { this.discotecaI = discoteca[0]; console.log(this.discotecaI); this.initValues(); - this.router.navigate(['/tabs/tab1/perfil-discoteca']); }) } } @@ -94,7 +96,7 @@ export class Tab1Service implements OnInit{ postEvento(evento: Eventoi){ this.apiService.postEvento(evento) .subscribe(evento => { - this.router.navigate(['/tabs']); + this.initEventos(); }) }